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:

Categories
Geek

Lessons learned from Peekabooty

My friend and housemate Paul Baranowski has posted a writeup on the lessons learned from working on Peekabooty (the distributed proxy app for allowing people in countries where they censor the Web to surf it freely). It’s divided into two sections:

  • Lessons learned about managing an open source project
  • Lessons learned about programming

This “lessons learned” article will be the basis for a roadmap that will outline the future development of Peekabooty.

An additional lesson

In addition to the lessons that Paul outlined, I learned something else: sometimes a racy name will backfire on you.

Earlier this year, I was being interviewed at a high-tech placement firm somewhere in uptown Toronto. The recruiter told me that she’d looked over my resume earlier and wanted to voice some concerns.

“Peekabooty,” she said. I could almost hear the ice crystals forming as she spoke. “This might be a problem.”

My initial guess was that she was concerned that a project that once was associated with members of the Cult of the Dead Cow might pose a problem. I was prepared to offer the party line: “Yes, the original team behind the application was gathered by a prominent Cult of the Dead Cow member, but the project has long since been run solely by an individual, Paul Baranowski, who is not a member of the notorious hacker group.”

However, she blindsided me: “Why would you ever put a pornographic site on your resume? Don’t you know that it’s incredibly unprofessional?”

“I beg your pardon?” I asked, trying not to laugh. “Pornography?”

“I know it seems puritannical to you young computer guys, but many businesses are very conservative. They would frown on such…distasteful work, no matter how technically skilled you are. You really should remove it from your resume. Honestly, what were you thinking?”

“It’s not a pornographic Web site,” I said as a pulled a copy of the International Herald-Tribune with a Peekabooty article out of my portfolio, “It’s a piece of software that allows people to bypass the Web censorship mechanisms in more repressive regimes around the world.”

“It’s not pornography?”

“Not in the least.”

“But the name!”

“I know. It wasn’t my idea.”

If you think she had trouble grasping the idea that Peekabooty was not a porn Web site, you should’ve seen me try to explain that it wasn’t for a company or client, but something that Paul and I put together in our spare time.