Posts


Composer Version Alias Hack

Quickly solve version dependency differences in composer.


Advance Jekyll

Bring your Jekyll site to the next level. Learn how to manage dependencies, organize your site, write your own plugins, build assets, test your site, and deploy changes automatically.


Getting Started With Jekyll

Learn how to setup a Jekyll site complete with layouts, includes, and basic assets. Then dive into how to create a post and publish it to GitHub pages.


Why Static Site Generators

In this post we'll talk about what static sites are and the benefits and drawbacks compared to "normal" site.


Supporting Multiple Versions of Symfony Components

With the release of Symfony 3.0 how do you support users that may be running either 2 or 3? We talk about how to support multiple versions of Symfony components and dive into how to test it on TravisCI.


Boxen Tips and Tricks

Running multiple computers can be frustrating. How do you make sure you have the same software on your work computer as your personal computer. Or how do you make sure you have the same settings on your desktop as you do on your laptop? We'll look at Boxen and how to set it up to get the most out of it.


Quick Tip: Protect Important EC2 Instances

I did something really stupid today. I was doing a load test with Bees With Machine Guns! that I thought was only going to hit Apache, and not the database. Turns out there is a small database call on the page I was hitting, and caused the database to spike. I tried exiting out of Bees, but it wouldn’t. The site started to crash, so I went to terminate the bee instances in the AWS console, but didn’t realize I had the production database selected. After hitting terminate, all hell broke loose.


Installing pcntl On Lion

I needed the pcntl module for a project I’m working on in PHP. By default this module is not installed when you install PHP, so you’ll need to compile it. There is a brew package for it, but I couldn’t get it to work, and I think it’s just as simple to compile it.


Why I Do Side Projects

I, like every other developer, have side projects. Why work on side projects? I think there are four primary reasons. 1) learn an existing language or tool better, 2) learn a new language or tool, 3) make some extra income, or 4) fill a need you have.


Introducing OmniBot

OmniBot is an IRC chat bot written in Node and CoffeeScript.


Language Specific Indents In Sublime Text 2

Ask any developer spaces or tabs and you’ll get different responses. I was hardcore in the tabs camp until recently. Now I’m trying to use spaces. The biggest issue with using spaces 100% was my text editor. I use Sublime, and tried to set it to use spaces by default, but couldn’t seem to get it to work (later I would find out it was a mis-typed option). So every time I would create a new document I would set the tab size (2 for Ruby, 4 for PHP and Python) and covert it to spaces. Half the time I would forget to do this, so I would end up with projects half in spaces and half in tabs. Today I finally got sick of doing this every time, so I set out determined to figure this out once and for all, and I did.


Securing Your Passwords

Today TutsPlus Premium got hacked. They used a third party plugin that stored passwords in plaintext. This is ironic, because NetTuts+, a sibling company posts about security once in a while. It’s also very frustrating for users (both present and past) because they have to change their password not only on Tuts+, but other sites as well.


Parallel Processes In Bash

I wrote a script to speed up MySQL imports. I’ll write more on this later, but for now I want to focus on background and parallel processes in Bash. Part of the script loads tables at the same time, trying to speed up the import. You can have multiple processes in Bash by sending them to the background using the & character.


Why You Should Write Tests

Last week I started writing tests for my framework. I’ve got to be honest, I rarely write tests for my code. This was the first time I really wrote tests, but I recommend it.


Getting Around CORS in CloudFront

We ran into an issue at work the other day with CloudFront and S3. We were trying to load assets via Ajax from our CloudFront distribution, but kept getting an “Origin http://example.com is not allowed by Access-Control-Allow-Origin” error. There is a W3 spec called CORS (Cross-Origin Resource Sharing) that prevents retrieving data from another site. To get around this, you would normally set an “Access-Control-Allow-Origin” header, but S3 limits the headers you can set, and that’s not one of them. I’m not the only one who finds this problem annoying. Amazon has said there are plans to implement this feature, but they also said that two years ago..


Playr - The Ruby Music Manager

A while back I started to learn Ruby. When I learn something I have to be actively working with it. That’s why I started Playr. The goal was to create a webapp that could manage music. After a month I got a basic webapp that you could upload music to and queue up music, and after a little more work, I actually got it to play music.


The Perfect Dev Setup on OS X Lion 10.7

A while back, I upgraded my work computer to Lion. Instead of doing a normal install, I installed Lion onto a flash drive and did a clean install. This gave me a chance to make my system exactly how I wanted it. I managed to get an almost perfect development setup. When my laptop’s Ruby install got a little funny, I decided to do a clean install of Lion and follow the same setup, and document it set by set this time.


My Adventures With Ruby

A couple weeks ago, as I was finishing up my TFD v2, I started to look at learning another language. After deciding between Python and Ruby, I went with Ruby.


Using Git Commit Messages As Your Changelog

I love git. It’s a powerful tool that I keep discovering new commands for. Pair git with GitHub and you’ve got a near perfect way to manage code.


Tea-Fueled Does

Editor’s Note: Since posting this, Tea-Fueled Does has been deprecated. We recommend to check out Symfony or Laravel. These are awesome and modern PHP frameworks.


Popcorn Source Code Plugin

Last week I heard about popcorn.js, a Mozilla project to bring interactivity to videos on the web. It’s a really interesting idea and one I can see actually being used. Being able to pull in Tweets, show a Google Map or a Wikipedia article without having to leave the video, is something that can add a lot to a video. There are multiple plugins available and you have the ability to write your own (though documentation is a little sparse).


Ajax File Uploads With MooTools

I’ve been working on redoing my personal site; making it responsive and easier for me to update (because even though I can edit the source, having a CMS is way easier). I thought it was going to be a pretty easy project (besides the design) because I knew what browser I was going to be using and don’t have to include all these hacks for older browsers. But instead of just putting something really ugly together for the CMS admin, I’ve put a lot of time into making it look good. It’s also become a place to test out some technologies. So far I created a modal plugin for MooTools (my preferred JS library) which was originally suppose to work on both mobile and desktop devices (but there were so many variables in the end it didn’t work out). Tonight I just finished up a plugin for Ajax file uploads.


Installing Memcache On Arch

This is a simple guide to get Memcached and the Memcache/Memcached module(s) for PHP installed on Arch Linux.


Arch Linux

The past couple of weeks I’ve been working with Arch Linux, and all I really have to say is wow! If you’ve worked with Linux at all, I bet it’s been Ubuntu, and don’t get me wrong, Ubuntu is great, but Arch is awesome. Arch focuses on simplicity and it does a good job of it. As a beginner, you could set up a server with Arch and not run into any issues. It’s also has a unique release system that’s always up-to-date. Everyday I’ve logged in any there’s always a new update, with this update system, you can make sure you are always running the latest and greatest, with other systems you’d have to wait 6 or more months for a update.


I Write Code

I’m Matthew Loberg and I write code. During the day I’m a web developer in Minneapolis, MN. At night I work on side projects of mine. I love writing code, I love making things, I love taking a problem that a client may have and finding an effective solution in the form of a website. I also love taking a problem and seeing how I can best solve it.