Who Needs A Computer Science Degree Anyway?

While they can’t necessarily replace a college degree, MOOCs are playing a key role in addressing the software development skills gap.

Two candidates apply for a software development position: One has a degree in computer science from a prestigious school. The other is self-taught with several years' experience under his belt.  Who one gets the job?
    
Of course, there's no definitive answer to this question, but it's one that CIO's are increasingly going to have to think about.

That's because more and more software developers – and very skilled and competent ones at that – are entering the job market without any degree-level training.

What's interesting is that many of the newer and in-demand languages like HTML5, JavaScript and Apple's Swift are particularly favored by self-learners, whereas programmers of more established languages like C# and Java tend to have more formal instruction.

That's according to the global Developer Economics: State of the Developer Nation survey of more than 13,000 developers carried out by VisionMobile, a London-based developer research company. It found that 46 percent of Swift developers had not studied computer science at a college, and 45 percent of HTML5/JavaScript developers also fell in to that category.  In fact 29 percent of HTML5/JavaScript developers have had no training in the scripting languages at all and are completely self-taught.

By contrast, around 73 percent of Java and C# devs have computer science degrees, and about 65 percent of C and C++ devs.

The survey found that Massively Open Online Courses (MOOCs) offered by the likes of Coursera, Udacity and Khan Academy are playing an important role in helping would-be developers develop skills in Swift and other languages such as Python and Ruby. Many MOOCs also offer courses in iOS and Android app development, Web development and data science.

What's notable about developers who have studied a language through a MOOC is that many of them already have bachelor's degrees of some sort or another, and many were already software developers.

"The typical Coursera learner taking a programming or other technology course has a bachelor’s degree, is currently employed, and is between 22 and 35 years of age," says Kevin Mills, a Coursera technology vertical manager.  "Among these learners, it is about an even split between those looking to begin a new career in programming versus those seeking to advance their existing programming skills."

That's echoed by Oliver Cameron, vice president of engineering and product at Udacity. He says the company sees a lot of programmers come to Udacity to learn new programming languages or gain new skills in languages they already work with.

"But we also see a lot of people in nontechnical fields like event management or art or music learning to code with Udacity and making the leap to a full-time technical job," he adds.

Alternatives abound
As an alternative to MOOCs, some would-be professional coders are also turning to intensive "coding boot camps" which often last just a week or two, focusing on specific coding skills.

The idea of employing a developer who is self-taught or who has attended a boot camp or online course may be alarming – after all, who would want to consult a physician who hadn't been through medical school?

Jan-Martin Lowendahl, an education analyst at Gartner, points out that computer science courses teach much more than specific language skills. "At university in a computer science course the emphasis is on learning skills like programming logic, not particular languages. You get much more depth on a computer science degree course."

The flip side of this is that there is great inertia when it come to the actual languages that are taught – many still teach FORTRAN, he adds.

There's an argument to be made, however, that teaching FORTRAN is a little like teaching Latin to language students: Studying it may not be useful in its own right, but it brings a deep and broad understanding of the discipline as a whole, and makes learning to code in other languages more efficient.

That may be true, but studying for a computer science degree is a luxury that many people can't afford – both financially, and in terms of time – particularly if they already have a bachelor's degree.

"Many people simply don't have the time to go to [college] to learn new skills, and there is a question mark over the value of a formal diploma in a fast-changing world," says Lowendahl. "At the same time, software development has always been a realm that is suited to self-teaching and learning by doing. People who are drawn to software development tend to be good self-learners."

Daun Davids is a good example of this type of software developer. She earned a bachelor's degree in computer science and worked as a software engineer for many years before taking time off to homeschool her children and finish her master's degree in Computational Science and Robotics. When this was finished, she decided that she was interested in resuming her programming career as an Android developer.

"I was trying to learn Android development on my own but most of the information I found was very basic or outdated. Then I saw that Coursera was starting a Mobile Cloud Computing with Android specialization so I signed up," she says.

The course took a year to complete and Davids says she then found work almost immediately as a freelance Android developer.

CIO: http://bit.ly/1TICGTK

« EU Protects Online Data Quite Differently From The US
Active Cyber Defense Task Force »

CyberSecurity Jobsite
Perimeter 81

Directory of Suppliers

ManageEngine

ManageEngine

As the IT management division of Zoho Corporation, ManageEngine prioritizes flexible solutions that work for all businesses, regardless of size or budget.

LockLizard

LockLizard

Locklizard provides PDF DRM software that protects PDF documents from unauthorized access and misuse. Share and sell documents securely - prevent document leakage, sharing and piracy.

ZenGRC

ZenGRC

ZenGRC - the first, easy-to-use, enterprise-grade information security solution for compliance and risk management - offers businesses efficient control tracking, testing, and enforcement.

Alvacomm

Alvacomm

Alvacomm offers holistic VIP cybersecurity services, providing comprehensive protection against cyber threats. Our solutions include risk assessment, threat detection, incident response.

Syxsense

Syxsense

Syxsense brings together endpoint management and security for greater efficiency and collaboration between IT management and security teams.

Masergy Communications

Masergy Communications

Masergy delivers hybrid networking, managed security and cloud communication solutions to enterprises around the globe.

Ipsidy

Ipsidy

Our identity platform enables mobile users to more easily authenticate their identity to a mobile phone or portable device of their choosing.

SecuGen

SecuGen

SecuGen is a leading provider of advanced, optical fingerprint recognition technology, products, tools and platforms for physical and information security.

Endian

Endian

Endian’s mission is to provide a secure platform that connects distributed people and things, simplifying the digitalization of businesses.

Corvid

Corvid

Corvid is an experienced team of cyber security experts who are passionate about delivering innovative, robust and extensive defence systems to help protect businesses against cyber threats.

Verodin

Verodin

Verodin is a business platform that provides organizations with the evidence needed to measure, manage and improve their cybersecurity effectiveness.

Mendoza Ventures

Mendoza Ventures

Mendoza Ventures is a venture capital fund focusing on pre-seed Artificial Intelligence (AI), Fintech, and Cybersecurity startups.

Cloudsine

Cloudsine

Cloudsine (formerly Banff Cyber Technologies) is a cloud technology company specializing in cloud adoption, security and innovation.

Global Cyber Security Capacity Centre (GCSCC) - Oxford University

Global Cyber Security Capacity Centre (GCSCC) - Oxford University

GCSCC's work is focused on developing a framework for understanding what works, what doesn’t work and why – across all areas of cybersecurity capacity.

TotalAV

TotalAV

TotalAV Antivirus is a free-to-use app packed with all the essential features to find and remove malware, keeping you safe.

iSPIRAL IT Solutions

iSPIRAL IT Solutions

iSPIRAL is a leading regulatory technology software provider delivering state-of-art AML, KYC, Risk and Compliance solutions.

CySecK

CySecK

CySecK is a Centre of Excellence in Cybersecurity formed in 2017 by the Government of Karnataka, as part of the Technology Innovation Strategy.

Kirk ISS

Kirk ISS

Kirk ISS are the leading provider of IT services in the Cayman Islands. We offer best-in class hardware, software, communications and cloud computing, all backed by professional services support.

CryptoDATA

CryptoDATA

CryptoDATA develops products and services based on Blockchain technology, that ensure user security and data encryption, applicable in various fields.

NPCERT

NPCERT

NPCERT is a team of Information Security experts formed to address the urgent need for the protection of national information and growing cybersecurity threat in Nepal.

INTfinity Consulting

INTfinity Consulting

The INTfinity team brings together decades of professional experience in cybersecurity. We're here to apply that same experience and proficiency in defending your networks.