Have you gotten your review yet?

February is the time of big decisions. People start to look for better jobs. Why? Because they ‘ve gotten their annual reviews. “You meet our expectations and even exceed them. But sorry , man , you know how it works… No, this is not a price of a gallon of gas – this is your bonus…My hands are tied, so you are fucked up again this year. But if you work hard and improve items 2 and 4 on your Goals… ”

Got a call today from an excellent programmer. Know him for 15 years. He knows .Net inside out. And I mean infuckinside out.

Hey you, a mediocre manager! WTF are you doing? Do you think that geeks are people from Mars who will work for you just because they enjoy coding 16 hours a day and are happy dining at McDonald? Do you think that they do not have bills to pay? Do you think their wives, girlfriends or domestic partners are second class citizens that are happy to shop at WallMart while yours gets stuff at Nordstrom? Do you thinks that geeks are OK with driving Toyota Corollas? Guess what, they also know what ‘s good and what ‘s bad. They know how to google too.

When someone else is asking again why managers can ‘t recruit top talent , it makes me smile. Mediocre managers just want the numbers on reviews look smooth to their management. “Sorry man, we have a bonus pool and we can give Exceed only to 10 percent of people in our group. John and Mary stay with the firm for 15 years and I had to give it to them. I ‘m sure you understand… ” Fuck the geeks! A mediocre manager does not give a damn if you quit or stay. You ‘ve contributed a year of your life to his roadmap in becoming an executive. Another year, another geek.

Anyway, if you need a super .Net programmer that knows AJAX and all shebang, let me know. As a matter of fact, it does not matter what he knows today, cause tomorrow he ‘ll know anything and everything that the rest of the members of you team pretend to know. And he ‘ll knows it a lot better.

If you need a .Net guru, let me know. Sorry, he ‘s not interested in full time employment at this point of his career. But if you want to have a serious programmer, let me know. His hourly rate is high, but you won ‘t regret it.

If you are also a geek working for a similar moron-manager, get the fuck out of there. Every year they ‘ll find another excuse for giving you a funny bonus. Take your career in your hands! As Beethoven has written, “Man, help yourself! “. Beethoven was dead on!

Adobe releases Flex 3, AIR 1.0 and BlazeDS

Yes, it “s official now and there is no need to keep the mouth shut fearing violatiion the non-disclosure agreement: the production release of an open source product Flex 3 is available today. The same is true for AIR 1.0 and BlazeDS.

Eighteen months ago Flex 2 was released, which literally changed the way people think of rich Internet applications. Since then lots of things has happen in the Flex community. In 2007 Adobe announced that Flex will go open source, and now it happened. All ActionScript 3 and Java code including Flex compilers and debugger (FDB) go open source. Let “s not forget about the number of other open source products released by Adobe during the same period of time:

Tamarin (ActionScript Virtual Machine)

Spry Framework

Flex Ajax Video

Flex Ajax Bridge (now part of SDK)

BlazeDS

If before, their server side component LiveCycle Data Services was available only for those who could afford it, now anyone can enjoy fast communication via AMF3 protocol between Flex and Java for free using BlazeDS.

Adobe AIR is an important step in bringing together Web and desktop applications. Surprisingly, the Beta versions of Flex 3 and AIR were used by many IT organizations for development of the real-world application. People could not wait to get a hold of these very productive and fun-to-work-with tools.

Adobe had and is still facing a challenging task ndash; to spread wider in the predominantly Java/.NET enterprise world. But they already made some serious achievement in this direction. People have stopped asking “Flex who? rdquo; Java developers have successfully gone through the phases of Denial ( “I-can-do-all-this-in-Java “) and Anger ( “I-don “t-need-no-proprietary-technologies “) and found themselves in the Bargaining phase now , “Where can we fit Flex in our architecture and how to gradually upgrade some of our Web 1.0 applications to Flex? rdquo;

Adobe continues its efforts to help enterprise developers to accept Flex. They work on various levels: with corporate executives, make departmental sales, and clearly demonstrate technical merits of Flex to software developers. My kudos to Adobe Flex evangelists Christophe Coenraets and James Ward who work mainly with Java developers. These guys live on planes, buses, trains, and automobiles delivering the message about Flex and AIR to people working in different industries. For example, in April they are coming to New York City addressing the financial community at the seminar Flex on Wall Street .

Adobe works very closely with academia on bringing students on board. Flex Builder is available for free for students and faculty. The rest of the Flex framework is free for everyone. Adobe Education Designer and Developer conference will take place next week in San Francisco. Adobe is bringing together the most creative and influential minds in the education community. Adobe is very serious about making their developers tools a household name in universities.

Just scroll through a variety of rich Internet applications listed at the Flex Showcase Web site. People ‘s creativity has no limits, really.

While Flex almost became a household name in the IT shops, AIR is still a new kid on the block. But some organizations not only are pretty comfortable with it, but managed to prepare production releases of their applications with AIR. These are some of such applications:

AOL Top 100 Music Videos

The AOL Top 100 Music Videos application built on Adobe AIR gives users the ability to browse and play the top 100 music videos from AOL Music, search for more artists and view related artist content. The application also takes advantage of local system resources enabling features such as integrated bookmarking, personalization and sharing.

eBay

eBay Desktop is an impressive application built on Adobe AIR that creates a persistent connection with eBay customers. eBay Desktop delivers product availability notifications and auction updates straight to the buyer, in real-time, so users don “t have to open a browser and go to the eBay site for the latest information. Users can import auction data into local files, or export data to local files for use with other desktop applications. eBay Desktop has all the features of eBay in the browser and can operate directly from the desktop.

The Nasdaq Stock Market, Inc.

NASDAQ Market Replay leverages Adobe Flex and Adobe AIR to deliver a RIA on the desktop that enables financial professionals to replay market activity in detail at any point in time, helping investors understand why a stock price moved in a certain direction. The complexities of equity trading are enormous mdash; with millions of orders continuously traveling different paths to central markets. NASDAQ Market Replay lets brokers show their customers exactly what was going on in the market at the time a trade happened, and Adobe AIR allows for instant response to an extremely large data set, something not possible in a browser.

The New York Times Company

The New York Times Company is launching ShifD, a new RIA that allows users to shift content between computers and mobile devices. ShifD works on – and between – the Web, mobile devices and through a downloadable AIR application, giving people an easier way to consume media on the go. Developers used Ajax technologies to build both the browser-based version of ShifD and the desktop version deployed on Adobe AIR. The New York Times Company is also developing a sophisticated blog reader on Adobe AIR.

Nickelodeon/MTVN Kids and Family Group ‘s Neopets

Neopets is a fun virtual pet site. You can create your own pets, feed them, groom them, look after them, and watch them grow. Using Adobe Flex and AIR, Neopets is creating a desktop habitat for “petpetpets rdquo;, little insects that live on the pets. The application will even use artificial intelligence to guide their behaviors.

Nickelodeon “s MTVN Kids and Family Group ‘s

The company “s first Adobe AIR application, developed in Adobe Flex, is a clever jigsaw puzzle game that encourages Nickelodeon fans to explore http://www.nick.com, locate pieces of a video, and then drag the pieces to the AIR application on their home computers. Each week a new part of the video puzzle will be released, requiring visitors to scour the web site for the latest pieces. Once assembled, the video puzzle can be played within Adobe AIR and provides a link back to the company “s web site, where viewers can watch the full-length video.

You can find official Adobe press releases at http://www.adobe.com/aboutadobe/pressroom/pressreleases/200802/022508AdobeAIR.html

Today is a big day for Flex community, and I send my congratulation to all members of Flex team who made this happen!

IT managers and top talent

James McGovern published a blog on How IT managers prevent hiring top talent He names fear of losing power as one of the main reasons and suggests having less consultants and more people from the military.

I do not agree with these statements. Here ‘s my quick random thoughts on the subject (my haircut appointment is in 15 min):

1. Managers do not hire top talents because they can ‘t afford to hire them.

2. Managers are not afraid that they ‘ll lose the power, because top talent is not seeking the power but rather is looking for an interesting environment and appreciation of his/her work.

3. If managers already work with a top talent (can be either an employee or a consultant), they often resists to innovative ideas that come from these smart people. Why? Because the main goal of almost every manager is to move up the career ladder and not make a revolution in the software development. The innovative ideas of smart technical people put their career at risk. Yeah, the existing technology may not be a bleeding edge, but everyone know its features, and slowly but surely we ‘ll get the project finished close to the set deadlines. This new technology sounds very interesting, but why taking a risk and being among the early adopters? Thanks, but no thanks.

4. For some reason, James does not like contractors that much. He does not want to admit that typically contractors are more innovative than employees. They need to keep their skills up to date and learn on the go, while some employees get too comfy in their cubicles over the years. I vote for inviting more contractors on the short-time basis. I often work as a contractor myself. Currently I work on three projects at the same time: two days a week on one, two on the other and Fridays on the third one. The managers who hired people from our company for short mentoring gigs made the right decision. My role is to mentor other people and make sure that the project goes in the right direction. Keeping me onsite for five days a week would be more expensive and unnecessary. I also prefer short assignments to long running projects.

5. Hiring people from military may or may not work. Pros: military people are often goal oriented, and if they decide to become good software developers/architect, they ‘ll do it. Be what you can be. Recently I met a former marine in one the IT floors. The is a very respectful person, who does not have formal education in software but is one of the leading developers on a complex project. Cons: military people may not have any talent in computers, and hiring them just because they are from military is wrong, in my opinion. Hire good software developers regardless of their past.

In April, I ‘ll publish a small e-book “Enterprise Software Development without BS “, where I ‘ll explain my views of IT, if you care.

Need an advice: what to do in Bangalore in the evening?

I ‘ll be giving a presentation at the developers summit in Bangalore, India. It ‘s going to be a talk on various technologies for development of the rich Internet applications. I ‘m really looking forward to see the land that gives birth to thousands of software developers daily.

I know that I should not drink the tap water there. I know that I should get six anti-something shots before going there. I know that during a day I ‘ll be in the familiar environment among software developers just like myself.

My question is, what a Bangalore software developer does in the evening? What are the places to see and entertainments in Bangalore? Any good restaurants that you can recommend? Any advice is appreciated.

AJAX Cliffhangers

I always respected cliffhangers. Not because I want to become one, I just understand that it “s very difficult. Cliffhangers don “t try to make it look easy ndash; they openly admit that it “s hard, but this is what they like.

In software development there are different lobbies. There is this guy, he “s very experienced .Net developer. When we see each other, he behaves very aggressively trying to convince me that what he can do in .Net I can “t do in Java.

Ruby on Rails people are ready to kill anyone who says anything against their baby.

But AJAX developers are different. They always openly state that AJAX is difficult, and I respect them for this. If you are thinking of using AJAX for your next enterprise project, I urge you to watch the video of the presentation by Joseph Smarr, the Chief Platform Architect at Plaxo, Inc., where he ‘s led the engineering of Plaxo ‘s address-book integration application.

Joseph is very experience AJAX developer, and if after watching this presentation you won “t get goose bumps, go ahead and start your next RIA project with AJAX. Make sure that you can afford to hire a team of developers of Joseph “s caliber.

I respect AJAX developers, and will participate in the upcoming AJAXWorld conference next month in New York City.

When Sun Microsystems will start competing in the RIA space?

Sun Microsystems is a very respectful company, with strong engineering spirit and talented software developers on staff. Sun Microsystems was the company behind the very first technology to support rich Internet applications. Yes, I “m talking about Java applets that were introduced in 1995. The same setup as we see today in the RIA world: a JVM, that is a Web browser plugin and compiled byte code that offers rich UI. But after that, in my opinion, Sun “s Java decision makers made a couple of serious mistakes:

1. Abandoned development in the area of the VM for clients side of the Web applications

2. “Have won rdquo; the law suit with Microsoft.

Selling servers was and remains the main bread winner for Sun. Hence support of J2EE seemed logical ndash; each enterprise that is developing J2EE applications need to purchase a set of servers (development, QA, staging, production). These servers can be arranged in clusters, which means more servers to buy. Even if a project is deployed on WebLogic, JBoss or WebSphere application server (a third-party software), Sun was happily selling their hardware to these clients.

But enterprise Java applications have the client portion too. A large chunk of these applications are Web 1.0 based, but there is another group of applications that uses Java Swing, which is a rich client platform. Swing offers OK-looking components, but most importantly, it requires that the user “s computer has to have a specific version of Java Runtime installed. In enterprises, it “s not a big issue, because the JRE is centrally pushed to the clients by the infrastructure team. But this is not the case in the consumer “s market.

Even if the enterprise business users do not like Swing “s UI, they do not have a say. It “s their responsibility to use this and only this software to perform their daily duties, or else hellip; This is not the case in the consumer “s market hellip; Ironically, business users who are budgeting the IT projects often turn into beggars asking IT to do a little improvements here and there. Today, they are getting not too promising answers like “We “ll prioritize your request and include it in our schedule rdquo;. It “s not easy to make changes in Swing applications.

People are happy with what they have if they do not know any better. It was OK to have double standards: enterprise folks are working with the dull-looking Web applications, while behind the iron curtain they enjoy artistic colorful UI of non-business related stuff. This would not be too bad while Java and .Net dominated as the developers tools in the corporate world. Their UI tools had a “meet expectation rdquo; stamp until the outsiders like Adobe Flex and AJAX framework vendors started to sneak into the corporate development floors showing that even business Web applications can look sexier.

Microsoft has released the 1.0 version of Silverlight, their tool for RIA. Sun has also realized that the client “s tooling can “t be ignored any longer and made an announcement about a new language called JavaFX Script. Hopefully, during this year “s JavaOne we “ll see some solid examples of what can be done with JavaFX, which will be used in the future RIA both for desktop applications as well as in the mobile world (JavaFX Mobile).

Without doing any technical comparison of Flex, Silverlight, and JavaFX, let “s talk about delivery of the these applications to the end users (consumers). Penetration of Flash Player 9 (the runtime for Flex) is 97%. This means that almost every computer already has Flash Player 9 installed. The penetration of the runtime for Silverlight is less than 50%. Today, the penetration of the runtime required for JavaFX is probably close to zero (please correct me if you have some better statistics).

These numbers explain why Microsoft uses Flash Player to spread the word about Vista, and Sun uses the same delivery mechanism to talk about JavaFX.

In the world of RIA, delivery mechanism is everything. One of the main advantages of AJAX applications is that about 100% of the client “s machines already have everything that “s needed to run them.

Now let “s recall that infamous law suit between Sun and Microsoft. The latter wanted to inject into Java some additions, Sun did not like it, and after several years of litigation, they won billions of dollars. Since that time Microsoft does not include the latest JRE into Internet Explorer. This means that if someone puts a gun to Amazon.com “s head and force them to re-write their front end using Java applets, they should develop to a ten year old JRE 1.1 as a common denominator to avoid losing most of their customers that use Internet Explorer. Because of that “winning rdquo; law suit, Sun has lost the delivery platform for Java applications. In my opinion, this was a big mistake on the Sun “s part.

Deploying a Web applet today requires an installation of the proper version of JRE, which is not a straightforward process. JRE starts slow. Waiting for 15 second till it warms up is a heavy overhead on top of any consumer application. At the time of this writing, this process has to load into memory about 16MB of JRE code.

Help is on the way though. This year we “ll see a smaller (under 3Mb) Java engine formerly known as Consumer JRE and now it goes by the name Java SE 6 update N. Initially, this JRE will load a minimum number of classes that are absolutely required, and then, it will bring other modules on the as-needed basis. Improving warm and cold start time of the JRE are also in the works.

Sun has huge Java community of six million developers, and most of them would love to use something Java-esque for their RIA needs, but pragmatic considerations always win in the business world. When I meet a .Net developer working on Adobe Flex project, I always ask, “Why don “t you use Silverlight? rdquo; Even though .Net developers would love to use Microsoft “s products, the answer is always the same, “Silverlight is not there yet. rdquo; So much for loyalty hellip;

Java “s multimedia support is in a really poor shape too. A rudimentary Java Media Framework (JMF) was abandoned many years ago too. If Sun has any cash left after their recent MySQL acquisition, it should consider purchasing some third-party vendor that can offer a 21-century-like software package to replace JMF.

JavaFX Script will give you a different way to create Java applets that run on this JRE. The question is when? Let “s assume that Sun will make these two available in May “08 during JavaOne. By the end of 2008 we “ll see a modest number of production-quality Web applications built with JavaFX. When someone will visit a Web page that requires this JRE, s/he will be offered to download it. Now add another two years till the penetration of this JRE will reach some serious numbers. This means that online vendors may start relying on this new JRE in late 2010. But will it actually compete with Flash Player in 2010? Sun still has excellent engineers (regardless of the brain drain caused by Google), but we can “t expect that Adobe and Microsoft R amp;D will be frozen for the next two years either. As a Java developer, I wish Sun Microsystems success, but they are facing extremely challenging mission in the RIA space.

Car manufactures go Flex

OK, car manufactures go Flex. Will they lose or gain customers after that?

Car manufacturers want to have fancy consumer sites. It “s a RIA world, and having interactive Web sites should bring more people to car dealerships. Bikers to want to see nice looking Web sites. Check out Harley-Davidson “s Web site: http://www.harley-davidson.com . While most of Harley “s site is done in DHTML, go to Motorcycles menu, pick a model, get some pop-corn and enjoy the show. That piece was done in Flash. Isn “t it nice?

Let “s take another site for Mini cars: http://www.miniusa.com , which was also build in Flash and is delivered by Flash Player. It “s also not bad.

You can spot a weird-looking car on the roads. It ‘s called Scion. Their Web site looks a lot better than the car itself, isn ‘t it?

A recent addition to the RIA collection is UK “s Volkswagen. This one was done in Flex and was also delivered by Flash Player: http://www.volkswagen.co.uk/ . Excellent artwork ndash; just take a look at how you can customize the wheels or the exterior paint color. Isn “t it something? But something else did not look right hellip; The site was a bit slow, and I was on a fast 30 mbps connection. This got me thinking ndash; the majority of the population will be connecting to this Volkswagen “s site via a lot slower connection lines. What their experience would be?

I decided to make an experiment. I have my cell phone with me that I can also use as a modem via the USB port of my laptop. Luckily, I was in the area of slow connection – http://www.speedtest.net reported the download speed of only 180kbps. Now we are talking! Welcome to the real world.

I went to this Volkswagen “s Web site and started to wait. During the first minute nothing happened ndash;a white screen with a wait cursor. To make the long story short, I had to wait two minutes and forty five seconds till I was able to use the site. Don “t you this it “s a little too much?

I “d guess that about 25% of people who visit Volkswagen are impulse buyers. They did not open this site because they were specifically interested in buying Volkswagen. After one minute wait, they “ll abandon this site and go to their competitors. Is Volkswagen ready to lose these customers just because they were using cool Flex technology? I don “t think so.

Each RIA project has at least two groups of people involved ndash; designers/artists, and people who know how to program.I know this first hand, because I currently work on a Flex project for yet another large car manufacturer. These applications have a lot of art. Can “t change it, they (creative people) know how to sell. Fine, but it “s good to have people who know how to efficiently program rich Internet applications. In case of Volkswagen, my hat off to creative people and my boo to their application programmers.

I “m afraid that poorly programmed RIA will hurt Flex.

Hey, Volkswagen, do some stress testing and optimize your web site!

Flex on Hudson

This week I “m teaching Adobe Flex class to a group of Java developers of a Wall Street company. After 9/11 many organizations moved from Manhattan across the Hudson river to Jersey City, NJ.

Jersey City is a high crime city, but now the narrow area of 2-3 blocks from the river has been rebuilt, with new office and apartment buildings and with a simple train commute from Manhattan.

I took this photo shot right in the classroom. How do you like this view from a student “s desk?

This is not a wallpaper, but a view of the downtown Manhattan.

You “d have to be a big shot to get an office with such a view. The other option is to be a student.

Good bye, Verizon Wireless!

My son fell on his cell phone, its LCD cracked and stopped showing any numbers. I pet myself on the back for purchasing an insurance for $5.99 a month when I signed the contract with Verizon Wireless. The salesman told me, “If you have an insurance, just bring the broken phone and we “ll give you a new one rdquo;.

It was a sunny day, the birds were singing, and I went with my son to the closest Verizon Wireless store. The technician looked at the phone and asked, “Do you have insurance rdquo;. I gave him a wide American smile and said, “Sure, and here “s the receipt that we “ve purchased it rdquo;.

The technician returned me the smile and said, “Please call this number ndash; insurance is handled by another firm for us rdquo;. I called that firm, and they told me that I had to pay $50 deductible to get a new phone.

The birds stopped singing. How come? At the time of signing the contract, the salesman never told me that there would be any deductible…Just bring us the broken phone and we “ll give you the new one hellip; rdquo;

I tried to explain this to the salesman behind the counter, and he confirmed that there is deductible charge. He was sorry that I was not informed about it at the time of sale, but it was written in the contract.

I started to see some clouds up in the sky.

“I “m a loyal Verizon customer for over 12 years and you are telling me to read the fine print? Please talk to you manager rdquo;

He did and said, “There is nothing we can do about it rdquo;

“OK, cancel the contract rdquo;

“We do not do it here, please call the 800 number rdquo;

I did, and explained the reasons of my cancellation to the customer service representative, and she also could not do anything for me, and I canceled all my Verizon accounts.

The same day I “ve got AT amp;T cell phones (no, I did not get iPhone ndash; it does not support 3G networks and its Internet connection is slow) with a data plan that is a lot cheaper and faster than Verizon “s.

Did I make the right decision? So far I have bars everywhere, I bought a USB-to-phone cable and configured my phone as a modem, which gives me Internet connectivity from my laptop through this phone at the speed of 1.3mbps when I “m located in the 3G covered area (in the EDGE area it “s slow).

I “m on GSM network now, which means that when I “m in Europe, I can use the phone with another SIM card (this does not mean I “ll do this as Skype is a lot cheaper).

A week after I cancelled the accounts, I “ve got an automatically generated “We want you back rdquo; mail from Verizon offering me $25 off my two of the cell phones if I “ll come back. Ironically, it ‘s the same amount ($50) that I was asking about in the store. Sorry, it “s a little too late. You had a chance to keep me as a customer for $50 bucks and you blew it. Apparently, Verizon Wireless does not know that it costs 20 times more to return the customer than to keep it.

The super bowl business

Today is a Super Bowl Sunday in the USA. A large portion of the population goes crazy. They pretend to be big fans of the teams. But actually, it ‘s just an occasion for a big party. Half of the people that will watch the game today do not really care about it. People are brainwashed so hard, that they believe that Bud Light is a beer. A thousand (!) private jets have landed with people that are attending the game. Vast majority of these people have not purchased the tickets – they were given the tickets (and a plane ride) by the corporate sponsors/bribers for being nice customers. Tickets are sold on eBay starting from $4000 a seat. The face value is $700, which means that if a couple wants to see the game at a stadium, they need to shell out $3K including plane tickets and lodging.

People who really like the game can only afford to see it on TV.

Have heard a commercial on the radio about “Super Bowl grand piano sale “. Visualize a group of people drinking Bud Light and pretending that they care about the game… During commercial, they will gather around a grand piano to listen to one of the fans playing Mozart.

Half of the people that are watching the game on TV are watching a well done commercials and entertainments (Jackson ‘s boobs) rather than a game itself…

What a fraud!