Heading to Virginia – teaching a class at EclipseWorld 2007

If you are attending EclipseWorld 2007 conference next week, I ‘d like to invite you to attend my class called “Rapid Application Development of Rich Internet Applications With Eclipse Plugins “.

Eclipse can help tremendously in development of rich Internet applications mdash;especially if you have the right plugins. In the first part of this two-and-a-half hour class we “ll discuss modern techniques and technologies used for development of rich Internet clients. You ‘ll learn how to create a new front end for your JSP or POJO-based server side applications using Eclipse-based Flex Builder.

In Part 2, we “ll work through a live scenario, using several Eclipse plugins to create a rich create-read-update-delete application, where the front end will run in Flash Player, while the back end will use Java to work with the database. All artifacts (Java, XML, ActionScript and more) will be automatically generated, deployed and tested by the Clear Data Builder plug-in. In less than an hour, we “ll develop a typical CRUD business application with rich Web reporting integrated with Java EE and database tiers. Several Eclipse plugins used for reporting, logging, deployment automation and documentation will be included in this application.

Hope to see you in Reston, VA on Wednesday.

If you can ‘t make it to VA, but would like to get a fundamental Flex training and a bunch of productivity plugins, I ‘ll be running a week of Adobe Certified training in New York City right after Thanksgiving.

Can ‘t take time off work and want a cost-effective solution? Enroll into our weekend class in December. We run a holiday special deal in New Jersey.

I bet you do not attend your local JUG

Java.net ran a poll asking how many people attend local Java Users Group meetings. The poll shows that more than half of Java developers never attend local JUGs. Why? I see two reasons of why you do not attend your local JUG:

1. You are lazy. Yes, that simple.

2. You are doing programming (Java in this case) not because you like it, but just to make a living.

I do not have a problem with people from the second category. Say, you are an artist, musician or are an English literature major. These are all very respected and interesting professions but they can “t pay your bills, so you are a 9-5 programmer, and at 5:01PM you just erase from your memory everything that has happened during the last eight hours, because now you have time to do what you really enjoy.

But just being a lazy coach potato is no excuse. You think, “Job market is good, why bother? rdquo; Enjoy your life hellip;in front of a TV set. Networking with other people? Nay, life is good, the sky is blue and the grass is green.

And then one day the situation changes and these people start looking for a job, just to find out that their skills are rusty. They immediately start complaining about outsourcing and how India is taking their jobs. No my friend, do not blame India. Look in the mirror. By the way, about half of the people who attend our JUG ‘s meetings are originally from India.

Two years ago I started the Princeton JUG and its membership grew from 20 to 200 people. Typically, if a regular member makes a presentation, about 20 people show up. If the presenter is a published author, attendance doubles. Just doubles. We have a great sponsor (thank you, Infragistics!) that gives us a large auditorium, projector, and provides pizza. I always have giveaways for the attendees – free books, t-shirts, software licenses (thank you, various book publishers, Sun Microsystems and JetBrains). But even though more than half of our presenters are published authors and very experienced Java professionals, it “s not easy to impress people living in New Jersey. The only way for me to have a hundred people in the room is to invite Britney Spears, Paris Hilton or the like.

But I don ‘t complain. By attending our JUG meetings I learn something new, and what “s most important, I meet with people of the same caste called Java.

Sara Jessica Parker should upgrade to Leopard

Remember Sex and the City? Sara Jessica Parker lays on the bed with her Apple laptop typing a column for the next issue of the magazine. This is when I started looking at Apple computers. Actually, let me put it this way, I started looking for a reason to purchase one for myself. I “ve got the money, but I needed a reason. The fact that Mac OS is very similar to Unix does not give me goose bumps. The fish-eye menus can be easily emulated on any Windows PC. Parallels, is a hassle.

I was always afraid of the fact that purchasing MacBook Pro, will start eating my time, which I do not have. I do not enjoy spending days on installing software. The laptop should not be on my way ndash; it has to be convenient an “invisible rdquo;. Need to install new software? OK, I “ve got a minute or two for this, but other than that hellip;just let me do my work.

But still, there is something called peer pressure. I often attend various conferences where these cool-looking presenters use Apple computers. Yes, it “s so cool hellip;Entire world is still in Windows, but they are ahead of this boring crowd with these slick white devices…

Now, the Leopard is out, and many geeks and hackers around the world are screaming that it “s cool. But if you spend a bit more time in the blogosphere, you “ll read about the pain people have to go through to upgrade to Leopard. But the real bummer is that Java 6 is not there. Who should we blame for it? Steve Jobs who openly states that nobody uses Java anymore? There are about 5 million professional Java developers around the world. Can you give them a good reason to buy MacBook Pro? I can “t.

What about the open-sourced Java? Theoretically, this should mean that the geeky Mac population will fix this issue pretty soon, but do not hold your breath. This will be a real litmus test for the Java community to show if open sourcing Java really matters.

So as of today, I “m not going to purchase the MacBook Pro just yet. It “s getting late hellip;let me call Sara and find out if she is flirting with Leopard yet.

Weekend with Flex Experts – holiday special

Two full days of hands-on training for $200 is a bargain sponsored by Farata Systems. This training is targeted for people who “d like to get up to speed with Adobe Flex but can “t afford to take time off work. We “ll run this training in New Jersey. Details and registration at this URL.

The number of seats is limited, so early enrollment is suggested. Hope to see you in class.

Ill be running public Adobe Certified FLex Training in NYC

I ‘ll be running public Adobe Certified Flex 2 training on November 26-30, 2007 in New York City. Talk to your boss and ask him/her to burn some training cash. You deserve it. Beside, if they won ‘t use this year ‘s training dollars, they ‘ll lose them anyway.

If you are an independent consultant looking to improve your marketability/rates, this class is a way to go. Back in 1998 decided to switch from PowerBuilder to Java, which was a pretty serious move. I ‘ve been working as an independent consultant, picked up a couple of books, did my HelloWorld and a little more. Learning syntax of yet another object-oriented language was not that hard, but I new exactly what I was missing – how these little pieces of information fit together. How one architects a distributed application, how programs that run on different tiers talk to each other, what are these applications server about… Everything was new to me. I was looking for someone who could have presented me with a big picture with gradual immersing into details. So, for $2500 I ‘ve enrolled into BEA WebLogic 5-day class. It was a lot of money, especially when you pay it out of your own pocket. But the instructor was good, and turned out to be a great investment. Java market was hot, and I landed a gig in a new to me language with 20% rate increase.

Today, if you are a Java consultant such as half of the Bangalore citizens, think a couple of steps further. Make a move to a field, which is not crowded. It ‘ll put on your table a nice loaf of multi-grained bread with French butter, a decent slice of wild salmon (farm-raised is for mainframe programmers), a teaspoon of black caviar, buffalo mozzarella with sliced New Jersey tomatoes, grilled rack of New Zeland lamb (please do not use vinegar, just some onion and herb seasonings), and a bottle of Belgium beer (I recommend Leffe Blonde). If you are still not convinced that it ‘s time to enroll into my class, here ‘s another reason: spend a week in Manhattan during the holiday season. Details at http://www.faratasystems.com/?page_id=46

See you in class.

We are looking for Adobe Flex developers

Farata Systems is looking for Adobe Flex developers working on various consulting assignments. Currently we need people working for our clients in New York, New Jersey and Connecticut. Ideal candidate is a senior Java developer with Flex experience (the more the better). Good communication skills and willingness to travel is a must.

We can work with you either on the corp-to-corp basis, or offer full time employment.

Please send your resume and salary/rate requirements to me personally at yfain at faratasystems dot com.

If you are a senior Java or PowerBuilder developer and are seriously considering making a career change toward developing rich Internet applications with Adobe Flex, get in touch with us. We “ll be offering a mentoring program for selected candidates.

Let ‘s work together.

Yakov Fain

Why do you work overtime?

It “s 7PM, and you can hear from your cube that people are still typing. Why they do not go home? Are they forced to stay late? Are they getting paid for these long hours? Why?

First, let “s briefly touch upon the culture of small startups ndash; these people have some “idea “, and who knows may be their little company will become the next Youtube or Facebook. These shops are either self-funded or operate under the scrutiny of VC. So when you hear that a company XYZ received $10M in venture capital funding, this does not mean that anyone in this company became richer. This means that they earned the right to continue working on this idea/product envisioned by the founders of the company. People in startups work long hours, wear multiple hats, and hope that the N options they own (worth nothing today) will turn into a fortune some day. Welcome to California! This is the spirit there. People think options. If I “ll just stay for two years with this company, I might exercise some portion of my options. This is the Silicon Valley “s way of getting good software developers working long hours for sub-standard wages. Let “s leave this group of people alone and wish them good luck. I understand their motives.

Going to the East Coast. Unless you are in Boston, you don “t know much about startups and options, and just work for one of the larger enterprises. There are two major types of employment: you can work as an employee or a contractor .

Let “s take a simple case first ndash; contactors. They work for money. Period. If someone will tell you “I prefer working as a contractor because it gives me more freedom rdquo;, this is BS unless there are some special circumstances (i.e. you “ve enrolled in a PhD program or can work only a small number of hours per week). Since contractors work for money, they like working overtime and they are getting paid for these hours. Some employers try to save a little bit and insert a clause in the contractor agreement stating that a contractor works professional day at so-and-so hourly rate. Some smarty pants from HR came with this idea called “professional day rdquo;, which means that the regular 8-hour day may be occasionally stretched to ten hours . If you “ve signed the contract that pays $80 p/h and on Wednesday need to work for 11 hours, you are getting 8x$80 plus another $80 for the eleventh hour, which is considered overtime.

Contractors have very simple and healthy relations with their clients. You need me for six month? No problem – $80p/h. You need me for two weeks? No problem. $120p/h. Why it “s getting a lot more expensive? Because employers must pay for the convenience of having a skilled worker just when they need him on a very short notice and for a short assignment. You click on the button, and Joe is here. Seasoned employers understand that Joe-the-contractor will have some non-billable time after these two weeks and this higher rate should make up for the lost earnings. Besides, hiring a full time employee is like getting married, the wedding is expensive (you pay the recruiting agency hefty finder “s fees) and a divorce is getting even more expensive. Let “s leave this group alone. I understand their motives.

Moving to the most complex case ndash; full time employees working overtime. Let “s single out the managers ndash; these people are there to make careers, and they have to work long hours. These endless meetings steal their time and they have to stay late to get anything accomplished. Their incompetent higher-ups give them unrealistic deadlines, and, if they are incompetent themselves, they just pass the pressure to their software developers, business analysts and testers, which start staying late once in a while. This is fine as long as it “s happening once in a while. But all of a sudden, you find yourself working 10-12 hours every day without getting paid even for one extra hour. Why people do this?

I see ten reasons:

1. Your technical skills are not up to date and you are afraid to lose this job, especially if you have no discipline in spending. (Why did you purchase that car that you could not afford? Did you really need that apartment in Miami with zero down?)

2. You are promised B-O-N-U-S at the end of the year, and if you won “t be nice, you r B-O-N-U-S will become even smaller. October and November are the most important months for making bonus decisions, so you ‘d better behave. When you get this bonus, do a simple exercise: Add your salary and bonus and divide it by actual number of hours you “ve spent in your cube. You may be surprised!

3. You are a workaholic and just like to work.

4. You have family issues and would rather stay at work than go home.

5. Your company pays for your college, and you have to show your appreciation by working overtime.

6. You are a smart kid, and working overtime gives you a chance to better learn the business you are in and improve your technical skills. You are planning to move soon.

7. Your technical skills are very poor, and staying overtime is the only chance to get even simple assignments done.

8. You or someone in your family have a disease and you need to have good medical insurance and changing jobs is not an option.

9. You need to have daily meetings with your offshore team in India, and because of the time difference you have to start working at five in the morning. Leaving from work earlier than your boss is not an option, so you routinely put extra hours.

10. You are so lazy, that you ‘d rather work overtime doing boring job than pick up your big fat ass, get it to school and study to make yourself more marketable.

So what “s the bottom line: be good at what you are doing, and then you won “t need to say “Yes, Sir rdquo; every time when your manager decides that you are a second-class citizen and your main goal is to support his/her career promotion. If you are good at what you are doing, you are allowed to say “No rdquo; and keep the job. Pretty simple recipe, isn “t it? You “d better put these extra hours taking some extra classes in your local college or self-study. You do not need to change your profession. Do the same thing as other people do, just do it a little better. That “s all folks. The lesson is over.

Starting my next Flex class at NYU in ten days

Time flies. This is already the third time that I ‘m going to teach a hands-on course Building Rich Internet Applications with Adobe Flex at New York University starting on October 25. I really like this class. It runs over five weeks on Thursday nights. As opposed to typical five-day-in-a-row enterprise training, this gives the students a chance to spend some time between the sessions, do some studying on their own and bring the right questions to the next session. By the end of this course the students build a FLex application that communicates with Java part deployed under Tomcat and with Yahoo! to grab some RSS data from there.

If this sounds interesting let ‘s spend these five evenings together in an NYU lab. Enrollment is opened to the public. Pre-requisites: understanding of Object Oriented Programming and basics of XML.

Disclaimer. I ‘m not getting paid based on the number of enrolled students, so this blog is not an infomercial but rather a friendly suggestion on how killing five evenings may possibly change your career and add some fun to your day-to-day coding routine. This course really worth the money, especially if you take into consideration that having a student card entitles you for purchasing Flex Builder license dirt cheap.

Yahoo!s Babel Fish is lost in translation. Its just horrible!

When I found out that you can add a Yahoo! Babel button to your Web page to translate the text to several foreign languages, i decided to add it to my blog. Prior to Babel, I tried Google ‘s translator to see how it translates from English to Russian. Since it ‘s still in Beta, the quality of the translation has a lot of room for improvement. Ok, Beta is beta, so let ‘s wait.

Since Yahoo! does not mark their tool as Beta, I assumed that the quality of translation will be better. So I ‘ve decided to make the world a better place by offering to the mankind reading my pearls in their native language. Adding the translator ‘s button was easy, but when I tried to translate my blog about Flex class , the result of translation from English to Russian is just f ‘ng horrible! No, it ‘s not just bad, it ‘s absolutely useless.

Then, I took the same text and went to Google ‘s translator (in beta), which gave me some meaningful translation. It has mistakes, but at least a Russian-speaking reader can understand what is this blog about.

I ‘d really appreciate if you could translate the same blog to the language you know, and leave a comment here about the quality of Yahoo! Babel Fish vs. Google translator.

Oops…I found Silverlight under my bed

Have you checked your Program Files folder lately? If you did not, do it now. Surprise, Surprise! My happy family may have a new kid ndash; Microsoft Silverlight made itself comfy on my machine.

There are different ways of delivering the run time environment for rich Internet applications to users PCs.

The AJAX crowd proudly states ndash; 100% of computer users have everything we need to run our applications. JavaScript is installed on every user “s machine, unless some psycho has disabled it. XmlHttpRequest object is also there.

Sun Microsystems ” speakers usually includes a slide in their presentation that states that several hundred million devices have JVM installed. Do not even think of asking the presenter this question, “How many of these JVM will be able to run my Java program XYZ? rdquo; Oh well, all these JVMs are a little bit different. Next year Sun will start its long Consume- JRE-penetration-journey with a hope that some day, every client device will have its version that will be compatible with all Java programs. If Sun Microsystems had this power to force feed your PC with the latest JRE, Java would be the number one tool for creation of Rich Internet Application, and they would not be spending years scratching their heads about the mystery of seamless install of a VM.

Six years ago, when Sun Microsystems and Microsoft settled the lawsuit about Java, both parties made happy statements, but this settlement was a major mistake on Sun ‘s part. Of course, they did manly thing by not allowing Micosoft to inject their libraries to JDK, but they should have made another deal that would allow Microsoft to distribute the latest JRE as part of Windows updates. This way 90% of the people in the world would have had the right version of JRE on their machines. SUN would be a leader in the RIA space by now.

A well-mannered Flash Player will ask you if you “d like to download Flash Player 9 IF AND ONLY IF you visit a Web page that includes a program that needs Flash Player 9. But even this polite way of asking for upgrade allowed Flash Player 9 to get installed on more than 93% of all computers (countries like Nigeria and Somalia do not count).

When Microsoft released their RIA tool called Silverlight, I thought to myself, “Microsoft is still a very powerfull company, but it “ll take them a while to get the Silverlight runtime to a substantial number of clients. rdquo; Boy, I was wrong! Microsoft is pushing it to every Windows user like myself as a Windows update. All of a sudden I have it installed on my PC without even asking. Not too kosher, but it gets things done.