Uploaded by Captain Dave

Wk 8 - Discovery Project, final

advertisement
1
Programming Languages: Best First Language for a Software Developer
David Thompson
Computer Science Degree Program, Central Methodist University
CS130: Introduction to Computer Science
Professor Jimerson
December 15, 2022
2
Programming Languages: Best First Language for a Software Developer
Which language should an aspiring software developer learn first? There are over 50
programming languages widely used today including languages such as COBOL and FORTRAN
that were created over 60 years ago. In comparison, newly created languages present fewer job
openings but these opportunities could increase over time if the language becomes popular.
Some languages present much higher starting salaries than other languages, which is a primary
focus of this paper. Not all languages are easily learned; although there are more similarities
than differences between languages, some languages are inherently much more difficult to
learn to the extent that they should be excluded from consideration as a first language. This
paper demonstrates that Python, Ruby, JavaScript, and Go are languages that embody all of
these characteristics; they are in demand, they offer acceptable starting salaries, and they are
easily learned as a programmer’s first language. Let us now take a look at the programs which
were eliminated due to their degree of learning difficulty.
C++ and Haskell both got a two thumbs down rating on learning effort by Suzdalnitski,
who went as far as stating that “ . . . (to learn Haskell) one has to be well-versed in category
theory first” (Suzdalnitski, 2020). Java got one thumb down (Suzdalnitski, 2020), and
Veeraraghavan rated both Java and C# as intermediate languages. Kotlin was rated as an
intermediate to advanced language to learn, and Scala was designated as complex
(Veeraraghavan, 2022). Now let us consider languages that are easy to learn.
Python is regarded as one of the easiest languages to learn, with clean, easily learned
syntax (Brookshear & Brylow, 2020). Suzdalnitski gave it one thumb up and suggested that it
can be picked up by beginners in a couple of weeks (Suzdalnitski, 2020). Python was rated as a
3
beginner level language by Veeraraghavan and was the top pick by ISHIR (ISHIR, 2022). Ruby is
known for being relatively simple to learn (Veeraraghavan, 2022) and JavaScript got one thumb
up by Suzdalnitski, who stated that “it is one of the easiest to learn.” JavaScript was rated as a
beginner to intermediate language by Veeraraghavan, and Go got one thumb up by Suzdalnitski
who feels “it could be learned in a month.” Swift was rated as beginner to intermediate by
Veeraraghavan, and Suzdalnitski gave it one thumb up, stating that it could be learned in a
month with previous experience. Veeraraghavan says that both C++ and PHP are beginner to
intermediate languages.
Based on the compilation of these surveys, we conclude that Python, Ruby, JavaScript,
and Go are all relatively easy to learn. In addition to being easy to learn, a new software
developer will also want a language that is in high demand in order to increase the odds of
finding gainful employment.
Python was written late 1980s, and it is one of the top-ten most-used languages
(Brookshear & Brylow, 2020). Suzdalnitski says “Python is one of the most popular (languages)
in the world” (Suzdalnitski, 2020). ISHIR states that it is “One of the most in demand languages”
(ISHIR, 2022). Ruby “is broadly used” and “JavaScript is the most popular (language) in the
world” (Veeraraghavan, 2022). Go is one of the fastest-growing languages (Veeraraghavan,
2022). There are over 3 billion devices running apps that were built with Java, it is in the
backend of countless websites including Google, Amazon, Twitter, and YouTube, and
Veeraraghavan says it is in high demand. Verraraghavan also feels that Swift is gaining in
popularity, but is still a young language, and mentions that PHP was used to build more than
80% of the websites on the Internet, however its use is declining. “C# is used by roughly one-
4
third of all software developers and is particularly relevant for Microsoft developers”
(Veeraraghavan, 2022). Looking at this data we see that our top four picks in languages that are
easily learned are also languages that are in high demand – Python, Ruby, JavaScript, and Go –
so let us take a look at the compensation a programmer can expect as they begin a career in
software development.
Table 1
Language
Scala
Rust
Perl
R
C
C++
Kotlin
Java
SQL
Clojure
Python
Swift
Ruby
Go
PHP
JavaScript
Haskell
MATLAB
HTML
TypeScript
Glassdoor
$ 118,480
$ 104,193
$ 104,448
$
93,977
$
93,719
$
93,719
$
92,860
$
92,072
$
91,222
$
85,838
$
83,640
$
88,826
$
85,831
$
89,203
$
89,546
$
84,013
$
80,075
$
83,092
$
74,423
$
64,509
Zip Recruiter
$ 151,062
$ 129,558
$ 122,373
$ 116,330
$ 107,911
$ 107,911
$ 106,379
$
99,635
$
97,856
$ 100,802
$ 102,432
$
97,009
$
99,559
$
95,342
$
94,728
$
96,046
$
95,768
$
92,679
$
80,416
$
70,002
Averaged
$ 134,771
$ 116,876
$ 113,411
$ 105,154
$ 100,815
$ 100,815
$ 99,620
$ 95,854
$ 94,539
$ 93,320
$ 93,036
$ 92,918
$ 92,695
$ 92,273
$ 92,137
$ 90,030
$ 87,922
$ 87,886
$ 77,420
$ 67,256
To obtain the national average base salary for a programming language, we have taken
the salaries provided by Glassdoor and Zip Recruiter and averaged the two (see Table 1). For
comparison, the median pay for a software developer in 2021 was $109,020, or $52.41 per
5
hour (U.S. Bureau of Labor Statistics, 2022). The salary range starts with Scala at the number
one position commanding an impressive base salary of $134,771 and in 20 th position we have
TypeScript at $67,256 – less than half what one could expect as a software developer who is
proficient writing code in Scala. However, Scala is considered a complex language as are many
others in our top 20 list, so let us focus on the salaries of the four languages that we have
determined are both easy to learn and in demand. If we round the salaries to the nearest
thousand, this is how it looks (see Table 2):
Table 2
Language Base Salary
Ruby
$ 101,000
Python
$ 96,000
JavaScript $ 93,000
Go
$ 88,000
There are many considerations that an aspiring software developer should take into
account in deciding which programming language to learn first. Many of these considerations
are outside of the scope of our research, such as what classes are offered and at what
institutions and at what cost. Our research has focused on three important criteria; how easy a
language is to learn, is the language in demand, and how much does it pay. We conclude that
Ruby, Python, JavaScript and Go meet this criteria and should be seriously considered as
excellent candidates for a software developer’s first programming language.
6
References
U.S. Bureau of Labor Statistics. (2022). Occupational Outlook Handbook, Software Developers,
Quality Assurance Analysts, and Testers
Veeraraghavan, Sruthi. (2022). Most Popular Programming Languages to Learn in 2023
Brookshear, J. Glenn, Brylow, Dennis. (2020). Computer Science an Overview (13th ed.). Pearson
Education Limited.
ISHIR. (2022). Top 75 Programming Languages: Comparison and by Type
Suzdalnitski, Liya. (2020). These Modern Programming Languages Will Make You Suffer
Download