The dawn of OS X malware

The dawn of OS X malware

sign It’s been almost five years since the release of OS X 10.0.0, and along the way there’s been very little to worry about in the way of malware. That changed last week with the announcement of a trojan that propagates via iChat in a semi-automated way, then a Java worm that attempts to disseminate itself via Bluetooth.

Both of these are relatively innocuous, but there’s not much standing in the way of copycat efforts with more dangerous payloads.

Linux will eat itself

When I came across Distro of the Month I started thinking that maybe there’s a problem with the number of Linux distributions.

Distrowatch.com tracks approximately 372 different Linux distributions. At one per month, it would take 31 years to make it through the list – assuming that no new distributions arrive during that time, which I’m afraid is wishful thinking.

Distrowatch’s How Independent Is Your Distribution page boils the numbers down some – 129 of those 372 are based on Debian, for instance. Even so, you’ve got four or five years of work ahead of you there if you just want to sample the major families plus independent distributions like Puppy Linux.

Django development tips

Working on a couple Django projects in tandem has me tuning my approach to using the built-in development server. I thought I’d share some of the techniques I’m using.

Here are the commands I’m going to talk about. If you understand it all from these lines, you’re done!

screen -S projectname
./manage.py runserver |& tee -a logs/devserver.log
^A ^D
tail -f logs/devserver.log
screen -r projectname
screen -list

Using screen

screen -S projectname

The GNU screen command is incredibly useful for all kinds of things, including longish-running processes that need to be checked and tweaked and stopped and started – like your Django development server. (Read more about screen if this is new to you.)

MacBook Pro speed bumps

As reported at Gizmodo and elsewhere, the MacBook Pro has gotten a speed bump. The original announcement listed two models, 1.67GHz and 1.83GHz. Now, before even shipping the first one (they reportedly start today), those numbers have been bumped to 1.83GHz and 2.0GHz respectively, with a 2.16GHz configure-to-order option.

That makes the top about 18% faster than before; significant, but not exactly exciting (unless you’re easily excited by this sort of thing).

Django: less (magic) is more

Today I updated my Django play/development environment to the new magic-removal branch, and migrated my proto-wiki as an exercise. Following the RemovingTheMagic instructions on the official Django wiki made it fairly easy. (I added some notes on dealing with custom template tags.)

This branch is about more than cleaning up some of the needlessly clever bits found in earlier implementations; it also has some really nice syntax refinements. Compare this:

reporters.get_list(fname__exact='John', order_by=('lname',))

to this:

Sparkle: automatic application updates

Here’s a very cool little open source module for Cocoa application developers: Sparkle by Andy Matuschak. It allows applications to detect, download, and install new versions automatically. It apparently can be added to a project without any glue code at all. It supports Appcast feeds. It’s got handy features like Skip This Version and Remind Me Later. It can work with .dmg files or .zip archives.

During my brief stint with Cocoa programming I really wanted something like this. As a user, I like it because it makes life on the bleeding edge much more convenient.

Songbird, open source competition for iTunes

Songbird, an open source would-be iTunes killer, was made available to the public for the first time today. Version 0.1.0. It builds on well-tested open source projects such as VLC and Firefox.

Since iTunes is free, and most consumers don’t particularly care one way or the other about open source, the success of Songbird will hinge on the things it can offer that Apple can’t or won’t. The most promising one is easy access to, and integration with, non-iTunes online music retailers like eMusic.com and CDBaby.com – and free sources like archive.org.