Developers Avoid Engineering

Levi Notik
1 min readNov 21, 2019

Developers often pick tools and technologies based on laziness. For example, they will pick a dynamically typed language so they don’t have to think so exactly. They will pick databases with no schema so they don’t have to think about the form and relationship of the data. They will pick GraphQL so they don’t have to think about the contract or how people will use their API.

I’m not saying dynamically typed languages are always bad. I’m not saying schemaless databases are bad. I’m not saying GraphQL is always bad.

But there is a theme here. In each of these cases, the tech on the other side of the spectrum requires more upfront work but pays huge dividends later.

Statically typed languages have a lot of formalism and, sometimes, boilerplate. The payoff is that types serve as documentation, you catch a large class of errors earlier in development, etc.

Relational databases take longer to get up and running. The payoff is data integrity, more granular business intelligence, etc.

--

--

Levi Notik
0 Followers

I’m a software engineer. I live in NY. I write about programming and ops.