Python vs. C#

Brandon J. Van Every vanevery at
Tue Aug 12 11:27:26 CEST 2003

Joe Cheng wrote:
> From a purely language point of view, I think the comparison can be
> boiled down to two main points.
> * Python is dynamic, C# is static.  You've got a C++ background, so it
> doesn't sound like you would consider C#'s static typing a liability,
> nor would you likely fall in love with metaclasses and the like.  So,
> most of the arguments along the lines of "C# is too inflexible" will
> probably not be relevant to you.

Yep, true of my thinking.

> * C#/.NET has to be one of the most mature "version 1.1" programming
> systems in history.  (I'm too young to be making definitive
> statements about programming history, though...)  You can tell by
> reading Chris Brumme's blog the amount of sophistication they have
> already achieved.  Frankly, it's a little frightening how much MS can
> accomplish in just a couple of years--when they want it bad enough.

Good to hear that some people understand what it means when Microsoft puts
100% of the company behind something.  Remember, last time around we got IE
and Netscape vanished.

> * Math.sin(x) versus sin(x)?  Really, who cares??

Well, I care, but I'll be surprised if there's no way around it.  And if
there isn't, it's not a dominant issue, just an annoyance.

> * The .NET community does not seem as clever and innovative, nor as
> passionate, as the Python community.  You sorta get the sense that
> everyone who works with .NET is getting paid to do so, while Python
> hackers bang away on their keyboards with glee.  And it feels like
> 90% of the innovation in the .NET realm comes from Microsoft itself
> (or perhaps, 60% from MS and 30% from the Java open-source
> community--NAnt, NUnit, NLucene, etc.).

Yes, and that's both a weakness and a strength.  The strength of uncreative
bangers is they don't get idealistic about what market forces are going to
carry the day.  In contrast, idealistic Python hackers are so busy enjoying
themselves that they don't feel they have to market in order to keep their
platform alive.  They have bad self-defense instincts.  The DEC Alpha CPU
was a joy to program for, it was the best and fastest CPU of 1998, and it's
dead.  Let that be a warning to you.

> In contrast, I like Python very much (well, actually, Ruby is the one
> that I really like--but close enough).

Indeed, there are other wannabe langauges that would happily take Python's
place on the food chain.  Python merely has a mature community and a track
record behind it.  If other languages gain those things, and are even "more
interesting than Python" in various people's minds, then what will keep
Python on anyone's radar?

> However, when it comes down to building the big, hairy, slightly
> nasty (just admit it) software that brings home the bacon, sometimes
> it's just gotta be C#.  And if you live in Seattle, I'd say it's
> gotta be C# all the way.

Yep.  I started this trek out of necessity, not love.  I was surprised to
discover the various positives of C# and .NET because I've been deliberately
avoiding them.  I have all the traditional anti-Microsoft prejudices, and
frankly I'm opposed to them as a company.  I'll never be their employee, but
I'm willing to contract for them.  It might be interesting to some that I
cut teeth as a Linux hacker in 1993.  By 1996 I had given it up, as at the
time, 3D graphics on Linux was going nowhere.  Today it is... ok, but behind

Brandon Van Every               Seattle, WA

20% of the world is real.
80% is gobbledygook we make up inside our own heads.

More information about the Python-list mailing list