Category Archives: Geek

All things geek

Experimenting with Twitter

I first played with Twitter back in August when I was at a Conference and they kept saying “it was the thing to do.” The official conference Twitter feed never got updated and it just seemed like the latest fad of the “social internet.” I just let my twitter account pretty much die.

A week or so ago, Dave started watching my dormant Twitter feed. I thought I’d take another look at Twitter based on the theory that if Dave sees value, there must be some. In talking to Dave last week at lunch, it looks like that is the way a lot of the smaller Mac software guys communicate. I’m not sure what I’d use it for, but I’ll play with it again.

I have to say that it is somewhat addicting to just drop a one liner about what is going on our what went through my head. Twitter also makes it very easy to do so since you can drop a tweet via SMS, IM, or the web. I have at least two of those accessible to me at all times.

The last thing I thought I’d play with is integrating Twitter with the blog. Luckily, the twitter tools wodpress plugin by Alex King make it a snap. So now, every day I drop a tweet, you’ll see a daily digest. We’ll see how this works and/or if I ever say anything of value.

(This has inspired me to take a look at integrating my del.icio.us tags as a daily digest post instead of integrating it to the RSS stream via FeedBurner as I do now. Dan Wooley has posted a ruby script he wrote to do it, so I might rip that off.)

Preach on (about SSH,) Brother Dave

openssh.pngDave Dribin wrote up a nice post about people breaking some of the first ‘s’ in ssh and how that annoys him and ways to get around it. Its really a good read and really hammers home the point of using ssh-agent, which Dave initially exposed me to. Being able to ssh around without typing my password each time was something I was missing back from when I had kerberized ssh back at UIUC. Er..Illinois.edu.

While I agree with Dave about the empty password thing, one thing you can do in your .ssh/authorized_keys file is lock down a key to a specific IP and to a specific command. So, while you may have a passwordless ssh access, you can somewhat mitigate the risk by locking down what they can can do. For example, with a key truncated because it is long:

from=”192.168.33.22″,command=”/usr/bin/uptime” ssh-rsa AAA…

With this addition in the authorized_keys section, a user with this key from 192.168.33.22 will only be able to execute /usr/bin/uptime. For more information on that and other options you can use, see the AUTHORIZED_KEYS FILE FORMAT section of the sshd(8) man page.

See Alex Ross, save animals, visit Keith

arbc.jpgDon’t visit me, visit Keith of Keith’s Komix.

From http://www.comicbookresources.com/news/newsitem.cgi?id=11152:

NORTHBROOK, IL – Renowned comic book artist Alex Ross will be signing at Keith’s Komix, 528 S. Roselle Road in Schaumburg, Illinois, on Saturday, August 18, 2007, from 4 to 7 pm. Proceeds from the event will benefit Heartland Animal Shelter in Northbrook, Illinois.

This is my usual store, so I was planning on going and beering afterwards anyway.  Its good to see Keith get the press.

iPhone review

specs_measurements20070627.pngI wrote this for work, but I thought I’d repost it here, stripping out some of the work specific stuff.

Last Friday July 6th at about 1 I picked up my iPhone. I wanted to give it a serious couple of days of use before I posted about it.

We all heard and read about the activation problems in the first 24 hours or so. I’m happy to report that those issues were non-existent when I went to activate. Almost everything you do with the phone starts with iTunes, and activation is no different. I fired up iTunes, plugged the phone into the USB port and just started answering the questions. The activation went very smooth and I was mostly using my phone within 15 minutes of getting back from the Apple store. The snag I had though was in transferring my number from my old carrier. It took them 24 hours to give up the number to AT&T. During that time I could make calls and do network functions like e-mail and web surfing, but I couldn’t receive calls. Once that was done, it went like a shot.

Synchronization is also done via iTunes. On my OS X based MacBook Pro, this provides for a very tight integration with tools that Apple ships with OS X. The good side is much like an iPod sync, things just go when you cradle your device. The down side is that you’re tied to using iTunes. If you’re on OS X or Windows this isn’t really an issue. For those on other platforms, this could be a limiting issue. I haven’t tried syncing the phone with Windows so I can’t comment on what you can and cannot do via iTunes on the Windows and how well it integrates other than knowing what tools Apple says is supported on the stats page.

The rest of this will really focus on the parts of the phone I really interact with. If I don’t mention an app or don’t really talk about it, I haven’t used it much yet.
Continue reading iPhone review

Parallels Desktop is smart

Click for Full size!I’ve been using Parallel’s Desktop for OS X since it was first available. I just got my upgrade to the latest version. One of the things this version includes is the ability for the Mac to have the C: of windows (when running in a virtual machine) shared to the Mac like any other shared drive.

It looks like Parallels really has a good handle on code resuse since they based it on MacFUSE (which is based on the ideas and API of Linux’s FUSE. Its great to see cool open source technology being used like this rather than companies reinventing the wheel. Anyway, that was my geek excitement of the morning.

I aim to misbehave

Your results:
You are Malcolm Reynolds (Captain)

Malcolm Reynolds (Captain)
75%
Wash (Ship Pilot)
65%
Dr. Simon Tam (Ship Medic)
65%
Kaylee Frye (Ship Mechanic)
60%
Zoe Washburne (Second-in-command)
60%
Inara Serra (Companion)
35%
Jayne Cobb (Mercenary)
30%
Derrial Book (Shepherd)
30%
River (Stowaway)
20%
Alliance
15%
A Reaver (Cannibal)
5%
Honest and a defender of the innocent.
You sometimes make mistakes in judgment
but you are generally good and
would protect your crew from harm.


Click here to take the Serenity Firefly Personality Test

CMake so far

I’ve been investigating cmake at work as a better build system for our cross platform C based projects. I’m thinking about starting up a third one, so now is the prefect time to really go after this as for one project we have a build system per platform and on the other we have two build systems. When you mix in wanting to make universal binaries on OS X its yet another wrinkle. cmake was recently chosen by KDE to be the build system for KDE4 since KDE4 will be fully supporting Windows and OS X, as well as the other unicies via X. I used a small convenience library as the test piece as it was only two files big, but it had the requirement of at least two external libraries.

Some pros for cmake that I’ve found so far (compared to what we’ve been doing):

  • support a big number of build environments on the different platforms. On windows it sports 11 different build environments, OS X 3, and Linux 2. For OS X and Linux, you only really need those two or three, but on windows it supports 4 different versions of visual studio as well as Borland, Watcom, and gcc.
  • Takes care of the flags needed to build executables and libraries on those supported platforms.
  • Does out of source builds on windows.
  • Tracks dependences on all platforms without an external application
  • Does search and replacing on things like .in files without having to call out to external applications

Some cons I’ve found so far:

  • The documentation on the web page is pretty horrid. The book is pretty bad too, especially when compared to other technical books I’ve read recently, but its much better than the website. When combined with the book and experimentation, the FAQ is helpful.
  • Doesn’t really have the concept of convenience libraries. This will result in common files being built multiple times. I don’t like this, but its not fatal.
  • The CMakeCache is getting in my way more than being a help, but that might be the side effect of my learning process right now.
  • I haven’t yet figured out how to make it query the person compiling the app if it can’t find something. This may not be possible. At the very least I want to make it bitch and bomb out if a required dependency isn’t there. I just haven’t found it yet, I’m thinking.

This isn’t an exhaustive review yet, but I wanted to get down what was in my mind before I forgot. I had just found the convenience library thing and that’s what inspired the post. My next step is to move a full existing project over to being built with cmake. This is a library that depends on expat, boost, curl, antlr, and (optionally) swig. Should be a good challenge.

[Update 11:58: I found an answer to my “bomb out if the dependencies are missing” question. Thanks, devchannel!]

[Update 2:51: No this isn’t here just for g0ff. Turns out the latest cmake has modules to Find Java, Doxygen, Boost, Curl, Expat, and Swig already. It looks like just custom items for antlr and cppunit will be needed. Also, it only ever wants to link against dynamic libraries, not static ones. That’s a PITA.]

[Update 5:52: Okay, the convenience library thing is upsetting.  The output of what I was working on is a static library and there are same example command line tools that link against it.  From my reading of the cmake stuff, I should just include the library source files to the target for the executables being created.  The problem with this is for n example programs, I’m compiling librets n times.  This doesn’t seem very optimal.]

“Do you have any super powers?”

Via WWDN.

I’m not quite sure how I ended up as Superman, especially since I think I’m lacking in strength.  I see myself as more of the second two, especially if we’re talking Wally West as the flash.  In any case, I’m sure being Superman will please my daughter.  Dr. Doom I need to think about, I’m not sure how I feel about that.

You are Superman

Superman
75%
Spider-Man
65%
The Flash
65%
Iron Man
65%
Robin
55%
Green Lantern
55%
Catwoman
55%
Supergirl
45%
Hulk
35%
Batman
30%
Wonder Woman
25%
You are mild-mannered, good,
strong and you love to help others.

Click here to take the Superhero Personality Quiz

You are Dr. Doom

Dr. Doom
60%
The Joker
58%
Lex Luthor
58%
Green Goblin
57%
Riddler
48%
Mr. Freeze
43%
Poison Ivy
37%
Apocalypse
36%
Dark Phoenix
35%
Magneto
35%
Kingpin
28%
Catwoman
28%
Mystique
25%
Juggernaut
25%
Venom
22%
Two-Face
17%
Blessed with smarts and power but burdened by vanity.

Click here to take the "Which Super Villain are you?" quiz…