Know your tools well!
View this email in your browser

Better Git configuration »

Last spring I got deep into ESLint, and this spring I've done the same with Git. My global Git configuration is now finely tuned for my use cases, and you might just find some of my settings useful for you too! This one got some good attention, so be sure to take a look at the Hacker News and Lobsters conversations, where folks shared more tips. Read More »

Links of interest... - The intriguing true history behind array indices starting at 0 instead of 1. And a lament about how these important historical records of the software industry are usually behind paywalls: "$20 for a forty-year-old research paper" is functionally indistinguishable from "gone" - I had no idea that ransomware started so early! I guess the corollary of clicking on a questionable attachment was popping a floppy in and starting up... - I feel like I've seen this before, but it felt very new and very appropriate watching it recently. Fundamentally it's about this progression, and the things we can do to avoid it, to avoid 'complecting' our software:
  1. We can only keep so many things in our head at once
  2. If something is intertwined with another thing, we have to consider them together
  3. Complexity makes reasoning about a given piece of code far more difficult


It was nice to hit the sweet spot of Hacker News. Just about all of the comments were "good tips, here are some of mine" as opposed to "no, that's wrong." I definitely learned some things from the folks who weighed in, and it feels like it was a very rare truly positive internet interaction.

If anything, the primary debate was around merge commits. Are they really so bad? What do I have against them? Well, I have had changes erased when others poorly handled a merge of master into their feature branch. I really do believe that merges should happen only in the cloud (conflict-free), and all conflicts should be handled locally with rebase.

I've got a request for you! Let me know what you'd like to see next on my blog:
  1. A discussion of my path through a Haskell tutorial, like my Getting started with Elixir post
  2. A rant about how a whole lot of software is broken, with a lot of specific stories
  3. A list of tooling (and a starter repo) I would recommend for a new Javascript project
Replying to this email would probably be easiest. Thanks!

Until next time!

Scott Nonnenberg
Unsubscribe or update your preferences.

Copyright © 2017 Gamma Corvi, Inc., All rights reserved.

Email Marketing Powered by Mailchimp