Categories
Geek

Bruce Eckel interview at Borland’s Community site

Check out this Bruce Eckel interview at Borland’s community site. The interview’s all over the map, covering what you’d expect: C++, Delphi, Java, Borland’s IDEs, Java vs. C#, and of course, his new favourite language, Python. There’s also stuff you wouldn’t expect: his favourite song, his favourite movie, and whether he’d rather eat the fat from a moose’s eyeball or a Pop-Tart™ (really!).

In honour of tonight’s meeting of the pyGTA (Greater Toronto Area Python User Group), I’ll end with the most Pythonic quote from the article:

Saving the best for last [he discusses other programming languages just before this part], I’ve said in numerous places that Python is my favorite language, and this is because I’m most productive in that language. I can get so much more done in Python than in any other language I’ve encountered that it’s very hard for me to use those other languages, because to do so means throwing away time. Also, I’ve found the Python community to be my favorite group of language people; I can’t figure out how or why this is the case, but it retains the gentleness and enthusiasm that I most value in my interactions with a language community. I look forward to when I finally get my plate cleared enough that I can continue working on “Thinking in Python.”

Categories
Geek

Show Desktop for OS X (or "Damn you, Hammersley!")

On OS X, I believe there was some magic keystroke — possibly a magic click on a “close window” button — that closed all the windows and revealed the desktop. I’m pretty sure I’ve used it once before. I think.

On OS 9, it was easy — you’d just select “Minimize All” from the application menu (once again, I think that’s what it’s called — OS 9 and prior feel like distant memories now. On Windows, you can either click on the Desktop icon on the Taskbar or use the magic keystroke Windows-M.

Now you can get that capability in Show Desktop, an app that you can have either in the Dock or the menubar that will hide all open windows with a click. You can even provide it with a list of apps to exclude, just in case there were apps that you’d never want it to minimize (“Someone may be trying to reach me on iChat right now!)

I was going to post this entry to Forwarding Address: OS X, after looking for such a utlity to install on my spiffy new 12″ Powerbook. While checking to make sure that nobody on that blog had already written about it, I found that Ben Hammersely posted such an entry…today!

Damn you, Hammersley! Damn you to Hell!

Categories
Geek

Getting XMMS to play MP3s on Red Hat 9

I’d just installed Red Hat 9 on my work desktop box, fired up XMMS and pointed it at Groove Salad when I got a dialogue box saying something along the lines of:

In order to stay out of any trouble with Thomson, who charge royalties (75 cents per unit, or a one-time fee of US$50,000 – $60,000) to anyone who develops MP3 encoding or decoding software, we’ve removed MP3 playback capability. Sorry.

Finding out that XMMS no longer plays MP3s is like finding out that your set of flathead screwdrivers will no longer actually turn screws, but still can be used to open cans of paint.

Luckily, there’s a quick fix. This site has an RPM that restores MP3 playback capability to the versions of XMMS that come with Red Hat versions 8 and 9.

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
Uncategorized

Truth is at least as strange as science fiction

You might’ve heard of DARPA’s latest announcement, which has been described as a web site where you can “wager on terrorism”. If you haven’t, here are some links:

This idea isn’t a new one — it’s gone by the name of Idea Futures or Prediction Markets for some time. The general idea is described as…

Our policy-makers and media rely too much on the “expert” advice of a self-interested insider’s club of pundits and big-shot academics. These pundits are rewarded too much for telling good stories, and for supporting each other, rather than for being “right”. Instead, let us create betting markets on most controversial questions, and treat the current market odds as our best expert consensus. The real experts (maybe you), would then be rewarded for their contributions, while clueless pundits would learn to stay away.

The idea behind the “terror futures market” would be to harness the collective knowledge, insight and instincts of as many people as possible and give them a financial incentive to contribute. Viewed this way, it’s kind of like the peer-to-peer software approach: decentralize what would be too costly to maintain or what only a large collective would have (thinkers), and centralize the thing that you need most (ideas).

The idea of tying it in with the Internet isn’t new either: a guy I actually know — Marc Stiegler — wrote about this in his science fiction novel, Earthweb. In it, the entire world places bets on the strategies and weaponry of an invading alien race, and these bets are used to guide a crack team of soldiers sent to stop them.

The problem is that it’s a political hot potato. It’s too close in “feel” to a dead pool, and it runs the risk of annoying friendly and neutral nations and enraging enemy ones (imagine trying to maintain some kind of diplomatic decorum when someone’s betting that you’ll be killed in a bloody revolution in next year).

My bets would be:

  • At least some people in DARPA or other policy analysis think tanks have been playing this sort of game for some time already.
  • The announcement was made to test what the public’s reaction would be (the marketing phrase is “Let’s run it up the flagpole and see who salutes!”).
  • Plan B, should the public react unfavourably, would be to make it private, by-invitation-only and run in secret.