Photo for 2015-02-25

arkitektonas: Amphitheater of Parque Villa Lobos, Sao Paulo, Brazil

Feb 25, 2015 · Christopher Boette

Photo for 2015-02-24

huzn: 大友 克洋

Feb 24, 2015 · Christopher Boette

Photo for 2015-02-23

todayinhiphophistory: Today in Hip Hop History: Prince Paul released his second studio album A Prince Among Thieves February 23, 1999

Feb 23, 2015 · Christopher Boette

Video for 2015-02-22

briannavictoriaaa: Holy shit. How is this venue not jam-packed? That was amazing.

Feb 22, 2015 · Christopher Boette

Photo for 2015-02-22

brucesterling: *When they say “elegant,” they don’t mean aesthetically attractive, because they’re engineers Where does “easy to read” fit? Because that’s my favorite.

Feb 22, 2015 · Christopher Boette

Getting Going with React

Part I: Before I Typed a Single Curly Brace or Semicolon When I first saw some JSX code in a tutorial on React, I immediately poo-pooed the whole library: “What is that, HTML in JavaScript? Facebook, grrr! I’m no wizard, but that’s a terrible combination of concerns! Also, it’s ugly and please give me back my Jade, immediately.” But, as time went on and as one of my co-workers continued his incessant gushing about React, I finally broke down and gave it a spin. And I really, really liked it. ...

Feb 21, 2015 · Christopher Boette

bash command magic

Since I can’t upvote the question or answer, I thought I’d just give a shout-out to this question on unix.stackexchange.com. To delete duplicate rows from a CSV file using the command line: awk -F, '!seen[$0]++' inputfile.csv > outputfile.csv Fantastic.

Feb 18, 2015 · Christopher Boette

assert_equal in MiniTest

https://gist.github.com/chrisbodhi/b7b10f5e428088fa38da @chrisbodhi I also find it difficult to understand how the test cases are passed. I’ve checked them and they do, but in my opinion test_name_sticks should fail as every call to name will append a new random name to the previous one instead of returning the same string. For example, if we run a simple test: robot = Robot.new 2.times{puts robot.name} we get: QF658 QF658YV199 making it clear that the test should fail. —franrodalg ...

Feb 15, 2015 · Christopher Boette

XML Shenanigans

For the last couple of weeks, I’ve been working on a project at work that has involved, among other things, parsing XML and updating existing XML files. Just like every other time I have to deal with XML, I do two things: Throw up a little bit. gem install nokogiri I found lots of code samples, including in the Nokogiri tutorials, that discussed how to create a new node and then insert a string as the node contents. This would have been ok if my node contents didn’t contain more nodes. Nokogiri tried to be helpful and escaped the node contents. So, not very many < and >, but lots of &gt; and &lt;. ...

Feb 9, 2015 · Christopher Boette

Video for 2015-02-01

I just started playing around with Beats, a command-line drum machine installed as a Ruby gem. It accepts YAML and outputs .wav files like it’s 1998. As I started noodling around with the tutorial, I noticed that the feedback loop could be tighter. I’m used to working with tools like grunt watch at work, and wanted a smoother flow. Rather than getting grunt running, I searched for some command-line solutions. This is what I found. ...

Feb 1, 2015 · Christopher Boette