coding
About Perl
Perl facts according to perl.org:
- Perl is a stable, cross platform programming language.
- It is used for mission critical projects in the public and private sectors.
- Perl is Open Source software, licensed under its Artistic License, or the GNU General Public License (GPL).
- Perl was created by Larry Wall.
- Perl 1.0 was released to usenet's alt.comp.sources in 1987
- PC Magazine named Perl a finalist for its 1998 Technical Excellence Award in the Development Tool category.
- Perl is listed in the Oxford English Dictionary.
About Python
I've begun learning Python. I already love it, if only for not having to type { } every five seconds. ;)
According to the python.org website:
Python® is a dynamic object-oriented programming language that can be used for many kinds of software development. It offers strong support for integration with other languages and tools, comes with extensive standard libraries, and can be learned in a few days. Many Python programmers report substantial productivity gains and feel the language encourages the development of higher quality, more maintainable code.
About Notanda
The program I wrote and used to automate the adding of content to the site, before switching to Drupal. Notanda draws primarily from the wiki concept, but includes elements of blogs and tagging.
It was written in PHP, but I began porting it to Python, partly for performance, but also as a learning exercise. It is still in beta at the moment with parts incomplete, but I still dig its ease of use -- being able to create a text file on my local computer and have a new article on my website in a little while, all without my doing anything besides saving and triggering an Automator script with QuickSilver.
Mmmmm...plaintext...
I may switch back to Notanda if I get around to finishing the Python port.
surround.vim
Via yesterday's Vimcasts episode, "Converting markdown to structured HTML with a macro", check out this most-excellent Vim plugin:
Surround.vim: Delete/change/add parentheses/quotes/XML-tags/much more with ease
Surround.vim is all about "surroundings": parentheses, brackets, quotes, XML tags, and more. The plugin provides mappings to easily delete, change and add such surroundings in pairs. While it works under Vim 6, much of the functionality requires Vim 7.
Anybody editing HTML or other markup can definitely use this.
Netbook vs iPad

I have been doing some off-and-on research for a while now on netbooks, with the idea of getting one to run Linux on as a home computer. The search has been getting more serious lately. While varying back and forth on different options, I'm currently leaning toward an Acer, running Debian with Xfce.
A pair of articles (as well as Matt Gemmell's iPad photos+posts on Flickr) floated into view the past few days that have added some wrinkles, specifically an iPad-shaped wrinkle.
iPad vs. Netbook
The first, from LinuxCommand.org, "Will The iPad Kill The Netbook? "
Ever since Apple announced the iPad, there have been countless stories in the press about the iPad's effect on the netbook market. I'm a big fan of netbooks and I agree that the netbook market is in trouble but it's not because of the iPad.
The author, William Shotts Jr, goes on to discuss how Microsoft has been systematically attacking netbooks thanks to its Linux threat. Which is intriguing, but of more interest to me is the notion of the iPad as netbook replacement. Shotts shoots down this idea:
[...] the iPad should not be directly competitive with netbooks at the conceptual level. In many ways the iPad is a remarkable device for content consumption. Unlike a Windows computer, it requires virtually no system administration. This makes the device a perfect "television of the future" where one just uses it to passively consume content. However, its lack of a real keyboard and limited connectivity options makes it a poor choice as a portable Internet interaction device; a role that the netbook hardware platform excels in.
Replace "portable Internet interaction device" with "portable word processor and coding device" and that describes my needs. I'm an excellent typist, fast and pretty darn accurate (depending on my caffeine intake ;) which makes typing-related activities a strength for me — I'm afraid I'd lose that advantage with the iPad's virtual keyboard, no matter how "magical" it is.
(See also the TechNewsDaily article that Shotts links to, "Is the iPad Killing Netbooks?")
Reading is Fundamental
Next is this from The Guardian UK, "Apple iPad: will it lead a reading revolution?", which looks at the device from the perspective of another favorite activity of mine—reading. Or more accurately, from that of writers and publishers: in fact, written by someone in the publishing industry who doesn't quite get what's going on. (See the comments for more on that.)
There's no denying the attraction of an ebook reader, if for no other reason than being able to carry around the collected works of, well, pretty much everybody in your messenger bag. However, I'm content with the analog versions most days, and usually limit myself to reading two or three books simultaneously. ;)
As far as the ebooks I read, they're normally found at Project Gutenberg, not the DRM-hamstrung ones from Amazon, iTunes, or any other virtual bookstore.
Still, I found myself browsing the iPad Guided Tours videos on apple.com yesterday, considering the idea of eschewing a netbook and going for an iPad. It was very, very tempting.
Then I saw the "from $499" price tag and came back to Earth.
Numbers Game
It's $499 for a 16GB WiFi-only model. $599 gets you 32GB, $699 = 64GB.
If you want WiFi and 3G, it'll set you back $629, $729, or $829 dollars.
Really?
I can get an Acer Aspire One netbook with an Intel Atom N280, 1GB RAM, 250GB hard drive, 10.1" display with Bluetooth and a six-cell for $340. If I don't mind going down to a 160GB disk, the price drops to $299. (If I browsed around some more, I bet I could find an even better deal.)
I can't even buy the lowest-end iPad for that. And how many years from now would I have to replace the iPad?
Magical Mystery Tour
Don't get me wrong—the iPad is a gorgeous, ingenious device. I've had a chance to play around with one. It is tempting, and for some people makes a ton of sense, especially when compared to a full-sized, few-1000-dollar laptop. Apple has already made a metric crapload of money from iPad sales—hell, they just passed Microsoft in terms of market cap value.
As a decades-long Apple user and evangelist, I never thought I'd consider buying a machine that wasn't a Mac (or whatever Apple put on it), much less one that came with Windows installed.
Yet for my needs—a word processor/coding/browsing/email/music machine with an actual keyboard—Apple won't be adding my dough to the pile this time. And Linux will get another full-time user.
More URL salad
A couple of months ago, I bemoaned all of the advertising campaign cruft being piled onto the end of URLs. Came across a perfect example just now.
This story on LinuxCommand.org, "Will The iPad Kill The Netbook?", would normally have a fine, clear URL of this:
http://lcorg.blogspot.com/2010/05/will-ipad-kill-netbook.html
Instead, it has this:
http://lcorg.blogspot.com/2010/05/will-ipad-kill-netbook.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+LinuxcommandorgTipsNewsAndRants+%28LinuxCommand.org%3A+Tips%2C+News+And+Rants%29
What the hell?
TextMate to Vim transition resources
Articles for people looking to transition from TextMate to Vim.
Arthur Debert (Stimuli): "Hello VIM, or quitting TextMate cold turkey"
In my last post I've mentioned my way through VIM. Quiting TextMate cold turnkey wasn't easy. But fear not: there are a bunch of plugins that will make it a breeze.
Jeff Ober (Artful Code): "From TextMate to Vim"
TextMate is an excellent editor, but it is beginning to show its age. It has a few squeaky wheels that have yet to be oiled, and it looks as though the author may be getting bogged down in the minutiae of his next release. With the next version apparently due sometime after the colonization of Mars, it seemed an auspicious time to try out another editor.
Jamis Buck (the buck blogs here): "Coming home to Vim"
Fast forward three years. The vim landscape is different now. There is actually a Mac-friendly GUI version of vim now, MacVim, which actually looks like it belongs on OS X. Vim 7 supports UI tabs, and a much more powerful auto-completion mechanism than before. And plugins like rails.vim and fuzzyfinder.vim mean that TextMate no longer has a corner on powerful project navigation.
On Reddit: "Ask /r/vim: How do you work with a project in vim?"
What I love about TextMate is that I can open a directory and it will list its hierarchy in a drawer, making it very easy to navigate files. Add to that the wonderful Cmd+T which incrementally lets me search for files within this hierarchy and quickly open one in a new tab.
I'm looking for something like this in vim. Or I'm wondering how other people solve the problem of working on a project which requires quickly opening different files and navigating within a hierarchy?
Also useful for those switching from Mac to Linux. ;)