I always wondered why things like the Open Tools API, Websnap, WebBroker, Delphi's overly complex component/object system, and several other things have gotten out of hand. Of course part of the problem is Anders H. and/or the other team members at Borland being obsessed with inheritance and abstraction (and encapsulation, and all that other goofy stuff that people don't need as much as they think) during delphi engineering days.
The other problems might be related to management and/or people who don't even write code any more. Then there are the fanboys who write some code but basically don't see any need for innovation since.. well we're already such big fans!
(When I was a newbie to programming, I was fanboy of Delphi because I thought Delphi was so much more productive. Then when I got a clue, I realized that slapping some cute components on cute forms is something newbies really get excited about.)
Now I've always heard that people like John Kaster and David I still write code and download components from websites to utilize.. and I think John K. even writes some code for the delphi websites. That's good that the people that are contributing to the company are still writing code. I'm not so sure I like the tools they are using to run their websites as much as the ones I use.. but hey, the point is they are writing code.
When you have a company with managers making decisions about products, these managers still need to be hackers. The hackers know the product better than the people who sell it. I was displeased to see that Nick doesn't even write code (much) any more. Come on nick, you'd better start writing code again.
"Nope -- I don't write code much anymore -- it's not part of my job. Of
course, that doesn't mean, as you appear to be implying, that I am
unaware of what other languages are up to. I'm very well aware. That
/is/ part of my job. " --Nick Hodges, in a News Group Posting
Come on Delphi employees, please continue to write code.. it will do you good. Maybe this is why some tools like Eclipse (open source) are becoming very popular - because the companies that produce tools like J-Builder/Delphi are becoming too non-coder/manager type. There's a reason why some open source projects are really successful.. the reason is that some of the developers are the managers. In fact usually all the developers are the managers. i.e. the guys writing the code are the guys sending us the product.
Remember the startup-company where a single star programmer is the only employee? Who wrote the first Turbo Pascal? One person, or two? Or about 60 managers? Who wrote the first FPC compiler? Who wrote the open source project that popped up on the net the other day and is now extremely popular tomorrow?
There's a reason why startup companies do better during their startup years than later on. It's when the managers stop writing code that we get in trouble.
In no way is this an attack against Nick.. it is just my recommendation that Nick start writing more code, even if he doesn't have time. We have to make time, as hackers. Without hackers, you become Inprise or some other thing that bites the dust.
"...first of all, it is super important that you keep your hands dirty at all times. Even though I do a lot of a language design... I still try to write a lot of code.. because when you get your hands dirty, you can sort of feel what works and what doesn't..
..once you stop writing code it is amazing how quickly you float up and you become one of those architecture astronauts where anything is possible and it is just a matter of people..or throw more people at it, and it is not really like that....
..we are bombarded with commercial stuff.. people like the fact when someone who actually understands programming is talking to them.
-- Anders H., Behind the Code with Anders Video
Oh and about those namespaces discussed in the newsgroup posting? Delphi and FPC need to add unit aliases like Component Pascal has. I found this out by trying ComponentPascal/Modula/Blackbox. I didn't find this out by remaining a delphi fanboy and only using delphi.
Binding a file name to a unit is ridiculous habit. Pretend you are prototyping a new system or sysutils unit out which is a replica of the old one but is a faster version.. so you call the unit FastSysutils. In order to drop this unit in you just make a unit alias.. that way if you have any sysutils.somefunction namespace dot notations in your code, it can either use FastSysutils or the old Sysutils if you decide to flip between units. Other cases where this is handy are when using dynpwu or staticpwu in web programming with Powtils.
Unfortunately, some turbo pascal hackers just can't get rid of their bad habits and only see the old delphi way of doing things. They are wearing delphi sunglasses and only see everything as delphi (or turbopascal). So unit aliases or namespaces to them are useless or uneeded since they just bind the file name to the unit. However, at least in the current state we have it better than Cee or PHP.. languages that don't even have any sort of namespacing (at least in many versions of PHP).