code, audio, and life by michael chadwick
    • Gem Warrior: Part 2 (of Some Indeterminate Number)

      Much progress has been made on Gem Warrior since last I posted, and I’ve learned a bunch about Ruby and how to properly structure a game. I’ve also come to a fairly good stopping point where people can start to actually beta test the game and I can get much needed feedback outside of the echo chamber of my own head.

      ^^^ Full entry ^^^
    • Gem Warrior: Part 1 (of Who Knows)

      A game where you’re typing words on a command line is not exactly “modern gaming”, but it has a certain charm that tugs at a (hopefully) shared computing nostalgia. Also, it’s a lot easier to program something where the output is text, rather than graphics.

      Thus, I’ve embarked on a game development project called Gem Warrior, a roguelite text adventure, (eventually) replete with a juicy command list, glorious monsters, and a hyperkeen randomized world that challenges you to discover its seemingly boundless majesties, and defeat an Evil Guy to Win the Day!

      ^^^ Full entry ^^^
    • Don't Beep When You Can Feep

      I’ve been interested in sound and audio for a long time now. Probably from the time I heard my first beep or click from a child’s toy (can’t be sure), my mind got hooked on these air fluctuations and how to make more of them. Once I got into playing guitar and messing around on computers and patterned air movements (i.e. music), this became a fully-realized obsession. Even with all of the complexity inherent in my musical endeavors, the simple things still feel good, and if I can make a simple Ruby gem that can beep at you, then by Thor’s hammer I will!


      ^^^ Full entry ^^^
    • Audio Manipulation with NAudio on Windows

      After much frustration with some low-level audio manipulation in Javascript, I decided to change gears and make my first Windows Form application using Visual Studio 2010 and a great 3rd-party audio library. Yes, it’s really 2015; I’m just behind. In this, I have gotten further in my goal of gluing disparate audio files into a single one. Which is pretty great.

      ^^^ Full entry ^^^
    • Playing with Javascript and the Web Audio API

      While working on a tool in Ruby to make sampler tracks out of several album components, I realized I did not yet know enough about how to manipulate audio to do what I wanted. I needed to approach it from a different vantage point, and a different language altogether. So, I decided to see what the state of audio on the web was, having not done much beyond hosting and downloading MP3s years ago.

      Spoiler: it’s pretty frickin’ cool now, guys.

      ^^^ Full entry ^^^
    • Some Fun New Web Projects to Kick Off 2015

      2015 is apparently the year that I get inspired to work on web projects again, and rediscover the joys of the change-refresh cycle, JavaScript/jQuery, and HTML5. I just finished (is that really possible, though?) a couple new web apps and I’d like to drop some knowledge about them.

      ^^^ Full entry ^^^
    • New Album: Lullabies
      New Album: Lullabies

      Lullabies, by Michael Chadwick

      Sometimes, you just need some relaxing solo classical guitar to lull a young person into a state of unconsciousness. In order to facilitate this, or maybe just to offer up a collection of pleasant music to play in the background for some other task, I made a Lullabies album. The whole shebang is pay-what-you-will, or you can just stream for free.

      ^^^ Full entry ^^^
    • Sending Gmail from OS X Yosemite Terminal

      I’ve messed around with my own personal file host system for years, so that I could share stuff with others over the Internet. Initially, it was just a lazy (FTP to host) + (email link to friend) system. However, the uber way to handle something like this is to write a slick terminal script one-liner. My OS of choice is OS X and I updated to Yosemite recently, so I decided to figure out how to do it and I’m thinking someone out there may find this information useful for any script that needs email capability.

      ^^^ Full entry ^^^
    • New Release: Dumeh
      New Release: Dumeh

      Well, I finally released “Dumeh“. To those whom I’ve spoken to about this piece over the last decade, it may be a bit surprising that I’ve finally finished, but I think it’s time. I’ve written a bit on this piece on the blog, but the story of how the idea behind Dumeh began goes way back.

      ^^^ Full entry ^^^
    • Commanding the Line

      $ echo 'Hello World!'

      Graphical User Interfaces (GUIs) are a great thing and they make computing a lot easier. I’ve been fiddling with audio programming a bit lately (mainly loading/modifying/saving WAV files), and while getting your hands dirty allows for more flexibility and automation, I still love Audacity and Logic for their accessibility. That being said, the command line is still often more powerful, but it comes with a higher learning curve.

      That, and it still feels like magic most days.

      ^^^ Full entry ^^^