Those of us who’ve spent a while working from home can testify to needing a diverse bag of tricks to keep things interesting. Over the years I’ve used a few tools to coax my brain into the zone, among these the orphaned open source project Noisy. Beautiful and configurable pink, white, and even brown noise. However, Noisy is a bit basic. (It’s just noise!)
Recently I found Coffitivity. Coffitivity uses a different approach:
“Our team has delivered the vibe of a coffee shop right to your desktop, which means when your workspace just isn’t quite cutting it, we’ve got you covered.”
After a day on the Coffitivity sauce, I’m really liking it. It pipes in the delicately chatty and cup-clinky lull of a cafeteria. You’re instructed to turn your music up slightly louder than the Coffitivity track. Quiet sections of music I’m listening to are punctuated with the ambiguous babble of distant people chatting.
This is a familiar, comforting sound, but not one I’m accustomed to hearing while I work. It is making a positive impact on my work day; perhaps it will for you, too.
This slapdash Oreo Separator Machine project quickly captivated me with its hilarious presentation:
It reminded me of a number of software projects I’ve taken stewardship of over the years: projects that actually work and solve a real problem for their owners, but were perhaps created by someone uninitiated in the finer points of software creation.
I love pitching in on these sorts of codebases because you can often make dramatic improvements to the code’s performance and quality by making a few calculated modifications.
I’d like to expand on Brett’s post a bit with some more recent books that I’ve enjoyed. And another which is perhaps a few clicks off the maintained trail.
The Algorithm Design Manual (Steven Skiena)
I’ll kick this discussion off with the fact that I don’t have a Computer Science degree. There, I said it. No degree. Ask me and I’ll give you the info: There’s no Computer Science degree here. Anyway. As a pure practitioner, I love books that usher out-of-reach concepts into the realm of real-world applicability, and this one does exactly that. This book is one part catalog of algorithms, the other part a series of “war stories” — real problems the author has tackled during his career using variations of the algorithms presented.
The Little Schemer (Matthias Felleisen, Daniel P. Friedman)
This book taught me a conscious way to write recursive routines. Prior to reading, I’d hammer the keyboard with a gloved hand and hope for the best. The preface mentions that this book is itself derived from a course taught by the authors on Scheme programming — to non-technical public affairs students. Yes, so you might imagine that the presentation inside is not your typical c0d3rz manual. I’ve dispatched this book to a couple of my non-technical friends, and the consensus is that this book is a gem.
Hacker’s Delight (Henry S. Warren, Jr.)
Count 1-bits in a word. Reverse bits in a byte. Transpose a 32×32 bit matrix. This book is a catalog of interesting passages of low level bit-twiddling code. Thanks to modern day tools, I haven’t needed to reach for many of the tactics described in this book, but it is an enjoyable and mind-contorting swim through the ether of machine words and switch flippery. Looks like I need to pick up the recently released second edition.
Image via http://www.flickr.com/photos/library_of_congress/2162719777/sizes/z/in/photostream/