In a week, 2005 will become history, and I tried to guess what will change in the software development a year from now.
1. Enterprises will finally start using Java 5. The sooner 5.1 version will be released the better.
2. AJAX hype will calm down. AJAX is an interesting technology, and will become one of many techniques used in Web applications development. Nothing more.
3. Fat clients will be more widely used in distributed enterprise applications . Java still has a chance to be used in this area, if someone will create an IDE with an easy to use and powerful Swing GUI designer. JDeveloper and NetBeans have one of the best Swing designers. Macromedia tools will become more and more popular.
4. Smart development managers will start creating mixed open-source/commercial environments. For example, you can use open source J2EE servers in Dev and QA and their commercial counterparts in Prod and Contingency environment. The same is applicable to DBMS, messaging et al. Some open source vendors are already moving in this direction by creating products that are 100% compatible with particular commercial tools.
5. A new software architecture for small and mid-size businesses should arise. IMHO a good candidate is what I call Client-Server Message Bus (CSMB). A set of client server applications can talk to each other using open source messaging and an enterprise service bus. Note: client-server applications can have more than two tiers, i.e. RMI client, RMI Server and DBMS.
6. Programming will become a trade of a young generation. Mid-age programmers will be leaving the coding arena and moving to business analysis and management. You can’t beat a 25-year-old Indian programmer who’s ready to join any project tomorrow (in any place on Earth) sharing a room in so called guest apartment. The code quality of such a programmer may not be as good as was expected by the employer, but this will be a little secret for some time, and smart kids will have enough time to learn how to program on the job.
7. A number of CIOs will come out of the closets and publicly admit that the real cost of the outsourced projects is high, because for every two young Indian programmers you need a local business analyst who will write super detailed functional specifications and validate their work. But outsourcing is here to stay (at least in the USA) and not because overseas programmers charge less, but because just finding local programmers will become a difficult task.
8. Yahoo will come up with some new innovative Web products that will be able to compete with Google’s software. If not Yahoo, who else?
9. By the end of the year the broadband Internet will give DSL and cable Internet a run for the money. The wireless companies just need to cut the prices of their broadband service, and masses will be leaving their “traditional ” ISPs.
10. Java use will steadily increase despite the fact that various replacements are being offered. Java is more than an excellent object-oriented language enriched by tons of productivity libraries (networking, multi-threading, security et al). It’s a mature and proven platform for development of all kinds of applications for all kinds of hardware. Java in programming plays the same role as English in the real world. No one says that Italian language will replace English any time soon. On the other hand, songs in Italian sound great.
In a year we’ll see which of these predictions will hold true.
Happy New Year!