Our First Post
Lost Art of code reading
As programmers, we spend a lot of time writing code, testing it, and debugging it. But what about reading code? Code reading is an often overlooked skill that is essential for any programmer who wants to improve their coding abilities. In this blog post, we‘ll take a look at the lost art of code reading and why it‘s an important skill for any programmer to have.
The Origins of Code Reading
Code reading is as old as code itself. We‘ve mostly focused on the creation and editing aspect on it. At first, being able to interpret binary programs required quite some work. So when the jump happened to low level programming with assembly and the coming languages of course reading code got the secondary role. Now it wasn‘t a lengthy part of the process, it was just reading. A lot easier. Then abstractions paved the way onto high level languages to produce information-packed scripts in more succinct and expressive languages.
The Decline of Code Reading
Over the years, code reading has fallen out of favor. As programming languages and tools have become more advanced, emphasis has been placed on writing code and not on reading it. Tools for editing, debugging, and testing are all over the place. These tools are essential to write new code and modify existing code; but what about investigations? what about new codebases you have to understand? What about the twitter staff left with thousands of lines nobody could explain?
The Importance of Code Reading
Reading code is an essential part of what modern developers do. We are constantly introduced to new codebases with years of development on them. We have to investigate source code from our packages and third-parties. Open source has efficiently and seamlessly distributed code all over the world, but when you get to the point you need to understand it from the inside-out you are left all on your own. Open source devs put their best efforts on docs but nothing beats reading the actual source. So why do I have to do it on my editor?
Where We Read Code Now
Code Editors are where we spent most of our days now. Web VCS like Github, Gitlab and Bitbucket also make a great part of our lives. When creating and collaborating those tools are great. They just hit the usecase completely. Remember when you where looking for that bug across 5 different repos though? Where you had leads of many places that could be important but nothing concrete to fix? You had to add comments with possible places the bug could be hiding. Same thing happens with security vulnerabilities and optimizing code for performance.
The Future of Code Reading
Now imagine tools actually made for reading, exploration, investigations. As code becomes more complex, there is a growing need for a tool to tackle this. We need a place to write notes right on our code, get the same intellisense our editor has and has the whole investigation experience figured out.
Right now we have only launched our mobile code reading experience, designed to be able to finally use your mobile phone for casual reading and note taking. In the near future we‘ll be launching a desktop app to start building the platform we envision. Collaboration, sync, sharing knowledge and Language server support for a full blown experience.