Re: Programming project required

From: Emlyn (emlyn@one.net.au)
Date: Sun Jan 21 2001 - 07:00:05 MST


Samantha Atkins wrote:
> Emlyn wrote:
> >
>
> >
> > Geez, the purists really did jump down my throat on this whole issue.
I'm
> > beginning to be concerned that I'm crossing into troll territory on the
> > language/system choice issue.
> >
>
> I notice you did not bother to deal with any of the arguments raised
> against MS products and environments. Why? Do you think it is right
> just to call us "purists"?
>

Sure.

> > What can I say? I love GUIs, I don't love command lines. I've been a
unix
> > admin, and a unix developer, and my rather drawn out degree involved all
> > coding on unix boxes. I've never really grown to like it. Perhaps it's
> > because my earliest influence in IT was my dad, who hated unix with a
> > passion (a vms man). There used to be a time when unix was seen as a
cobbled
> > together joke of an operating system, compared to the state of the art.
> >
>
> Really? Compared to what?

Compared to the state of the art, maybe 20 years ago? It must have matured
since then, or something...

> Surely not compared to Windows which to this
> day cannot even deal with multiple users correctly.

??? Are you talking about NT5, or Win3.1?

> VMS was halfway
> decent. More than halfway. I greatly miss its System Services and
> Runtime Library. But you won't find those things in Windows. Its
> command language was rather a poor joke though.

Not that I have a lot of experience with that; before my time.

I'm not saying Windows is any better. However, you can't claim the moral
high ground with either of these operating systems. Not that there is any
highground to be taken.

>
> > On the other hand, I've been working with MS stuff for years now. I love
it.
> > I love the win32 world. It's pretty. Some of the variants are even
halfway
> > decent operating systems. The tools are wonderful. The finished products
are
> > beautiful.
>
> A bit of pretty GUI level stuff is enough heh?

Ooh, but it is, it is. I do so love a mouse and some eye candy.

> What about the broken
> Basic environment?

I don't use it.

> What of the quite poorly constructed MFC?

I don't use it.

> DLLs are
> really nice, but they were much better in OS2 which is a much superior
> operating system to Windoze to this day.

OS2... that was an operating system, right? mmm, I remember that. Funky gui.

Of course, dlls are a low layer these days, with COM and COM + and all that
goodness perched on top. And it is damned great stuff!

> Which tools are wonderful?

Delphi... Delphi is the light and the w... sshh, I don't have religion,
really...

> The C++ environment?

Nup; none of the C++ environments are any good, as far as I know.

> It is more or less acceptable as an IDE except
> that it produces massive bloat and takes hours to compile decent sized
> projects and doesn't give anywehre near adequate reflection or
> cross-cutting abilities.

Yes, that killed a project I was working on, some time back (well, killed my
involvment in it, anyway). They converted to Delphi (people do learn after
all), and now the compile time is unmeasurably quick, rather than an hour on
a PIII.

> And since MS doesn't really support file
> soft-links it is a bit of a problem sharing build components among
> members of a team.

Unless you use a decent set of tools which cope with that. I do have to
agree with you on soft-links; that is sooo missing from MS stuff.

> Visual Basic I already talked a bit about.

Spit, spit, VB must die. It wont though; the VB problem in 10 years (maybe
beginning now?) will be like the COBOL problem now (or is it fixed now?).
Don't throw out those VB5 books, guys, they'll make you a LOT of money
(more, that is) in coming years.

> J++, MS
> attempt to steal Java in front of everyone, with an interface straight
> out of Visual Basic? Is this your idea of a wonderful tool?

No.

> How many
> tools have you actually worked with?

Some, some. Lots of office stuff, some years ago (yechh), happily I then had
a long spell using Borland tools, and now I'm doing ASP stuff. No, the tools
for ASP are not so good, although I do like the little cheapy text editor
(editpad).

Depends on your definition of tools, though. I mean, as well as IDEs, all
the other stuff... database tools, editors, the luvely browser, graphics
tools, you know, all the stuff you run and use when you are building a
system. Actually, I must admit that a good proportion of the tools are my
own (thanks Delphi).

> Do you know Smalltalk and Lisp
> IDEs (back when they were still common)?

Nope. They were common? On Earth?

> Exactly what are you comparing
> to? Only the command line?

No, no, no, to all the horrible tools I used in various unix guis & in
character mode over 10 years at uni (I kid you not), and in my stint working
on unix. Also to the stuff from the DOS days (although Turbo Pascal is still
a favourite).

> But the CLI has all the power despite not
> being friedly.

That must be why I never deleted it from my system. I also never deleted the
registry editor. But I do use each sparingly.

> GUIs are nice, don't get me wrong, but they only do what
> the designer of the GUI driven interface set them up to do.

One of the reasons I love the GUI is that I use decent tools to code up my
own utils, very quickly, to do exactly what I want to do, and to have a nice
interface to boot. I'm not saying everyone should do this, although we are
comparing to an OS which expects you to recompile the kernel now and again.

> Oh yes, you
> may be able to add to it with a Visual Basic subset.

Wash out your typing fingers with soap! Actually, it's probably a good use
for VB.

> But that is very
> little compared to having true access to the entire environment the GUI
> elements were build from as you do in Smalltalk and some of the Lisp
> IDEs.

I'm not sure what you mean here. Most decent (non script) environments in
Windows give you
full access to the OS, then render that unnecessary in all but the most
extreme situation (except
visual C, which requires it for virtually everything)

> But if you want to produce COM components (which I admit are a
> good thing generally although not as good imho as CORBA) then you have
> to go write them in some other language, usually C++, rather than the
> much touted VS Basic.

Actually, you can produce COM components in VB quite easily, with
restrictions. I hear that
VB even has pointers these days, although that just sounds like a recipe for
stupendous
disaster.

You can use visual C++ to produce COM components; the hello world equivalent
will take
a month to code up, and another month on top of that to compile.

Or you can pick decent tools.

> Yes, .net may/will change this. But it is rather
> too little, too late.

I've no idea about .Net . That'll be one of those changey things I was
skiting about being on top of, a few emails back. I'll go read up on it now.

> And all of these tools are owned and locked tight
> by MS, which quite clearly does not have the best interests of
> programmers or the software world in general as a major goal.

Best interests of programmers? A lot of wealthy coders will tell you
otherwise. MS is stripping a lot of money out of other companies, and
handing it to coders, with their software development tools.

The software world in general; well, that's another story. I don't think I
can talk about the "software world in general" without a definition.

> That they
> are closed up means many of the best minds will not get a chance to
> build from them unless they sell out to the great MS.
>

Here, you are confusing MS's development tools and their OSes, which are
entirely different things. I'll talk about that more below.

>
> >
> > Other than my pro MS bias, and a deep affection for Borland's Delphi, I
> > don't have any particular alliegance to products/languages/etc. Whatever
is
> > necessary to get the job done. It's the thing you are trying to achieve,
not
> > the tools you use to achieve it with.
>
> There is not one tool in Delphi or MS that has not been done and done
> better in Lisp and Smalltalk ages ago.

How is this relevant to anything?

> COM components and components
> generally come close but that was taken straight (well actually very
> round-about) from DEC DCE protocol and was MS attempting to define
> itself separate from the rest of the world and true component
> interoperability using CORBA.
>

So they based it on something good? Good.

> The couldn't own CORBA and sure weren't
> going to offer any bridges to it. Not that CORBA is pretty either.

I've never checked it out; I'll do so one of these days. How about the java
beans stuff? What do you know about that; it's in the same space, is it not?

> >
> > A final bit of ranting... while lots of people have said that
ASP/IIS/ETC is
> > a bad way to go (and even bad from a saleable job skills sense, weird),
> > everyone's been putting forward a different point of view. I would put
it to
> > you all that none of us has the big picture. The IT world is truly
immense
> > these days; is it just possible that each of us is dwelling in his/her
own
> > private little (very large) world, and not considering views/truths from
> > outside that domain?
> >
>
> Actually, I look at it differently. It is up to moral programmers

(rotflmao)

> with
> a vision of how we could do things far better than we do now to choose
> the tools that they believe are the best and to use those successfully
> on enough projects to give them continuing life and dominance and to
> make room to develop the next set of tools and the next after that until
> we develop tools that take over their own development largely. I got
> into this business to change the world, not just to give this or that
> company what some manager is asking for today. I and others like me are
> not done yet.
>

Good on you. That's tops, really. I don't think I've ever heard that point
of view espoused before, by anyone who has worked in private industry for
more than a couple of years and still has a job. Certainly, I have renounced
my faith (once it was very strong). Not only for it's impracticality, but
because I saw people not do things my way, go down the "wrong" path, and
actually succeed. It occured to me that the techie-purist point of view
might not be the end of things, after all, and perhaps, instead of being put
on Earth to right the evils of ignorance in everyone except myself, that
maybe other people might have a point, or know more than me, or better than
me, now and again.

-----

Sorry, that was unnecessarily inflamatory.

Here's something more constructive...

You must differentiate between Windows, and Microsoft's development tools. I
must point out that I only ever use MS's own tools grudgingly, because they
seem to be crappy in almost every circumstance.

- VBA is good as a macro language for applications, but silly people think
they should build real apps out of it, in Excel or Access, or von Neumann
help me, Word.

- VBScript sucks dogs bollocks (can I say that here?)

- VB is a great tool for untrained coders. It's good for writing hello world
programs in, very good efficiency in terms of coding time for that purpose.
Also, if you have commissioned excess bandwidth on your corporate network
and are worried that you wont be able to justify it to the board, an
enterprise license for VB in the hands of your developers is just the
ticket.

- Visual C is designed by Satan, to look like the most powerful tool for
development ever conceived, while actually being the most powerful tool for
creating broken apps and sucking development money. Unless the Incredible
Exploding Application is what you were setting out to build in the first
place...

- Visual J? Never used it. I haven't seen anyone running through the streets
screaming their devotion, though.

However, SQL Server I do love; version 7 is fabulous. I don't know what DBAs
think of it; I know it requires you to replace the Oracle style architecture
of a couple of beasty servers with a cluster of zillions of little,
cantankerous machines.But from a developer's point of view, it's pretty
damned good. The tools are sweet, too.

---

I did use Borland C++, as I've noted previously in this email, for a project which was tight for time and money; big mistake. It looks just like Delphi, except it is MANY orders of magnitude slower in compile time (a project killer in itself), the language is dirtier and the support for stuff like COM is primitive (templates... urgghhh), and is full 'o' bugs.

Borland Delphi is sweet, beautiful, GUI based and proud. I have never, ever used a better development product. It has it's quirks, as does anything, but the language is clean (unlike C++), powerful (unlike VB), and the compiled proggies run like a bat out of hell. I've seen a couple of projects moved out of C++ to Delphi now, and they both ended up in huge performance gains, faster development time, and much more malleable code, plus far less crashing.

Whenever I'm feeling depressed with coding in something shitey these days, I fire up Delphi and throw together that latest little utility that I've been meaning to get around to. Aaahhh.

---

Nowadays I'm writing ASP to talk directly to a database. We're not using a middle tier :-(, but jscript, as the scripting language, is turning out to be incredibly efficient (compared to how I expected it to perform); I wrote a SQL Server -> Oracle sql translator so that we could support multiple dbs more easily, and I never notice any performance hit, which is surprising because I never designed for speed, and I'm pretty sure the thing is computationally intensive.

It is sad to be using cruddy tools again; coding in a text editor; but things are improving. For instance, the debugger for ASP which comes with Windows 2000 is pretty good, as a debugger. I think it's supposed to be an editor too, but on that front it is so bad that I can't be sure if that is it's purpose. Also, database access is like playing with lego, now that ADO is around; it's almost too easy.

Something lovely to see is the multitude of COM objects which come with the standard install, which do all kinds of good stuff, from pretty low level OS things right up to high level commands, like sending email or running netmeeting.

I'm really happy with the current state of the Microsoft OSes, although I wish they could finally drop the 9x kernel. They're good to program on. They do lots of great stuff for you.

But their development tools suck hard. Fortunately you can replace them very easily. I particularly love the replaceable scripting environments these days; as well as jscript and vbscript, you can get components for heaps of other scripting languages (eg: Python), which can then be used in ASP, for the Windows Scripting Host (replaces batch files), for your own apps (add a scripting language to your app as easy as clicking your fingers), you can even compile COM components using them, without any development tool other than a text editor... actually, you might have to download a freebie from MS to do that.

----

I'd like to know other Windows developer's favourite development tools. Anyone use Powerbuilder (I've heard goodish things about it). Any others people like? There are a lot of serious languages/environments out there, so that one need never resort to visual (hah hah) C.

---

That's all.

Emlyn



This archive was generated by hypermail 2b30 : Mon May 28 2001 - 09:56:21 MDT