|
|
|
Ask HN: how to overcome paralysis by analysis when coding?
|
|
1 points
by LuxuryMode
5471 days ago
|
|
When I start a new project, I often times immediately start thinking about the details of implementation. "Where am I gonna put the DataBaseHandler? How should I use it? Should classes that want to use it extend from some Abstract superclass..? What level of abstraction am I going to use in my class that contains methods for sending requests and parsing data?" I end up stalling for a long time because I want to code for extensibility and reusability. But I feel it almost impossible to get past thinking about how to implement perfectly. And then, if I try to just say "screw it, just get it done!", I hit a brick wall pretty quickly because my code isn't organized, I mixed levels of abstractions, etc. What are some techniques/methods you have for launching into a new project while also setting up a logical/modular structure that will scale well? |
|
After you have something that works, you will have a good feeling for what you should've written the first time.
Personally, I don't abstract until I need it. Writing code because you "probably will need it later" can cause unnecessary work and be a distraction.