This link has been bookmarked by 2 people . It was first bookmarked on 06 May 2008, by harry palmer.
-
02 Jun 08
-
At one level, you have people who are basically business analysts; they're using Access or Excel or VB6 to write data analyzing/number crunching applications.
-
but they're not especially interested in programming or anything like that. They don't really care about the quality of the libraries and tools they're using; they just want something simple enough that they can pick it up without too much difficulty. They'll never write the best code or the best programs in the world; they won't be elegant or well-structured or pretty to look at. But they'll work.
-
At the next level, you have the journeyman developers. Now these people aren't "business" people—they are proper programmers. But it's just a job, and they'll tend to stick with what they know rather than try to do something better. They might be a bit more discerning about their tools than the business types, but they're not going to go out of their way to pick up new skills and learn new things. They might use VB6 or Java or C# or whatever; it doesn't really matter to them, as they'll use whatever offers them the best employment opportunities at any given moment. Their code will probably look more or less the same no matter what. They're not going to learn the idioms of whatever specific language they're using, because there's no need, so it's just not for them.
-
most of the time, they're writing "enterprise" software. This isn't software that will sit on a shelf in a store for someone to buy
-
Truth be told, it probably won't have to look very nice or work very well; it just has to get the job done.
-
In spite of the often mediocre quality of the software these people write, they're a group that's immensely important to Microsoft. These programs are a key part of the platform lock-in that Microsoft craves. If a company has some business-critical custom application written in Visual Basic 6, that company isn't going to roll out Linux to its desktops; it's trapped on Windows.
-
At the final level, you have the conscientious developers. These are people who care about what they're doing. They might be writing business apps somewhere
-
but, probably more likely, they're writing programs in their own time.
-
They want to learn about what's cool and new; they want to do the right thing on their platforms; they want to learn new techniques and better solutions to existing problems
-
Because everything now has to live "within" the .NET world, .NET has to be all things to all people. Well actually, that's not true. It's trying to be good enough for the first and second kind of programmer. The third type—well, just ignore them.
-
The .NET library is simple to the point of being totally dumbed down; it's probably okay for the first and second groups, not least because they don't know any better, but for the rest it's an exercise in frustration.
-
Java is no panacea; it too is aiming roughly at the middle kind of developer, which is understandable, as they're the most numerous. But Java's much more high-minded. It's much stronger on concepts, making it easier to learn. Sun doesn't get it right the whole time, but the people behind Java have clearly made something of an effort.
-
One practical manifestation of this is that .NET reflects a lot of the bad decisions made in Win32.
-
Windows Forms is based heavily on the Win32 GUI APIs; the same GUI APIs that owe their design to Win16.
-
-
06 May 08
harry palmerAt one level, you have people who are basically business analysts; they're using Access or Excel or VB6 to write data analyzing/number crunching applications. These things are hugely important in the business world, totally unexciting to anyone else, and the people writing them aren't really "programmers." I mean, they are, in the sense that they're writing programs, but they're not especially interested in programming or anything like that. They don't really care about the quality of the libraries and tools they're using; they just want something simple enough that they can pick it up without too much difficulty. They'll never write the best code or the best programs in the world; they won't be elegant or well-structured or pretty to look at. But they'll work. Historically, as I said, these are the kind of people who Access is made for. Access is a great tool, quite unparalleled. Sure, it's a lousy database engine with a hideous programming language, but the power it gives these people is immense. So Access and VB6 and Excel macros are where it's at for these guys.
At the next level, you have the journeyman developers. Now these people aren't "business" people—they are proper programmers. But it's just a job, and they'll tend to stick with what they know rather than try to do something better. They might be a bit more discerning about their tools than the business types, but they're not going to go out of their way to pick up new skills and learn new things. They might use VB6 or Java or C# or whatever; it doesn't really matter to them, as they'll use whatever offers them the best employment opportunities at any given moment. Their code will probably look more or less the same no matter what. They're not going to learn the idioms of whatever specific language they're using, because there's no need, so it's just not for them.
A key feature of these developers is that, most of the time, they're writing "enterprise" software. This isn't software that will sit on a shelf in a store for someone to buy; it's custom.net windows apple osx vista programming lock-in spleen developers microsoft
Would you like to comment?
Join Diigo for a free account, or sign in if you are already a member.