Where to find enterprise Flex developers?

I’m finishing the third(!) week of teaching Flex. The first half of June I’ll spend doing some regular consulting work, and then another two weeks of corporate training.  The use of Flex technologies is picking up in the corporate world, but hiring managers are clearly facing challenges caused by the lack of qualified software developers on the market.  Solution? Re-train your own people.

Well, it’s not exactly a complete solution, because after a week of training, a senior Java developer becomes a Flex rookie, but at least these people are familiar with business.

Finding a qualified Flex/Java consultant is literally impossible. Enterprise HR managers pretend not knowing that an hourly rate is the only perk consultants  have. Corporations don’t offer competitive rates. Our consultancy has a couple of job requests for Flex/Java consultants from a long term customer from Wall Street, and we’re interviewing people with a little hope to find the right consultants for the money offered for these positions.

Train your own people regardless of what background they have. Recently, I had a student with no practical programming background. I figured it out after he asked me to “explain the benefits of casting”. But this guy was really motivated, and I’m sure he’ll make it.

Our company already has a request to teach Flex to a group of Cobol programmers in September. This should be fun.  The first day should be spent on teaching the concepts of object-oriented programming. So what? Anyone who wants to learn will.

Will the demand for Flex developers sustain? This week I’ve presented at Atlanta Flex User Group.  Here’s one of the questions I got after the talk, “Does your company experience lower demand of Flex consultants in the enterprise world because Flash is not supported on iPhone?”  Absolutely not.  Rich Internet Applications are being developed at full swing regardless of the fences built by Steve Jobs. iPhone is not a threat for the Enterprise RIA.  The only thing that bothers me is the slowness of Adobe in offering new releases of Flex and related tools and technologies.

While everyone is busy talking about the latest news from the iPhone battlefield or how Android is doing, I’m closely watching Microsoft.  As expected, they are becoming the real competition to Adobe in the field of the enterprise RIA. While Adobe is talking about new Designer-Developer workflow, Microsoft implements it. The penetration of Silverlight runtime is over 50%. Give them another year to build up the muscles…

Anyway, are you looking for senior enterprise Flex developers? Me too.

Yakov Fain

How the Flex Framework Cairngorm 2 Died

When a new version of a software is released, the old version lives for a while and its creators usually care about supporting it. Yesterday, after reading about the release of Cairngorm 3, it’s clear that Adobe Consulting ignores this rule.

For those who are not following Cairngorm evolution, I want to remind that there was a framework called Cairngorm 2, that was a library of classes (built on Model-View-Controller architecture) to be included in the Flex application. I never agreed with the architecture of Cairngorm 2 which was acting as a Crazy Glue and lead to generation of monolithic applications based on global singletons. People who follow my writings or were attending my presentations at various conferences know that during the last four years I was openly stating that Cairngorm 2 has more cons than pros. For example, here’s the just one of of these occasions – a video of the panel on enterprise frameworks at Adobe MAX 2008 (after this blog, I doubt that I’ll ever be approved as a MAX speaker again).

Now, when I looked at the design of a product that’s now branded as Cairngorm 3, it’s clear that Adobe assigned to this project the right engineers (i.e. Alex Uhlmann) and there is hope that this methodology (it’s not an MVC framework any longer) may produce or include useful component libraries.

My first problem is that the Cairngorm 2 has literally disappeared from the face of Earth (the only trace found is the site cairngormdocs.org that has some old documentation).

My second, and more serious problem is that Adobe Consulting up till today has never made a statement that selecting Cairngorm 2 was a wrong path. There are lots of enterprises that some time ago started using Cairngorm 2 (recommendation by Adobe Consulting) just to find themselves with a large monolithic application at hand that took long to download and was difficult to modularize.

A couple of years ago, I lead a large enterprise project for a customer that I won’t name, but will provide some relevant technical details. When I joined, the team was already 5 months into the project. This consumer facing application was producing one 5Mb SWF file. Just recompiling the application in Flex Builder was a lengthy project. I started to look at ways of modularizing this application so the first screen would come up sooner than 90 seconds for customers sitting on DSL connections.

Sure enough, the project has been built with Cairngorm 2 by advise of some engineer from Adobe Consulting (not to be confused with Adobe Flex team). The Cairngorm’s global class FrontController is expected to be a registry for all possible events that travel through the system let alone tons of classes and boilerplate code written just to support that life cycle of the framework itself.

My first suggestion was to start modularization with removing Cairngorm. They asked, “How much?” It would take two man-weeks worth of work, but they didn’t have time for this. To make the long story short, we had to modularize the application in a non-kosher way – the main SWF had a knowledge about all events in every module. Changes in a module’s code can lead to changes in the main applications. Tight coupling in action.

I’m sure there are lots of enterprise teams that were similarly misguided and were marching in a wrong direction under the Cairngorm 2 banner.

With the release of Cairngorm 3, the Cairngorm 2 has vanished. I’m sure, if you’ll hire a private eye, you’ll find its code (has not been updated from about three years) in some SVN repository. But this is not how the new version of the enterprise software should be released.
I’d like Adobe Consulting to state loud and clear, “If your team started development of a large enterprise project with Cairngorm 2, please stop. This was our mistake, and the sooner you switch to Cairngorm 3 or any other lighter framework the better.”

Will it happen? Let’s wait and see.

Yakov Fain
P.S. The views and opinions expressed in this blog are purely my own and don’t represent views of my employer

Getting Overloaded With Training Requests

For some (good) reason we are getting bombarded with Flex training requests of various kinds. Not sure if this is a side effect of our recently released book Enterprise Development with Flex (it stays in the Amazon’s bestsellers list in several categories) or maybe it’s just something in the air…

 

Here’s my current calendar:

 

April 26-30: Teaching a week of Flex intro at Home Depot, Atlanta, GA
May 10-14, Teaching Adobe Certified Flex 4 (!) class at AT&T, New Jersey
May 15, Speaking at Flash and the City in New York on LCDS alternatives.
May 17, Teaching a one-day workshop on modularization of Flex applications (btw, if you enter discount code saynotowifi you’ll get $100 off the price)
May 20-21, Teaching a 2-day Advanced Flex seminar at AT&T in New Jersey
May 24-28, Teaching an intro Flex class at Home Depot in Atlanta, GA
June 7-8, Teaching a 2-day Advanced Flex seminar for a private client in
Casablanca, Morocco.
June 21-25, Teaching an Intro Flex class to a private client.

My colleague Victor is finishing consulting project and will be running two two-weeks training engagements for a private Middle-East client. This will be a a mix of formal classes and one-on-one mentoring sessions.

On our waiting list, we have two requests for a one-day Modularization workshop from and two-day Flex overview from private clients. They want me it in May…

Also, we’re planning to start running online live Flex and Java training classes, but that’s in July.

And let me tell you, I love being overloaded with training requests!

Yakov Fain

We’ll help with your Flex problem, and you pay whatever you feel is fair

We’re proud to announce  a new consulting service by Farata Systems:

We suggest a solution to your Flex problem within two business days. You pay us after that whatever you feel is fair.

 

Here’s how it works:

1. You contact us explaining the issue your enterprise Flex RIA is facing.

2. We analyze your issue and within two business days suggest a solution to your problem.  Most likely we’ll either need to review your code or will ask for a test application that reproduces the issue you’re having.

3. We’ll send you a link to pay for the service with an empty field “Amount”. You enter the amount and pay whatever you feel is fair. No matter what amount you are going to enter (including $0), we’ll take it, no questions asked.

 

This offer is valid only to enterprise teams working on Flex/Java projects. This is not an offer for fix bugs of every software developer working with Flex .

 

Why have we decided to announce this new service? Well, technically it’s not new. Pretty often we are presented with a problem by a perspective client, then we spend some time finding the proper remedy, present it to the requester, which pretty often turns into a new contract. It just seemed the right thing to explicitly offer this service when many project managers may not even know that there is an affordable solution to their problem.

 

Too good to be true? Try it. Fill out the Contact Us form at faratasystems.com. New clients only.

Our new Flex book is a Java bestseller

Our new book “Enterprise Development with Flex ” made the Amazon bestseller’s list of … Java books:

http://www.amazon.com/gp/bestsellers/books/3608/ref=pd_zg_hrsr_b_3_4_last

This list is refreshed every hour so I’m not sure what place you are going to find it at, but at the time of this writing it’s #20.

Help us to move up the list by doing you know what :)

360flex, San Jose 2010, Day 3

Community Keynote at #360flex is about to start to the sounds of beat sequences. Why hire a DJ if Sean Moore, a remote Flex developer can call in via Skype from Colorado with video camera on and start spinning his disks? Tom is projecting the video on three large screens and the music goes through the speakers.

Great job, @seantheflexguy! If we had more female Flex developers there, all 365 attendees would be dancing. How about introducing discount for girls at the next #360flex?

During the first part of this keynote the audience thanks speakers, volunteers, sponsors, and John’s wife Nicole for making this conference happen.
The second part of the community keynote is like an annual visit to an accountant. The organizers open up the books. Literally. It’s the moment of truth and transparency. The first slide showed the expenses “the money out”. Then goes the slide with “the money in”, then the pocket change – the difference  between the in and out.  I’m not going to publish these slides here to give Tom and John some room to play before they’ll submit the final numbers to IRS.

I sincerely hope that this public bookkeeping will stop soon, which will be a good indication that Tom and John are finally making some real money for all the hard work they put organizing this excellent independent conference for Flex developers.

There’s one more tradition of the community keynote: Tom announces that this was the last time he was organizing this conference, and he quits. I understand his feelings. I have similar state of mind after finishing writing yet another book. Last month it was the 6th time when I said to myself, “Never again!” But I realize that I’ll write yet another book too.

But let’s observe the protocol and thank Tom for his hard work and say,  “@lordbron good luck in your future endeavors!”

Then the mike goes to Ben Stucki who shows a quick demo of the Reflex framework of components that are a lot lighter than their Flex peer: 40Kb SWF vs. 400KB. Ben, as usual, wears his “always on” baseball cap.  @AmyBlankenship posted the following on Twitter: “Wondering if the top of @BenStucki ‘s head exists…”

Now seriously. Ben has very ambitious task. I’m not sure if Reflex will reach production quality any time soon, but I see at least three possible positive outcomes of this effort:

1. Adobe will learn from Reflex how to create lighter Flex components
2. Ben will create a niche job market for his company – the firms that need fast and light components will be hiring him for development of specialized custom components.
3. Tiny SWF may be in demand among the twenty minus one vendors of Smart Mobile devices.

Then I spent half an hour listening to Renaun Ericskon’s talk “ActionScript Tips for iPhone Games.” He’s the guy if you need to optimize your iPhone application written in ActionScript.

When I’ve heard that Adobe open sourced the data visualization code, my naïve mind took the price of Flex Builder Professional ($699 = $249  + datavisualization) and deducted datavisualization. My formula produced the new price, but I’m afraid that Adobe will apply different logic and the price of Flash Builder won’t go lower than $699.

Hint. If you want to be cool this season, keep saying that you never use the Design mode in Flash Builder. Or even better – use IntelliJIdea.

My final three-hour technical session was “Comparing Flex and Silverlight” presented by  Jun Heider and Eric Fickes. These guys did a very good technical comparison of two products. Start taking Silverlight seriously. I’d be very interested to compare the licensing costs of deployment of an enterprise data driven application utilizing binary protocols in Flex/LCDS/BlazeDS vs Silverlight/IIS. Without these numbers it’s hard to recommend one or the other technology to the enterprise customers.

During this presentation I’ve also enjoyed watching the monkey dance of one of the Microsoft’s billionaires.

On the way home, @jefftapper told me that the new version of the Flex 4 Training from the Source book will become available. This time it’ll consist of two parts, and the first part will be available in April. In the past, I bought the Flex 2 and Flex 3 editions of this well written training manual, and will definitely buy the Flex 4 version too.

Summary

Here’s a recap of some things I liked about the #360Flex circa San Jose 2010:
1.    Lot’s of power outlets and extenders.
2.    A vending machine with disabled dollar slot was dispensing the cans for free.
3.    80% of presentations are done by independent Flex developers.
4.    As always, this conference was very friendly and informal

When/where is the next 360flex? Anyone knows? I need to book the flight early.

Yours
Yakov

360flex, San Jose 2010, Tuesday

On Tuesday, I’ve attended a couple of panels and 2.5 sessions.

The morning panel was titled “Principles of RIA” and was about bringing animation and effects to your RIA to make it more engaging. For some reason it didn’t get me excited as I have to deal with more prosaic issues on a daily basis.

The next hour and a half I spent sitting on the floor in the overcrowded room where Deepa was reviewing new features of Flex 4, which were not Spark components.

During the lunch I was invited to speak at a conference in Mexico and discussed specifics of working as a consultant on government projects.

Then, I made a wrong choice because of the misleading title – I was expected to see more advanced stuff, but it was an intro type session. C’mon, stop writing ANT manually – check out our free plugin FX2Ant that generates ANT script from your Flex project in seconds.

My next selection was the session on Test Driven Development (TDD) by Elad Elrom. This was  the best session of the day hands down. There are situations when TDD can save project development cycle. Writing tests before the actual application is written forces people to better understand the application being developed. Ten year ago using UML-based code generators would have a similar effect –  we had to think before code, but we’d had to test code manually.
In the 21-st Century, the legions of low skilled people rushed into software development and the more coding generated and tested automatically the better.

During Elad’s presentation I’ve learned a new term for something that we all experience in the corporate world: Asshole-Driven Development. Here’s the slide on the subject:

The technical part of the day was closed by another panel. This time it was on the business of software – how to estimate development cost, how to talk to clients, how to run teams etc. This topic drew a lot of interest among the developers, but to me, most of the answers were sugarcoated. The panelists were saying the right things, but to my taste, it was not open enough. There is a lot more BS in this area than it was presented.  I liked the comments made by RJ Owen (he was on the panel) – RJ has a good sense of humor.

A couple of takeaways from this session are:

1. Development can be good, fast, and cheap – pick two.
2. When you are developing a project, it’s like working in the construction business. The difference is that instead of wood and bricks you have to use live kittens – they move, play, fight…

The level of the attendees is different. For example, one person told me that he wrote a large Flex application – 8000 lines of code in one file. But he understands that this is not right. In today’s podcast The Flex Show one girl said, “We use a lot of Flex, especially for our front end.” Nice!

Organizers of the conference marked each presentation by a level of complexity: 100, 200, and 300. Mine was marked as 300, but one guy stopped by saying the he loved it even though it was of a level 400. He also said that during the preso I “sold” a lot of our copies of our upcoming book. I was not presenting to sell books, but hey O’Reilly, have you heard this?

At the end of the day I went for dinner to P.F.Chang’s with Shashank, Tom, Jeff, and John and group of other people. Five Adobe evangelists were eating there already. We’ve asked the waiter to give us a table far from them assuming they might need privacy to discuss some secret things, like the date of Flex 4 release. He-he, if they’d read my yesterday’s blog they’d know that I calculated that date already.

For me, it was the second day in a row at P.F.Chang’s. I was the only one who have been there already. At this restaurant, they bring you the bill and fortune cookies at the same time, I guess, to ease the pain.  Shashank’s cookie had something about multi-touch, which is a good sign since he’s presenting on Wed on this subject.

Wednesday is the closing day of the conference.

Another day, another dinner at P.F. Chang’s.

Yours,
Yakov Fain

First notes from 360Flex 2010 conference

I’ve arrived to San Jose,CA late on Sunday. By coincidence, there were three other speakers on the same plane from New York: Shashank Tiwari, Elad Elrom, and Jeff Tapper.  A short taxi ride to Marriott and one of the conference organizers, Tom Ortega, gives us a warm welcome in the lobby, “Hello guys! Please don’t do it again. Don’t get on the same plane next time – I can’t afford to lose four speakers”.

After a quick check-in to a nice room I spent a couple of hours drinking with a flex crowd in a couple of bars.

The morning after.

The shuttle bus took us to the huge eBay campus. Most of the people on the bus DID NOT have iPhones, can you believe this? Tom was greeting everyone at the door.
Several hundred of people gathered to hear Adobe’s Deepa’s keynote. Her conference badge reads “I’m Deepa”. Nice! On the next conference I’ll steal this idea from her and will carry the tag “I’m Yakov”.

I’ve been looking at this crowd and was thinking to myself, “If Tom and John will keep 360Flex running, in two years it’ll become bigger than Adobe MAX for Flex developers.”

In the morning, I’ve attended a presentation on Web analytics (Google vs. Omniture) and after lunch, my yesterday’s drinking buddy Jesse shared with the grateful audience his use of Flex plus two (!) more frameworks in the same project. Jesse is a good presenter, and I always come to see him regardless of the subject he’s talking about.

At 4PM I delivered a preso titled “Boring Presentation on Libraries and Modules”. A hundred people gathered in the room (here they are), and I was talking for 80 minutes and then was answering questions for another 25 minutes. I was pleasantly surprised that a non-flashy subject of modularization gets such an interest. People started working on decent size enterprise RIA’s and need to properly cut them into pieces.

This presentation was videotaped and sooner or later will become available online. For now, I can offer you a video of its shorter version that I made last year at Flash Camp Wall Street.
The beer was served right at eBay and the networking part began. These are some things that I’d like to share with you.

1. After certain conversations with certain people and by applying the Sherlock Holmes’ method of deductive reasoning I came out with the release date of Flex 4. To be on the safe side, I’ll give you two dates: March 29 or March 31 of 2010. Let’s wait and see if I got it right or I got it right.

2. I met a guy who runs a tiny company of a couple of Flex developers. He was complaining that it’s very difficult for him to find Flex talent for his projects because he couldn’t afford to hire and keep on billing $100 per hour consultants. He was surprised to learn that our company can easily offer him senior (I mean it) Flex/Java developers working remotely for a lot more modest rates. This is not the first time I hear that people assume that Farata Systems works only for Wall Street giants. We have lots of happy customers and the smallest one has only two employees.

3. I met a guy who has a nice visualization piece that may compliment our ClearBI Flex reporter. For some reason, there’s a surge of interest to ClearBI during the last month or so. We haven’t open sourced it yet, but if you want to play with it, here’s the URL of the demo server.  You may find some old screencasts showing how to create a custom report based on the raw grid of data, but try just hitting the buttons on the screen and you should be able to figure out how to add grouping, sorting, computed columns with formulas, and other goodies to create a report to your liking.

The dinner at P.F.Chang with several flexers was closing my first day of this very friendly and high-tech event. Looking forward for today’s learning.

Another day, another framework.

Your’s truly,
Yakov Fain

Two weeks, two flights, two conferences

The first two weeks of March I’ll be vacationing in training rooms – teaching and learning Flex.  I used the word vacationing because I love this part of my work the most.

March 1-2: Advanced Master Class on Flex in Brussels, Belgium. This public 2-day training becomes more and more popular. During the last 8 months we’ve taught this class in New York, Boston, Toronto, London, and Moscow. To the best of my knowledge, no one else offers such an advanced curriculum as public training.  On the night of March 2 I’ll be co-speaking at the Belgium Flex Users Group.

Here’s something you may not know. Viktor Yanukovich, the newly elected President of the Ukraine will visit Belgium on March 1. The real reason is not to  meet political leaders of Belgium and European Union, but to attend our class to become more flexible and invite Farata Systems to teach the same class in Ukraine in June of 2010. We’ll definitely consider this.

March 7-10: On arrival from Belgium, I’ll just have time to laundry my Farata t-shirts and have a couple of dinners with my family, and then board the next flight to San Jose, CA. Yep, it’s time for 360Flex conference, which as of today is my favorite Flex gathering. This is a No BS event. For independent developers by independent developers. 40 sessions, 2 panels, 4 Sunday Hands-On sessions. Networking. Beer. Good energy.  Solid technical content.I even recorded a 40-sec video to share with you my excitement!

I’ll deliver an interesting and useful for enterprise Flex developers talk titled “Boring presentation on Flex libraries and modules”.  The rest of the time I’ll spend in the meeting rooms listening to what other developers are up to.

In the evening, I’ll be glad to join you for a Johny Walker. Be there. Join several hundreds of Flex developers who are in the know!

Yours truly
Yakov Fain

LCDS 3 Becomes Less Affordable

A month ago I wrote a blog titled “The RoadMap for Adobe LCDS 3”.  I was so naïve suggesting cutting the prices for LCDS licenses!

The inexpensive ($6K per CPU) departmental license is discontinued. LCDS Express edition is gone.

Get ready to pay around $30K per CPU for Enterprise LCDS 3 license.  It’s really sad that Adobe marketing is killing a great product created by Adobe software engineers.

After reading the chain of comments to the blog of Anil Channappa, LCDS and BlazeDS project manager,  it seems that Adobe does everything to ensure that our open source Clear Toolkit with BlazeDS will become even more popular.

Clear Data Builder (the flagship piece of Clear Toolkit) generates both Flex and Java code from POJO or SQL, supports data sync between different users (yep, with ChangeObjects under the hood), does the server side data push over AMF, knows how to deal with master-detail (hierarchical) collections, supports transactions, has smart  DataForm and Validator components.  We also know how to make BlazeDS scale to support many concurrent users.

Almost forgot, we have generators for AS3 classes from their Java peers and a generator of ANT build scripts from your Flex Builder projects.

Do you know the cost of Clear Toolkit per CPU? You got it. It’s zero dollars, euros, rubles and rupees.

At the time of this writing Clear Toolkit doesn’t support Model-Driven development…Read my lips.

If there is a customer who wants to hire us and shell a little bit of cash for R & D, we can add a support of RTMP too (shared copyright only).

Adobe also stopped offering commercial support of BlazeDS. Well, you know where to go for this.

Some companies have short memories. When Flex own by Macromedia, was server-side only and priced at $15K, nobody knew about this product. After the merger in late 2005, Adobe did a really smart move by moving this great tool to the client side with reasonably priced Flex Builder.  Now, it looks like Adobe re-hired those old Macromedia salesmen. Big mistake.Huge.

Yakov Fain
P.S. I’d like to use this opportunity and invite Flex developers living in Europe to attend our Advanced Flex Master Class in Brussels, Belgium on March 1 and 2, 2010. We still have a couple of seats available.