Exploring the Relationships Between Tech Skills (Visualization)
Nerval's Lobster writes: Simon Hughes, Dice's Chief Data Scientist, has put together an experimental visualization that explores how tech skills relate to one another. In the visualization, every circle or node represents a particular skill; colors designate communities that coalesce around skills. Try clicking "Java", for example, and notice how many other skills accompany it (a high-degree node, as graph theory would call it). As a popular skill, it appears to be present in many communities: Big Data, Oracle Database, System Administration, Automation/Testing, and (of course) Web and Software Development. You may or may not agree with some relationships, but keep in mind, it was all generated in an automatic way by computer code, untouched by a human. Building it started with Gephi, an open-source network analysis and visualization software package, by importing a pair-wise comma-separated list of skills and their similarity scores (as Simon describes in his article) and running a number of analyses: Force Atlas layout to draw a force-directed graph, Avg. Path Length to calculate the Betweenness Centrality that determines the size of a node, and finally Modularity to detect communities of skills (again, color-coded in the visualization). The graph was then exported as an XML graph file (GEXF) and converted to JSON format with two sets of elements: Nodes and Links. "We would love to hear your feedback and questions," Simon says.
This is a nice visualization. If I was young and aimless, I might see some value in learning new techs I don't actually need right now. Learning new techs could help you land jobs in today's age of clueless HR people judging you by your tech list vs your ability.
However, I'm getting older and I learn another tech only if I actually need to use it for something I'm working on. So I'll be happily deficient in lots of languages I don't need. I'm certain I could be at least of average skill after about two weeks of most languages as that is my past experience with new languages. But don't tell HR. Today's software engineering world is so averse to training people it rarely considers searching for a veteran software engineer and letting him come up to speed on random techs.
If I spent a couple weeks on every tech I hear about for the sake of toying with it, I'd never get anything done.
God spoke to me
It's not very reliable data.
They took the similarity vectors from the job postings, not from resumes, so rather than "what you're likely to know", they computed "what an employer is likely to want at the same time as wanting something else", and then declared that a similarity due to an already skewed cosine similarity metric. This happens because employers are more likely to copy other, similar job postings, or other job postings for companies in a similar business as them, or those of a company whose employees they wish to hire away.
They claimed that they tried using resumes, but that the resulting data was not as "clean"; uh... duh?
This visualization was not actually very useful, unless you are trying to design a resume to get yourself hired, regardless of your actual current capabilities.