A dozen of 2008 predictions

The year of 2007 was a good one. The IT job market was stable. The mankind got an iPhone. While there were no any revolutionary changes in the ways software was developed, I believe that this was a year of rich Internet applications and Web 2.0. Youtube became a part of life of millions of people around the world. A large portion of the population visits use myface and facebook daily. What “s next? What language/tool/technique to learn? What “s the next big thing in IT? In my opinion hellip;

1. Java will remain strong in large enterprises, but will it “ll continue losing grounds as a development platform for small businesses. J2EE is way too heavy, and scripting languages and frameworks offer an alternative and productive way of software development when cost of development is more important than performance and scalability. LAMP platform will remain a preferable way to develop applications for small to medium businesses.

2. AJAX popularity may go downhill. Since the first day this acronym was created I “ve been writing that it ‘s not a good choice for developing enterprise applications. But the vast majority of software world was (and still is) marching the AJAX way. This time it “s more of a hope than a prediction that in 2008 people will realize that AJAX should serve the same goal as JavaScript ndash; making your Web pages a little prettier. Expect to see re-branding of some of the AJAX frameworks into RIA or Web 2.0 solutions.

3. Speaking of Web 2.0 hellip; Even though Web 2.0 was not officially defined, I think it “s all about giving more control to the users of the Web sites. The more interactive is a Web site, the higher number people will put in front of the zero ndash; 3.0, 4.0 and so on. Some people say that Web 3.0 is about semantic Web. If you bought a grill on Amazon.com they can guess with a high probability that you might be shopping for rib eye steaks. Let “s show it to you next time you visit the site. It “s all about control. From the user “s side and from the vendor “s site. We “ll see more and more interactive sites next years. While some people are planning to write a next generation sophisticated software, others will come up with a very simple, easy to implement but appealing business idea, and the next 20-year billionaire is born.

4. Flash Player. It will remain the best deployment platform for rich Internet applications. While Microsoft is trying to come up with a competitive delivering platform for RIA, it “s not going to happen in 2008. Silverlight 1.0 is a good start, the next version (1.1) will be even better, but it “ll take time to release a product that can do more than streaming multimedia.

5. Ruby on Rails will take a small share of the market of small non-mission Web applications. Convention over configuration. Speed of development over performance. While Ruby on Rails will not become a framework of choice, it has achieved a very positive result ndash; people started to realize that not every project has to be developed in either Java or .Net. Besides, RoR is a well designed framework that will become a good design sample for the new frameworks of the future.

6. Internet video. This will be booming and I “m not talking about youtube. The Internet Video will start being a part of a number of enterprise applications. This process won “t be fast, and you have an opportunity to be among the early adopters in this sector.

7. Outsourcing will be gaining more and more grounds despite the fact that it “s very expensive and the project failure rate is high. The reason is that the USA almost stopped producing software engineers. It “s just the matter of time for everyone to get used to the fact that business software is made in India just like we all know that all toys (with or without lead) are made in China. But innovation in software will still be happening in America. I guess, there “s something in the air here. Re-read an old but valid article by Paul Graham about why the Silicon Valley can “t be exported.

8. Apple. Next year I “ll finally purchase a MacBook Pro for myself hellip; if my Sony Vaio will die. Even if it won “t die, having a two year old machine is a good excuse for submitting a purchase order to my wife for an approval. Peer pressure, cool design and ability to run Windows (plan B), will force me to ignore the high price.

9. Adobe Flex and AIR. Flex will become the #1 tool for developing enterprise rich Internet application, and I “ll be seeing less that 10% of the raised hands when asking an audience, “Raise your hand if you dor not know what Flex is? rdquo; Adobe AIR “s adoption will be slow though. Or course, the shops that are already sold on Flex will use it, and some AJAX developers will realize that it may become a life saver for their applications, but that “s about it. While being a well designed and very promising technology (Flex, Flash Player, HTML, JavaScript, PDF, SQLLite DBMS, an ability to work in a disconnected mode, and full access to your PC “s resources), it may be perceived as yet another Web browser, which is a tough sell in the enterprises. At least, become an early adopter. I will.

10. Telephony. If 2007 was a year of Skype, we “ll see some interesting development in this area. Skype is a great product, but it requires you to download and install software. In the era of RIA things can be done without it. Watch the Ribbit phone software that will allow you to make calls and receive emails just from your Web browser.

11. IT job market in the USA. While we “ve enjoyed a stable demand in the IT professionals in 2007, it won “t last and next year we “ll see project freezes and even layoffs. The reason is the burst of the real estate bubble. And this will affect not only those simple people who were brainwashed and decided that they could have afforded an American dream. CEOs of the major Wall Street corporation are being fired after drowning their companies by getting into bad mortgage debt. Among other things, the IT budget will be severely cut. And as you know, today “s on Wall Street, tomorrow “s on Main street. Use the training budget of your employer now if it “s not too late. Keep your skills up to date.

12. The hottest IT skills of 2008. When the job market is tight, recruiters immediately increase the list of skill requirements for job opennings. You “ll see job posting that expect you to know a number of programming languages ranging from Cobol to C++. Knowing just one hot tool does not cut it anymore. But if you have limited time and need money, start with investing in learning tools for developing rich Internet applications. A skill set -of a high-paid Web developer at a minimum has to include the following skills:

HTML,CSS, JavaScript, J2EE or.NET, Flex or Silverlight, AJAX, and good communication skills. You do not have to really learn AJAX, but must add AJAX keyword to your resume, otherwise you may not even get a job interview.

13. The next big thing. The in software development will change to wider use of code generators. Forget about heavy frameworks regardless of what programming language you use. In a simple case, use some XML style sheets combined with the metadata that describe your application objects to automatically generate the code for these objects. On the larger scale, the entire application may be described using metadata and the XML, and an appropriate code generator will do the job. So programming will change from writing a tedious code that requires lots of coders to describing the metadata and writing custom code generators.

Happy New Year!

Horrible Web design rules!

When purchasing stuff online I always pay attention to the design of the vendor ‘s Web site to assess if it ‘s a large company of a fly-by-night guys that quickly put together a cheap Web site. I know that creating of a professional-looking Web site costs tens of thousands dollars or more. If you play by the business rules, you must hire a professional Web designer – we all know this. But…

Yesterday, we realized that the heater in our house got broken. We have this air unit that started to make noise without pumping in the hot air. I ‘m not a handy man, but this time Iopened the heater ‘s cover and quickly realized that the ignitor was broke in this gas unit. What ‘s first thing that you should do when something like this happens? You have to unscrew the ignitor, try to find there any tatoo that resembles the model number and … go to Google. I did exactly this and found a Web site that sells them. When I looked at this Web site , it was clear that this site was created at least ten years ago by an amateur who never paid a dime to any Web designer. It ‘s just horrible. Some time ago I purchased a book that was called something like Web sites that suck. This Web site is worse than any imaginable poorly designed site, because it has no design at all.

I ‘d never returned to this Web site, but apparently not too many places sell these ignitors online so I decided to give this site another look. When I saw a photo of two grandkids at the bottom of the site, I immediately visualized a loving grandpa and understood that he can ‘t be a crook. Than in the middle of the page I found this text

“Below is a note from me, Steve Arnold, explaining my philosophy of business and life……

“I Kenneth S. Arnold (I go by my middle name, “Steve “), president of Arnold ‘s Service Company, Inc. guarantee you there will be no problems with Arnold ‘s Service Company, Inc. in standing behind any guarantee and warranty. I believe that you should always treat others as you would want to be treated. Always exhibit a Christian attitude…. honesty, caring, dependability, reliability are a must!

Sincerely, Kenneth S. Arnold, President/Owner of Arnold ‘s Service Company, Inc. ”

You can ‘t fake such a statement. Look at the banner of the Dodge pick up truck… Needless to say that Dodge dis not pay a penny for hosting their banner there. It just tells me that this guy loves his little truck and lives by the principle “American, buy American “.

This guy is real. The only thing that I did not like about this site was that he put an image of Santa Claus but did not have guts to say “Merry Christmas “. He did what ‘s a little better for business: “Happy Holiday Season ” . I guess heater furnaces get broken in the homes of muslims, jews, buddists, and voodoo followers too.

Anyway, I ‘ve order the ignitor from this guy and I ‘m positive that I ‘ll never have any problems with this small business owner. I wonder if this might become a new trend – instead of pouring thousands of dollars into development of rich Internet applications, just be sincere and people will make your business a success?

Merry Christmas Mr. Arnold and Happy Khanukah to all your Jewish customers!

Update. I placed this order on Sunday morning, then wrote this blog, and on Monday at 8AM I ‘ve received the shipment notification with the UPS tracking number. Told ‘ya!

Update #2. The ignitor was not even a problem. There was a crack in the housing of the Heater ‘s fan. Morale: If you are a programmer, do not try to fix heaters. Keep programming and pay the professionals to do other things.

Why offshore Indian programmers are a lot less productive than American Indians?

I write about Indians without any disrespect intended. I picked them just because this nation produces the largest number of the offshore coders-for-living in the world. But Indians living here are not the same as Indians who are still there.

Local Indian programmers belong to two categories: those who are still in the process of getting the US permanent residency(5-6 years) and those who already got it. Those who are in the process know that they have to work hard and be loyal to their employer, or else hellip; Those who already got it, just keep working well. To put it short, the vast majority of the Indian programmers I “ve been working with in the USA are good and hard working IT professionals. I “ve met and learned a lot from highly educated people from India, who are fun just to spend time with.

That other group lives in the gold-software-rush India and is called “our offshore partners rdquo;. American programmers casually complain that dealing with offshore partners is pain in the butt, because they are slow, deliver not what “s expected, require a lot more detailed specs, and time difference can result in days of email correspondence just to clarify what has to be done.

What do you think comes to mind of a typical American enterprise development manager when s/he realizes that lots of tedious code has to be written to retrieve the data from a database, massage them a little bit and display the result on the Web? India-the-savior comes to mind. A typical manager still believes that Indian programmers are dime a dozen. As Julia Roberts said, “Big mistake. Huge! rdquo;

So why any non-deaf corporate US programmer hears constant complains about those Indian teams from overseas? Why an Indian-born entrepreneur asks me, if I can recommend him a team of programmers but not from India? What “s the difference between Indians here and there?

The difference is not in them. The difference is in us. Poor performance of the offshore teams is a mirror of the poor job of the incompetent US project managers. They pretend that there is no difference in managing local and offshore teams, and it “s their fault that offshore projects are more expensive than the local ones. If you bring in an offshore team to your project, be ready to seriously improve the quality of your project documentation. Also your project will loose agility, if any. If a local developer can understand what has to be done and what are the priorities just by short phrase or a body language, this does not exist in the overseas communications. Do not go by this stupid book by Thomas Friedman “The World is Flat rdquo;. Yeah, right! The world is freaking round.

Sure enough, Bangalore is not a city of angels either. First, many of them have a heavy accent. Second, it “s the time to make a quick buck there, so if anyone offers them one extra dollar an hour, they “ll flee your project in a heartbeat. Do you know what “s going to be the two most popular words that you “ll hear from them? “I thought hellip; rdquo; These two words should give you goose bumps. This means that you “re not going to get what you “ve expected because your overseas partners did not understand the assignment, and very inexpensive rates become a huge burden to your project. Three people (just $20p/h) offshore programmers spend three days working on your assignment. Then you hear “We thought hellip; rdquo;, which means the $20*8*3=$460 just this very moment went down the toilet. And even more importantly, if a local developer would have questions about the job to be done, s/he would have casually stop by and asked. But your partners from overseas are often shy to ask, which might be a cultural thing. They are afraid to ask wrong questions and prefer not to ask any.

Indian vocational schools keep baking new programmers every three months beefing up their resumes with a fake industry experience, but do you care? Do you have a choice? Can you find local programmers that have real experience and demand rates that can be squeezed in your budget? Can “t? So shut up and sit down. American-born programmers will soon become a myth anyway. If I interview a programmer and like his technical skills, I do not care what “s written in his resume. If s/he “s good for the job, get on board. And do not give me this baloney that a seasoned Java programmer who was predominantly working on HR applications is useless if you are working on a Wall Street trading application. Do not worry, they “ll quickly pick up the difference between long and short sales.

OMG, you do not have derivatives in your resume! It “s a rocket science and we feel superior here. BS. Pretty soon all these snobs will be happy to find a person who understands how the bubble sort works and what “s the difference between a class and interface. The secret rolls revealing the bubble sort algorithm have been stolen from the USA and relocated to India. Accept this fact and move on.

Alex Iskold has written an interesting blog concluding that a few good developers can do any job. But he “s not accounting for the garage factor. Yes, a few good men can do the job if they are in the garage, which is the most productive place to develop software. But if you place them in an enterprise environment where covering your manager “s ass is more important than finding the right technical solution, these good men will soon suffocate and die unless they are supported by a good team of mid-level apprentices.

Try to find a small number of very good local developers (pay them premium) and an EXCELLENT LOCAL MANAGER of your offshore team that speaks their language to lower the chances of your project “s failure. And what “s more importantly (c “mon, admit it), your career won “t be in jeopardy.

Long Live India, and God Bless America! Amen.