Stanislau Venikman Niadbailau blog

Long Term Support

· Stanislau

My work§

When we trying to hire people while we trying to sell idea that work with us is really great, one of our selling point is that we have ofter opportunity to start new projects. (we assume) That people don't like to join projects that already going and fix bugs that have been introduced by other people(we like to call legacy projects). That very often (about every 3-6 months), you can reset whatever you tried to build. We all have been talking that you can try some new technology, because there is no legacy part that new tech won't be able to support. And we all proud of it. Until today I had same view that was very strong. Today I have heard other opinion, person was talking about his passion to join ongoing projects that already has bugs and you already have problems that you have to solve. He was saying that there is nothing exited about start with blank page... Then I start to play with this idea. And I started to look for what is really interesting in starting with new projects. When you have to start new project (I think we should say code base, because project already going and when there is solution that was identified thought some research you just have to translate human explanation of solution into code). With this point of view there is not much to create, coders looking for an excitement while they are coding. I think that's why we want it to be an 'art' (this is what some coders say about coding, I agree with it too). But there there is less creativity in it. Then some people want to create and they want to create something. Like tooling, some unnecessary interfaces in the code (more layers, that more scientific, but less readable and understandable for other teammates ). May be people like to start new projects more ofter because there are less responsibility? What interesting in joining ongoing project (legacy project)? You have to fix bugs, architecture decisions, you will have to underhand how previous maintainers been thinking. What they have been trying to archive (may be just make it work somehow, or try to new code pattern that they just learn recently) how previous maintainers been thinking. What they have been trying to archive (may be just make it work somehow, or try to new code pattern that they just learn recently). But you, actually, have same freedom then they in the beginning. You can fix bugs, make it more understandable and stable for LTS. Nobody telling you how to do it. You have a PROBLEM not a task. Problem can be solved and I think this is where coding can be an art. However here is what I have found during wring it. There are 3 phases: MVP -> Translation MVP into maintain mode -> and maintain mode. And second phase is where you will most of opportunity for an art.

Learn to code.§

Let's talk about new coders that learning to code. How they usually study? They get some theory and then they practice how to create new projects from zero. I have never seen that on bootcamp to student been given ongoing repo (project), which they have to contribute or fix some issues. But this is how their first job will look like in 97%. And when they join their first new team it takes them some time to adapt. Maybe we can add something to the way we grow new developers?