Java vs .NET numbers

General Windows Developer Numbers

JohnMont (who oughta know) provided these numbers today as “quotable and public” so I thought I would:

  • There are ~6M professional developers worldwide, about 90% of whom target Windows
  • There are about 2.5M .NET developers
  • >60 of the Fortune 100 develop using .NET
  • Forrester says that 56% of enterprises in North America are
    choosing .NET for their development requirements vs. 44% choosing J2EE

According the legend (JohnMont didn’t comment on this part), 4-5M of
those 6M developers targeting Windows are Visual Basic developers,
which means that if they ever get tired of being made fun of by the C
family of developers, we’re going to be trapped in phone booths while
they decent on us like the birds in an Alfred Hitchcock movie

I find it difficult to believe that 56% of enterprises are chossing
.NET over J2EE.. Whats the fine print? It just seems too fishy!

JavaOne: Disappointed so far

Boy! Has it been one year already… Geez time runs fast. For me its been a day of Webcasts..

  • Jonathan is BORING plain & simple
  • No Microsoft bashing ..
  • Typical Demo screw ups(when will these folks learn to demo, something to learn from apple)
  • Of all the cool phones that are java enabled Jonathan finds the lamest Samsung phone to demo.
  • oppurtunity, ubiquity
  • For the last 3 years Jonathan has been talking about company that could make millions by selling ring tones; its getting really lame
  •  

On the positive side

  • no boring motown(detroit) jokes 😉
  • Looks like Sun is spending a lot of money on marketing it seems, really nicely done presentations, logos etc
  • Java 3D to be open sourced ( buddy its been a year and u folks have the same old demo, its no longer cool)

Intelligent Updater for Java

After a long time I finally got to spend sometime on my comp. Decided to play around with the new installation of Fedora on my PC. After losing my way into the web I ended the night finding 2 intelligent updaters(one for Perl – and the other for linux)

CPAN Shell
YUM 

As I let my mind wander I realised that a combination of Intelligent updater with my Software Version Manager Idea (RSS) that I had written earlier would be a kick ass idea. Let me opensource my idea 🙂

The idea is to for the end user to subscribe to a list of RSS feeds for their respective software say Hibernate, Struts, etc. The intelligent updater would lookup the end users  profile for the subscribed RSS feeds and download the according jar files. The icing on the cake would be if dependencies of the jar were to be dowloaded as well. With some many jars floating around these days isnt it time someone wrote a Intelligent updater. The CPAN updater is one kick ass updater and here we are thinking perl is outdated. Wish I was in school, this would have been a kick ass program to whip out! Any takers ..?

Aah.. the pleasures of refactoring

I got back to the code that we launched to production a few weeks back
to tie up some looses and sync up with the screwed up PVCS. Having been
pulled to work on other stuff, I felt like I was looking at my code
with a new pair of eyes and to give a perfect analogy of how I felt
seeing my code

“One designs & develops for a few months & after all the mad
rush, You let the code (muddy water) settle down untouched for a few
weeks. First look at the code feels like one has the muddy water, but
when you get back to look at your code again it feels like the mud has
settled down and the water is floating on top waiting to be drained out!

I feel like its a perfect time to learn the mistakes & the good
things out of the project and to improvise the rough edges. This is
probably the best time for a lot of Aha moments from design/code point
of view.

I have learnt 2 lessons that I wanna put out there

  • Divert attention after a release and work on something else (let
    the mud settle) before taking a look at the code again. This would add
    much more value & help one build better software.
  • This break is also generally need to schedule a code review.

Useful Java resource

Ran into JavaPractices when I was searching something else. Seems to be pretty descent.

Collected Java Practices
javapractices.com offers concise presentations of Java practices, tasks, and designs, illustrated with syntax-highlighted code examples. Many code examples are taken from WEB4J and StocksMonitor, robust example applications whose full source code may be purchased. [ User comments on the site.]

Re: Write your Java apps in Visual Studio.NET?

Matt & some commentors on his thread have raised some interesting points/questions. Instead of responding there, I decided to post an entry here.

Matt,
     A little bit of history. Mainsoft the company that does Visual Mainwin used to be my previous employer’s (www.bristol.com) competitor. Both our companies helped customers port their VC++ code to UNIX environments. Both the companies licensed Microsoft source code and ported it to unix & provided tools to support the porting. Microsoft created this market expecting UNIX developers to start coding using VC++(Mainsoft even ported Visual Studio – Visual Mainwin) and migrate to windows. At this point in time UNIX beat windows (4.X NT at the time) hands down in terms of stability, performace etc. What ended up happening was, Companies started porting to their code to UNIX environments. Microsoft decided to kill the market by stopping the licensing of their source code (WISE agreement). Meanwhile this market died when most companies decided to move from thick clients to thin clients. Mainsoft has decided come up with a bridge to support .NET applications on J2EE. 2 important questions have been raised.

Visual Studio as a development environment: Having worked on both environments extensively I would rank Visual Studio as a better environment when compared to Eclipse. Eclipse is getting there but it still misses some intutive stuff that Visual Studio provides. You got to give that microsoft. They are good at building tools and simplifying the GUI. The point in question here is that would people using Visual Mainwin to write their java code? I DONT think so. Explaination later.

Porting .NET code to Java: This is viable market and a viable solution! As Webservices & standards start to mature this would become a reality. Im betting that Windows forms is going to be much better than the corresponding Java Solutions. Microsoft has extensive experience developing UI/GUI applications/tools/environments while SUN/Java is still learning the ropes.

While working with my previous employer, we found that customers wanted to stick their development environments but wanted tools/plugins within that environment to support the porting/migration. For example someone like you would want to stick to eclipse and develop your code. Also if the teams are bigger which is the case in most corporations, you are going to have 2 teams one to develop J2EE components/code and one to develop .NET code (Unless they find many dominic’s ;)).

Bottom line: Mainsoft Binary compiler & it related tools would be a good fit while Visual Mainwin might not be a hit!

P.S: I speak for myself and no one else!