Recent Blog Posts

First GNU Guile Patch and More Guix Packages

November 22, 2013

I have spent some of the last month working on contributing to GNU Guile and now I can finally say that I have contributed code to the project. Guile has several hash table implementations: a Guile native one, SRFI-69, and R6RS. SRFI-69 contains a handy procedure, alist->hash-table, which allows for a sort of hash literal-like syntax:

read more ➔

My First GNU Guix Patch

October 16, 2013

Over the weekend, I decided to try out GNU Guix: A fully functional package manager based on Nix and a distribution of the GNU system. I’m a big proponent of GNU Guile, thus I was excited to see a DSL for package management written with Guile.

read more ➔

GNU 30th Anniversary Hackathon

September 30, 2013

I spent my weekend at MIT at the GNU 30th anniversary hackathon. I had never participated in a hackathon before and was excited to see what it was like. Developers from many GNU and non-GNU projects were there to hack and help others get involved, and RMS was there to give the keynote speech.

read more ➔

Guile-2D 0.1 Release

September 27, 2013

To celebrate the GNU Project’s 30th anniversary, I have decided to make the very first release of my 2D game development framework for GNU Guile. GNU Guile is a Scheme implementation, and has the honor of being the official extension language of the GNU project. Guile-2D is a layer above SDL, OpenGL, FreeImage, and FTGL that provides abstractions for common 2D game programming requirements such as sprites, tilesets, animations, scripting, and collision detection.

read more ➔

Liberating a Thinkpad X220

September 22, 2013

I had been looking for a suitable replacement to my old, slow Compaq laptop that I purchased during my freshman year of college when I had very little money. What I liked about my old laptop was that it played well with free software. I had no trouble getting all of my hardware to work out-of-the-box with fully free GNU/Linux distributions such as Trisquel, and I wanted any future laptops of mine to play nicely, too.

read more ➔

Font Rendering in OpenGL with Pango and Cairo

August 17, 2013

I am working towards a 0.1 release of my game development framework for GNU Guile, guile-2d. One of the few remaining blockers on my to-do list is font rendering. A reddit user, Madsy9, pointed me in the right direction with this comment. There are two libraries needed to perform nice font rendering with proper internationalization support: Pango, “a library for laying out and rendering of text, with an emphasis on internationalization,” and Cairo, “a 2D graphics library with support for multiple output devices.”

read more ➔

The Little Schemer

August 11, 2013

Yesterday, I took a trip to the MIT Press Bookstore and picked up a copy of The Little Schemer. I’ve only spent a few hours reading and coding along with it, but I’ve had a lot of fun. The following is a mini-review based on my experience thus far.

read more ➔

AngularJS Post-mortem

August 08, 2013

AngularJS is the new popular client-side Javascript application framework developed by Google. We have recently adopted it at Vista Higher Learning for building our latest features that require a lot client-side logic. Now that I have a few applications under my belt, it’s time to talk about my experience.

read more ➔

guile-2d - A 2D Game Development Framework for GNU Guile

August 07, 2013

This is the very first devlog entry for my pet project, guile-2d. As the title suggests, guile-2d is a 2D game development framework for GNU Guile, a Scheme implementation that has the honor of being the official extension language of the GNU project. Guile is a language with a growing number of features, but it still lacks a large assortment of libraries. I like to do 2D game programming, and I saw a niche that needed to be filled. Python has Pygame, Lua has Love, but there’s no fun and accessible game programming library for Guile. Guile-2d is working to correct that.

read more ➔

StumpWM on Debian Wheezy

July 20, 2013

Everyone that’s ever talked to me about software development knows that I am in love with Emacs. Emacs has a wonderful keyboard driven interface and is almost infinitely customizable via Emacs Lisp. I’ve done a lot of programming in Emacs from my not-so-great laptop lately. My laptop has a rather poor 1280x800 resolution and low performing integrated graphics chip. Until today, I was running the GNOME 3 desktop environment on it. Unlike most people (or perhaps just a loud minority), I like GNOME 3. However, I wanted something that was both less graphics intensive and more keyboard driven than GNOME Shell and Mutter.

read more ➔
🡐 NewerOlder 🡒