Learn by Linting: Using Linters to Help Learn Programming Languages

I recently started using Exercism to enhance my proficiency with Ruby. It’s an excellent tool for learning a new language or refining your knowledge in a language you already know. The best part about it is that you can submit your solutions for a mentor to review and provide feedback. Read more on Learn by Linting: Using Linters to Help Learn Programming Languages…

Surviving an Infrastructure Upgrade

In any moderately complex application, there comes a time for major upgrades. These upgrades are often deprioritized until some business case knocks on your door to make the update more urgent, which can raise insanity levels and make jumping this hurdle seem insurmountable. After having gone through this process several times on various projects, I wanted to share some of my strategies to deal with such a potentially vicious beast. Read more on Surviving an Infrastructure Upgrade…

Want to Write Clearer Code? Follow the Cooperative Principle

Lately, I’ve noticed a transition in my craft as a software developer. While I once devoted almost all of my mental energy to getting code to run properly, I’m now putting more thought into writing clear and maintainable code. I’ve started to understand that programming languages are not only a way for me to “talk to” computers, but also a way to communicate with others about how a system is meant to work. Read more on Want to Write Clearer Code? Follow the Cooperative Principle…

Seven Practices for Growing Your Code Review Skills

Code reviews are becoming more and more essential to the software development process. The days of cowboy coders building software alone in private offices with no collaboration or oversight are mostly gone. Instead, we’ve realized the value of building things with others who can point out hazards in our blind spots and spur us to think about and justify our decisions. No matter how much experience you may have, there are a few things you can do to develop this valuable skill. Read more on Seven Practices for Growing Your Code Review Skills…

Simulate Network Outages in Your App with Little Snitch

Modern development tools are super-convenient. XCode’s more recent builds let you debug an iOS app over WiFi, so you don’t have to succumb to the indignity of plugging in a Lightning cable (so 2017). React Native’s tooling goes a step farther, giving you the ability to run the native part of the app on a mobile device and execute the JavaScript side part of the app in a web browser on your development machine (where the JS inspection tools are more convenient). Networked debugging is amazing.

But sometimes, you need to test your app’s response to network outages. Read more on Simulate Network Outages in Your App with Little Snitch…