Posted by tibbetts
Mon, 26 Mar 2007 00:11:02 GMT
Two weeks ago I got a new laptop from work. After extensive hemming and hawing, I went with an Apple MacBook (the black one, cause it looks hotter^Wmore professional). Previous to this I had been running Ubuntu on a Thinkpad T40 bought around the founding of StreamBase. My goal for the change was to have a laptop that would "just work", and to stop having to administer my personal machine. I was last on a Mac when I was in grad school.
As far as that goal goes, I think the switch has been a rousing success. In non-development activities (eg, web, email, calendar, documents) it has been a significant improvement. The tools I'm finding myself using include:
- Firefox - Safari just isn't good enough, and on the Intel processor Firefox is plenty fast
- Terminal.app - In preference to X11.app and xterm, because it is better integrated with everything else
- Mail.app (aka Apple Mail) - Because as part of the switch I'm going to stop hacking my mail client and see how the other 90% of the population lives. Thus far, using a less featureful mail client has been a success for spending less time with email thanks to unsubscribing from things.
- Adium - This is the best graphical IM client I've ever seen.
- iCal - The Apple calendaring tool is adequate, though I think I may end up switching to something with Exchange support, as work moves in that direction.
- iTunes - Of course, this is a huge improvement over anything on Linux, particularly for synching with my iPod.
- Microsoft Office - I'd considered other alternatives, but the MacBook came with office preinstalled, and once I had it easily available (instead of in VMware) I couldn't say no.
- NetNewsWire Lite - A feed reader that is much better than bloglines. I haven't done much with the NewsGator integration, which might be interesting. And I haven't seen a reason to buy the non-lite version.
- OmniGraffle - This is the best diagramming program I've ever used. Vastly better than anything on Linux, and much better than Visio.
- Parallels Desktop - Much nicer than VMware workstation on Linux. Well polished, and the Coherence feature is pretty hot.
- Desktop Manager - Free tool to implement virtual desktops. Does everything I want in this space.
- Quicksilver - This is basically a graphical commandl ine for the mac, accessible from anywhere. It's very nice. Like screen, you have to try it to learn how much it will change your life.
- Visor - This is a cute hack that makes a Terminal only a keystroke away at any time. It's a good complement to Quicksilver.
- MailActOn - This is a little tool that lets you define keybindings in Mail.app, mostly to refile mail into folders with a few keystrokes.
- TextMate - This is trying to replace emacs in my life. It's a more mac-oriented text editor, with a pretty good feature set and good support for my emacs finger macros. But I may end up going back to emacs.
- Ecto - This is my latest addition. It's a blogging client that I'm using to write this post. I'm not sure I'm in love with it enough to pay for it, though it is a bit nicer than Performancing, the Firefox plugin I had been using.
That's about it for productivity tools. On development tools, I haven't had to install very much:
- Apple developer tools - This comes on the standard install media, and gets you gcc, autoconf, and all the other things you would expect.
- SSH Agent - This is a version of the standard ssh-agent which integrates with the account management on OSX, so that you can use the agent from any application/shell in your login.
- SVK and Subversion - These are special builds for OSX, they seem to work well.
- Eclipse - Standard Eclipse is available for OSX
- MacPorts - This is a package system for getting various free tools. I currently only use it to get Cocoa Emacs.
So, that's the enumeration of tools that I am using. Hopefully this is helpful to people. I may follow up on this with other posts about my experiences on OSX.
I will also shortly make a non-tools post.
Posted in Tools | 2 comments
Posted by tibbetts
Fri, 20 Jan 2006 17:29:48 GMT
I love offlineimap. I even love the quirky way it is hosted on a gopher site. The functionality is awesome. For those of you who don't know, offlineimap syncronizes a remote IMAP mailbox heirarchy with a local Maildir folder heirarchy. This means you get disconnected IMAP operation with all your favorite Maildir clients (like mutt), while still retaining the ability to access your mail using other IMAP clients.
However, offlineimap crashes too often. Every couple of days I will fail to get any new mail for an hour or two, and realize that offlineimap has crashed. And due to Murphy's law this generally correlates with a time when I was recieving some important mail.
The solution is very simple. I am using zenity, a command line tool for displaying dialog boxes, and running offline imap in a loop. Every time it dies, I get a pop-up dialog, and can say OK to restart it, or Cancel to end the loop. The little shell script to do this is as follows:
#!/bin/sh
/usr/bin/offlineimap -u TTY.TTYUI;
while zenity --question --text "Offlineimap died. Restart?"; do
/usr/bin/offlineimap -u TTY.TTYUI;
done
Posted in Tools | no comments | no trackbacks
Posted by tibbetts
Fri, 20 Jan 2006 01:21:00 GMT
I switched to running Ubuntu on my Thinkpad. I'm very pleased with the experience. The install was painless, and everything thus far has just worked. It really feels like linux is maturing on the desktop.
I've also installed a shiny new tool, Gnome Blog. It's a panel applet that makes it easy to enter blog posts. It sits on the panel and remembers the blog post you were in the middle of, so you can always stop and come back to it later.
It is generally good, but there are a couple of downsides that are coming to mind at the moment:
* No good way to do bulleted lists or other more complete formatting.
* No support for tags/categories/etc.
* Link input method isn't the easiest.
Really I think I would rather input the post in Restructured Text or something. I should look into other posting tools. Something command line or emacs based might be ideal.
Posted in Tools | no comments | no trackbacks
Posted by tibbetts
Fri, 20 Jan 2006 01:01:46 GMT
I'm just testing the gnome-blog client.
Posted in Tools | no comments | no trackbacks
Posted by tibbetts
Sun, 29 May 2005 15:20:00 GMT
I recently finished upgrading
Typo (the software that runs
Nothing To See Here) from 1.6.8
to 2.0.x, and at the same time moved my local changes into
Subversion. Subversion is a
definite improvement over
CVS. Being able to
rearrange my repository (I did this twice before I was happy with it)
was really nice. Once I was used to it, I gained the ability to just
add things anywhere I want and figure I could sort them out later. The
write-once nature of the directory structure in CVS had always created
a lot of anxiety whenever I was starting a project. I think I will
shortly be transitioning all of my personal projects to Subversion.
All the cool kids are doing it. Of course, if I was a really cool kid
I'd be using
SVK, but I think I'm
not cool enough for that yet.
Posted in Tools, Software Development | no comments | no trackbacks
Posted by tibbetts
Fri, 15 Apr 2005 13:10:00 GMT
I took most of my evening last night to set up FastCGI and
lighttpd. My goal was to serve a
Typo, a blog engine based on
RubyOnRails. I was thwarted by not knowing RubyOnRails very well, and by knowing FastCGI and lighttpd not at all.
The first issue was that Typo doesn't like to run in a subdirectory on a webserver. That is, it wanted to be at
ntsh.innocuous.org/, not
innocuous.org/ntsh. This offended my sensibilities somewhat, so I decided to beat it into submisssion. This involved tracking down a bunch of places where paths were hard coded, which included a few places in the templates and the CSS.
The second issue was that FastCGI on lighttpd seems to have been designed for php. You can easily tell it to delegate
*.php to FastCGI. You can tell it to delegate
/ntsh/* to FastCGI, but that has the problem that
/ntsh/stylesheets/base.css doesn't work, because the RubyOnRails dispatcher doesn't know how to serve static pages.
You also have the problem, and this is the showstopper, that for some reason the
AbstractRequest.request_url_base function helpfully strips off the directory of your request path when you use it this way. That is, it turns
xml/rss/feed.xml into
feed.xml. As you might imagine, losing the
xml/rss part confuses the cool new
routing feature of Ruby on Rails. So this was unacceptable.
I had to give up my delusions of configuring lighttpd in some clean way, and instead use the trick that a bunch of web pages recommended:
server.error-handler-404. This configuration file setting tells the server to delegate 404 errors somewhere, and that somewhere can be the Typo dispatcher. Combined with the conditional configuration functionality of lighttpd, this is actually quite sufficient to get Typo up and running. But it still feels like a hack for some reason.
The conclusion I'm coming to, as I've come to many times before, is that I'm a bad sysadmin. I expect to be able to bend software to my will, and make it work the way I want, which should be elegant and conform to my expectations. When doing sysadmin work, it is important to use the software you are given, the way someone else designed it to be used. But it always has to get to be 1am before I remember this principle.
For anyone who is interested, here is the relevant chunk of lighttpd.conf:
$HTTP["host"] =~ "\.innocuous\.org$" {
server.document-root = "/var/www/vhost/innocuous.org/pages"
$HTTP["url"] =~ "^/ntsh/" {
server.error-handler-404 = "/ntsh/dispatch.fcgi"
}
fastcgi.debug = 0
fastcgi.server = (
"/ntsh/dispatch.fcgi" =>
( "ntsh" =>
(
"socket" => "/tmp/ntsh.socket",
"bin-path" =>
"/var/www/vhost/innocuous.org/ntsh/public/dispatch.fcgi",
"min-procs" => 1,
"max-procs" => 5,
"max-load-per-proc" => 4,
"idle-timeout" => 20,
"bin-environment" =>
( "RAILS_ENV" => "production",
"RAILS_ROOT" => "/var/www/vhost/innocuous.org/ntsh"),
"check-local" => "disable"
)
)
)
}
Posted in Tools | no comments | no trackbacks
Posted by tibbetts
Sun, 10 Apr 2005 15:50:13 GMT
I'm currently using
BloGTK with Typo and am not all that happy with it. I'm not a big fan of GUIs. I should find something command line based.
Posted in Tools | no comments | no trackbacks
Posted by tibbetts
Sun, 10 Apr 2005 15:48:28 GMT
I'm trying out Typo, web log software, and liking it. It uses Ruby On Rails, and seems to work quite well.
Posted in Tools, Web | no comments | no trackbacks