I'm Jason, a web applications developer in East Tennessee.

  1. Static Hosting with Neocities

    I’ve been using a Wordpress site for my blog for years, but that has become cumbersome, especially when you have to deal with your website being exploited due to holes in one of the many plugins that your site is relying on.

    I used to focus on LAMP stack development, and so running my own cPanel/WHM server was a no brainer. I more recently migrated my tech blog, Ruby Colored Glasses, from Wordpress to Github Pages. This is nice because the site is hosted for free by Github, however that’s limited to one site per each account.

    So I’ve decided to try to find another cheap low-cost static website solution that works with Jekyll.

  2. Intro to Tmux

    Recently I learned a few of the basic commands needed to use the GNU screen command to keep a command line session running even after I’ve disconnected from a remote VPS. I learned this specifically so that I could keep irssi running and logged into a specific IRC channel, so I could return to the session and view the history of messages that I had missed.

    Recently I heard about Tmux as an alternative solution, and also discovered that it can also be used to maintain separate virtual terminals (windows), as well as split the screen into separate “panes”. Splitting the screen into panes can also be done with GNU screen, but it’s not as well supported. See reasons to use tmux instead of screen.

  3. Unbricking TP-Link TL-WDR4300

    I tried to flash the TP-Link TL-WDR4300 router with a custom OpenWRT image recently, and after doing so I was unable to connect to the device like I expected.

    Here is how you can recover / un-brick the device.

  4. Getting Started with IRSSI

    Often open source projects or organizations use an IRC channel on FreeNode to provide support to users and/or developers. I’m trying to retain familiarity with the command line, rather than become completely dependent on GUI applications, so I’ve decided to use IRSSI instead of Pidgin or Adium (Mac OS X).

  5. Recommended Gems

    Here are some Gems we recommend that you checkout.

  6. Looping through dictionaries in jinja2 templates

    I am adding a script to our server using Ansible. The roles are all setup to support multiple Wordpress websites based on the dictionary defined in ansible/group_vars/wordpress_sites.yml, as my Ansible configuration is based on Trellis.

    I don’t want to use the Ansible template module to create a script for every website, because really I only have one website configured. Sure I might have configuration files for each site under Nginx, so that makes sense. So I decided that instead of creating multiple scripts, I’ll just have Ansible generate scripting for each of the sites inside of my shell script.

    Well it turns out that this isn’t do easy for someone not very familiar with Jinja2 templates or Python objects.

  7. Vagrant SSH Failure - Connection closed by remote host

    I recently was running into issues with Vagrant where I’d start the virtual machine using the ‘vagrant up’ command, but I’d receive an error when trying to use vagrant ssh.

    $ vagrant ssh
    ssh_exchange_identification: Connection closed by remote host

  8. Error when building PhantomJS 2.0

    I was tasked with installing PhantomJS 2.0 on an Ubuntu 14.04 VPS running with 2 GB of RAM. Online discussions on Github and Google Groups seemed to have pointed to the build process requiring much RAM to complete without error.

    g++: internal compiler error: Killed (program cc1plus)
    Please submit a full bug report, with preprocessed source if appropriate.
    See <file:///usr/share/doc/gcc-4.8/README.Bugs> for instructions.
    make[2]: *** [.obj/inspector/InspectorAllInOne.o] Error 4
    make[2]: *** Waiting for unfinished jobs....
    make[2]: Leaving directory `/home/app/src/phantomjs-2.0.0/src/qt/qtwebkit/Source/WebCore'
    make[1]: *** [sub-Target-pri-make_first-ordered] Error 2
    make[1]: Leaving directory `/home/app/src/phantomjs-2.0.0/src/qt/qtwebkit/Source/WebCore'
    make: *** [sub-Source-WebCore-WebCore-pro-make_first-ordered] Error 2

  9. Setup Environment for Django Development

    Although this website is primarily devoted to Ruby / Rails development, I’ve found it necessary to learn Python for a new position I might take in the upcoming year. Here is my guide for setting up your local workstation for Python / Django development on a Mac OS X workstation.

  10. Issues with RVM after upgrade to OS X Mavericks

    So I just upgraded to OS X Mavericks (10.9.5). I also upgraded to X Code 6, and also installed the command line tools via the xcode-select --install command. I also have the ‘apple-gcc42’ Homebrew package installed to provide GCC 4.2.

    Still however, when I would try to install a version of Ruby via RVM, I would get this error: