Archive for May, 2008

Grey Line

Yesterday I realized that my Friday’s calendar is wide open, and I decided to take the test called Adobe Flex 2 Developer Exam”. Well, I knew plenty of other ways to kill Friday, but I had to take this exam and here’s why. About two years ago I went through training and became Adobe Flex Certified Instructor. At the time, Flex2 Developer Certification did not exist.

Last year, my colleague also became certified Flex instructor, but he had to pass the developer’s exam first. I was happily giggling to myself till March of 2008 when I had to contact Adobe about purchasing the courseware for my Flex 3 class. They picked my records and found out that I was never certified as a Flex developer. Yes, they realized that it was not my fault, but said – that they wouldn’t let me use Adobe’s courseware until I pass the developer’s exam.

Finally I found a day to take the test. The next question was how to prepare for it. Needless to say, that being good developer has not much to do with passing the multiple choice computer based exam, but I had no choice.

In the past, I went through a similar certification exam in PowerBuilder and Java and started googling for mock exams. Let me tell you, this is not Java, which has tons of free test emulators. I found one and it was not free. The name of this Flex 2 test is Attest. It started with forcing me to install more than 60Mb of .Net framework files. Isn’t Flex a better no-install solution for mock exams for Flex? Not too kosher , but I did not have a choice.

Attest had a free trial 35-min test with emulates a half of the real one. The passing score was 72, and I decided to take a shot without any preparation. To my surprise I got 68. Actually, I’d pass the test but one of the questions in the test had a wrong answer. This gave me hope, and I spent half a day skimming through Adobe’s courseware that I use for teaching. If you don’t have it, get the book “Training from the source”. Get the new one even though you’ll be preparing for an old exam. Then, I skimmed through first 200 pages of the book “Essential ActionScript 3.0”, and finally, looked at the information about charting in livedoc . This was my preparation.

I’m sure, eventually the folks that created Attest will get their act together and will release a Flex or AIR version of this test, but even now, I’m thankful for giving me an idea that if I did not know that HLOC chart was a good selection for displaying financial data, I would not pass the test.

Today, I’ve arrived to one of the closest authorized testing centers. These guys take this process very seriously. First, they’ve confiscated my cell phone so I would not ask help from friends like in the popular show “Who wants to be a millionaire”. Then, I’ve signed up a document that was forbidding doing anything but breathing and typing. After that, the guy asked me,
“How many erasable pads do you need to take with you?”
“Excuse me?”
“ You may need to take notes during the exam, but you can’t have a regular notepad and a pencil”

I wonder if anyone ever went through a polygraph test? How was it?
Then the guy showed me to a specially designated and equipped room. While going there, I was thinking to myself, “If I knew they would not ask me to take off my shoes, I’d prepare some mini index cards and put them inside the heels”. But when we’ve arrived to the room, I realized that it would not work – a grim poster read “The room is under constant video and audio surveillance”.

The poster did not lie. I noticed a camera under the ceiling, and the guy politely said, “After you are done with the test, please remain seated, just say aloud that the test is over. I’ll be watching you anyway.”

And the test began. It consisted of 67 questions, you’ve got 75 minutes, and the passing score was 73%. There are four categories of questions:
Flex Application User Interface Creation
Flex System Architecture and Design
Flex Application Programming Fundamentals
Interacting with Remote Data and Flex Applications.

The questions were not too difficult, but sometimes they tried to trick you hoping that you’d forget when to use the property lastResult, and when just result, what are the method signatures of some functions, and some basic OO stuff. I was really surprised seeing there a couple of UML diagrams, and I was expected to remember UML notation and identify one of the four classes that corresponded to that diagram. Some questions were poorly formulated (was it on purpose?), and this could be the only reason I did some wrong (I do not know which ones though).

Anyway, I got 83% and passed the test, which did not make me happier.

This test did not prove much. Any young person with good memory can pass this test after reading a couple of Flex books. Memorizing method signatures and other information that is just one click away in the real world and remembering these things does not make anyone better programmer.
Such certification is useful only when you are applying for a job, and your employer has no qualified people to interview you. The fact that you are certified gives the employer some peace of mind. I’m not sure though how to check if the person who claims that s/he’s certified really is.

That’s my certification story. I wish you good luck if you decide to get one too. Hopefully, Adobe will release the Flex 3 version of the exam before the release of Flex 4.

Yakov Fain

Comments (1)

 

Grey Line

Due to last minute cancellation, I’ve got two seats available in my
next week’s Flex training. If anyone is interested to jump in,
register for the class at http://www.eventbri te.com/event/ 109578753Enter the discount coupon flex3halfprice to get 50% off the tuition.

Regards,
Yakov Fain

buy CD Afu-Ra online CD Akron-Family albums download Acherontia Styx–Tvmvlvs Seraphim Al Pitrelli A Beautiful Machine Absolum online albums Alice Smith online CD 324 download mp3 Absolute Beginner download Amity Lane A Beautiful Machine buy albums Andy Partridge and Harold Budd online Acid House Kings A Beautiful Machine Alcazar A Beautiful Machine Absolum buy albums April Hill download albums Ashtrax buy music Animals buy mp3 Aglarond buy 13 Candles A Beautiful Machine buy music Azucar Moreno buy albums Ali Wilson Abhorrence A Beautiful Machine Absolum online Adam Brand A Beautiful Machine online music Amel Bent download tracks Aceyalone with RJD2 buy mp3 Abaji online CD Axel Bartsch and Asem Shama online music Anti-Nowhere League buy music Adam Richman download music Ananda Project online CD Ai Kawashima buy music Aa1 buy tracks Ali Wilson And DMF online tracks Asha Bhosle online mp3 1200 Mics buy CD 666 Allauddin Khan A Beautiful Machine Absolum download music Arnaldo Antunes download CD A Reminiscent drive download albums Angelo buy music Austin Leeds And Terranova buy music 9Th Wonder and Buckshot download mp3 Anti Hifi Vs Lou Chano download tracks Anne-Sophie Mutter online tracks Alice in Videoland download Arcane Device A Beautiful Machine albums download Andrew Bennett Azymuth A Beautiful Machine Absolum albums online Angel and Celedonio Romero download mp3 Anal Massaker buy tracks A.Blechinger online mp3 Alio Die and Antonio Testa download music Andre Previn online music Anal Nosorog buy albums Antropofagus Alex Carpani A Beautiful Machine Absolum buy CD Alex Cartana Vs Deekline and Wizard buy CD Argy online CD Alec Empire online Aarti Ankalikar Tikekar A Beautiful Machine download music Amp Fidler albums download Area 555 online albums Artento Divini buy albums Alex Under buy CD Alex Bugnon albums buy AntiPop Consortium buy music Andy Irvine and Paul Brady online CD Arovane download mp3 5pmvisions download Al Di Meola A Beautiful Machine buy albums Alma Andina albums buy Aube download CD Aga Zaryan buy Apocalypse A Beautiful Machine buy mp3 ACCEPT (Live Osaka’1985) download mp3 Aardvarck online albums Amoeba buy mp3 Akira Rabelais download Adam Zampino A Beautiful Machine

Comments

 

Grey Line

Our popular code generator Clear Data Builder 3.0 will become available free of charge.
Originally, Clear Data Builder (CDB) was released as a command-line open source code generator a.k.a. DaoFlex.   We’ve  submitted it to Adobe Flex component exchange about two years ago, and it quickly became one of the most downloadable components. 

Its next incarnation was a commercial plugin CDB 1.1 for Flex 2. 

The upcoming release of CDB 3.0 plugin becomes  yet another contribution of Farata Systems to Flex community.

This version is a substantial redesign – now it’s based on Eclipse JEE IDE, works with Flex Builder 3, supports code generation for  LCDS, BlazeDS and OpenAMF, includes templates to generate AdvancedDataGrid and more.  

We’ve updated CDB documentation and uploaded the Beta version of this Eclipse plugin at www.myflex.org  . 

I’ll be demoing CDB 3 Beta during the public Flex 3 training that I’ll run in New York City next week.
We’d appreciate all your feedback and bug reports.  Over the Summer, we are going to turn all our components into freely available products.

Yakov Fain

Comments

 

Grey Line

My next week is a mix of business and sightseeing in India. I’ll be delivering two talks and one workshop at the Great Indian Developers Summit .

First Jesse James Garrett, who fathered the term AJAX, most likely will tell the audience that his baby is in great shape, and in my talk I’ll compare various RIA offerings suggesting to stay away from Jesse’s baby in the enterprise environment. I did a rehearsal of this speech at the AJAXWorld in New York City earlier this month explaining AJAX developers that they are going in the wrong direction.

I’m used to speaking in front of large audiences, but I always ran hands-on workshops for small groups of people. But the conference organizers told me that my workshop “Developing RIA with Flex and Java” will be attended by 60 people with laptops. This is a bit too much for a hands-on class, but India likes it big.

Yet another talk is not technical – it’s about American culture of enterprise software development. Most of the materials for this talk are taken from my e-book “Enterprise Software without the BS”. It’s not a not politically correct presentation where among other things I’ll be talking about the outsourcing as I see it. These are a couple of bullets from this talk:
-What’s wrong with these Indians?
- What’s wrong with these Americans?
- Are you underpaid?
-What’s the difference between contractors and employees
- Political stuff and more

I’ll take my camera with me and will take notes – expect a couple of blogs titled “Me went to India”

After returning back I’ll teach a small public Flex class in New York City, and then back to software development.

In June, I’ll deliver one more talk on facelifting SOA with RIA at the SOA World conference and will immerse into the Summer ’08.

Yours truly,
Yakov Fain

Comments

 

Grey Line

Flex 2 has been released in the Summer of 2006 and it was a mini-revolution in the RIA space. Almost nobody knew about Flex 1.5, but now almost everyone at least heard about this software. Flex 3 has been released in early 2008. It has a number of useful new features, but it was not a major release. In my opinion, a more modest 2.5 would suffice. We are expecting now. Flex 4 will come to this world next year and while Flex team has announced a number of very interesting syntax improvements, I’d love to see more fundamental improvements in this great RIA tool.

The roadmap
for Flex 4 has the following statement:“Features could include compiler performance”. The word “could” does not sound too promising though. I really hope that Flex team will find a way to change “could” for “will”.

Flex compiler is slow. During eighteen months between releases of Flex 2 and Flex 3, Adobe was not able to make any serious improvements in this department. Flex framework is well designed, and one of the most popular words among developers who start using Flex is “cool”. And it is cool as long as you keep working with small applications. But you’ll start using this word less often if you start working on a real-world project that includes say 50 views.

Add a melancholic Flex Builder IDE on top of a slow compiler, and it becomes irritating at times. During eighteen months between releases of Flex 2 and Flex 3, Adobe was not able to make improvements in this department either. Other than fixing sporadic out-of-memory errors, and a new profiler it’s pretty much the same tool. Besides being slow, periodically, Flex Builder starts rebuilding its workspace, which is a process with an uncertain ending.

My current application consists of one Java and about 25 Flex Builder projects (it’s split into separate modules and libraries to avoid creating a large monolithic application) and one Java project. Now you need to be very careful with inter-project dependencies to make sure that Flex Builder will not choke up.
This project for whatever reason started with the Cairngorm framework that performed its role perfectly – it acted as a crazy glue. With its requirement to register all events and commands in a central location, all modules are glued together, which defeats the purpose of modules and puts fragile Flex Builder on its knees.

By the end of this year Jetbrains will release IntelliJ IDEA that will support Flex, which should be a good IDE – these folks know how to create IDE’s. But it’s going to be using the same Flex compiler, so I do not expect major performance improvement s comparing to Flex Builder.

The other serious problem is that Flex generates large bytecode (swf files). Any mid-size application produces about 1 MB of code that has to arrive to the client before the user will be able to work with the application. Intranet users will not complain because they are sitting on a fast LAN, and loading this megabyte takes about 10 seconds. But Internet users sitting on the low-bandwidth network will the wait for a minute to see the first screen of your application written in Flex. One of the main advantages of RIA is that the users would not need to go through ten roundtrip to the server to purchase an item online. On slow networks, people were abandoning these sites. Flex applications store the state on the client (your shopping cart, billing a shipping info, et al) and there is no need to o these round trips to the server.But the users want to see this only page faster.

Flex 3 somewhat mitigates this problem by allowing creation of applications, which caches Flex framework on the disk of client’s PC. If before your Flex application was a monolithic 1Mb, now it turns into two smaller parts: 500KB of your code plus 500Kb of so-called Flex framework RSL, which will be downloaded to the client’s PC only for the first time, and if you are lucky, the user may already have this cached frameworks as a result of visiting other Web sites created with Flex. It’s a step in the right direction as long as the user is willing to wait on his 500kbps “broadband”.

There are some tricks that improve perceived speed of a Web application – an application can display something using a pre-loader while the rest of the application parts are being downloaded. But you still need to download this initially hefty application. Flex produces swf files with only two frames. To see your main application screen (the second frame) all required code has to be loaded (the first frame). Will the end-users wait?

Farata Systems has written a utility for Flex Builder 3 called Fx2Ant 3.0 (it’s in Beta now), which uses Adobe’s optimizer and automatically generates optimized Ant scripts for Flex Builder’s projects reducing the size of produced code. But I want the original swf files to be a lot smaller.

A number of Flash developers embraced Flex and started creating their widgets with Flex framework. But after the project development is done, some of them will re-write a large portion of it (again) in Flash removing the fat Flex framework that turns a 50K Flash widget into a 300K Flex equivalent.

I like Flex – it’s the only game in RIA town at this point. In2009, the situation will change though. Competitors will offer their RIA platforms, and will give Adobe a run for the money, which is beneficial for all of us – every Microsoft needs its Google, if you know what I mean.

Yakov Fain

Comments

 

Grey Line

New specification on GMXML syntax for state has been posted http://opensource.adobe.com/wiki/display/flexsdk/Enhanced+States+Syntax

The idea is to make states more declarative and eliminate scripting as much as possible (completely in most cases). That should allow better model for programmatic skins for designers and simplify integration points.

Personally I think it is much simpler model, and it is going to get better acceptance just because of that. I would reserve my final review till the time new code generator is available so I can see integration points for really cinematographic applications our clients learned to love.

It looks also that MXML compiler goes through major overhaul. Please note “color.down” syntax – finally we see departure from old conventional XML markup toward DMXML ( Dynamic MXML). Seriously, if the new compiler is going to depart from pure XML syntax, let us talk about the new MXML syntax now – including color.runtime.down and other data related things that go way over simplistic CSS model.

I would also expect States have extensions for substate or at least device formats given Flex 4 release timeline. In other words,  what works for desktop is different from console and definetly from the phone – including selection of the controls, events and scripting. I would expect compiler to emit different SWFs for different format with full support through hierarchical states.

For majority of applications it is very significant change in the way customization and skinning is done. Switching to programmatic skins approach allows significantly reduce the size of flex applications and provide “streamable” applications with core functionality loadable fast. I do believe that major overhaul of tools to support it even with current model has to be done way before Flex 4 release. For large applications I have seen benefit in 30%–40% size application reduction and main problem for wide adoption is “dark programming” that makes it art of few.

Well, thanks to Flex team for “heads up” – back to daily tasks

 

Sincerely,

Anatole Tartakovsky

Farata  Systems

 

 

  

Comments