Feed on
Posts
Comments
Tumblr

Book: Mind Prey

John Sandford week continues with Mind Prey.

Book: Point of Impact

One of my favorite books, Point of Impact chronicles an ingenious plot to assassinate a public figure and frame a former Marine sniper. Only he’s smarter than anyone expects. I know there was a movie made a few years ago that loosely follows the same plot, but I’ve not seen that so I don’t know if it’s any good or not. I’ve read the book several times and enjoyed it each time.

Book: Invisible Prey

John Sandford week continues. Somehow I missed several of the Prey books so I am now catching up. The only problem with this is I’ve read all the ones I have in the house so I’m fresh out of new books to read.

Book: Hidden Prey

Hidden Prey is another John Sandford novel, this time with Lucas Davenport as the central character. As usual, Sandford spins a good story, with great characters and a couple of good plot twists.

Book: Heat Lightning

John Sandford’s Heat Lightning is the second book with the central character Virgil Flowers.  Virgil works for the Minnesota Bureau of Criminal Apprehension for Lucas Davenport, the central character of all the Prey books. The first Virgil Flowers book, Dark of the Moon, was a little slow getting started but a good read. This second story was very good.

2010 Books

Every year in December I start to think about tracking the books I read for a year. I frequently am reading more than one book at a time, and sometimes I read two or three books in a week. Being the child of organized list makers, tracking what I read isn’t necessarily a simple thing. Do you track only those books which are new, or can you count ones that you’ve read before?

This year I’ve decided to add a new posting for each book I finish reading. The posting will indicate whether or not this is a first-read or a re-read, and it will included, thanks to my Amazon Associates account, a link to the book on Amazon. If you should follow that link and make a purchase, I’ll get a pittance in return.

Once before I used a spreadsheet to track my reading habits for a calendar year and if my memory is right I read about 75 books that year, with perhaps 45 of those being new, first-reads, and the rest being re-reads. My guess is that I’ll read about 50 books in 2010.

How to Use Facebook Via RSS

I have a love-hate relationship with Facebook. I appreciate seeing what the people I know are up to, but I dislike all the quizzes and games and their associated chatter. Turns out it is possible to get status updates, notifications, notes and links via RSS feed. Naturally, since Facebook wants to your share your stuff with the world and not just lurk in the corner like a good introvert, they don’t make it obvious how to set up the feeds.

Jamie Zawinski has a short posting on his Live Journal site explaining how to use Facebook using RSS feeds. I’ve copied the directions below.

  1. Posts: Find the Posts feed by going to http://www.facebook.com/posted.php. On the upper right of the page is a gray box, and at the bottom of that box is a link entitled “My Friends’ Links” with the RSS logo next to it. Copy that URL. Subscribe to it in your feed reader. This is the RSS URL for any links and (external) images that your friends post.
  2. Notes: Find the Notes feed by going to http://www.facebook.com/notes.php and repeating the above. This is the RSS URL for things that your friends post via the “Notes” app, which is (I guess) the more blog-like way of posting long things to Facebook.
  3. Notifications: Find the Notifications feed by going tohttp://www.facebook.com/notifications.php and repeating the above. This is the RSS URL for things like “so-and-so commented on your status”. You might not care to subscribe to this one because you can get all of these kind of notifications in email.
  4. Status Updates: This is the RSS URL for the “What are you doing?” Twitter-like part of Facebook. This is the one you probably care about, and it is trickier, because Facebook no longer links to the feed URL! Nice one guys. You have to construct this URL by editing one of the above URLs. E.g., take the “Notes” URL and change the part of the URL that says “friends_notes” to “friends_status”. Keep the parts of the URL before and after that, including the magic numbers at the end.

I set up NetNewsWire following his directions and it works beautifully. And since I use the Selective Tweets application on Facebook to allow status updates via Twitter, I now won’t need to visit the Facebook page except on rare occasion.

At work I now have four computers and five screens, all controlled from one keyboard and mouse. Here’s how I did it.

Hardware

The primary machine at work is a Mac Pro running Mac OS X 10.6.2 with 2 x 2.66 GHz Dual-Core Intel Xeon processors, and 4 GB of 667 MHz DDR2 RAM. This machine has two 20″ Apple Cinema displays attached to it, and an Apple Keyboard and an Apple Mighty Mouse. This machine is called Palantir.

The work supplied laptop is a 15″ MacBook Pro also running Mac OS X 10.6.2 with a 2.4 GHz Intel Core 2 Duo processor and 2 GB of 67 MHz DDR2 RAM. This machine is called Orthanc.

The final machine in the mix is my personal MacBook Pro running Mac OS 10.6.2 on an 2.66 GHz Intel Core 2 Duo with 4 GB of 1067 MHz DDR3 RAM. This machine is called BlackPerl.

I also have a Dell Precision 390 running Windows 7 Professional, it has an Intel Core2 Quad CPU running at 2.4 GHz, and 2 GB of RAM. It’s called Khazad-dum. This machine doesn’t actively participate in the Synergy setup, it’s accessed via Remote Desktop from my Mac Pro.

Software

According to their web site, Synergy

… lets you easily share a single mouse and keyboard between multiple computers with different operating systems, each with its own display, without special hardware. It’s intended for users with multiple computers on their desk since each system uses its own monitor(s).

In addition to Mac OS X, Synergy supports Windows (95 through XP), and Unix, Linux, and Solaris.

Setup

Synergy consists of two parts, a server (the machine with the keyboard and mouse) and one or more clients (those machines you wish to control through the same keyboard and mouse). The server machine utilizes a configuration file to describe the geometry of your various computers. In my case I have things arranged like this, from left to right, on my desk:

  • BlackPerl (Personal MBP)
  • Palantir (Mac Pro)
  • Orthanc (Work MBP)

So my Synergy configuration file looks like this:

# synergy configuration file
 
section: screens
	# three hosts:
	#	Palantir (Mac Pro)
	# 	Orthanc (MacBook Pro)
	#	BlackPerl (MacBook Pro)
	#
	# arranged from left to right: BlackPerl : Palantir : Orthanc
	#
	BlackPerl:
	Palantir:
	Orthanc:
end
 
section: links
	# Palantir is to the right of BlackPerl
	BlackPerl:
		right = Palantir
	# BlackPerl is to the left of Palantir,
	# Orthanc is to the right of Palantir
	Palantir:
		left = BlackPerl
		right = Orthanc
	# Palantir is to the left of Orthanc
	Orthanc:
		left = Palantir
end
 
section: aliases
	# Palantir has an alias
	Palantir:
		localhost
end
 
section: options
	# use control+alt+# to hop to screen directly
	# 1 = BlackPerl
	# 2 = Palantir
	# 3 = Orthanc
	keystroke(control+alt+1) = switchToScreen(BlackPerl)
	keystroke(control+alt+2) = switchToScreen(Palantir)
	keystroke(control+alt+3) = switchToScreen(Orthanc)
end

This configuration is saved in my home directory as .synergy.conf.

While you could manually start the server each time you wanted to use Synergy, a better solution is to have it started automatically each time the computer is restarted or booted. Using Lingon I was able to create a launchd plist for Synergy that starts the server component automatically. My net.sourceforge.synergy2.plist looks like this:

synergy2Once this file is created, Synergy will start automatically every time the machine is booted. This creates the server necessary for Synergy to work.

On each client machine I added a function to my .bashrc file to create a secure shell connection to the machine with the Synergy server, in my case called Palantir. The function looks like this:

function pssh() { ssh -L 24800:localhost:24800 userid@palantir.example.com }

What is happening here is that port 24800 on the local machine is being forwarded to the same port on the remote machine (Palantir). All traffic to port 24800 will be encrypted and passed along to the other machine.

In addition to that function, each client machine also has a second .bashrc funtion called syn, that starts the Synergy client over the port forwarding created by the first function. It looks like this:

function syn() { /Users/username/bin/synergy-1.3.1/synergyc -f --name clientName localhost }

This function starts the Synergy client (synergyc) and names the client machine (–name clientName) and points it at localhost as the server. Since the Synergy port (24800) is port forwarded to the server machine, pointing the client at localhost works.

How to Use

With the Synergy server always running on my Mac Pro it is easy to start Synergy on both client machines. I open up a new Terminal tab and run the port forwarding function first (pssh). This function results in your being signed into the server, and this connection must exist in order for Synergy to work.

Next, open a new tab, which will give you a prompt on the client machine, and run the syn function to start the Synergy client. This tab will record the output generated by Synergy as you move into and out of the client via the host’s mouse.

I have discovered that Synergy is persistent; as long as the client is running and the port forwarding exists your client machine will respond to actions happening on the server. For example: if I take one of the laptops to a meeting without breaking the Synergy connection, and the screen saver starts on the server, the screen saver will be activated on the client too. This is a very minor downside as it is easy to Cmd-Tab to the Terminal instance with the Synergy tabs, and Ctrl-C out of the Synergy client and exit from the remote connection.

Notes

Synergy seems to be a dead project. No updates have happened to its source in a long time. Also, this setup which worked flawlessly under Mac OS 10.4, and 10.5, seems to be a bit flakier under 10.6. If you aren’t interested in this much effort to build a secure connection for Synergy you might want to look at Teleport, an alternative for accessing multiple computers from one keyboard and mouse.

Also, the launchd plist creation software, Lingon, is no longer being supported either.

50,000

Four years ago, on December 5th, 2005, I installed Mint on my domain host and started accurately tracking visits to my site. This morning at about 7:30 am the 50,000th page was served to the 26,620th unique visitor.

50000

Obviously my little personal site is way out on the power curve of the World Wide Web, but nonetheless it pleases me to see my numbers increasing. A rough count of the visits in the last 12 months adds up to nearly 22,500, meaning the rate of visits in accelerating here at Zanshin. If the same rate of acceleration continues throughout the next twelve months I should see 100,000 or more a year from now.

50,000 in this case means pages served by my host to some browser. Kind of like McDonald’s billions and trillions served signs, only fewer. The 26,620 unique visitors really means 26,620 unique sessions on my site. If you visit my site, look at a page or three and then leave that is a unique session. If you go to another page, say google.com and then come back, that would be a new unique visit. Sticking with the McDonald’s analogy, one trip through the drive-thru lane followed by a lap around the building and another drive-thru lane excursion would be two unique visits. All this really means is that most people look at 1.87 pages per visit to my site.

The most popular postings here fall into the “how to” genre. The most popular posting is Installing PostgreSQL on Mac 10.6, closely followed by Using jQuery to Create an iGoogle Style Drag-and-Drop. These type of postings are fun to create, and since they attract visitors I’m planning on more of them in the future.

What’s fascinating about these how-to style postings is the geographic diversity of the visitors. I regularly have visitors from India, Germany, Russia, the Netherlands, Poland, Spain, Italy, Brazil, Australia, and even more obscure places like Iraq and Vietnam.

The newest edition to the suite of sites under the zanshin.net umbrella is Solfège, my site about learning to play the violoncello. While it’s only been around for a couple of weeks it already has nearly a dozen postings and several pages dedicated to my experiences learning to play music.

Minus Seven and a Half

In the three months or so since Sibylle and I purchased our Honda Insight Hybrid, we have averaged about 43 MPG for each tank of gas. The car’s computer has a number of displays providing all sorts of information about the car’s performance and gas milage. One of the displays shows the current miles per gallon for the tank of gas in use, as well as an instant MPG graph.

I tend to leave the computer set to this combined display as it shows me how I am doing at the moment as well as how the MPG rating is fairing for the current tank of gas. Fairly early on in driving the Insight I discovered that there is a bit of entropy in my route to and from work. There’s a big hill I go up on the way to work, and back down on the way home. It would seem logical that whatever milage was lost climbing the hill would be regained coasting back down it. While this equality is possible, it is not guaranteed. If you are at all aggressive about climbing the hill (the speedometer glows green if you’re being economic and a bright blue if you aren’t) you can’t regain the lost miles per gallon on the way back down.

The game I play is too see how little if any I lose on the overall tank rating on each outing. Most trips to or from work I can stay even or at most lose 1/10 (0.1) MPG. Some days, when I catch all the lights and can maintain momentum, I can gain a tenth or two. Obviously the longer it has been since the last fill-up, i.e., the more miles on a particular tank of gas, the harder it is to improve the average.

Today all of this changed dramatically. Today is the first seriously cold day we’ve had. The high was only about 36º and the performance impact on the Insight was dramatic. When I backed out of the garage this morning the tank average was 43.3. And the tank only had about 5 miles on it. By the time I arrived home for lunch this figure had dropped to 36.0. This evening when I got home it was 35.8. I believe that I didn’t drive any more aggressively than I usually do, if any thing I was more cautious as it was sleeting or raining or snowing while I was driving.

One of the interesting characteristics about our hybrid, and I guess most others, is that the gas engine turns off at red lights since it isn’t needed. With it colder outside the car didn’t shut off once on any of the trips to and from work or the store. My guess is that in order to heat the cabin comfortable the gas engine needs to run, so I am suspecting that our wintertime gas milage is going to be in the mid-30s rather than the low-40s.

So my score for today was -7.5. Ouch.

« Newer Posts - Older Posts »