4 ms·
I try to design and name interfaces clearly and comment code for myself. If it's been a few weeks since I've looked at something it helps me snap back. Also, I
by tcbawo 8y ago
I try to design and name interfaces clearly and comment code for myself. If it's been a few weeks since I've looked at something it helps me snap back.
Also, I would never approach a codebase as if I will be working on it for 30 years. Job security comes from marketability, not obscurity.
- lovich 8y agoWas that true when these systems were first made? Many of them are decades old, and the culture of large institutions is usually resistant to change, and that comes from management on down. If the system didn't start with those values in mind, what would have prompted them to change?
- tcbawo 8y agoIt's not that I don't expect the codebase to age or design it with long-term thinking, I just don't expect to be working on it for that long. Someone will replace me, and I'd like to leave them with well-designed, readable code that they will be able to understand.
- lovich 8y agoI'm talking about that as well. The modern era of jumping ship every 2-3 years on average in software is not how its always been. Jobs used to be very long term
- tcbawo 8y agoIt's not always about jumping ship either. In many companies, you will move between areas/needs or get promoted to other work after a couple years. Also, companies will outsource maintenance to lower-cost teams. It seems there is better project lifecycle management, less waterfall development, and fewer cushy open-ended government contracts. But, you're right. The expectation that you'll be able to do the same thing indefinitely for you career is gone.