Yesterday was another busy day! I worked more on the gif converter. In the morning I worked on generalizing the workers, so instead of having a downloader.go, chopper.go, and stitcher.go, I have one worker file that does different things based on the command that gets passed to it. I also swapped out the hard-coded values from yesterday with a config file, using gcfg. I had a good discussion the other day with Matthew Parker about The Twelve-Factor App. As long as I make an interface that satisfies returning a configuration structure, I should be able to swap in environment variable loading. This article from EngineYard was an interesting counterpoint to using environment variables as configuration.
A few of us at HackerSchool organized a meetup at 2PM to discuss dotfiles and configuration tips. We all took turns using the projector to promote our own configuration setups. I was personally blown away at persistent vim undo — it’s one of those things I didn’t even think about, but have spent so much time working around. I otherwise learned that most people have cooler setups than I do. A few of us agreed to meet up in the future to work on dotfile GitHub repos.
I also checked out doy’s Termcast clients, which were amazing. I’ve made a note to look into this harder after I clear the gif converter off my plate. I also read through Wally’s great new post on using NATS, a messaging system he started describing to me on the subway to Apache Spark the night before.
At one point we were discussing bash shortcuts, when Alex Alekseyev posed the following challenge: after running ‘mkdir -p ~/rouge_drones/rouge_drone_alpha’, come up with a command to remove the typo’ed directories and replace them with the corrected form. I spent an embarrassing amount of time trying to work on the minimal representation, especially after he told me his was down to 23 characters. I encourage you to try it out! The end of this post has my answer, let me know if you get a shorter one.
Thursday is presentation night, and there were so many awesome talks. Elm was presented, a new game someone is working on, a practical application of Apache Spark, doy’s Termcast project, Wally’s aggregator program, and more! Today I plan on working more on the Go website, and potentially working on the challenge for job preparation friday.
rm -r !$:h;!!:gs/ug/gu