After running with my colleague Victor an advanced Flex training in London, we kept asking ourselves, “Why we liked it better than many of similar events from the past?” No, it’s not because London is a nice city to visit. It’s not because you hear dear and darling all the time. The reason is simple – this was the strongest (from the skill set perspective group we’ve ever had). Go Europe, go! Besides people from UK, we’ve had attendees from Holland, Belgium, Norway and even one person (very strong) from South Africa. Does it mean that European Flex developers are better than American one?
As usual, there was one 90-minute section with a detailed comparison of Flex MVC frameworks. As usual, I was softly criticizing the use of MVC framework in Flex. Yes, I can admit that if you are dealing with low-skilled developers you may justify using Cairngorm. IMHO, Mate seems to be less intrusive to your project. No, I didn’t have a chance to look closely into SWIZ – attending one presentation is not enough for forming an opinion. PureMVC is over-engineered…
I try to go easy on frameworks in the classroom, because there could be lots of non-technical reasons for adopting this or that framework. I also know that people who created frameworks are seasoned developers with their vision of how things should be done. No disrespect here. But if they have their vision and are not afraid to promote, I am entitled to have mine, don’t I, darling?
Since we are not in the classroom now, let me use a bit stronger language. If to make a call to a server and display a piece of data on the screen you are using Flex implementations of Façade, Command, Delegate, Proxy, Services, Mediator (which is divided into main and secondary ones), and all these objects have to be properly registered or else….you are nuts. The only excuse I can accept, if you are not a decision maker, and this “architecture” have been forced by another developer. In this case s/he is nuts.
If you are a consultant and suggest such complex but theoretically correct architecture to your customer, I understand (but not approve) your goals – to keep yourself billable on this project for as long as possible.
If you have a minute, read an article by Joel Spolsky about duck tape programmers. Joel is talking about other than Flex technologies, but it resonates with what I keep promoting for the last 3+ years in Flex community – keep it simple, don’t over-architect your project, be agile, components vs. frameworks. I didn’t hear the term “duck tape programmer” before, but if this means implementing simple solution to deliver the project on time – I’m all for it.
But if being a duck tape programmer can be a good thing, during the last ten years I see a new breed of developers that I call “Google programmer”. No, I’m not talking about people who work for this company. I talk about people whose education consists of googling for code fragments on the as needed basis. One attendee stated that he was really surprised when we showed a wealth of information that can be revealed by using the Flex compiler’s option –keep. We’ve been using this option quite a lot to understand what’s under the hood, have you?
Why was -keep such a revelation to this senior developer? Is it because reading program documentation or books on software is out of fashion in the 21st century? Googling for the code samples can help when you know what are you looking for. But this –keep is a very good example of what would never be returned by Google unless you specifically ask “How to examine ActionScript code generated by Flex compiler?” Have you ever bothered asking such question?
Each of us, regardless of how senior we think we are, has islands (and gaps) of knowledge and reading books and attending formal training is like a SPA treatment for our minds. That’s why I’m very exited to spending several days in the training rooms at Adobe MAX conference, where I’ll be studying hard new tools and techniques of software development and architecture. Many great developers that will attend this event will definitely give me a new perspective to “obvious things”, and maybe there is another secret key besides the –keep that will help me in some way to be more productive and efficient at work.
This year I go there with Victor Rasputnis and Anatole Tartakovsky, and each of us is eager to learn from others and share what we know.
See you at MAX,