- January 5, 2009
- Posted by: admin
- Categories: Agile Applications, Blog, Business Dynamics, Enterprise Agility, Enterprise Software, SOA & Agile Applications
As we move to 2009, it’s important to put down the champagne glasses for a moment and consider all of the big technology stories that have come across over the past year.
Next-generation applications have been simmering for years, but they’ve yet to reach widespread acceptance. Many believe that this year developers and architects will start recognizing the power of user interface design with Microsoft Silverlight, Windows Presentation Foundation, and Microsoft Surface. The economic downturn has decimated 2009 budgets, but Office Sharepoint Server – and its recently launched cloud-based counterpart, Sharepoint Online – look poised to continue growing. Cuz Sharepoint is viewed as a way to reduce travel costs while facilitating communication between vendors and supply chain elements, making the product more strategic than ever. Delivering Sharepoint as a service is one way for Microsoft to bring Sharepoint to more small and mid-size companies, and it’s possible that Microsoft could tailor an offering to the specific needs of these firms.
Slated for launch in the second quarter of 2009, Microsoft’s Windows Azure cloud-based development environment will lower the barrier to entry for channel partners to offer Microsoft enterprise applications. With the economy forcing organizations to be more effective in their IT operations, and Microsoft Hyper-V Virtualization proving to be reliable and dependable, many solution providers expect Hyper-V to become standard in data centers by the end of 2009.
The early commercial open-source vendors like MySQL and JBoss were able to build decent businesses on top of a license/support-only business model, but over time we’ve seen that approach is difficult to grow beyond a certain threshold. Red Hat becoming a Gorilla might take place this year. JBoss is contributing to Red Hat success. The most fundamental trend is that open source continues to be more and more of the core fabric of IT, specially at the OS, middleware, and DB layers.
Gartner reports open source database adoption growing at 50 percent over last year and troubles for Microsoft on the contrary.
Hi Ali – hope you and your mates are doing well.
I see 2 HUGE moves. First, open source everything. As businesses realize that a gigantic community of tech support (that can evolve into a “sub-set” of ad hoc support groups) is preferable to corporate “no – service” tech support (or subscription maybe?), the ROI of using open source (and it’s constantly improving quality of product) will drive it;s mass adoption.
Second, if a viable business model for monetization (is that a word?) can be found, cloud computing will approach the tipping point for corporations… do you read Tarry Sing’s blog about the cloud? It’s excellent! Please go to – http://www.ideationcloud.com/
Happy New Year my friend!!
russell
Hey Ali,
Great question.
Many open source products tend to do better in periods of economic uncertainty because their fixed cost is cheaper than closed source products. This doesn’t mean that their variable cost is cheaper though. Licenses such as GPL actually enforce the “free” usage of products underneath them. Finished products such as Linux and MySQL become attractive because their licenses are cheaper (as in free or near-free) compared to enterprise closed-source alternatives such as Server 2008 or SQL. However, commiserate levels of support for such products are either absent or inefficient for large-scale businesses. Instead of relying on full corporate support from the parent company, I’ve heard that many corporations will simply hire experts on that type of open source product. This changes the sum costs of adopting a solution though. What’s cheaper for your costs in the long term – paying the fixed cost of a closed source software tool plus the variable costs of licensing fees or paying x-number of highly paid experts for n-number of years? Firms are going to have to ask themselves this question and respond based on their marginal costs associated with production.
So for development tools and environments, it’s going to depend on what you think the software development and I.T. firms’ market structure is. If cournot competition holds (a somewhat oligopolistic market with firms having pricing power but engaging in competition) the rate of open source software adoption is going to be different than if you believe the market is more monopolistic or more competitive. Either way, open source tools and software will no doubt continue to increase.
For application development, the tried and true languages will still probably hold. Virtual interfaces / interpreted code interfaces such as the JVM (which takes Java and soon Python and maybe Perl) and .Net (which accepts C#, C++, VB, J#, and soon MSFT’s functional language F#) will continue to gain steam as corporations recognize the potential for gains from specialization in allowing software engineers to code in their own preferred languages without compromising a software product’s development cycle. The key to who’ll win the war for this market will probably lie in documentation generation. While the machine may be able to understand x-number of languages you pipe to it, programmers in the same or different dev groups may not all understand F# or Python. Javadoc has long been one of the best documentation generators, and probably could be extended to Python read by the JVM. .NET has historically been losing out on this element of competitive advantage, but Microsoft has recently released their internal documentation tool Sandcastle that has the same features as Javadoc (HTML and XML support, generate at compile time, etc). Operating system demand will continue to govern languages used in tool development. If you’re coding for Windows, you’re probably going to want to use .NET for speed. If you’re coding for Linux, it makes more sense to just use C++ with the X-libraries. OSX will use obj-C/C++ for Cocoa. As always, the languages will continue to follow the OS used as a complementary good.
Links:
http://en.wikipedia.org/wiki/Cournot_competition
http://en.wikipedia.org/wiki/.NET_Framework
http://en.wikipedia.org/wiki/Jython
Continued:
The biggest upset will probably come in graphics and in web app development. Mashup web applications are becoming so important because it takes tool development out of the bull pen and into the groups that need them. This is another gains from specialization issue – your engineers can focus on core development, and tools engineers can focus on serious pro-development tools while more pedantic software can be developed by the people that need them. This sort of exuberance towards “hey I can write it myself” may run into problems down the road though as non-development types may not QA with the rigor required. Even if the web app environment stops unchecked system issues (null pointers, memory management, etc), security problems can pop up from logical errors that are otherwise impossible to check. Web application development’s also seeing some big changes, in that relatively unknown functional languages are popping up to challenge incumbent languages in the fields of distributed. Erlang, a functional language, is being used by companies such as Facebook and E.A. because it provides powerful distributed computing applicability through powerful concurrency. This may become a salient factor in language choice for development.
Graphics development will probably continue to use C and C-like languages both for tradition and speed, but library usage will follow development costs with complementary graphics platforms. CUDA, Nvidia’s development environment for their cards, is extremely robust and well-documented. AMD/ATI’s libraries are pretty good also though, their tools are distributed as part of a major collegiate programming competition, and their hardware is cheaper and currently winning the war in terms of gaming performance. Optimization requires careful use of the hardware, and graphics is a market all about optimization. With GPUs now becoming viable high-computing platforms thanks to cheaper high speed memory and the creation of non-dedicated processors that work fast and hard for calculations (Unified Shader Arch vs. Vertex Shader / Pixel Shader procs), languages and tools used in Graphics development will become far more important and have far more competition.
Mobile also will be an interesting market. Google’s positioned itself with allowing Android to read Java. The iPhone uses mostly Obj-C, which is only really used by Apple and maybe a few other places. The market’s young and ripe for the taking as well, but bandwidth management and security are perhaps more serious issues here than in web app development due to the US telecom infrastructure and the cryptographically vulnerable nature of cellular phone encryption (RC4).
Open-source, Commercial or Mashups?
Well, in my view and in one word, CORRECT and EFFICIENT will be my answer!
And this for a quite simple reason: if you do not respect the state-of-the-art about Application Security, this will lead to serious problems and you will go “in the wall”.
This is why I would suggest FIRST, to take a look at the OWASP (Open Web Application Security Project) documentation, you’ll certainly find what you searching for, whatever for Open-source, Commercial or Mashups.
Just do it, take a look. Most of application developpers do NOT read/respect these recommendations and best practices, both for design/code review and implementation.
Anyway, hope this helps.
Ludovic, Deputy Chair & Evangelist, OWASP French Chapter
Links:
http://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project
http://www.owasp.org/index.php/Category:OWASP_Guide_Project
http://www.owasp.org/index.php/Category:OWASP_Code_Review_Project
the world just wants point and click, they really don’t care where it comes from
Ali,
I see three main trends in the SW development so far:
1. Short thinking, fast profit, cost reduction. Majority of the US businesses fit into this trend. They need for fast and super fast development and the last MS technologies help them very much. The MS is going to grow in the small-middle-large businesses
2. Government is growing up to be the biggest employer in the country. The government needs for many different technologies for different purposes. Some of them will be based on the MS development, but government is not going to create a monopoly in the SW supply. I see majority of the government development in the open sources technologies, but many government technologies will support the MS.
3. Growing gadgets market. This market will be shared by MS technologies for regular people targeted applications and for government critical kind of apps – that is open source area. Plus, some big companies, like Google want to distance from the MS and they will do open source support, too.
Conclusion: if you want to work for government or communications – you need for the open source expertise and some MS too; if you want to work for a business apps development – it is the MS area
my 0.02
I believe Agile Development methods such as Lean Development (LD); Scrum, Feature Driven Development (FDD) and even ExTreme Programming will become more widely practiced with open source for e-applications with Web 2.0 and Innovative Web 3.0 features will dominate in 2009. I believe the economy will focus priorities and resources, but the change will also be good in weeding out the less useful software. Compitition will rise and winner will emerge.
Warm Regards,
Steven Bonacorsi, MBB / Vice President
http://www.linkedin.com/in/StevenBonacorsi
603-401-7047
Skype: sbonacorsi
sbonacorsi@comcast.net
http://www.theaitgroup.com
I come from financial area, however I think internet is changing fast old concepts. I believe that microsoft will loose power and I believe oracle will rule the world. I believe that social networks are changing the heads of the people, giving them more knowledge free of charge. This will impact the real economy at a grate scale.
Refards,
Ricardo
Links:
http://www.mbuintelligence.com
http://topstrategynetworkers.blogspot.com/
HI Ali,
I think that the answer depends on scale and type of applications. Not all apps are suitable for open source or internet. Here the recommendation is clearly to go for the same bet: MS and what other commercial vendors required.
For Internet applications I would be happy to go for an open source approach provided you have access to resouces to develop and maintain the app.
My experience tells me that integration between open source/Internet app can be tricky if you need to access information or apps that are developed using commercial software.
However overall I do believe that open source is becoming more and more attractive in particular when large organisations now offer support both with respect to platform and development.
Having said that I can understand some hesitation in deviating from safe commercial software.
Frank Mandix[LION,11000+]
Let’s Connect!
I predict open source technologies and solutions will get wider attention as the technologies and solutions have both matured. The wide availability of high skilled resources on open source will help enterprises accepting the technology and promote its adoption.
Today it is possible to build high performance and scalable applications on open source technologies and open source business models are commercially viable.
Most of the startups today are building exciting products and solutions based on widely available open source products like Linux, MySQL, Posgress, PHP, Perl, Python, Java, Glassfish, JBoss, Apache, etc. This itself should explain the wide acceptance of open source products.
Aghreni Technologies started with a focus on providing open source software services to companies to leverage the strengths of open source in higher ROI to companies.
Best Regards
Manjunatha KG
Links:
http://www.aghreni.com/software_engineering.html
Andrew, can you clarify this? “However, commiserate levels of support for such products are either absent or inefficient for large-scale businesses.”
One needs to look no further than Nationwide Insurance, JPMorganChase, or most other wall street banks to see very large-scale businesses that are using open source products extensively. I would surmise that the levels of support for these products is more than adequate, otherwise they wouldn’t be as popular with large companies as they are.
“What’s cheaper for your costs in the long term – paying the fixed cost of a closed source software tool plus the variable costs of licensing fees or paying x-number of highly paid experts for n-number of years?”
But it’s not always this black-and-white. There are more costs you need to consider in this TCO calculation (cost of downtime * probability of downtime, number of servers per admin, the probability that the support coming with your commercial product will be adequate, etc.) before you can arrive at an answer.
Cheers,
-Josh
Ali,
First your post seems to focus only on Microsoft. I think your source for your information is very skewed.
With respect to app servers, you have Apache/Tomcat, Apache/JBoss, Apache/Glassfish all open source contenders. They are competing against Microsoft, BEA (Oracle) , Microsoft and Websphere (IBM).
So to call RedHat (JBoss) a Gorilla isn’t really an accurate statement.
IBM, AFAIK, is the gorilla.
The reason you see open source databases gaining on commercial licensed products is that you have a couple of things happening. To a degree, the core features of a database are a commodity. That is that for a generic user application, all of the major players (commercial and open source) are able to provide the necessary functionality along with stability. So if you’re looking for a simple OLTP system that can handle a store’s POS system, you have a lot of choices. With the emphasis on keeping the costs down, unless your a Wal*Mart or a Sears, you are not a large enough customer that you can negotiate incredible license deals. So the smaller companies are turning towards the open source databases. Start ups are using open source databases for the same thing. (Keeping costs down). Where you run in to trouble is when you need features that are not in the unsupported versions, and you need scalability. Then you’ll see these applications moving towards a commercial product like IBM or Oracle. (Oracle 11i, DB2, and IDS (Informix) )
You also have Sun pushing out JavaDB with all of their JDK bundles to developers which will also skew the overall market.
One standout is Greenplum which I believe forked off their own version of Postgres. By building on a known and open source platform, they have created a version which can be offered at a lower cost in the data warehousing niche.
I think if you want to get a better prediction, I think you need to look at segments in the database market so that you can ask better questions or get a better interpretation of Gartner’s data.