I have this thing for dumb Internet memes. Whatever beliefs you hold, from whichever lens you see the world, however you view a certain political leader, you might have found yourself asking…what does “covfefe” mean?
Silly memes aside, we often find ourselves digging into code asking “what does this mean”. When I started as a junior developer, for me that was every ten minutes. If not for my colleague Kang who sat right behind me, I don’t think I would have remained in my job for very long.
My initial tasks involved bug fixes and light refactoring work. A lot of what I was working on though was undecipherable. Luckily, my manager was a patient teacher. He said my challenges understanding old code mostly stemmed from previous developers not following his four levels of good programming practice:
- Clean — easily readable, uses standard variable names, etc.
- Comments — descriptions at particular sections of code
- Commits — markers of what changed in the code
- Documentation — the objective the code accomplishes
Each level provides a higher order of understanding of the code. Still, there was no shortage of “what is that” type of questions. And as my questions evolved into “how does it do this” and “why does it do this”, I would spend hours unwinding spaghetti code and cryptic logic.
That’s where sites and communities like Stack Overflow and Dev.to fills the gap, as a “fifth level” of understanding. Whereas the other four levels are foundational, Q&A functions as the in-the-moment contextual understanding of code. It’s like a virtual “Kang”, but scaled out exponentially without the inconvenience of physical proximity and annoying shoulder taps.
This is especially a challenge in large companies with developer teams dispersed globally. There are no physical or even virtual Kang’s you can rely on. Chat comes and goes, code commits are cryptic, docs & wikis get stale, and email is, well, email. Nothing brings it together, makes it easy to find, and allows colleagues to contribute. That is the reason there are tools starting to tackle this “fifth level”, using AI and community dynamics and deeper integration in order to make sense of the “covfefe” of code.
How do you search for answers to questions about internal code? What is your go to method for finding information inside your organization?
Do you actually write ‘clean code’?
No detergent required…
We help IT leaders in enterprises solve the cultural challenges involved in digital transformation and move towards a community based culture that delivers innovation and customer value faster. Learn more about our work here.