When the Personal MBA manifesto came out back in 2005 (see The Personal MBA: Mastering Business Without Spending a Fortune for the original), I read through the list, jotted down a couple book ideas, but mostly just left it at that. Lately, however, I’ve been reading more business books, and I thought I’d give the list another look.
The idea of a Personal MBA has grown momentum, and the list of books has been kept fresh. This time around, I pulled out maybe half-a-dozen that sounded interesting; But before diving in, I took the recommendation to brush up on my reading techniques using “10 Days to Faster Reading.”
Before starting the book (and perhaps still now), I would have described my reading style as slow, steady, and thorough. I read to comprehend, debate, understand, and work the material into my world view. That’s also a fancy way of saying that I’m not the quickest reader, but that I pay attention. That said, I’m always interested in learning something new and boosting my productivity.
My mindset going into “10 Days to Faster Reading” was open, interested, willing to learn, but somewhat skeptical that it would work for me. My assumption about speed reading was that it focused more on skimming then on deep engagement. Fortunately, the book changed my view a bit.
One of the biggest takeaways for me, was the idea that when we’re young, and learning how to read, we’re taught to slowly go through each word at a time because we’re still building our vocabularies and teaching our eyes how to parse written text. Unfortunately, as we get older, our education systems tend not to re-visit reading skills in a manner more suited to our growing ability to process words. This is why adults can boost their reading speed — they have the ability to process text at a rate faster then we normally use, if you can teach your eyes how to do it.
Each chapter in the book contains lessons and timed reading exercises. With stopwatch in hand, I tracked my progress. Here’s my results: (Note that each chapter often had you applying a different technique, so progress wasn’t meant to be linear)
| Words per Minute | Comprehension | Notes |
|---|---|---|
| 265 | 100% | The first test, meant to be a baseline measurement before learning new reading techniques. |
| 345 | 90% | |
| 300 | 70% | |
| 459 | n/a | |
| 1096 | 70% | |
| 448 | 60% | |
| 400 | 90% | |
| 600 | 100% | Familiar subject matter |
| 400 | 70% | |
| 400 | 70% |
My times definitely improved, though comprehension suffered as the pace increased. Interestingly though, two things came out of this:
I still need more practice, but at least now I know what to work on, and I have a handful of techniques to experiment with. So far, I’ve found the best application to be with Newspaper and magazine articles, along with online news where I just need the general story.
Overall, I’d say that the potential boost in reading productivity was worth the $9 book price and the time it took to read it.
For more:
In case someone else needs it, here’s a simple shell script I use for grabbing the current weather conditions by U.S. zipcode using the Yahoo APIs:
function weather {
zipcode=$1
if [ -n "$zipcode" ]; then
lynx -dump "http://weather.yahooapis.com/forecastrss?p=$zipcode" | grep -i condition | awk -F' ' '{print $4 $5 $6}' | awk -F'< ' '{print $1}' | sed 's/,/ /'
else
echo 'USAGE: weather <zipcode>'
fi
}
The script uses lynx to grab the Yahoo RSS feed, piping the output to grep, which extracts the line containing the word ‘condition’. awk then pulls out some specific fields (delimited by spaces, then later by ‘<’), and sed converts the commas to spaces for prettier output. Obviously, the whole thing is fairly fragile, and changes to the RSS format (which happened maybe a month back) break the code. Checking the weather in Austin with the command: `weather 78701`, currently outputs: “Fair 67F”.
Just the other day I had a friend mention a desire to scrape tour schedules in MySpace so that he can find out when artists he’s interested in are in town. (He eventually decided it was too much hassle and would like someone else to do it, which is why I’m able to mention it here.) It’s a cool idea, though the OnTour Dashboard Widget takes it to perhaps another level.
The Widget monitors tour information in OnTour.net and compares it to the music you have in your iTunes library. The downside being, of course, that you have to hit F12 to get a notification. But otherwise, the interaction model is perfect — meaning that you don’t need to change your behavior at all, yet you gain new value and information. Brilliant.
(Via Lifehacker)
Admittedly, this is perhaps more of an interesting trick rather then a needed feature; However, if you’ve ever wanted to print man pages or simply read them in a nice, anti-aliased document view instead of within the Terminal, here’s a tip you might like. The following bash script (and credit goes 100% to my friend Victor, who is sans-blog) will format and open man pages in Preview:
#!/bin/bash
cmd=$1
if [ -z $cmd ]; then
me=`basename $0`;
echo "Usage: $me command_name";
exit;
fi
man $1 > /dev/null 2>&1
if [ $? -ne 0 ]; then
echo "No man page for $cmd";
exit;
fi
man -t $cmd|open -f -a /Applications/Preview.app
On my box, I called the script ‘manpreview’ and dropped it in ~/bin/ for easy access. Once you `chmod u+x` it (and have ~/bin/ in your path), you’ll be able to do fun things like `manpreview tcpdump` for some extended reading.
I’ve been using Series 60 phones for several years now, and during that time I’ve developed a few tricks to help work with the phone UI. One of the most important is in organizing my applications so that I know how to find them and can get to them efficiently. To do this, it’s important to know a few key concepts:
Let’s start from the beginning.
The organization and folders in the Series 60 application menu are completely configurable. The default setup is likely to be different across the various phone models and operators, so I like to move things around to better match my needs. I currently have five folders at the root level:
The layout looks like this:
In the “Media” folder, I keep applications related to imaging and video. In the “Net” folder, I keep web browsers and anything that uses Over The Air (OTA) networking, including Bluetooth. “Tools” contains phone management applications, like “Settings”, “Manager”, and my various file explorers. “Extras” has miscellaneous applications like “Converter” and “Clock”. I also keep a few applications “below the fold” that are important, but rarely used.
When you’re ready to create new folders, make sure you’re at the root level (ie., main menu), then look in the “Options” menu for the “New folder” command:
After selecting “New folder”, you will be prompted to name it:
Once you have your folders named so that they make sense to you, move your applications into the appropriate folder by highlighting them and selecting “Move to folder” from the “Options” menu:
With your applications in the right folders, you can rearrange them using the “Move” command under the “Options” menu. To do this, highlight the item you wish to move, select the “Move” command, then navigate to the location you’d like your item to be and click the d-pad center button to make the move.
Arranging your applications properly becomes even more important once you learn how to use the numerical keypad to navigate the menu. (This is the most important part of the lesson, so grab some coffee if you’re losing focus.)
When you first open a menu screen, selections can be made using the 1-9 keys. The keys map to the application icons like this:
For my setup, that means I can open the Calendar just by pressing the ‘7′ key, or drop into the Games folder just by pressing the ‘9′.
Because of the potential for fast navigation, you should ensure that the items “above the fold” are the most important ones, and you should arrange your applications so that the frequently used ones will be accessible using the number pad. Once you get the hang of it, you’ll find numerical navigation to be much faster.
In addition to simply organizing, I also take things a step further. For each of my folders there is generally one application that I use most often. Therefore, I arrange the items within the folder so that the most important application is in the same numerical key position as the folder itself. For example, I have my “Media” folder in position ‘3′:
Once that folder opens, I have the “Gallery” application also sitting in position ‘3′:
Since the “Gallery” is the application I’m most likely to be opening, that means all I do is press ‘3′ twice to launch it from the main menu. The full key command becomes: ‘menu’-'3′-’3′.
I have my other folders setup this way as well: ‘menu’-'4′-’4′ launches Opera; ‘menu’-'5′-’5′ launches FExplorer; and ‘menu’-'6′-’6′ launches “Converter”. I also have a few that weren’t designed for optimization but have been become a learned pattern. For example, I have the “Clock” application at ‘menu’-'6′-’5′, and my thumb has learned that the Clock is “65″. (During a recent conversation someone complained at how long it took to open the Clock application on Series 60. I said, “It’s only three clicks”, and opened the application on my phone mid-sentence. Yeah, I know… I’m a rock star geek.)
The point of all this is that if you’re using Series 60 and find it cumbersome to navigate between applications, you might find it helpful to take control and adapt the phone to your way of thinking, rather then the other way around. (I’ve also heard that it’s helpful to read the manual, but I haven’t done that either ;-)
I use Versiontracker, MacUpdate, freshmeat, etc. to watch for software updates. Freshmeat and Versiontracker offer RSS feeds to make things a little easier, but other sites require daily, manual visiting to check for updates and new releases. That sucks. In fact, keeping up with patches and new releases is such a hassle that Versiontracker and MacUpdate have even developed business models around this annoyance by offering paid services utilizing desktop tools to monitor your currently installed software for updates.
While I like the idea of using a background application to monitor this stuff (meaning, I like the idea of automating the task), I don’t like the service being bound to one particular tracker. For example, even if I did pay for the Versiontracker service, it still wouldn’t monitor all the unix and open-source stuff I run. What I need instead, is a generic way to monitor software projects for updates — and I want it to come to me via RSS/Atom; So naturally, I built a simple proof-of-concept tool that pulls RSS feeds from software trackers, compares the contents to the list of software I’m interested in, then generates a different RSS feed containing ONLY the updates I’m interested in. Making it work turned out to be rather easy.
To start with, I focused on the Versiontracker RSS feed. The folks at Versiontracker were nice enough to use a URL scheme that gives each software product a unique ID, making it very easy to parse. The feed is updated rather frequently though (and missing a post would be bad), so I needed a way to continuously poll their feed and cache the results without being a bad netizen. The solution? Bloglines, of course. Adding the feed to Bloglines let’s me catch all the content updates without worry. And since Bloglines offers an API for pulling content, it was simple enough to write a script that checks the feed. The meat of it looks like this:
1: # Connect to Bloglines.
2: bws = BloglinesWebServices("***@***.***", "****")
3:
4: # Fetch the Versiontracker feed and mark it as being read.
5: data = bws.getitems(*****, True)
6:
7: # If we got something...
8: if len(data.entries):
9: # Compare the VT feed to my saved list of software
10: for i in data.entries:
11: for key in self.listing.entries():
12: if i.link.endswith(unicode(key)):
13: # Save a list of dictionary entries that describe the software.
14: self.updated.append({'title':i.title, 'link':i.link, 'description':i.description})
The BloglinesWebServices class is defined by pybloglines, which is built on-top of the universal feed parser.
In line 11 you’ll see that I’m pulling from a data structure called listing.entries. This is just a list of ID’s that are pulled from a text file. Building the text file is fun though — all it took was a simple CGI and a Bookmarklet. Using the Versiontracker site, I navigate to a piece of software that I’m interested in and simply click my Bookmarketlet to pass the URL to a CGI. The CGI extracts the Versiontracker ID from the URL and stores it in the text file!
The rest of the code takes the data structure `updated.append` (from line 14) and generates an RSS feed from it. Then, in a nice piece of circular processing, this new RSS feed was also added to my Bloglines roll. With both feeds in Bloglines, the content monitoring is automatic from my perspective, with the whole system flowing like this:
Beautiful.
I finally finished reading “Getting Things Done: The Art of Stress-Free Productivity” by David Allen, and I wanted to post it here as a recommendation for anyone who’s interested in techniques for optimizing your workflow, your inbox, and your overall productivity.
The book was a little slow at first, and a little redundant at the end, but the middle was wonderful. There are plenty of people blogging about the book and the techniques it presents, so I won’t go overboard here, but for those resisting the kool-aid, Allen does present a very workable model for getting ideas out of your head, processed, and completed.
The majority of my tasks are done using my computer, so my GTD system takes place on my PowerBook. For email, I’ve simplified my archive folder structure (thanks to GMail I’d rather search then spend time filing) and introduced folders for: “_1_Action”, “_2_Hold”, “_3_Respond”, “_4_Wait”, and “_5_Someday”. To make processing my inbox even easier, I’m using the Mail Act-On plugin for Mail.app to bind custom key events to mail rules for the actual sorting.
For collecting ideas, notes, etc., I’m using VoodooPad with pages for my projects and things like “@home”, “@office”, “@errands”, etc. I’ve also started using Quicksilver much more heavily for system interaction. (Ironically though, I almost never use Spotlight, because I can’t stand the general experience I have with it, which usually goes something like this: I hit Apple-Space to open the search field; type in the search string; see the file I’m looking for, but since it’s physically moving in the UI, I click the wrong file, and before I can chase down the one I meant to click, it’s pushed off the screen as the search results list grows. I hate it. I feel like it’s taunting me because it knows where the file I want is, but it won’t let me actually select it.)
On a related note, I also read “Execution: The Discipline of Getting Things Done”, by Larry Bossidy, et al. Avoid that book — it had nothing to do with getting things done, and instead, is full of generic business stories and quotes that I hope no real manager ever uses.
For those interested in learning more productivity tricks, you might also try 43folders.com and lifehacker.com.
I often find myself needing to move small files (ex., text documents) between my laptop and desktop computers. Both box boxes are online and sitting on the same desk, but aren’t necessarily on the same network. (I’ll leave the interpretation of that to your imagination — but wi-fi, VPN’s, and DMZ’s may be involved.) To make it more complicated, I don’t run file sharing services on either machine (not that it would matter anyway since they can’t see each other.)
With the two computers sitting physically next to each other, not being able to easily move files between them is highly frustrating. Originally (and still for larger files), I was solving this sneakernet-style, using a USB memory stick. However, awhile back I had a very small file that needed to be transfered, yet I was feeling particularly lazy and didn’t want to go get my USB stick from the other room. What to do… what to do…
I have a USB Bluetooth dongle for my desktop machine so that I can sync and install files to my phone. The PowerBook came with Bluetooth built-in. Because I frequently transfer files to my phone, I leave the Bluetooth File Exchange app (”/Applications/Utilities/Bluetooth File Exchange.app”) in my Dock.
Sending a file to a phone isn’t anything special. The transfer uses standard OBEX, thus, sending a file from computer-to-computer over Bluetooth should also “just work.” Turns out, it does. Establishing a connection isn’t 100% reliable, and the bandwidth is pretty lousy, but if you’re stuck needing to move small files between physically-close, but not network-close, computers, you can add Bluetooth to your bag of tricks.