Hacker News new | ask | show | jobs
by aries1980 1994 days ago
> There are many times that I need to rewrite my code because of non-adequate design.

Formal education won't give you the knowledge to get it right every single time. Your design will be always non-adequate because the circumstances always change.

The knowledge body of a CS and engineering can be obtained without enrolling these days. Engineering is about problem solving within the resource constrains and to a specification. Getting the specification right and fitting in the resource constrains are the biggest challenges that only experience will prepare for, because these are domain-specific.

CS and engineering studies can give you a toolkit to solve some problems and helps to give you to develop a "gut instinct" to pick a solution.