My views on Eclipse and Apple's decision on discontinuing all WO Dev tools

Georg Tuparev <[email protected]> Wed, 28 Nov 2007 02:06:22 +0200
Newsgroups gmane.comp.web.webobjects.general
Message-ID <[email protected]>
Folks,

First of all I am happy this discussion moved to wo-talk mailing list.  
This is the correct place for this types of emotionally charged  
discussions.

Second, I hope Pierre & Co. from Apple are listening.

Will start with few opening remarks, before moving to the core of my  
statements.

1. It might seam that I have no idea about what I am talking about.  
The truth is, I use WO since version 0.7 (I believe Sep. 1995, when a  
NeXT employee sent me a prerelease copy). Since that time I was  
involved in many WO projects, trained many people (mostly here in  
Europe) , and created two companies around WO. To focus just on  
projects we have currently in my second company. This includes among  
others the largest european data warehouse project (chemical  
manufacturing), the police, and security forces training and info  
system of one of the largest EU countries, a banking system that is  
currently used by 57% of all dutch internet banking users, the largest  
online newspaper in the world (last stat is about 45 downloads every  
second), two major mobile phone networks, and and possibly the only  
existing control system for network of robotic astronomical  
observatories. A very conservative estimate of the user base that uses  
our software is about 6 million. This we achieved with a small team of  
about 10 people (on average) and non of us is a famous superstar. I am  
not telling this in order to impress anyone, but to make it clear, that:
- I care very much about productivity, and
- I have enough experience under by belt to claim I have a feeling  
about statistics and the community.

2. The fact that our team is not well known and not contributing  
actively to the community is not because we have nothing to say, but  
because with our clint base we are very restricted what we can tell,  
and even more so what we could share. This was one of the reasons I  
had to cancel a multi-volume book contract with AW about Cocoa and WO  
(after writing about 400 pages :(  People who read this posting and  
are over 40 might remember that for many years I was maintaining  
GNUStep and was contributing to MiscKit and other open source  
initiatives.

3. Neither I nor any of my colleagues is "religious" about any  
platform, tool, or even hardware manufacturer. From IBM 360 to Apple ] 
[, from Sun Spark to Cray, and from IRIX to DEC's masspar and telecom  
satellites we used and developed software for many very strange  
systems, and most of them were interesting experience. Neither Xcode  
nor Eclipse is the first or the last IDE we will use.

4. I use Eclipse for all our WO projects already for few months, but  
for some smaller projects for about two years. So I am not guru, but  
also not complete greenhorn.

Now concretely about the Xcode vs. Eclipse discussion.

A. Productivity
For many people productivity is measured in terms lines of working  
code per day, or speed of refactoring. We measured productivity in  
work done for the last three years (this choice is deliberate). Our  
way of working is as follow: think, think again, and think a bit more,  
write a small experiment, start thinking again... and in half year  
write few hundreds lines of source and the work is done. Will give an  
example. From the portfolio above one could imagine we have to deal  
with gazillions of legacy flat file formats, and to be able to load  
virtually any junk into the database. We do not like doing this again  
and again. So we developed a system based on two components. One is an  
engine (unix tool) that gets any file, a mapping, and produces an XML.  
The mapping is done with a specially designed graphics editor where  
with click and drag one (even a not very technical project manager)  
could describe the file format. Another tool is a single java class  
that loads XML files in arbitrary database (in terms of schema and not  
brand). The core of the unix tool and the java class together are  
written in ca. 900 lines of code (and 2-3kloc for the mapping editor).  
When writing 900 lines of code by two people for half year the  
difference between very sophisticated IDE or TextEdit is negligible. I  
would even go as far as saying that all the hundreds of Eclipse vies,  
configuration parameters, etc. is actually very hindering. On the  
other hand, I could install Xcode from a disk image, open a project  
and compile and run it without all the fuss. All these Eclipse bells &  
whistles are completely useless to me (even Xcode is often too  
complex :) and they slow me down. They disturb my flow of thoughts...

BTW, for all these years, all of us together for all our projects  
wrote between 100 and 200 kloc. For comparison, a similar but not  
truly robotic telescope project after 6 years and after 300kloc is  
still not finished.

What I claim here, is that the typical for so many developers over- 
reliance on complex tools and techniques does not lead to higher  
productivity, and at the end of the day the number of happy customers  
counts (to me at least) more then the number of buttons on the toolbar  
of my IDE.

B. Esthetics.
In one word - Eclipse is harassment to even the most modest sense of  
esthetics or beauty. It is a torture for the eyesight, it is ugly,  
distasteful, painfully inconstant and repulsive! It might contain  
countless smart and useful functions, but they a wrapped in dirt. And  
this mess is not because it is complex (as some did claimed). Only on  
that subject I could fill many pages, but I will skip it. I will only  
ask you why are you all using Apple hardware and Mac OS? Eclipse looks  
exactly as ugly on windows or Linux, yes? If you do not care about  
esthetics, why are you buying Mac and not one of these ugly cheap  
plastic bricks every computer shop around the corner sells for $500?

Pierre, if you are reading, why don't you make the following  
experiment - open one project in Eclipse, go to Steve, tell him that  
Apple customers have to cope with this and watch his face :)

C. New WO Developers
In our team we have one guy that knows Eclipse inside-out and defends  
it to some extend. Few days ago I asked him the following question.  
Imagine a guy across the street reads about this fantastic framework  
called WebObjects, how it makes you more productive, etc. And he  
decides to be a WO developer. So he buys a Mac (with Leopard on it),  
and tries to write and deploy a simple WO application with a simple  
database of just one table. What is the chance of success? After some  
thinking he looked at me and told me - yes, you are right, the chance  
is close to zero.
Do I need to go further and explain what does this mean for the future  
of WO?


Final word
Day after day I go to the office and work on extremely complex  
software systems that handle inter-banking transactions, mobile phone  
calls, or control of some very complex instruments. This pays the  
bills. In the evening I go home, have few hours with my family, and  
after every one is sleeping I start working on yet another complex  
software system that models the macro-molecular chemical pathways in  
our bodies (my goal is to understand how muscular dystrophies work,  
and hopefully help to find a cure... it is a hobby for me). In all  
these activities I have to think about two-phase commits, satellite  
links, chromatic aberration, or protein folding. I do not want to  
think about classpaths, or if I installed the version of WOLips from  
this afternoon.
For me and countless other people the process of software development  
is just the way to achieve our goals and not the goal itself. We are  
professional economist, physicist, chemist, or biologist first, and  
software developers second. IDE is a tool, and as every tool in the  
hands of an amateur it must be first and foremost simple! Therefore  
many of us hate Eclipse. And believe it or not, people like me  
(amateur developers) are the majority of the users (exactly as there  
are more weekend photographers using iPhoto then professionals using  
Photoshop).

Now, I can go on and replay few of the comments posted here, but I  
believe I made my point.

Thank you for reading so far...


Georg Tuparev
Tuparev Technologies
Klipper 13
1186 VR Amstelveen
The Netherlands