J. Eddie Smith, IV:
Before sync became such a reliable reality, computing was basically a two-dimensional concept: you chose hardware, and then you chose the software to run on your hardware (not necessarily in that order).
This only if you never had two or more computers. Those that had to manage a multi-computer environment have invested a lot of energy into solving this problem.
The cloud is indeed making things easier as it takes the role of the reference version or the master, while most of the previous solutions were more or less peer to peer setups that had to manually address conflicts. The more machines you had the more chances to run into conflicts. That’s not to say that conflicts are not possible in a cloud environment though. But if you always consider the remote version the master, then things will be slightly simpler.
Some men dream the future. He built it.
Om Malik about Steve Jobs.
Federico Viticci about the app launcher++ that I use—and the only one that convinced me it can offer much more than Spotlight:
Alfred can now be extended thanks to built-in support for shell scripts, Automator workflows, AppleScripts, file groups and Search Filters, whereas previous versions of Alfred could only assign a shortcut to scripts saved elsewhere on your computer, or run Terminal commands in the background. With the new Alfred Extensions — available in the Preferences — users can extend the app by natively integrating scripts, workflows, and more into Alfred.
Alfred people promised to post their favorites and most useful extensions soon.
Jon Beebe:
What makes a good butler? I’ve never had one personally, but if I did, here’s a list of qualities I would look for:
- He would be as transparent as possible, yet immediately available at a moment’s notice.
- Once I’ve given him a task, he would work as quickly and as efficiently as possible without causing problems or extra friction in my workflow.
- His purpose would be to free up time and reduce stress by carrying out all of the tasks that I never want to, but out of necessity, have to—ultimately leaving me with more time and mental clarity to get more done.
- He would be smart. Over time, he’d learn to predict—to a certain extent—what I’m going to ask of him without me even having to finish.
Over time if you’ll pay attention you’ll start learning also about its hidden skills.
A TextMate Plugin that adds native full screen app support for Mac OS X Lion users.
Are you still using TextMate? I’ve never been a TextMate power user. It was just an editor I’ve used at some point to open files for which I didn’t have a better editor. Over time I’ve replaced it with MacVim.
For 5 years I’ve been upgrading my Mac machines through migrations. As you can imagine there’s a lot of things that got on my hard drives over these years. Even if last fall I’ve switched from a 250GB spin disk to a 128GB SSD and was required to do some clean up, I’m sure there are application settings, preferences and cached files I could get rid of.
So I decided that for Mac OS 10.7 Lion it is time for a clean install.
On the other hand all these years I’ve been continuously customizing my system to fit my needs. I’d really like to not have to reinvent a lot of wheels after upgrading. So I’ve been thinking what would be the best process to do a Lion clean install, but also be able to preserve my setup and reduce the risks of finding myself without essential parts of my environment.
After a week of reading around and reviewing tons of articles about Lion, I’ve put together this plan. It would be great to let me know if I’m missing anything—hopefully before I perform the upgrade.
Wait until the first update is avaialable.
This is not a strong requirement but I decided to wait for the first patch version mainly because: 1) usually new major releases come with bugs; 2) not all applications and drivers have been upgraded or even if they were they come with bugs, and 3) it gives me more time to get this process right.
Note: I’ve already checked that none of the applications I’m running is PowerPC. To do this you can go to About this Mac -> More Info -> Software -> Applications and check the Kind column.
Burn Lion on an USB key. The way to do this is documented here and here. And there is also the Lion DiskMaker application that is automating the process.
Once you have the installer application, you could (were you so inclined) dig into it (control-click, then Show Package Contents) and find the meaty center, a 3.74GB disk image (InstallESD.dmg, stored in the Contents/SharedSupport folder). You could then use that disk image to, say, burn a Lion installation DVD or create an emergency external boot disk.
Todo: get a 4Gb USB key
Create a list of startup application: Many of the application that are setup to start at boot time are probably essential.
Todo: go to Accounts -> Login Items and save the list of applications.
Create a list of launch agents. Probably many of these are just system agents so I’ll not have to worry about them, but I know I’ve also setup a couple myself.
Create a list of installed applications. Make sure I look beyond /Applications as I remember seeing applications or things going to /Library. I also think that I have some account specific applications in ~/Applications
Check System Preferences for any custom items.
Go through all lists above and:
Check their compatibility with Lion. Hopefully by the time I’ll perform the install all of them will be confirmed to be working with Lion.
Note: there is this wiki listing applications’ compatibility with Lion: RoaringApps
If an application is not from the Mac AppStore retrieve its license.
Note: it would be nice to have all the install images and their licenses set aside.
Just before starting the installing create a last bootable clone of the drive. While many are recommending SuperDuper, I’ve been using Carbon Copy Cloner[1] and tested that the clones created with it are bootable.
Lock away this final clone. If I’m missing anything or I’ll need to copy some configuration files I can go back to it.
Todo: double check this last clone is bootable before starting the installation process.
Make sure to run TimeMachine once more before starting the Lion installation. Lock away this drive too.
Todo: calculate how many disks do I need for this process.
Save all my custom scripts (workflows, folder actions, services).
Even if these will be preserved on both the harddisk clone and TimeMachine, it will be easier to have them available after the Lion installation is completed.
With this the Mac related part should be all covered. But I also have Unixy stuff on my machine.
For apps installed using Homebrew, check if I have any custom configuration files.
Browse the home directory for all dot folders and files. I know I’ll need at least the .vim, .bash_profile, etc.
Review if any of the system wide installed Python packages, Ruby gems
Note: there’s nothing I should be doing about these though. Copying them over as I needed would be enough.
I don’t have a clear plan about migrating data over to Lion. What I’ll be looking to migrate though is:
I’m not using the Mac Mail or the Address Book[2] so most probably I don’t need to worry about it. I do use Sparrow email client, but I won’t have to migrate it as it connects to my GMail accounts.
Download Java from Java for OS X Lion.
Jan Lehnardt offered a great tip:
Just type
javaorjavacin the Terminal and Lion will offer the optional automatic download before proceeding.
Tons of new features and behavior changes (eg reversed scrolling[3], no scrollbars, etc.). Many of them can be reset to the old behavior.
I’m running the CrashPlan offsite backup tool. Should I enable it immediately after the upgrade?
Keeping in mind I already have a complete clone and the TimeMachine backup, I think it will be safe to enable CrashPlan after the installation. On the other hand, I could be doing this after I install most of the apps so it will not have to continuously send data. Then I could leave it going for a weekend to catch up.
What would be the best way to get my custom versions of Python and Ruby?
In the past I’ve used some installers, but I’m wondering if I wouldn’t be better off using homebrew for getting Python 2.5 and RVM for whatever Ruby version I’ll be using.
Note: homebrew seems to have Python 2.7.x and not Python 2.5.
Starting with version 3.4 Carbon Copy Cloner is also Lion compatible. ↩
I do have some contacts in the Address Book though. ↩
I’ve already been using reversed scrolling in Snow Leopard using Scroll Reverser ↩
One of the things Apple is doing very well is making it extremely easy to get new applications for their platform. Every time I’m opening up the App Store, I find myself spending at least a couple of minutes checking what’s new or the staff favourites.
Here’s just an example, the Apps Starter Kit, a series of apps for getting you started:

It starts with the Apple apps, including the fresh OS X Lion[1], which I’m still preparing for. But then it lists other 20 independent applications:
The whole idea is that someone spent time to put this list of apps together and now Apple is promoting it. I bet that if you are a newbie to the Mac world you’ll appreciate it. And even if you’re a veteran, you’ll still spend a couple of minutes to see if there’s anything in there for you.
If you get any of these applications using my links, I’ll get a small kickback which is always helpful ↩
Until recently I’ve never needed an SVN client outside my IDE[1]. Now I’d need one, so a quick search brought up[2]:
I have installed all three and tried to spend a bit of time with each of them. Unfortunately I haven’t found any major differences between them to help me decide. So, as a last resort: which of Cornerstone, SmartSVN, Versions would you recommend?
Update: So far the feedback I’ve received is about Versions (nice UI, features) and SmartSVN (impressive feature set, but non Mac UI)
I’ve been using Eclipse with either subclipse or Subversive. ↩
This is not an exhaustive list of clients, but others seemed to always point to one of these three. ↩
I bet the first questions after seeing such a title would be:
Before jumping to the main question, I think I should clarify these firstly. Indeed ☞ Reeder, as many of the other RSS feed readers do integrate with Google reader.
The main difference between Reeder and the other apps is that it comes with a new, innovative UI approach. Reeder started as an iPhone app, followed up with an iPad app and you can feel that in the design of the application. Most of the other RSS readers have been following the well established “Outlook” approach with lists of items and a preview pane.
That’s why the title question refers to Reeder and Google Reader only. I wanted a nice, appealing UI for RSS. But then how can I include Google Reader in this comparison? Its interface is (very) far from being nice or appealing. Moreover it has a huge (nb: in my opinion at least) design flow, by not providing a simple, easily accessible way to mark as read an item without having to open it. For example, Reeder is solving this by offering a swipe action.
It turns out there’s a way to make Google Reader look awesome. It is a Safari extension called ☞ Pure Reader:

And it looks like people liked it so much that it was already ported to Chromium/Chrome and Firefox, so basically you can have it anywhere.
So, question is: which one do you prefer? A native app or just a browser extension?
Unfortunately Pure Reader doesn’t solve the “mark as read” design flaw and is currently having a small UI issue when navigating the items (I’ve fixed this one locally and pinged the original author about it).