|
|
|
|
|
by binwiederhier
1016 days ago
|
|
Clever is bad, boring is good. As a senior engineer, you see things like this all the time from more junior engineers: way too generic code, done in an overly clever way, incompressible to most. I've spent countless hours telling junior engineers to "dumb it down" and "make it less generic". Not all features that exist must be used. And no, you don't have to combine them all either. That's why I dislike Scala, and like Go. Go has like 3 features, and Scala has 100. It's very hard to make something overly complicated with 3 features (this is hyperbole obviously;I like Scala as a language, but not how many humans use it). Code is written once, and read 100x, so it must be easy to parse by humans, and easy to understand in a split second. Junior engineers will have to understand it. New team members will have to understand it. If you have the occasional function like this, that's fine. If your entire code looks like this, or you are proud to have written a "clever function", that's not so good. I try to write dumb code wherever possible. Do the expected, do the boring. |
|
- normalize network responses, so you can get the post directly by id. But this is notoriously painful to do well
- or the code that handles this name change needs to know every request that references the post with that id, and update those titles manually