Categories
Geek

Fuel for your Friday flamewar

It’s Friday, which means it’s time to gather at the pub over beer and engage in debate! Programming languages, especially ones by Microsoft, are always good for raising ire and blood pressure. May I suggest, for your reading pleasure:

I personally have no religious tendencies when it comes to programming languages, other than an aversion to Perl. To close, allow me to quote Master Yoda and his opinion of Python vs. Perl


EXTERIOR: DAGOBAH — DAY

With Yoda strapped to his back, Luke climbs up one of the many thick vines that grow in the swamp until he reaches the Dagobah statistics lab. Panting heavily, he continues his exercises — grepping, installing new packages, logging in as root, and writing replacements for two-year-old shell scripts in Python.

YODA: Code! Yes. A programmer’s strength flows from code maintainability. But beware of Perl. Terse syntax…more than one way to do it…default variables. The dark side of code maintainability are they. Easily they flow, quick to join you when code you write. If once you start down the dark path, forever will it dominate your destiny, consume you it will.

LUKE: Is Perl better than Python?

YODA: No… no… no. Quicker, easier, more seductive.

LUKE: But how will I know why Python is better than Perl?

YODA: You will know. When your code you try to read six months from now.

(Taken from the Python Humor Page.)

Categories
Geek

If you’re going to procrastinate, procrastinate with the best!

As Tucows’ new resident developer schmoozer, one of my job responsibilities is “building community”. That’s a rather touchy-feely crunchy-granola primal-scream-session-is-over-let’s-have-a-group-hug-ish way of saying “talking to people who are doing interesting things in the geek world so you know what’s going on out there.” If these people gather in one place, the job of talking to them becomes much easier.

Lucky me, Joichi Ito, better known as “Joi” (you pronounce it like “Joey”, and for a while, he spelled it that way too) has his own IRC channel, #joiito, on FreeNode’s IRC servers. It’s become a hangout for lots of people, many of whom you might have heard of: Mark Pilgrim, Cory Doctorow, Halley Suitt, Marc Canter, AKMA, Aaron Swartz, Elizabeth Lane “mamamusings” Lawley, Kevin “Morbus Iff” Hemenway, Dave Sifry, my boss Ross Rader and many other characters. Maybe I can get Elliot on there — he and Joi have some kind of mutual admiration society going.

The atmosphere is friendly and the conversation flows like delicious pork gravy down Marlon Brando’s throat. Jeanniecool plays den mother to us all, while AKMA serves as the chaplain and I play part-time court jester. Once you’ve figured out the commands for jibot, a bot that heralds you entry into the channel, you can have it announce your presence with a quick summary of who you are! It’s like a 19th-century salon with intellectuals exchanging ideas and bons mots, except for the lack of absinthe. We’re working on that.

To join the channel, point your IRC client at irc.freenode.net and then /join #joiito.

Categories
Geek

Eckel on Python II

artima.com has two more parts of an interview with Bruce “Thinking in C++/Thinking in Java” Eckel in which he talks about why his new favourite programming language is Python. They are:

  • Part 3: Type Checking and Techie Control

    …the idea is that the programmer is able to say, “I would like a Bag of Cats.” The thing says, OK, as long as I can perform these various operations on Cats that I want to, I don’t care if it’s Cats or whatever. That’s what you get for free with Python without any of that [C++] template syntax. It turns out that’s incredibly powerful. It makes your programming a lot easier to write and, I think, to read.

  • Part 4: Python and the Tipping Point

    A few years back I was having dinner with Guido van Rossum, and I said, “Life is better without braces.” That ended up being a conference slogan, along with a smiling character who looked like he had just gotten his braces off. The next year, I suggested to Guido a slogan that I think somebody else probably said first, “Python. It fits your brain.” That’s what I was talking about when I said, “My guesses are usually right.” Python allows you to get into this uninterrupted flow, and just go with that without having to think too hard, even if I have to look up the way a library works.

If you haven’t read them yet, there are also the first two parts of the interview:

Categories
Geek

REALBasic coming soon to Linux, Slashdotters expected to scream in agony

REALBasic, if you haven’t heard of it before, is a Visual Basic-like IDE and programming language that first gave the Mac a pretty easy to use drag-and-drop GUI builder and fairly easy-to-grasp programming language similar to VB. The earliest incarnations of RB could only deploy applications for Mac OS, and later ones were capable of cross-compiling to Windows. The current version of RB, version 5, is available for both Mac OS and Windows and and each version can cross-compile to the other OS.

In response to customer demands (and many long discussions on the REALBasic mailing list), REAL Software has announced that RB 5.5 will be capable of cross-compiling apps for Red Hat and SuSE distributions of Linux, with other distros being added according to demand. You’ll still need either a Mac or Windows box to create and cross-compile the app for Linux. You’ll have to wait for the Linux-based REALBasic IDE, but REAL Software says that they intend to make one available in a later version.

RB 5.5 is expected to be released in the first quarter of 2004.

Recommended Reading

REALBasic’s FAQ on their Linux support.

MacWorld recently gave REALBasic 4.5 mice out of 5 in a review.

I’m not sure how much traction REALBasic on Linux will get amongst geeks, as Basic is the least respectable of the “Ghetto Languages”, an LFM (Language For the Masses), not an LFSP (Language For Smart People). I don’t agree with this LFM/LFSP bunkum; it smacks of nothing more than programmer/muggle class snobbery, the same kind in which some Slashdotter refer to those who don’t program, play D&D and fansub anime as “sheeple”. The Masses may have dummies, but they have many smart people whose primary interest isn’t computer programming. These people might have domain knowledge that we programmers lack (“Never!” say some geeks, “We know everything!”).

Maybe we should call them Languages For Mom.

It’s more likely than not that your Mom is one of “the masses”. My mom is, and she’s not dumb: she’s the Chief of Cardiology at St. Joseph’s Heatlh Centre, a large hospital here in Toronto. If you called her stupid, she’d kill you and make it look like natural causes.

I know lots of people like my Mom who’ve crafted their own applications using things like HyperCard. They have the domain knowledge, they couldn’t afford to hire a programmer to write the app for them, and in many cases, some apps don’t get written because they’re not itches that programmers feel like scratching. Shouldn’t they be given the chance to whip up their own apps?

Go ahead, call your Mom stupid. I dare ya. (Eminem, for obvious reasons, is excluded from this challenge.)

Categories
Geek

Guido on Python

artima.com has a six part interview with Guido van Rossum on his wonderful programming language, Python. In the series, they cover the language’s orgins, its design goals, productivity, contracts, strong vs. weak typing and the community. A worthwhile read.

Categories
Geek

Baranowski on Python

The whuffie cycle is a quick on these days — within 12 hours of my post on Paul Baranowski’s Lessons Learned from Peekabooty (which appears on the main page of the Peekabooty site), Cory Doctorow at BoingBoing wrote a post, which in turn caught the attention of Slashdot. The end result: Paul got a deluge of email, all of it very supportive, and a lot of it asking: “Okay, if C++ and Java aren’t viable languages for development, what is?”

Paul’s answer: Python. He’s got a response to all those who asked, and it’s in this essay, What Language Do You Recommend?

(By the bye, I’m the one who got him hooked on it. Guido should get me to do publicity for him.)

Categories
Geek

Eckel on Python

artima.com has two parts of an interview with Bruce “Thinking in C++/Thinking in Java” Eckel in which he talks about why his new favourite programming language is Python. Here’s an excerpt, which pretty sums up my feelings as well:

It seems the compromise in Java is marketing. They had to rush Java out to market. If they had taken a little more time and implemented design by contract, or even just assertions, or any number of other features, it would have been better for the programmer. If they had done design and code reviews, they would have found all sorts of silliness. And I suppose the way Java is marketed is probably what rubs me the wrong way about it. We can say, “Oh, but we don’t like this feature,” and the answer is, “Yes, but, marketing dictates that it be this way.”

Maybe the compromises in C++ were for marketing reasons too. Although choosing to be efficient and backwards compatible with C was done to sell C++ to techies, it was still to sell it to somebody.

I feel Python was designed for the person who is actually doing the programming, to maximize their productivity. And that just makes me feel warm and fuzzy all over. I feel nobody is going to be telling me, “Oh yeah, you have to jump through all these hoops for one reason or another.” When you have the experience of really being able to be as productive as possible, then you start to get pissed off at other languages. You think, “Gee, I’ve been wasting my time with these other languages.”

The interview is in two parts: