Chasing Programming Languages || Extruding Circos

Processing, MySQL

 

Concept:

Computer science is a very dynamic field; it has been rapidly changing since its conception and shall continue

 to do so. Majority of the computer code is written in so-called ‘programming languages’. It is essentially a way

of instructing the computer to perform a set of instructions. Over the years these so called programming

languages have evolved, some caught on, some did not. Seattle with heavy weight companies like Microsoft

an amazon, can possibly a good measure of it. I queried for the most popular languages: Java, C/ C++,

Objective C, PHP, Python, Ruby, JavaScript, SQL, Perl , Lisp.

Design:

The design has been inspired by Circos (circos.ca) a data visualization tool used to visualize relationships.

I intend to extrude the circle into a spiral thereby utilizing the third dimension to represent time. I have

chosen bright blue for the spiral staircase with fine lines to demarcate the days. Each step represents a month.

The background is black. I have color coded each language, and each book ( cin & cout ) is represented by

an arc of that color. Obviously the checkout is lower in position than the check-in. The height of the arc is

governed by how long the book has been checked out for.

I have used ControlP5 for adding a graphical user interface for interaction and used peasycam for exploration

in 3D space.

This visualization allows individuals who are not familiar with SPL to interact with the data and explore the

trends in programming languages and draw there own conclusions. The aim is not to visualize anomalous

data, instead to educate people on current trends and possible predictions.

doodle

doodle

doodle 2

doodle 2

SQL query:

For each language:

select cin,cout,title,deweyClass from inraw where deweyClass > 0 && deweyClass < 7 and year(cout)>=2005 and year(cout) <= 2013 and title like "%< insert programming language here>%" 

select cin,cout,title,deweyClass from inraw where deweyClass > 0 && deweyClass < 7 and year(cout)>=2005 and year(cout) <= 2013 and title like "%python%"

Doodle:

I did not spend a lot of time doodling. Instead I quickly switched to code and spent more time on creating the right visual effects.

Screen Shot 2014-03-18 at 10.50.25 AM.png
Screen Shot 2014-03-18 at 10.50.42 AM.png
Screen Shot 2014-03-18 at 10.50.57 AM.png
Screen Shot 2014-03-18 at 10.52.02 AM.png
Screen Shot 2014-03-18 at 10.51.20 AM.png

Results:

So far the results on the queries have resulted in very interesting patterns and problems. Certain languages

like LISP & PERL have been waning and programmers have lost interest. On the other hand Objective C ,

Python & Ruby have been in strong demand and readers interest has resulted in number of checkouts

increase as time goes.

SQL, PHP, JavaScript has witnessed the most number of checkouts and have remained extremely popular

over the years. The demand for C & Java has also been strong over the years and has witnessed marginal

increase. Such models can easily be extended to visualize future predictions based on current numbers.