Happy New Year!
I have the day off work, so I figured I’d set up this blog on github. Maybe I don’t really need a blog just yet, but I figure at least I’ll have one at the ready whenever I end up having something...
View Article_why's (Poignant) Guide to Ruby in Clojure: Part 1
When I first started learning Ruby, Why’s (Poignant) Guide to Ruby was a godsend. From an objective point of view, it’s really not the most detailed or thorough language tutorial, but then again, I...
View Article_why's (Poignant) Guide to Ruby in Clojure: Part 2
Part 1 of this series can be found here.In this chapter, we start to see more of _why’s use of Ruby code to do metaphysical things like catch stars and use them to construct star-monkeys. Of course,...
View Article_why's (Poignant) Guide to Ruby in Clojure: Part 3
Parts 1 and 2 of this series can be found here and here.Okay, is it me, or is Chapter 5 absurdly long compared to the other chapters in this book!? Holy moley. I’m going to have to split this one up...
View Article_why's (Poignant) Guide to Ruby in Clojure: Part 4
Parts 1, 2 and 3 of this series can be found here, here and here.So here’s where _why starts getting into monkey-patching, which I would consider to be a key feature of Ruby… sure, it’s dangerous in...
View Article4Clojure Problem #178
On a whim today, I decided to take on 4Clojure Problem #178, which gives you as input a collection of 5 strings like "HA" (ace of hearts) or "D2" (2 of diamonds), representing a poker hand, and asks...
View Article4Clojure Problem #178 - Revised
I got some great feedback on my last post and decided to re-work my solution a bit. I think this turned out much nicer.The main things I improved:My first solution involved “predicates” (technically...
View ArticleA novel solution to FizzBuzz
I’ve always been mildly interested in the FizzBuzz problem, which is a fairly simple test of one’s programming ability in a given language; the task is to generate a list of the first 100 “fizz buzz”...
View ArticleSaint-Saëns' "The Swan" on Theremin
Theremin performance at Letters Bookshop from INDY Week on Vimeo.I figured I could use this blog to show off some music stuff that I’ve been doing, too. Why not, right? I’ve already got links to two...
View Article_why's (Poignant) Guide to Ruby in Clojure: Part 5
Parts 1 through 4 of this series can be found here, here, here and here.At long last, here is part 5 of my series translating the code examples from w(p)gtr into Clojure! I meant to post this like, 4...
View Article20 cool Clojure functions
One of my favorite things about Clojure is that there are just so many really neat, useful functions and macros built into the language, and I’m constantly learning about new ones that I didn’t know...
View Article_why's (Poignant) Guide to Ruby in Clojure: Part 6
Parts 1 through 5 of this series can be found here, here, here, here and here.OK, to be honest I almost forgot that I was doing this! We’re in the home stretch now. It’s a little hard to follow the...
View ArticleAntibubbles - Live @ the Layabout (8/5/11)
I was going through my computer and found this old Antibubbles live set – thought I’d share it. It’s from a fun house show we played at the Layabout in Durham on August 5, 2011.Antibubbles was a band...
View ArticleIntroducing Riffmuse
I’ve written a simple command line app in Clojure that will take a musical scale as a command line argument and algorithmically generate a short musical idea or “riff” using the notes in that scale. I...
View ArticleRIP, iPod Classic :(
I read some interesting news this week about the iPod Classic… if you haven’t heard, Apple has killed off the iPod Classic.For me, personally, this is devastating news. I’ve used a 160 GB iPod Classic...
View ArticleA character utility library for Clojure
(Note: some of the supplementary Unicode characters on this page may not display properly if you don’t have CJK fonts installed.)So, I’ve been kicking this idea around for a while, and I’ve finally...
View Article_why's (Poignant) Guide to Ruby in Clojure: Part 7
Parts 1 through 6 of this series can be found here, here, here, here, here and here.Alright, so I kind of just remembered that there was still one chapter left to go – so here it is! Until _why decides...
View ArticleAntibubbles - 'Cactus'
Here’s an unreleased Antibubbles song – it was part of a small batch of songs we were working on right before we broke up. This is a rehearsal recording from December 8, 2012, about a month before our...
View ArticleClojure character utilities, now available as a clojar!
A couple months ago I posted about a character utility library I whipped up for Clojure. It’s still a work-in-progress, but I think it’s in good enough shape for general use. I decided to make a clojar...
View ArticlePixel Rain
Here’s a little blast from the past – I just realized that I composed and programmed this “NES classical” piece for a composition class almost exactly 10 years ago. I had recently discovered MML, a...
View ArticleNo Love @ WKNC
A couple weeks ago, WKNC invited my band No Love to play a set in their studio. Much fun was had.In about a week (February 7) we’ll be playing at the Lincoln Theater as part of the Double Barrel...
View ArticleI put some S-expressions in your Ruby
I just rediscovered Rubeque, a set of short problems/koans to solve using Ruby, ranging in difficulty from “What does true equal?” to writing simple AIs and solving logic puzzles. The web UI provides...
View ArticleSusanne
It’s been a while since I’ve posted anything, so here’s another laptop recording from the vault. It’s a cover of one of the best Weezer B-sides, “Susanne.” I recorded it in my dorm room during my last...
View ArticleMaking MIDI Sound Awesome in Your JVM
You might be surprised to learn that your Java Virtual Machine is a capable musician. A MIDI soft synthesizer has actually been built into the JVM for years and years, and starting with Java 7, it’s...
View ArticleVignettes: Vim, Fish Shell, Amethyst
I’ve been exploring all sorts of awesome things lately. I feel compelled to share the magic™ of these things with you, but to be fair, there are already a ton of great blog posts and tutorials out...
View ArticleMaking MIDI Sound Awesome in a Clojure Program
I wrote a couple months ago about MIDI and the JVM. I explained that Gervill has been the JVM’s built-in soft synth since Java 7, and I mentioned that there are two ways that Gervill allows you to load...
View ArticleAlda: A Manifesto and Gentle Introduction
What is Alda?Alda’s ambition is to be a powerful and flexible music programming language that can be used to create music in a variety of genres by typing some code into a text editor and running a...
View ArticleSomething Cool That Happened Every Month of My Life: 2010
Quite often, I think about what I was doing exactly 5 or 10 years ago. I think about what bands I was playing in, where I was living, what my interests were then, how I felt, which people I spent the...
View ArticleGetting Your First Programming Job: Not as Hard as You Think
Today marks my one-year anniversary of working at Adzerk, which also means I have now been working professionally as a software developer for one year. I could not be happier to be programming for a...
View ArticleAlda Has a Bunch of New Features
Three months ago, I wrote a blog post introducing the music programming language Alda and walking through the basics of using it to write a musical score.To my amazement and delight, my blog post went...
View Articlemoar no love videos!!!
I haven’t been diligent about posting stuff about No Love, the band I play drums in. So here’s a handful of videos I found on YouTube – enjoy!6/20/15: Rock 'n Roll Party Fest I9/2015: Hopscotch...
View ArticleVignettes: Vimwiki, HTTPie, jq
I tried this once before and it was pretty fun. I continue to find and use awesome things (the internet has many of them), so here are a few more things I’ve been enjoying lately.VimwikiI think keeping...
View ArticleAlda: A Music Programming Language Built With Clojure
I gave this talk about Alda a few months ago as part of Clojure Remote, the world’s first remote-only Clojure conference.This talk serves as a quick introduction to music programming languages and the...
View ArticleAlda for Clojurists
A more FP-friendly AldaJust recently, I rewrote a big chunk of the Alda codebase; the result is something I’m a lot happier with, as a Clojure programmer. Clojure is a language that encourages...
View Article