Isolating your Ruby gems to a local project folder with a sample Sinatra app

In my previous blog post I wrote about installing rbenv on OS X 10.9 (Mavericks) to manage multiple Ruby installations easily. Today, I’m going to go over how I setup an initial Sinatra application while keeping the installed gems in the Ruby project and not going into the default system’s gem repository. I work a lot with Python so I tend to like how the separation of installed dependencies are handled using virtualenv and kept in the local project’s isolated instance. For more information on that see my blog post here.

Continue reading

Posted in Open Source, Ruby | Comments Off on Isolating your Ruby gems to a local project folder with a sample Sinatra app

Installing rbenv on OS X 10.9 (Mavericks) to manage multiple Ruby installations easily

I’m a big fan of pyenv so rbenv was a natural fit for the style of how I like to setup my development environments (on numerous computers). This allows me to easily switch between versions of Ruby depending on which project at work I’m working on.

Continue reading

Posted in Open Source, Ruby | 1 Comment

The 10 Minute Guide to the Observer Pattern in Python

Today I want to cover the Observer Pattern in Python. I’ll be using Python 3 but this should work equally well with Python 2.6.x and newer.

According to Wikipedia the Observer Pattern is: A software design pattern in which an object, called the subject, maintains a list of its dependents, called observers, and notifies them automatically of any state changes, usually by calling one of their methods. It is mainly used to implement distributed event handling systems.

Continue reading

Posted in Design Patterns, Open Source, Python | 4 Comments

Review: Developing Responsive Web Applications with AJAX and jQuery

On a recent business trip I read the recently published book “Developing Responsive Web Applications with AJAX and jQuery” by Packtpub and authored by Sandeep Kumar Patel. Today I’m going to do a quick review on the book.

Continue reading

Posted in Apache Tomcat, HTML5, Java, Mobile, Reviews | Comments Off on Review: Developing Responsive Web Applications with AJAX and jQuery

How I configure my envrionment for Python development

Everyone has their own way of setting up their development environments and I’m no exception. In this article I’m going to go over the steps I take to setup a new Python development environment on OS X and with a couple minor modifications this should work on Ubuntu as well.

Continue reading

Posted in Open Source, Python | 7 Comments

Tutorial: Learning Salt with Vagrant (Ubuntu 14.04) – Part 2 – Using salt-ssh

In my previous Salt tutorial I showed you how to get a Salt master and a single minion setup and run a few commands. Today, I’m going to cover salt-ssh which is a very new package (alpha quality as of this blog article). Even though its very new and may have some rough edges its still usable and hey, it never hurts to learn some new upcoming technology.

Continue reading

Posted in Open Source, Python, Salt, Ubuntu | Comments Off on Tutorial: Learning Salt with Vagrant (Ubuntu 14.04) – Part 2 – Using salt-ssh

Installing Rundeck on Ubuntu 14.04 (Trusty) in Five Minutes

Rundeck is open source software that helps you automate routine operational procedures in data center or cloud environments. There are a lot of features that Rundeck offers, one of the ones I use is the ability to create jobs and workflows that allow me to execute commands on remote machines, capture the results, (success or failure) and then process that result and either continue on with the workflow or terminate it. I can have the system notify me via email or webhooks as well as many other options through the plugin system for notifications. In a nutshell, Rundeck is a feature rich tool to schedule and run your tasks on one or thousands of systems.

Continue reading

Posted in Open Source, Ubuntu | Comments Off on Installing Rundeck on Ubuntu 14.04 (Trusty) in Five Minutes

Review: jQuery 2.0 Development Cookbook

There are many JavaScript libraries out there but jQuery is still one the most commonly used and probably one of the most popular JavaScript libraries in use today. Today I’m going to review the “jQuery 2.0 Development Cookbook” by Leon Revill and published by Packtpub.

Continue reading

Posted in JavaScript, Open Source, Reviews | 30 Comments

Tutorial: Learning Salt with Vagrant (Ubuntu 14.04) – Part 1

Where I work we use Salt to do large scale Cloud deployments to support a massive Object Store. Obviously, such installs on this scale need to be done with automation tools. In this case our team is using Salt. Today I want to go over how you can setup a Salt installation on your computer using Vagrant so you can experiment with Salt further and learn how it works, etc.

Salt is a fast, scalable and flexible systems management software for data center automation, cloud orchestration, server provisioning, configuration management and more. Salt is written in Python.

Continue reading

Posted in Open Source, Python, Salt, Ubuntu | 3 Comments

Tutorial: ZeroMQ Publish/Subscribe Pattern with Python 2.7.x or Python 3.4.x

What is ZeroMQ? According to Wikipedia: “ZeroMQ is a high-performance asynchronous messaging library aimed at use in scalable distributed or concurrent applications. It provides a message queue, but unlike message-oriented middleware, a ØMQ system can run without a dedicated message broker. The library is designed to have a familiar socket-style API.

ZeroMQ has several patterns you can use in your projects. Today, I’m going to go over the publish/subscribe pattern. This is a pattern you could use in many situations that warrant one or more publishers sending messages to one or more subscribers. You can even filter on the message type as you’ll see in one of the examples with this article.

Continue reading

Posted in Open Source, Python | 4 Comments