Tim Anderson’s ITWriting

Tech writing blog

June 30th, 2009

Eclipse survey shows Windows decline

In May 2009 the open source Eclipse project surveyed its users. Visitors to the Eclipse site were asked to complete a survey, and 1365 did so. That’s out of around 1 million visitors, which shows how much we all hate surveys. Anyway, this report [pdf] was the result. A similar survey [pdf] was carried out in 2007, potentially making a valuable comparison, though the earlier survey has different questions making direct comparisons difficult in most cases, which is a shame. I especially missed the detail on which Eclipse projects are used most which is well covered in the 2007 report.

Here is what I found interesting. First, there’s a shift towards Linux and Apple Mac in the desktops developers use for Eclipse. In 2007 it was 73.8% Windows, 20% Linux and 3.5% Mac. In 2009 it is 64% Windows, 26.9% Linux and 6.9% Mac.

This is echoed in deployment platforms too (client and server). In 2007 it was 46.5% Windows, 36.6% Linux, 1% Mac; today it is 40.5% Windows, 42.7% Linux, 3% Mac.

Those surveyed were asked what other IDEs they used. I noticed that Microsoft Visual Studio and NetBeans feature fairly strongly; I also noticed that Embarcadero’s JBuilder is hardly a blip on the chart – intriguing, given how popular this used to be in the pre-Eclipse era.

The most popular code management tool is Subversion (57.5%) followed by CVS (20%). For build tools, Ant (33.4%) and Maven (18%).

Here’s an intriguing one: I often hear that Java is only successful on the server. That presumption is not supported by this survey. 23.4% said that desktop client apps are the primary type of software they are developing, compared to 30.2% server, and 24.7% web or RIA apps.

The preferred app server is Apache Tomcat (34.8%) followed by JBoss (12.7%) and Websphere (6.9%).

The most popular database manager is MySQL (27.7%) followed by Oracle (27.3%). That’s 55% for Sun+Oracle, of course, though bear in mind that many of the MySQL users are likely attracted by its free licence.

Before drawing too many conclusions, bear in mind that it is a small sample self-selected by people willing to take the survey; apparently it was also featured by a German technology site which resulted in a larger response from German visitors.

Although it suggests a declining use of Windows – which is especially plausible given the trend towards web applications – it does not prove it beyond the Eclipse community.

And next time – how about using the same questions, which would make it possible to identify trends?

I’ve also written about Eclipse here: The Eclipse Conundrum: can it grow without hurting its contributors?

June 18th, 2009

Survey ranks developer tools, and reveals what developers care about most

Evans Data has published its 2009 Software Development Platforms survey, to which around 1200 developers contributed, scoring their chosen development tools in eighteen different categories.

The tools covered are Eclipse, Embarcadero’s Delphi, IBM’s Rational Suite, IntelliJ, Microsoft’s Visual Studio, NetBeans, Oracle JDeveloper and Sun Studio.

I was sorry not to see more products covered. Flex Builder Flash Builder, Zend Studio, Aptana and JBuilder would all have been interesting, for example. Each developer only scored the product they actually use (a good thing), so the sample is not as big as it first appears.

I’m also mistrustful of the survey results, particularly when you look at it in detail. For example, one of the categories is “Support for frameworks”.  Visual Studio came top, while Eclipse was last. But hang on: in Visual Studio (for example) are we talking MFC, or .NET Framework? The development experience for each is totally different. And were developers primarily judging on the framework tools, or the framework itself? It is hard to attach much meaning to the scores in this category.

Another flaw: the versions of the products is not specified. That means a weakness may have been fixed in a later version, but the survey does not tell you.

A third flaw: some tools are weak in several categories, dragging down their overall score, but that does not matter to developers who do not use them for that purpose. It is hard to compare like with like.

Still, while I’m wary of the survey overall, I though it brought out some interesting points. One is that developers were asked what features matter most to them. So:

The three things developers care about most (highest priority first):

1. Basic tools (editor/compiler/debugger)

2. Documentation

3. Tool integration

The things developers care about least (lowest priority first):

1. Support for remote development

2. Support for parallel programming (sorry Intel!)

3. App Modeling tools

What about the winners and losers in the survey? I almost forgot. IBM’s Rational Suite came top, followed by Microsoft’s Visual Studio. Eclipse came last, though it still got a decent score, well below its rival NetBeans.

The low ranking for Eclipse (which is nevertheless wildly popular) deserves some comment, particularly as the top tool, IBM Rational Suite, is built on Eclipse. I spoke to Eclipse executive director Mike Milinkovich while researching this Register piece recently. One of the points we discussed was the tension (if there is one, which he disputes) between tools vendors sharing resources to build the best possible platform, and holding resources back to retain commercial differentiation. I’ll write this up in more detail shortly; but it shows why certain areas in Eclipse may not receive the attention they deserve – localization was a specific example.

Another problem with Eclipse is that it is all a bit messy, confusing and hard to manage, particularly in a team where you want every member to have an identical setup. It is still worth it though, for the riches it provides for free.

May 5th, 2009

First baby steps for Moonlight 2.0: Silverlight for Linux

Miguel de Icaza has announced the first preview release of Moonlight 2.0. This is the one that counts, in that it brings the .NET runtime to Silverlight applets running on Linux:

This is the ECMA VM running inside the browser and powering C# and any other CIL-compatible languages like Ruby, Python, Boo and others. You can use Moonlight/Silverlight as a GUI (this is what most folks do) or you can use it as the engine to power your Python/Ruby scripting in the browser.

The download page has plenty of health warnings:

Keep in mind this preview release is not feature complete. Most importantly not all security features are present or fully enabled in this release. Even existing security features have, at this stage, received only minimal testing and no security audit of the source code (mono or moonlight) has yet been done.

Undeterred, I installed it into FireFox 3.0, running on Ubuntu Linux. The download is under 9 MB. My first effort was unsuccessful; the plug-in appeared to load OK, but no Silverlight apps displayed. My second attempt in a VM worked. Naturally I went along to my Silverlight database example which as it happens runs on Mono. Here it is:

This is what it should look like (Silverlight on Windows):

Well, it is only an alpha preview, and it shows. On the plus side, the data is displayed, the search works, and the buttons operate. It is a considerable achievement. But don’t plan to move your users onto Moonlight applications just yet.

May 4th, 2009

Flex Builder for Linux on hold: another sign of financial stress at Adobe?

On 21st April Adobe’s Ben Forta told a user group that Flex Builder 3 for Linux is on hold, citing lack of requisition, which is corp-speak for lack of demand.

Note that the Flex SDK does run on Linux. It is just the official IDE that is in question.

Linux is a free operating system, and this could be evidence that users of a free OS are less likely to purchase software than users of a paid-for OS. Or it could simply reflect poor market share for Linux outside servers. Even if it has just hit 1%, as hitslink reports, it is still barely more than 10% of the Mac share and a little over 1% of the Windows share. Some of those Linux machines will also be netbooks – secondary systems for users with a Windows or Mac for serious work such as design and development.

Nevertheless, I suspect there is more to it than that. I suspect Adobe would like to support Linux, because it wants to portray Flex as an open platform – the SDK is open source, though managed by Adobe, but the runtime engine is closed-source and proprietary. This may be another sign of Adobe’s financial stress. The company reported reduced quarter-on-quarter revenue for the the 3 months ending February 2009, and has been cutting staff numbers.

The backdrop to this, in contrast, is that Adobe is having great success with its Flash platform. There is no sign of Microsoft’s Silverlight denting the popularity of Flash on web sites, either for applets or media streaming.

The recession then? Partly; but this is also about Adobe’s business model. Adobe does not break out its figures in detail as far as I know: the last financial statement merely shows that its revenue is nearly 95% from product sales, the rest being services and support. Still, I’d guess that the largest component of its product sales must be Creative Suite. In other words, its business model is based on selling tools and giving away runtimes. When 47 million people watch Susan Boyle on YouTube, Adobe doesn’t make a penny, even though they are almost all using Flash to do so.

The tools market is a difficult one for various reasons, including competition from free products and the fact that the number of people needing development or design tools is always much smaller than the number needing runtimes. In a recession, deferring a tools upgrade is a obvious way for businesses to save money. Remaining primarily a tools company is a limit to Adobe’s growth and ultimately its profitability.

This is of concern to all Flash platform users. Adobe has proved to date a good steward of the technology. Some of us would like the balance of proprietary vs open tilted further towards open, but I doubt many would welcome a takeover or merger such as we have seen with Sun and Oracle (and there are a few parallels there).

There would also be many cries of “foul” if Adobe sought to further monetize Flash by starting to sell, say, a premium version of the Flash runtime.

Adobe is still a profitable company, and maybe when the economy recovers all this stress will be forgotten. Still, I’d guess that long-term Adobe will want to shift away from its dependency on sales of tools; and how and what it does to achieve that will have a big influence on the future of its RIA (Rich Internet Application) platform.

April 30th, 2009

OpenDocument comes to Microsoft Word and Excel

After the intense interest in OOXML vs ODF during last year’s ISO document standardisation wars, I’m surprised that the inclusion of OpenDocument support in the newly-released Office 2007 SP2 has attracted so little attention. Well, not really surprised. The general public doesn’t care much about document formats as such, just that the documents they send and receive open OK. The anti-OOXML fervour was about exploiting a chink in the armour of Microsoft’s de facto near-monopoly in Office suites.

Well, Microsoft has ticked the box now. I haven’t done exhaustive tests; but I did some sanity checks. I opened a .docx (OOXML) in Word, saved it as OpenDocument Text; opened in OpenOffice.org, saved it out to a new .odt document, opened that in Word, saved it out as docx. And you know what? It looks the same. Even the styles are still there. What’s more the conversion was fast and convenient, just a Save As. All in all, a contrast with the wretched experience I had with the earlier Microsoft-sponsored converter.

Next, I tried a small stress-test; a .doc bidding card for Contract Bridge that has some tricky tables. This document crashed WordPerfect’s .odt converter. Word could happily save it as .odt and reopen. Opening the exported .odt in OpenOffice showed some minor differences – part of the table went slightly out of alignment, as the illustration shows (Word is on the left, OpenOffice 3.0 on the right), but nothing drastic.

Is this the end of the format wars? Not quite; there is still a long list of features not supported by the conversion, and if you want an easy life it still pays to stay with one vendor’s Office suite. My impression though is that Microsoft has done a decent job, and that for everyday documents the conversion will work as expected.

For the OpenDocument crowd, getting the format incorporated into Microsoft Office is a victory of sorts, but not the real goal, which is to establish it as the universal document format. Microsoft is betting that its inclusion will help it sell Office, but that customers will still mostly use .doc or .docx (and the Excel equivalents). If enough institutions mandate OpenDocument, that bet could yet fail, but right now that looks unlikely.

Update

Ivan Zlatev reports on a less successful import here.

Update 2

While word processing import and export is reasonable in some circumstances, there is a deal-breaking problem with spreadsheet import and export: all formulae are either ignored or broken. That is, you can save from Excel to .ods, open in OpenOffice.org Calc, and get cells like msoxl:=SUM(C6:C8) (in plain text). You can save from OpenOffice.org Calc, open in Excel, and find formulae converted to plain text. If you save and open sheets from Excel, but in .ods format, it works; the clue why is in the OpenOffice.org rendering. It appears Microsoft has stuck by the letter of the standard, which does not specify how formulae work, but broken any kind of meaningful interoperability.

April 21st, 2009

The end of Sun’s bold open source experiment

This is a sad day for Sun. It sought to re-invent its business through open source; and the experiment has failed, culminating not in a re-invigorated company, but instead acquisition by an old-school proprietary software company, Oracle.

It is possible to build a successful business around open source software. Zend is doing it with PHP; Red Hat has done it with Linux. These are smaller companies though, and they have not tried to migrate an older business built on a proprietary model. A further complication is that Sun is a hardware business, and although open source is an important part of its hardware strategy as well as its software strategy, it is a different kind of business.

Maybe the strategy was good, but it was the recession, or the server market, that killed Sun. In the end it does not make any difference, the outcome is what counts.

Reading the official overview of the deal, I see lots of references to “open” and “standard-based”, which means nothing, but no mention of open source.

The point of interest now is what happens to Sun’s most prominent open source projects: OpenOffice.org, MySQL, Java and OpenSolaris. Developers will be interested to see what happens to NetBeans, the open source Java IDE, following the Oracle acquisition, and how it will relate to Oracle’s JDeveloper IDE. These open source projects have a momentum of their own and are protected by their licenses, but a significant factor is what proportion of the committers – those who actually write the software and commit their changes to the repository – are Sun employees. Although it is not possible to take back open source code, it is possible to reduce investment, or to start creating premium editions available only to commercial subscribers, which already appeared to be part of MySQL’s strategy.

I presume that both OpenOffice and Java will feature in Oracle’s stated intention to build an end-to-end integrated solution:

Oracle will be the only company that can engineer an integrated system – applications to disk – where all the pieces fit and work together so customers do not have to do it themselves. Our customers benefit as their systems integration costs go down while system performance, reliability and security go up.

says CEO Larry Ellison, who also says nothing about open source. This will involve invading Microsoft’s turf – something Sun was always willing to do, but not particularly successful at executing.

The best outcome for the open source community will be if Oracle continues to support Sun’s open source projects along the same lines as before. Even if that happens, the industry has lost a giant of the open source world.

Some good comments from Redmonk’s Michael Coté here.

February 26th, 2009

SharpDevelop 3.0: everything .NET from Boo to F#

I’ve been researching open source .NET and noticed that SharpDevelop, the free IDE for .NET on Windows, completed version 3.0 earlier this month. Congratulations to the team. Along with Windows Forms and ASP.NET applications in C# or Visual Basic, you get extras like support for F#, Boo and Python. Another welcome feature is built-in support for Subversion version control. There’s even an ASCII table in the IDE, which brings back memories: 15 years ago every programming manual had one at the back.

SharpDevelop has two major challenges. One is keeping up with Microsoft; right now there are discussions about improving WPF support, for example. The other is that Microsoft offers free Express versions of Visual Studio, which leaves SharpDevelop with those niche users for whom the Express products are unsuitable, but who do not want to pay for a full version, or who are wedded to some exclusive SharpDevelop feature.

In favour of SharpDevelop, it installs more easily and loads more quickly than Microsoft’s effort, and certainly proves the point that native C# applications do not have to be slow.

A more interesting though less complete product is the forked MonoDevelop, which is cross platform and targets Mono, the open source implementation of .NET. Mono now looks good on Linux; but the idea of WORA (Write Once Run Anywhere) has never really caught on in the .NET world. How many significant Mono applications for Windows have you seen? My guess is that if it happens at all, it will be in the form of Silverlight/Moonlight running in the browser.

Technorati tags: , , , ,
January 16th, 2009

SQLite developer argues for quick bug disclosure and fixes, despite egg on face

SQLite developer D Richard Hipp has posted to his mailing list to announce a third release in the space of a few days, to fix bugs discovered in version 3.6.10:

Some concern has been expressed that we are releasing too frequently. (Three releases in one week is a lot!) The concern is that this creates the impression of volatility and unreliability. We have been told that we should delay releases in order to create the impression of stability. But the SQLite developers feel that truth is more important than perception, not the other way around. We think it is important to make the highest quality and most stable version of SQLite available to users at all times. This week has seen two important bugs being discovered shortly after a major release, and so we have issued two emergency patch releases after the regularly scheduled major release. This makes us look bad. This puts "egg on our face." We do not like that. But, three releases also ensures that the best quality SQLite code base is available available to you at all times.

He goes on to say that an extended beta period would be unlikely to reduce the risk of bugs found on release, because most bugs in SQLite are found by internal testing rather than by external users. He also argues against withholding releases until they “testing is finished”:

The fallacy there is that we never finish testing. We are constantly writing new test cases for SQLite and thinking of new ways to stress and potentially break the code. This is a continuous, never-ending, and on-going process. All existing tests pass before each release. But we will always be writing new tests the day after a release, regardless of how long we delay that release. And sometimes those new tests will uncover new problems.

Anyone who has ever developed an application will know that sinking feeling when problems are discovered in code that has been distributed. Thoroughly implemented unit testing, as in SQLite, improves quality greatly. When bugs are found though, full disclosure and prompt fixes are the best possible response, so I agree with Hipp’s general approach here.

November 14th, 2008

Sun’s financial problems – what comes next?

Sun has today published a press release announcing that up to 18% of its global workforce is to be cut and that Rich Green, VP of Software, has resigned.

It has also formed a new business group called Cloud Computing & Developer Platforms, for advancing its cloud services efforts.

Sun is a fascinating company, with serious commitment to open source. It is also the steward of Java, MySQL and OpenOffice.org. Despite the software aspect, selling servers is a core part of its business, and its problems now (in my quick opinion) are a consequence of the economic downturn, a trend towards cheap-and-many in the server market, and a rush towards open source without any clear strategy over how to monetize it. No, I don’t believe turning runtime and application downloads into foistware and adware is the solution.

Somehow, Sun allowed competitors such as IBM and Oracle to benefit from Java without reaping equal rewards itself. It is great at innovating but less good at profiting from its invention. Java applets were the first browser-hosted client applications, but Sun did not see the need for something like JavaFX until Adobe Flash and then Microsoft Silverlight showed how this needed to evolve; now it is probably too late.

Another example is utility computing (one aspect of cloud computing), which Sun pioneered with its Grid initiative; but others such as Amazon are now setting the pace in this area.

What comes next – acquisition, recovery, or continued decline?

Technorati tags: , , , , ,
November 13th, 2008

OpenOffice to become adware?

From Jonathan Schwartz’s blog:

An auction’s afoot … to see who we’ll be partnering with us to integrate their businesses and brands into our binary product distribution – the possibilities are limitless: people tend to print those documents, fax them, copy them, project them (and I know this annoys my friends in the free software community, but branding allows us to invest more in OpenOffice.org community and features, from which everyone benefits).

An alarming prospect. But OpenOffice.org is meant to be free and open source. What does Schwartz mean by “our binary distribution”? Note he says OpenOffice.org not Star Office, Sun’s commercial version.

I presume it will be possible for others to step in and offer branding-free distributions of OpenOffice. I’ll go for those, thanks very much.

Contributors to OpenOffice.org put their trust in Sun and even assigned their copyright, supposedly to protect the open source status of the code. If Sun commercialises the free distribution (it can do what it likes with Star Office), that strikes me as stretching the limits of what people understand by free software.

If Sun, by Schwartz’s own admission, is willing to “annoy” its friends in the free software community, OpenOffice.org will lose a lot of momentum – I foresee forks and anger. A good day for Microsoft Office.

Then again, I may have misunderstood. I’m seeking clarification.

Technorati tags: , ,