Archive for March, 2007

Grey Line

Just stop doing what you’re doing and watch this Youtube video now…Talking about best practices in creating GUI… I teach Flex at NYU, but little did I know about amazing experiments that are going on in the labs of this school. Adobe should invest in this amazing research, unless it’s too late.

Yakov Fain

Comments (7)

 

Grey Line

We’ve created a first community site www.myflex.org to serve as a repository for commercial Flex components and Eclipse plugins developed by independent vendors. The web site is in still in Alpha, but will go to Beta next week. We are starting with four components developed by us (Farata Systems), and we invite independent vendors of components for Adobe Flex or Flex Builder plugins to offer their products for sale (or for free) at MyFlex.org.

Currently our web page (http://www.faratasystems.com) is visited by more than 11 thousand unique visitors a month, this number is growing steadily, and we’ll promote myflex.org on our site. Hopefully Adobe will give us a hand in promoting Flex component development by independent vendors. Some of these visitors may become customers of your components as well.

Our message is clear – let’s turn Flex into a Rapid Application Development tool.

The following four Eclipse plugins will be available for sale in April (pricing will be announced shortly):
Flex2Ant – this Eclipse plugin instantly translates the settings of your existing Flex Projects into ANT build scripts, so that you can build your modules, libraries and applications outside of Eclipse and create larger builds integrated with J2EE projects. What takes weeks on the middle-size project, now can be done in seconds. Additional size-optimizing builds prepared by Flex2Ant may also substantially cut down the download time of your large applications.

Flex2Doc –this plugin allows you to build the documentation for your project with a “point and click” . Then you can also upload your documentation to the corporate or the community server, so that it becomes shared by other developers.

Flex2Log – this component provides a number of configurable implementations of log targets and an interactive control panel. You can target you log information to IDE(Eclipse),local or remote server and other destinations.

DaoFlex – this is a commercial version (Eclipse plugin) of our popular open-source code generator. It takes away complexity of writing Java code for communication with databases via Flex Data Services. You do not have to know Java to create end-to-end Flex-Java-Database CRUD application in minutes.

After speaking, blogging, and writing about Flex being a good tool for Web sites development, we decided to put the money were our mouth was and have developed www.myflex.org in Flex, so Flash Player 9 is required. Please spend some time with this site and send us your feedback regarding its usability. Note the buttons Hide Header and Desktop Mode on the Products screen. The latter allows our Web site to “break free” from the Web browser’s web. This mode should remind the users that RIA are technically desktop applications that just happened to be delivered over the Web. That’s all. We’d really appreciate your suggestions regarding the Web site design, usability and improvements.

Please have mercy on us as this is just the Alpha version of the site – let us know if something is broken.

Let’s start making some money on developing and selling Flex components. It’s good for us, it’s good for Flex.
Yakov Fain

Comments (7)

 

Grey Line

I’m writing this right after the opening keynote of noted Douglas Crockford, creator of JSON. It’s been a year since the first AJAX conference took place here in New York. What has changed?

AJAX speakers have one thing in common – most of the time they like to talk about all kinds of issues that AJAX has. This conference has started on the same note. Douglas went through lots of issues that AJAX and deployment on the Web. Security, cross-scripting, lack of W3C standards that make sense in the real world, accessibility is not being addressed… Last year I’ve heard exact same things . Actually, there is something new this year: as per Douglas, there is about 200 AJAX frameworks available and he expressed hope that this would be a shake-up year and many of these frameworks will be gone in 2008. We’ll see.

Comments (1)

 

Grey Line

This Sunday we’ve spent teaching a very intensive workshop on using Flex. This bootcamp was part of the AJAXWorld 2007 in New York that officially starts tomorrow.
This is how it went – every attendee came with his/her laptop with preinstalled Eclipse, FlexBuilder, Java SDK, Tomcat, MySQL Server database. We’ve emailed them instructions on how to do this, but came earlier ready to help with installation/configuration issues, but no help was needed. I spent the first four hours running a hands-on introduction to Flex. And people were running my example applications on their machines – no problem. Data Binding, Custom Events, RSS read using HTTPService, communication with a server-side Java application using RemoteObject. All was covered in just four hours! I asked people if they wanted me to slow down – not at all. It was a really good crowd.

After lunch Victor went through the intricacies of the server side development database applications with Flex. Many of his samples were geared toward pointing people at potential issues of configuration of distributed applications that include Flex, Java and SQL. Then he gave to the students our free library of components that we’ve developer at Farata Systems and demo’d a new DaoFlex Eclipse plugin that makes creation of Flex-Java-DBMS applications a breeze. We’ll spend the next three days at the Ajax show – you can find us by the table with our RIA book. We’ll be also showing a number of Eclipse plugins that turn Flex into a Rapid Application Development tool. Stop by if interested.

As to the bootcamp, we’ll be offering it now more often to jump-stat development of the Flex Java enterprise projects. We’ll be offering two versions of this bootcamp – one or two days based on flex-maturity level of development teams.

Hope to see you at the Ajax show.

Yakov Fain

Comments

 

Grey Line

This is what came to my e-mail: “We are researching ways to move from Swing GUI to browser GUI for some networked applications… As you know, the ContextMenu
hideBuiltInItems property doesn’t turn all of the Flash menu items off…The bottom line: if we can’t hide all of the menu items, we can’t use Flex as our solution. This would be a very sad decision, because Flex is an otherwise terrific tool.”

A very typical approach.

First of all, Adobe engineers have elaborated enough on the subject, the latest and very detailed answer being provide by Kevin Hoyt in this link http://weblogs.macromedia.com/khoyt/archives/2007/01/context_menus_r.cfm. Add items, remove items, globally or per object, but you won’t be able to get rid of the two – About and Settings… – in Flash Player Virtual Machine as you won’t be able to get rid of the brakes in your car. Buy it with the brakes or don’t drive until Apollo arrives. Period.

But let’s look at the bigger issue. There is a legacy client/server application that for a _business reasons_ needs to be ported to the net. Having spent almost 6 years in Client/Server to Ajax/J2EE conversion projects, I observed that setting the expectations right is the key here: move from Swing or any C/S to browser GUI – changing a technology platform – results in a redesign and re-architecture. I would certainly pose the following row of question:

During the re-design, which features of the original system, including, but not limited to UI should be retained? Which features should go? Which features should be added?

I am not even relating to the fact that if we were to disable Settings… we could forfeit ability to save application data to the local storage. In the intranet scenario we can, theoretically, assume that Flash Player settings are correct to begin with. It is obvious anyway, that Flex allows much friendlier and less-clicky UI then the one centered around context menus. No need to wait for the user to right-click and _discover_ the choices, we could have proactively display them as soon as the user moves over the object. Besides UI, lots of things change when you move from 2 tiers to 3. You can not map them one to one, so the ContextMenu might be the least of your worries.

Re-training costs? Sure. Not to mention that you’d have to justify the very cost of the port. But if the _business goal_ it to increasing the user base/revenue, you would not have to concentrate on the ContextMenu. Technology is not the problem here, it’s a business issue.

I am not saying that there is no way that  ContextMenu can be possibly hidden and overlapped with your own, especially in the Intranet. My point is that it might not be even worth it.

Victor

Comments (4)

 

Grey Line

I came up with an interesting way of figuring out where professional Flex developers live without trying to break into secret underground Adobe vaults where classified sales info is stored. Here’s the deal, but first, I’d like to stress the word PROFESSIONAL here, which means people who use or are planning to use Flex for the real-world project development. Here’s my logic – our book RIA Development with Adobe Flex and Java has been printed and the publisher ships it all over the world. As of today, this is the only advanced book on programming enterprise applications with Flex, and this book is not cheap even for American programmers. This technically means that if someone purchases this book, s/he’d better be damn serious about programming with Flex.

I’ve asked the publisher (Sys-Con Media) to send me statistics (not the abs numbers but percentages) of the book paid orders by country, and these are the numbers:

Country Orders

UNITED STATES 61.26%
SPAIN 5.11%
AUSTRALIA 3.00%
ENGLAND 3.00%
ITALY 3.00%
GERMANY 2.40%
CANADA 1.80%
AUSTRIA 1.50%
NETHERLANDS 1.20%
RUSSIA 1.20%
SOUTH KOREA 1.20%
SWEDEN 1.20%
BRAZIL 0.90%
DENMARK 0.90%
INDIA 0.90%
SAUDI ARABIA 0.90%
SOUTH AFRICA 0.90%
THAILAND 0.90%
BELGIUM 0.60%
ISRAEL 0.60%
JAPAN 0.60%
SWITZERLAND 0.60%
VENEZUELA 0.60%
ARGENTINA 0.30%
CHINA 0.30%
COLOMBIA 0.30%
CROATIA 0.30%
FINLAND 0.30%
FRANCE 0.30%
HONG KONG 0.30%
MEXICO 0.30%
NEW ZEALAND 0.30%
PHILIPPINES 0.30%

Pretty interesting picture, isn’t it? No surprises that the most of the orders came from the USA (these filthy rich Americans). But I was pleasantly surprise by the fact that

Spain came second. Wow!

Italy is the fifth! Good job Marco Cassario!

Small Netherland is kicking Flex asses!

Russia made it to the first ten! Yes, spending money on computer books is OK. Good Job Michael Klishin!

What surprises me is that India, Denmark, Brasil, Saudi Arabia, South Africa, and Thailand purchased the same number of books.

What do you think of this statistics?

Yakov Fain

Comments (15)

 

Grey Line

I’ll spend the second half of March’07 teaching and learning about all these different but related technologies. After finishing an SOA project, my brain needs a good massage, and I consider all these conferences and training sessions as a luxury SPA. Here’s my plan (If you want to make God laugh, tell him your plans)

1. March 18. I’m running with my partner n intensive one-day Flex Bootcamp as a part of the AJAXWorld conference. It’s going to be an absolute hands-on class (everyone must bring their laptops), and we’ll create two working applications during this session: a fancy RSS reader in Flex, and a working Flex-Java-DBMS distributed CRUD application. In my opinion, this is a very good injection for anyone who’s planning to jump-start a real world Flex/Java project.

2 . March 19-21. AJAXWorld 2007 Conference and Expo, which has a number of world class speakers and I’ll turn from an instructor into a student. Meeting with so many smart technologists in the same place at the same time is a great way to learn. During this conference I’ll be also participating in our book signing event and will be available for any conversations. Our company is one of the sponsors of this conference, so look for a large sign Farata Systems and stop by for a chat.

3. March 21, 7PM. I’ll be presenting at Princeton Java Users Group on creating rich Internet Applications with Flex and Java. This is a free event, please come over, if interested.

4. March 26-28. I was invited to attend Microsoft Technology Summit – it should be an interesting event, where I’ll become a learner again. Microsoft has invited a small group of technologists to visit Redmond and meet with people who create Microsoft tools. As far as I understand, they have invited people from non-Microsoft camps, and I’m going there as Java programmer.

That’s all for March. In April, get back to regular a consulting/training/mentoring work – I need to pay my bills, you know. If anyone is interested in learning Flex attending evening sessions over five weeks, enroll in my class at New York University that starts on April 12.

Yakov Fain

Comments

 

Grey Line

Everybody knows that frameworks are the best way to develop large applications, aren’t they? This type of the common knowledge is dangerous – good indication that cycle is over and it is going to become obstacle. So, is framework friend or foe in the age of RIA applications?

I think frameworks can be bad for application development. Here are some of the reasons:

  • They enforce certain patterns, code generation and separation that may be not appropriate – you end up of more code that should not be there to begin with
  • More difficult to debug and maintain as you have a lot of framework code processing your flow – longer stacks, unpredictable reactions, extra bugs.
  • Forces thinking of “adoption” of the framework sample application as your application prototype

Most importantly, patterns like MVC are not necessarily best implemented as external framework. In RIA world, intelligent controls like SuperDataGrid, DataForm, etc can have databinding, all the way to the back-end and provide MVC patterns INSIDE of the control – giving you all the hooks dictated by pattern, but removing the complexity and extra code. In the age of RIA, more controls of that sort will emerge, forcing you to make a choice between conventional frameworks and controls that take care of you. When was the last time you thought of using framework on the top of Excel or Word or any other component that is self-sufficient for the end-user?
For me, frameworks that force to separate programs in views, commands, etc. are like forcing everybody to build/use cars with manual transmission. Manual transmissions are more efficient, have advantages in performance and easier to maintain/repair. They have most vocal advocates ( for record, never convinced the guy who is responsible for “usability” here at Farata that clutch is a good way to do it). They suck on small projects like in-town commute. As for the future (and present for some of us) – good luck finding one in the hybrid or electric cars. Platform is changing, more functions are in platform, less control needed on outside – just enjoy the ride.
Sincerely,

Anatole Tartakovsky

PS: I will spend next month collecting statistics on the projects that use frameworks and not use them – including code size per function and success / failure rates. I can be biased as I derive my current sentiment from the projects done 10-15 years ago and few “Save our project” kind of assigments I got involved lately. If you have good or bad experience using frameworks please send me your comments so I can include them.

Comments (9)

 

Grey Line

360Flex was not an typical conference. This was the conference for developers and by developers, indeed. That set the tone for all  presentations and aftertalks.

Here is my list of the most impressive presentations I had chance to listen to (sorry if I missed anyone – I had chance to be only @ one place @ a time) :

1. David Zuckerman provided an invaluable insight into FlexBuilder undocumented (or under-documented) features. He will be publishing it shortly (keep an eye on http://davidzuckerman.com/adobe/). Grab it and learn it by heart – this will save you countless of wasted hours in the FB environment.

2. Joe Berkovitz provided 2 sessions: one on automating FlexBuilder builds with ANT, and one on the lightweight framework. Both sessions should have been recorded and published as an excellent overview and hands-on training on the subjects. I felt compelled to make some adjustments in the way we generate ANT files in our Flex2Ant plugin – will blog on it separately.

As to frameworks, I hope their time with RIA will be limited – will explain why in one of the future blogs. It was interesting to watch the audience during Joe’s talk - he’s definetely is one of the best thinkers and speakers in Flex community. If someone can make things simple – he is the one.

3. Mark Piller of Midnight coders showed very compelling solution for a non-Java Flex development and deployment. Their code generators and class libraries provide efficient and comprehensive solution for all data layer functions and communications. If you work in a .NET shop and exploring Flex, they are your first (and honestly the only) choice. I will be watching closely their commercial offering for PHP and Ruby.

4. In his third day keynote, Ted presented refactoring and usage reference view in Flex 3, which is great help.  For me, profiler is the most important feature – I am tired of getting requests like, “Can you make our application mush faster and use less memory” – and spend hours to pinpoint the problems. It will go long way in also improving quality and reliability of the apps.

Here comes a little self-promotion.

I have been showing a bunch of Flex Builder plugins that we’ve developed and are about to start marketing. They are facilitating crucial areas of the application development – data layer, reporting, data entry, visual logging, documentation, building and hot deployments. These plugins complement FlexBuilder and FDS and make Java applications more “aware” of the new kid on the block. As a result, we established environment in which Flex and Java are active participants in each others spaces eliminating double coding and miscommunications. I also showed our FlexBI report writer working inside Eclipse as a 2-way approach to code reports with aggregates, expressions and computed styles. Reports can be edited by hand as a bunch of mxml tags and simultaneously you edit and test it visually directly in Eclipse. Reports also can be created by the end users on the fly.
We are proud to say that FlexBI was selected and presented by Adobe at the third day’s keynote.

That’s all for now – don’t miss your second chance to attend 360Flex in August in Boston. We are definitely be there – if not as presenters then as attendees.

Sincerely,

Anatole Tartakovsky

Comments (5)

 

Grey Line

A couple of weeks ago I stopped by at our publisher’s offices (Sys-Con Media) and they showed me our Flex book with the correct cover, but all pages were blank. Yesterday, I’ve got an email from them with the words, “Yakov your book is ready, stop by and pick it up”. The guys from production department are really nice, so they’ve attached this video just to show me that the book is really really finally super-duper ready. Check this out (the video file is large though).

The book was officially announced over here, and first will be shipped to hundreds and hundreds of people who pre-ordered the book. BTW, people who will purchase the book online should get the PDF version of the book right away, and will receive the printed version as well.
Sys-Con packages the book with a DVD that in addition to the source code of the book samples includes the video of all presentations from the Flex Seminar that took place last Summer in New York City. This package costs $69 USD. I’m sure some people will say, it’s still expensive. I have two answers to this, pick the one you like:

1. We (the authors) did not set the price

2. Anatole, Victor and I spent a year (in addition to regular work) writing this first advanced book on Flex, and I personally believe that it worth every penny.

If you are planning to attend the AJAXWorld in March, the book will be sold cheaper there, plus we’ll participate in the book signing event and will run one day hands-on Flex bootcamp one day before the conference. Stop by to say hello, and enjoy the reading!

Yakov Fain

Comments (10)