Programming

Abstractions and Vacations

Abstraction can be hard to define, but I believe it is a very important skill for developers to hone. I wrote an article detailing my experience with abstraction on the Zaengle blog and here are a few of the high points:

Abstraction is a kind of organization accomplished by delegating responsibilities and information so that each segment isn’t overwhelmed or doing more than its fair share.
Another benefit of abstraction is the freedom it gives to change the internals of a section of code without the fear of breaking larger application logic. If feature A is given input and returns specific output, does it really matter what happens while the logic is inside feature A? That gives me the freedom to design and adjust over time.
Abstraction is a dangerous tool if wielded improperly. A bad abstraction can keep you hopping back and forth in a codebase, scratching your head saying, “Where does this thing happen?

Read the entire article on the Zaengle blog →

Jul 14

Handling Complex Data Flows

In this post, written for the Zaengle blog, I explore some strategies for navigating multi-step flows. Separating the data from the logic helps make the process more manageable.

"At its core, programming is nothing more than stacking little blocks of logic on each other, building up a structure comprised of detailed organization, intentional design, and functional beauty. Unless those goals are held front and center it is only a matter of time before the system devolves into a convoluted mess of overlapping, overstepping, messy code."

Read the entire article on the Zaengle blog →

Feb 12

The X-Factor: Or, How To Debug

Have you ever been around a person, or maybe you are that individual, who has the innate ability to figure out what’s wrong with _____? Merely glancing at the computer that is behaving strangely causes the problem to disappear, touching the printer results in printed pages, or opening the hood of the car stops the squealing?

It’s a strange phenomenon, but certain people possess the ability to diagnose a situation, survey the playing field, and effectively implement a solution. I’m sure you’ve seen it happen before.

Truth be told, I don’t believe these people have any special magic. It is far more likely they’ve spent time honing their ability to observe what’s going on, consider possible courses of action, and choose the one that has the best probability of fixing the problem.

This is called troubleshooting.

Read the entire article on the Zaengle blog →

Nov 1, 2019

How We Keep Code Clean at Zaengle

Check this out to see how the team at Zaengle keeps code clean:

Let's be honest, we all like systematic, uniform code. However, maintaining a respectable level of cleanliness across multiple developers' systems can be a challenge. Thankfully there are a few tools to help unify our editors so that our code styling gets along!

Read the entire article on the Zaengle blog →

Jun 21, 2019

Page 1 of 2 (15 total entries)