Adobe Flex 2 Beta 3 is being released today

Flex 2 Beta 3 becomes available to the general public today. I “m glad to be a part of this exiting and vibrant community of people. In my opinion, Flex community carries lots and lots of positive energy these days. I “ve been participating in all phases of pre-release Flex testing, and can state that lots and lots of people have contributed into making this product a state of the art tool. Flex online user “s forums are growing at the speed of sound. Last year I “ve casually subscribed to the Flex Coders mailing list. Oh boy! They have about a hundred of posts a day. People can “t wait to see their new baby out and in a good shape. Smart changes in the pricing policy will make this product appealing to any small independent software vendor or a Web site master.

Having said all these nice things about the product, I “d suggest Adobe marketing team order a T-shirt reading: “I survived Flex 2 Alpha, Beta 1, Beta 2, and Beta 3. Will I survive the production release? rdquo; By the way, I “m wearing an L-size.

Having four releases in 5 months is a little bit too much. Have mercy on early adopters! We write an advanced book on Flex 2 and its integration with Java, and changing samples code and regression tests after each new Beta-N release is not fun. I “m sure Adobe is trying to make their product as good as it gets, but I prefer the Beta-policy of Yahoo or Google. These companies create a production-grade tool and mark it Beta for a year or so.

Anyway, if year 2006 is the year of AJAX, the year 2007 will be the year of Flex 2. I also keep an eye on Microsoft “s rich client technologies XAML and Avalon . Today Adobe is way ahead, but I “m sure Microsoft will give Adobe a run for their money. But this battle won “t happen till 2008. Meanwhile, start looking at developing Rich Internet Applications with Flex. May “s issue of JDJ, has our article showing an interesting application that brings together Flex 2 and Java.

Cultural differences in outsourcing

This is not about which country has better programmers. What cultural issues did you experience with the offsore country you’ve dealt with?

I’m not trying to generalize, but this what I’ve heard so far :

India: programmers do not say no, which does not mean that they’ve correctly understood the assignment and would deliver what you expected.

Russia: money do not motivate them that much. Threats like “I won’t pay you unless you’ll code this in 5 days ” may not help. But if you tell them that so-and-so can do this in 4 days, they’ll do it in 3.

China: they won’t admit that there is an issue unless it becomes an obvious disaster.

Can you add more of a culture-specific outsourcing issues?

I wonder, if anyone tried to work with the offshore teams of smart developers who do not speak English? Theoretically, this may open up an entire world of quality workforce if you have a middleman you trust, which speaks both languages.

My upcoming vacation: JavaOne

The week of May 15 I shall be in San Francisco. This is an exiting trip for me hellip; sort of a high-end vacation. “How dare you! rdquo;, says Joe Smith, “I “m planning to be working twelve hours a day at this show trying to absorb technical wisdom from all these Java gurus. What vacation are you talking about? rdquo;. Hey Joe, just change your attitude. Do not spoil the party. JavaOne is a place with a super-high Java energy. Sort of a Java spa hellip;Being in the place with the highest possible concentration of people sharing the passion for the same thing is like a medical procedure hellip;Just being there will cure and recharge your worn-out brain hellip;Enjoy the fluids hellip;

In the morning , light breakfast, and then not more than two brain-massaging technical sessions. Make sure that most of your sessions are given by professional masseuses. Who is teaching is more important than what they teach. Then, two hours lunch break. Eat slowly, enjoy your food, and stop drinking these soft-killing-sodas. Use my diet.

After lunch walk around the vendors area. Do not get intimidated. Like the design of this T-shirt? Just stop by the booth, introduce yourself and spend five minutes listening to the brouhaha about how the product XYZ will revolutionize your life. Get the T-shirt and move to the next table. Look at these nice little glowing pens! Aren “t they something? Just give these vendors your business card and bring home a couple of pens for your kids. You’ll sure get this annoyning phone call from their saleseman in a month or so, but it’s in a month… but your kids will start enjoing these pens next week. Daddy came back from a business trip! What did you get for us? Look at this lady in red: she carries a huge bag of freebies and brochures. Trust me, she “s not going to read them. In the best case scenario, she’ll bring them to her office after the show. But most likely she’ll leave them in the hotel room.

On a more serious note, if you are really interested in a particular technology, you “d better spend some time at the vendors ” tables. For example, if you are interested in Java messaging in general, stop by every company that offers their implementation of JMS. You “ll find some strong technical people who researched this particular technology really well. You may not get access to their bodies that easily any time soon, especially if you live in a small town somewhere in Alabama.

After lunch, I prescribe you an intake of up to two more technical sessions in the closed rooms, and then blend in again with the Java crowd. In the evening, take one beer, then one BOF session, and two more beers. Of course, it “ll be stupid if you “ll miss the Java Champions BOF on Thursday at 7:30PM. You “ll see a dream-team of well-known Java leaders there. Again, it “s good just to be there because of even higher concentration of Java-sharpened-minds per square foot. I “ll spend 10 min there teaching you how to become a Java community leader. Yeah, right! Hey, teachers, leave us kids alone! As of today, I do not know what I “m going to say to you. And not because I do not have anything to say, but because I “m not planning to prepare my short speech. I “ll just let it go hellip;Whatever will be on my mind at the moment (I do have one Powerpoint slide though) hellip;

Attend a couple of keynote sessions. The topic is not important, but speaker “s personality is. If s/he was able to get invited to give a keynote talk at JavaOne, this deserve a 50 minutes of your precious time. Most likely though, you “ll be having hard time remembering next day what that motivational keynote speech was about. Bright future? Open sourcing Java? Why EJB still deserves a second look? And most importantly, did he cut his ponytail? Will he? I can “t trust my memory anymore, and will be taking notes and blog from the show on the daily basis. I might get myself in trouble again, as it happened after I “ve asked a question and published my notes at a recent conference. Oh well hellip;

During the last two weeks I “m receiving lots of invites to meet with particular vendors, who are eager to let me know about their lovely products. I respect your products, and some of them may become THE products in the future, but I do not want to make any commitments. I “m on vacation, remember, and will try to enjoy every minute of it.

At this point I “ve registered to attend the NetBeans day on Monday and nine technical session for the rest of the show. On Tuesday at 12:30PM I “ll be giving an interview at the Community Corner. I was invited to a dinner on Monday and a VIP party Wednesday night, Thursday night is for BOF and the After Dark Bash party. Every morning from 5AM to 6AM I’ll be working on the next chapter of upcoming Java-related book. And 6AM to 7AM is my blogging time so stay tuned hellip;

IntelliJIDEA is one of the best Java IDE

In my opinion, Java developers should have several IDEs installed on their PC. In the era of ANT and Maven, the build of your project should be automated anyway, so it’s OK to use more than one IDE based on your current needs.

There are several IDEs that are-good-enough for any Java developer. Two out of three best IDEs are free:

Free Eclipse is nice because of variety of plugins available. Since I’m into Flex programming now, I’m still using it.

Free Netbeans shines when it comes to GUI designers (Matisse). I’m planning to attend Netbeans tutorial day during my JavaOne visit.

But if you need just a really good Java-aware IDE, there is only one to use: not-free-but-inexpensive IntelliJIDEA.

During my 8 years of Java programming, I worked with VisualAge, JBuilder, and Eclipse. I knew that IntelliJIDEA had a loyal following of expert Java programmers, they won the JDJ’s Best IDE award, but I just didn’ t have an opportunity to use it. Finally I started using IntelliJIDEA on decent-size project having three hundred classes.

I do not have time to list all nice little features of this product that help you with every move you make! Some time later I’ll write a product review of this tool… This IDE outsmarts me big time. Finding classes, refactoring suggesting solutions… everyting is at your fingertips. I’m starting learning Java again with the help of this IDE.

JetBrains folks did an amazing job. If they’ll add a decent Swing GUI designer, this will be the only IDE to use. Hands down.

Something special for JUG members at JavaOne

If you are a member of a local JUG, please to stop by the Java.net Community Corner (booth 532) in the Moscone Pavillion during JavaOne and introduce yourself to Nichole Scott or Aaron Houston…they have a small gift for you…or a T-shirt.

Also, there will be a special SF Meeting at Argent Hotel, Concordia Room on May 17 from 5:00 to 7:00PM. This hotel is located near Moscone center.

Agenda:

5:00 – 5:20 Java EE 5 Overview – Bill Shannon

5:20 – 5:40 AJAX Frameworks and Technologies – Vish Vettrivel amp; Dan Harlow, Vircon Corp

5:40 – 6:00 GlassFish Introductions and Awards – Carla Mott/Ken Drachnik

6:00 – 7:00 Refreshments

Is your Web app connected to a remote DB? Who cares!

Fat client, thin client, Flex, AJAX, asynchronous messaging, applets… How good are all these technologies from a salesman-sitting-with-the-client perspective if you “ve lost your database connection?

The good old Java came to the rescue again. The product is called Java DB is Sun “s version of the Apache Derby database . While this is not the first embedded Java database (BerkleyDB exists in this space for a while), its beauty is in a relatively small footprint (2MB). In the broadband connection era, this opens the door to the new ways of architecting web applications.

Your Swing, Flex, or AJAX web client brings the database right to the client PC, and you do not really care anymore if you maintain your connection with the remote database server or not.

Today “s technologies provides solutions to for disconnected clients. For example, in Java you can use the JDBC RowSet interface which offers a disconnected result set. With Flex remoting, you define messaging channels (AMF and RMTP), and if one connection is not available it “ll try another one. But isn “t it a breeze of fresh air (especially for the AJAX guys), when the most important part of your application, THE DATA, is right here in your PCs memory, and runs in your browser “s JVM?

How to deploy it on the client? No sweat. I arrives automatically over your HTTP connection packaged in a nice-looking jar.

As per Fransois Orsini, this database was demo’ed at the recent Apache conference. It would be interesting to take a closer look at this product.

Combine Java DB with some JSR-80 implementation, and you can arrive at the airport with a USB memory stick in your shirt pocket, stop by the nearby Internet kiosk, download your business application, work with for half an hour. Oops they are started boarding hellip;No problem. Save the results of your work through the USB port, and off you go!

Dear Web-app architects, take a closer look at Java DB to be ahead of the game.

Need a surgery? Come with your own scalpel

In Ukraine, if you need to undertake a surgery, you have to check in to a hospital with a bag of your own supplies (so much for free medicine). The USA is not Ukraine, but the trend is the same: this article states that “Gartner, Inc. has come up with six trends of its own for 2006 and beyond. By 2008, the consultancy says, 10 percent of companies will require employees to purchase their own notebook computers “. This particular job ad specifically requires that consultants must have their own laptop.

How nice. To help your employer a little more, I’d also recommend that each programmer should purchase this piece of furniture

It also would not hurt to carry this portable folding device. It’s a little bulky though, and may not fit in the train during morning rush hours.

Forget about commuting to work with a newspaper and a lunch box. Get this bag.

I do not mind buy my own laptop and use it for work if my client/employer lets me work from home. But if you expect me to work in your office, please provide all necessary office supplies.

$90K-$125K a year job

Below is a job description I’ve received yesterday. I really wish this recruiter good luck in finding a person with all these qualifications, who’s ready to work in expensive San Diego with a net monthly income of $5500. The best part in this ad is is that this superstar will be allowed to work with senior engineers (I assume they are super-duper stars). If anyone wants this job, and can explain why, I’ll get you in touch with the recruiter.

This job requirement serves as a good illustration of why AJAX programming will remain a skill set of elite. It’s just way too much to know for an average software developer. But if you’re up to the challenge and have all the skills listed below, you can make a quick buck this year (much better than $125K) while the AJAX hype still going strong.

On the side note, we are trying to find good Swing developer (just expert level Swing skills and nothing else), paying similar salary range. No luck so far… There are plenty of Java experts, but they do not not Swing well enough, which is a logical result of the fact that desktop programming has been the Cinderella of Java for too long.

==============================================================================

Your Role

We’re looking to hire a Senior Eclipse Engineer that will be a key member of

our extremely bright and small developer team. We only hire superstars

and we’re working on some groundbreaking technology in the AJAX space.

Our company is venture-funded and located in San Diego, CA.

What You’ll Do

As a key member of the team, you’ll be responsible for configuring, integrating, deploying, testing, packaging, upgrading defining, prototyping, and developing techniques and applications for state-of-the-art web development tools.

Candidates should have experience developing state-of-the-art, interactive user interfaces using technologies such as AJAX/_JavaScript, ActionScript, Java, and C#. Expert experience with the Eclipse development environment is a must and your having written extensions to Eclipse is preferable..

Responsibilities

As a member of our small team, you will work closely with senior software engineers to create developer tools and other related technologies.

Job Qualifications

Expert in _JavaScript

Track record of developing Eclipse plugins

Experience with Eclipse graphical frameworks: SWT and JFace

Expert Java design and development knowledge

Java/C++/XPCOM/COM/ActiveX.

Systems concepts, including multithreading, remote procedure calls, compilation/translation, including parsing, optimization, and code generation.

Traditional static web technology, including HTML and CSS.

Client-side dynamic web technology (AJAX), including _JavaScript, DHTML and DOM.

Bachelor’s Degree in Computer Science, Electrical Engineering, or related field.

Familiarity with other popular web app frameworks, including PHP, ASP, ASP.NET.

Connected to the development community through forums, blogs, user groups, etc.

Skills: JAVA Expert

C++ Expert

AWT Expert

_JavaScript Expert

J2EE Helpful

HTTP Expert

SQL Expert

Servlets Expert

UI Expert

_JavaScript Expert

Win Expert

ASP Helpful

JSP / EJB Helpful

Apache Expert

Tomcat Expert

JAVA Applets Expert

XML/XSL Expert

SOAP Expert

DOM Expert

HTML/XHTML Expert

TCP/IP modules Expert

Sockets Expert

Desirable (not required) Qualifications

Gecko/Mozilla/FireFox hacking.

Experience in developing a Eclipse RCP-based product

Experience in building developer tools

Skilled in object-oriented design techniques (e.g. Design Patterns)

Use of agile development methodologies (XP, Scrum, etc.) and unit testing

Experience with Adobe Illustrator, Photoshop, and other graphics editors

Experience with DHTML, CSS, SVG, and the like

Technical leadership or management experience

Have worked on open source projects, preferably your own

Understand first hand the pains of building a large scale web application

Outsourcing lives

Please read this article published by LA Times.

The author writes : “Surrogate mothers in India are a bargain for foreigners, and the women reap a bonanza. But some observers say they pay a price hellip;. If everything goes according to plan, Mehli, 32, will deliver a healthy baby early next year. But rather than join her other three children, the newborn will be handed over to an American couple who are unable to bear a child on their own and are hiring Mehli to do it for them.

She’ll be paid about $5,000 for acting as a surrogate mother, a bonanza that would take her more than six years to earn on her salary as a schoolteacher in a village near here. rdquo;

Many of the statements from this article apply to IT outsourcing as well, for example:

“It’s a nine-month gig, no special skills needed, and the only real labor comes at the end “.

As the outsourced mother put it in this article:

“Beyond the money, she said, there is the reward of bringing happiness to a childless couple in the United States, where such a service would cost them thousands of dollars more rdquo;. You can replace the words “a childless couple rdquo; with anything else (i.e. “mediocre IT managers ” ) and the statement will still hold true.

What’s next? How about war outsourcing? For example, instead of sending American soldiers to Iraq, let’s pay Indian military men, say $20K a year a piece. Will they be happy to die for us for this much? I do not know what would be the right price, but I vote for 100% outsourcing of this dead end project.

S/he or cherchez la femme

Last Monday, I “ve been watching live Sys-Con coverage of the AJAX seminar in San Jose. The speakers were great, but beside enjoing the presentations, I was looking for women, or forgive my French, I “ve been cherchez-ing la femme .

When I write my technical articles, I always have this dilemma: often after the words “the user “, I put “he or she will do so and so ” to make sure that the readers won “t assume the most of the users are males. Then I found this nice way to put it: “s/he rdquo;. Some authors are afraid to be proclaimed male chauvinists so they just use “she rdquo; all the time referring to the user or a programmer. Males do no care and will never complain about such “discrimination “.

During the short breaks between the AJAX seminar presentations, the video camera was showing the attendees moving around. Sure, there where some women there. First, I was surprised: how come all the men were dressed down, while all the women were dressed up in a tuxedo-like suites. Then I realized that these women were hotel employees serving water to the attendees.

Finally, I “ve spotted a couple of AJAX-looking women. But the number of those was really small. My statistics is very subjective, but I “d say that men/women ratio at this event was about 25 to 1. Women are smarter than men. They have this special gut feeling that helps them in making the right decisions in life. I “ll join the AJAX camp as soon as I see more ladies there.

I “ll be going to the JavaOne conference next month with a major mission: I “ll be counting women. And if I won “t find enough female Java programmers there, I “ll be seriously considering switching to some other programming language.