IT Consulting

Free Programming books.


I came across this the other day:

A Github repository of various free programming books. Looks like it covers a wide variety of topics, and is regulary updated. Some of the books require registration on a site, but that’s the purpose of a burner account if you want. Most are either HTML or PDF, but I’ve found a number of them in EPUB or MOBI format as well.


Xcode 4.6.3 Header search paths.


I’ve spent a few days on this one: Adding external headers to Xcode 4.6.3 in the project settings pane didn’t seem to work.

It turns out there are two sets of settings, one for the project, and one for the build target. If you find that your headers aren’t being found, then select the build target in the build settings pane, and you’ll then find another set of header search path selection.

Add the external path (in my case, it was /usr/local/include), and viola! Building this target works!

Xcode 4.6.3 and Bitbucket.


I’ve been playing with Xcode’s Git implementation. I’ve traditionally used SVN for my source control, but with the rise of DVCS, I wanted to learn more about Git. I’ve used in the past, but just for the basic stuff under Windows–and I just used the command line. I wanted to see what IDE integration would bring to the table.

Anyway, Xcode’s got some basic git tools installed. A couple of things I ran into with using it on though:

  • You have to create the repository using something else (like SourceTree, command line, or on the Bitbucket interface itself. Then use the Xcode ‘Clone repository’ tools.
  • In the organizer, use the string when adding the repository.
  • In the organizer screen, the username will show as ‘git’, not your username. Don’t change it!
  • Make sure you upload your SSH public key to Bitbucket. HTTPS works, but SSH is much better under other tools like SourceTree, or git command line.
  • I haven’t tried using the command line tools under Xcode, but I’m sure they’ll work fine. Just remember to preface the command with ‘xcrun’

  • xcrun git init
  • xcrun git add
  • xcrun git commit
  • You get the idea.

    Removing screws on a MacBook Pro


    I replaced my 2009 MacBook Pro’s drive with an SSD. I used a tip from my scale modeling hobby when removing the screws: Back each screw out until you feel the click of the threads on the hole. Then put a piece of tape on the head and lift it out. The tape will hold the screw, preventing it from being lost to the carpet monster.

    Oh, and the 3 long screws go the back right 3 holes.

    Debugging plugins with Xcode 4.6


    I’m working on developing a few plugins for some Mac OS X applications. I was having a hard time debugging the plugins, since I had use an NSLog() statement to write out to a file every time I launched the application and used the plugin.

    I thought there had to be a better way. Turns out there is.

    Xcode 4.6 (not sure about earlier versions) can launch the application for you, and then you can set breakpoints and all the regular debugging tools when the plugin is activated.

    The trick is in the Schemes. Under Product, you can look at the various project schemes you have available to you. Under Run, open the Info tab, and you can select the executable to launch when you run the project. After doing this, run your project, and the executable will be launched.

    This is the Droid you are looking for.


    Just got a Droid incredible. It’s quite a nice phone. So far my biggest complaint is that it doesn’t easily sync with my mac’s address book and calendars. Going to have to look at using a third party product.

    Go to Top