Code Visualizer

Code Visualizer

Project: Code Visualizer

What I learned: Programming Structure and Coding Tools

Duration: 2 months

Age: 21


During my work at TMEIC I was challenged by large size of coding scripts. The learning curve was very steep due to their own proprietary coding language, as well as the complexity of the systems ( Typically over 50,000 lines of code ). Therefore in an attempt to better grasp the inner workings of the system I built a code visualizer for their custom coding language. My first attempt was a network graph,

Although the network graph was very artistically inspired it failed to communicate how the system operated due to the complexity. I then created a custom GUI interface that shows the code as well as the “inputs” and “outputs” . This created an intuitive understanding of how the code flowed throughout the system so I called the GUI- “Code Flow”.  Although this GUI was great for understanding the code, It did not provide a method to formally document the code for clients. Therefore I revisited the more graphic approach. I  attempted to make a flow diagram of the system.

This was promising, but too cluttered to view the entire system in one diagram. Therefore I split the diagram according to sub-processes and created a flow diagram for each one. This was visual pleasing, easy to understand, and able to be formally documented for clients.

Some of the technical aspects of this project included:

  • search recursion  (for parsing 50k lines)
  • Complex Python Object relationships
  • Dot frame work ( flow diagram )
  • Visnet framework in R ( for Network Graph )
  • Tkinter library ( for GUI interface ).

Future Improvements:

  • Better parsing of scripts to understand datatypes
  • SQL implementation ( alot of the system is written in SQL scripts which is not currently displayed)

Leave a Reply

Your email address will not be published. Required fields are marked *