1. Avahi helps hosts connect to VMs

    How to setup Bonjour broadcast to connect your Linux servers to your Macs for easy access while developing. Safari automatically adds the web servers that are broadcasting on your local network. Linux servers will broadcast once the Avahi server is installed.

    Continue reading

  2. Trying out Emacs Again

    I'm a Vim user, but i'm not 100% sold on it. I keep wanting to find an even better editor. I've tried just about everything but nothing sticks. I'm starting a new book on Lisp programming so it is time to try Emacs again. May this time it will stick.

    Continue reading

  3. Sinatra Settings for Nested Apps

    Getting settings to work in a Sinatra app that includes other Sinatra apps can be done a lot easier than you think using the Rack::Config middleware. I show how I created a Sinatra app with several nested Sinatra apps. And how I solved the issue with using a shared settings value from outer apps to the inner apps.

    Continue reading

  4. Vagrant: Going from old and busted, to new hotness

    Vagrant is an amazing application for helping you manage your virtual machines. Renewed development effort by it's creators has brought us many new features. Unfortunately this forced a change in the semantics of the Vagrantfile. Here is how to do the most basic upgrades to remove the warning messages Vagrant creates from using the older file type.

    Continue reading

  5. Switching from attr_encrypted gem to attr_encryptor for better security

    At work we are using the attr_encrypted gem to encrypt some PII on our data before it hits the database. The gem supports using a strong key but this turns out to not be enough. A Github issue was created to address leaking of data caused by using the same initialization vector (IV) and salt for every value. The method used by the attr_encrypted gem to create the IV and salt values is vulnerable. Additionally the IV should also be processed with the CBC-MAC method. The attr_encryptor was created to fix these issues.

    Continue reading

  6. Setting up a new Mac for Ruby development

    I recently switched how I was using one of my laptops. I wanted to make a clean break from what it was doing before, so I erased the hard drive and started from scratch. I've done this a few times already and I always seem to forget a step. So this time I wrote down the steps so I could repeat them later. These are the steps I take to setup a Mac for Ruby development using Vim as the editor and MySql as the database. Of course there are a few other programs that I use while developing. The whole group, in my opinion, make for the most basic setup.

    Continue reading

  7. Changing Xcode versions

    I recently needed to switch from developing for Rails 3.2.5 on Ruby 1.9.3 to working with Rails 2.3.5 on Ruby 1.8.7. The Rails version change wasn't that big of a deal, but the Ruby change was. Sometime between the release of 1.8.7 and 1.9.3 the supported GCC compiler changed. The newer compiler, the one I was on, had a breaking change making it not compatible with the older Ruby version. This meant that if I wanted to use Ruby 1.8.7 I was going to have to uninstall my current copy of Xcode and install an older version.

    Continue reading

  8. Installing Node.js on Ubuntu 10.04 server

    Most of the guides I find on how to install [Node.js][1] on Ubuntu are not about installing the currently released version, instead they focus on installing the latest development release. I think this is the case because they assume the reader is familiar with doing software installs on unix from source. I'm coming from a Windows word were installing from the source is almost never done. This guide is for someone relatively new to unix installation or to Ubuntu server setup.

    Continue reading

  9. How to setup Node.js and Npm behind a corporate web proxy

    For those who, like me, are behind a corporate web proxy, setting up Node.js and using npm can be a real pain. I thought that the web proxy settings would be like the rest of the unix world and require me to set the HTTP_PROXY and HTTPS_PROXY environment variables. Although I just cloned the Node repository from Github so they are already setup. What gives?

    Continue reading

  10. Switched from PC to Mac

    I'm a switcher! I switched from PC to Mac. It started when I wanted to replace the computer I use to run my TV. I picked the Mac Mini because of it's size. I had done the research and all of the Internet services I used on the PC also worked for the Mac. So I waited until the Mac OS X Lion update came out to buy the newest version of the mini.

    In addition to the media streaming I also started using the mini for iTunes and iPhoto. I cannot stand iTunes on Windows, but on the Mac is it much better. This of course led me to using the mini for more and more things. I am super happy with my purchase. So much so that I have purchased a MacBook Air. It arrived today and I'm very excited.

    I'm actually replacing my "main use" computer for the Mac. I'm a full on switcher now.

  11. Alt.Net Seattle mini con report

    I went to my first Alt.Net Seattle meeting on Saturday. It was a mini conference created so the Microsoft MVPs could meet while they were already in Seattle for the MVP global summit. I have to say I really liked it.

    Continue reading

  12. Started working with Silverlight

    I started playing with Silverlight 2.0. I learned a lot about the data modeling classes and what is supported. Going to have to spend much more time with Silverlight if I'm going to make anything useful

    Continue reading