Category: Uncategorized

  • Why we unit test.

    Programmers write bugs (you didn’t think bugs wrote themselves right?). To deal with these logic regressions we write tests to keep ourselves honest. Test are both a way to ensure that the program really does what intended, and to communicate the programmers intent to the next person who looks at the code. But some of…

  • Better, faster code with test driven development.

    People have pretty strong opinions on TDD (Test Driven Development). Some think that it is a pretty big waste of time while others think it is the only way to go. Off the bat, I will state that I lean more towards the latter camp, that TDD is a great tool for both writing code…

  • The Safety Margin in Software Development Estimates

    Accurately estimating the time required to complete tasks or “tickets” is a complex endeavor. Every time you break down and plot out how you are going to add a new feature to existing software what you are really doing is…. making a wild-ass guess! Yes, I could say that adding a new rails controller is…

  • The Power of Play for better Team Meetings

    Sometimes stand ups are soooo boring. The stand up. That once a day meeting where you: say what you did yesterday, say what you are doing today, say what is blocking you, and then tune out. It makes sense, we operate in a a world filled with deadlines, deliverables, data and procedures to make things…

  • What to Do When You’re Laid Off

    A guide for software engineers. Alright, you’ve been laid off. Shit happens! But guess what? It’s not the end. Everybody gets randomly punched in the face sometimes. This is just another challenge to overcome on the way to the next amazing job. 1. Feel All the Feels, Then Move On Mad? Sad? Feeling like crap?…

  • Why do we Bundle exec (re-examined)

    Why do we prepend so many commands with `bundle exec`? For example: Prerequisite knowledge What is Bundler Bundler is a dependency manager tailored for Ruby projects. Its primary role is to ensure the accuracy of gem versions within a given project. Bundler does this by creating a separate environment for each Ruby project on your…

  • JSON Web Token basics

    A JSON Web Token (JWT) is an internet standard for representing claims securely between two parties. JWTs contain three parts: the *header*, the *payload*, and the *signature*. They are joined together by `.` to create a JWT like: `aaaaaa.bbbbb.ccccc`. Example JWT Decoded Header Payload Signature Encoded When to use a JWT? – Authorization – After…

  • Using Spaced Repetition to Learn Programming

    Do you ever wish that you could memorize an entire programming language and all of the libraries and APIs that you use constantly? Want to become as fluent in the technical concepts and jargon as you are in your native language? Well, that is what spaced repetition is for. Spaced repetition will help you efficiently…

  • What is a good first programming language?

    There are loads of ways to get into programming and I think I have tried all of them. The first language I tried was Visual Basic because my father had an instructional book laying around and I was bored. Later I taught myself HTML and then JavaScript because I wanted to make websites on Geocities.…

  • Tips to be a productive developer.

    1. Eat your frogs. “Eat a live frog every morning, and nothing worse will happen to you the rest of the day.” -Mark Twain Seriously. The first step is that you already know what you have to do. Just do the thing you are dreading. Defeat Bowser and then go back and smash those Koopa…