4 ms·
Almost all of the processes around creating code in a team environment are almost as important as the actual code, assuming they are competent at coding. Teachi
by kls 14y ago
Almost all of the processes around creating code in a team environment are almost as important as the actual code, assuming they are competent at coding. Teaching them the value of well organized source control and good commit notes goes a long way. Having them understand the importance of documentation is also a good value to instill and finally the importance of keeping a ticket system up to date. These are the things that become more important in a business environment that are usually glossed over in an education environment. The process of creating software is almost as important as the actual creation of the software. Developing these skills early will stem a lot of bad habit from developing.
- caw 14y agoI agree. Version control (let alone DVCS), bug trackers, and other sort of organizational skills aren't taught at school. You might know if them if you did something in your personal time, or you had some friends that introduced it to you during a project. However, that's more of the exception than the rule.
- iends 14y agoIf you've not stumbled on version control by the time you graduate college, you're probably not the type of person (self motivated, interested in becoming a better developer, etc.) that I want to hire. (Also, at my average state school, version control was taught.)
- jakubholynet 14y agoI agree there is much more stuff than writing code. > Teaching them the value of well organized source control and good commit notes goes a long way. This is way too low level compared to what we are looking for. We want to find out how to help people learn quickly the basic values and principles that will enable then to proceed on the path towards learning how to build the right thing and how to build it right. The question is not so much what to teach (there are great resources on that - Clean Code, Pragmatic Programmer, Effective Java, XP explained, ...) but how. And by how I mean little more concrete than "give them a mentor to help them" (we have tried that - but neither the mentor nor the mentee really know what to do).