https://softuni.org
Which Languages Give Best Career Opportunities?
JavaScript, Java, Python, C#, C++, PHP or Others?
Programming Languages: Trends for 2023
Svetlin Nakov, PhD
Co-Founder, Innovation and
Inspiration Manager at SoftUni
https://nakov.com
2
 Software engineer, tech trainer, entrepreneur
author of 16 books
nakov.com
 4 successful tech education initiatives
 National Academy for Software
Development (NASD) – 2004
 Telerik Software Academy – 2009
 SoftUni (Software University) – 2014
 IT High School "SoftUni Svetlina" – 2018
About Svetlin Nakov
 The Most Used Programming Languages in 2022:
 Python, Java, JavaScript, C#, C++, PHP
 Jobs by Programming Languages in 2022:
 Jobs Worldwide by Programming Language
 Jobs in Bulgaria by Programming Language
 Programming Languages Trends for 2023
 Language Popularity Rankings from Stack Overflow,
GitHub, PYPL, IEEE, TIOBE, Etc.
 Become a Software Developer: How To Start?
Agenda
Overview
Programming Languages in 2022
 JavaScript
Mainstream Languages and Frameworks
5
 Best for: front-end apps, cross-platform UI, back-end apps
 Comes with: HTML + CSS + front-end technologies (HTML, CSS, React,
Angular, VueJS), JS back-end (Node.js, Express, MongoDB), TypeScript
 Best for: enterprise apps, back-end apps, Web apps, Android apps
 Comes with: Spring Framework, Java EE, Hibernate, MySQL /
PostgreSQL + front-end (HTML, CSS, React) + Docker and cloud
 Best for: data science, machine learning, AI, Web development, DevOps
 Comes with: data science toolkits, Jupiter, NumPy, TensorFlow, PyTorch,
Django / Flask, MySQL / PostgreSQL, HTML + CSS + JS, Docker and cloud
 Java
 Python
 C# / .NET
 Best for: back-end apps, Web apps, enterprise applications, desktop apps
 Comes with: .NET Core, ASP.NET Core, Entity Framework, SQL Server, front-
end technologies (HTML, CSS, JS front-end, React), Docker and cloud
 C++
 Best for: embedded / IoT development, graphics and game development,
finance, system programming, high-performance back-end computing
 Comes with: STL, Boost, CMake, glibc, Qt, Unreal Engine, Linux, Docker
 PHP
 Best for: server-side Web apps, dynamic Web sites, e-commerce projects
 Comes with: MySQL, PHP frameworks (Laravel, Symfony, CodeIgniter),
front-end technologies (HTML, CSS, JS front-end, React), WordPress
Mainstream Languages and Frameworks (2)
6
 TypeScript – strongly-typed JavaScript, less prone to errors, good
for big and complex projects, used in Angular and Next.js
 Swift – modern general-purpose language, mostly used on the
Apple's ecosystem (iOS, macOS, alternative to Objective C)
 Kotlin – simplified syntax for the Java and Android ecosystem
 Scala – rich functional programming for the Java ecosystem
 Go – modern highly-efficient server-side development language
(alternative to C++)
 Rust – multi-paradigm back-end language designed for
performance and safety (alternative to C++)
Less Popular Languages
7
 Ruby – dynamic language, build for simplicity and productivity
(mostly for back-end Web apps, alternative to PHP and Python)
 C – language for system programming and low-level
development (for embedded and kernel-level devs)
 R – specialized language for statistics and data analytics
 Perl – old-fashioned powerful back-end language
 Dart – front-end language for building UI with Flutter
 Visual Basic – scripting for Windows (slowly disappearing)
 Others: Assembly, MATLAB, Objective-C, Elixir, Lua, Delphi, …
Less Popular / Specialized Languages
8
9
 Many tech languages are not real programming languages!
 SQL: database query and manipulation language
 PL/SQL, Transact SQL, etc. – more powerful, still DB specialized
 HTML and CSS: visualize Web content (text + images + links)
 XML, JSON and YAML: represent, store and transport data
 Bash / PowerShell: system administration scripting tools
 HCL: describe and configure virtual infrastructure (IaC)
Non-Programming Tech Languages
The Most Wanted Languages in 2022
Programming Languages by Jobs
11
 LinkedIn Jobs Worldwide (Nov 2022):
 Java ⟶ 2.20M results
 Python ⟶ 2.15M results
 JavaScript ⟶ 2.02M results
 C# ⟶ 0.44M results
 PHP ⟶ 0.30M results
 C++ ⟶ 0.21M results
 Go, Swift, Ruby ⟶ < 0.05M
LinkedIn Jobs Rankings by Language
12
 Jobs.BG dev jobs in Bulgaria (Nov 2022):
 JavaScript ⟶ 893 jobs
 Java ⟶ 782 jobs
 Python ⟶ 626 jobs
 C# ⟶ 367 jobs
 PHP ⟶ 293 jobs
 C/C++ ⟶ 283 jobs
 Swift, Kotlin, Go, Ruby, Perl ⟶ 40-80 jobs
Jobs.BG Jobs Rankings by Language
13
 Dev.BG Jobs in Bulgaria (Nov 2022):
 JavaScript ⟶ 710 jobs
 Java ⟶ 464 jobs
 C# ⟶ 290 jobs
 PHP ⟶ 202 jobs
 C++ ⟶ 140 jobs
 Python ⟶ 128 jobs
 Swift, Kotlin, Go⟶ 40-60 jobs
Dev.BG Jobs Rankings by Language
14
 LinkedIn BG ranking by programming language for Bulgaria
(Nov 2022):
 Java ⟶ 3564
 JavaScript ⟶ 3308
 Python ⟶ 3557
 C# ⟶ 955
 PHP ⟶ 683
 C++ ⟶ 803
Ranking for Bulgaria: LinkedIn BG
The Most Popular Languages in 2022
Programming Languages Rankings
16
 Stack Overflow all time questions asked by tag (Nov 2022)
https://stackoverflow.com/questions/tagged/java
 JavaScript ⟶ 2.45M questions
 Java ⟶ 1.88M questions
 Python ⟶ 2.07M questions
 C# ⟶ 1.57M questions
 PHP ⟶ 1.45M questions
 C++ ⟶ 0.78M questions
Stack Overflow: Questions Tagged by Lang
17
 Stack Overflow Developer Survey 2022
https://survey.stackoverflow.co/2022
 #1: JavaScript
 #2: Python
 #3: TypeScript
 #4: Java
 #5: C#
 #6: C++
 #7: PHP
Stack Overflow Developer Survey
18
 Top languages in GitHub (Octoverse 2022 report):
 #1: JavaScript
 #2: Python
 #3: Java
 #4: TypeScript
 #5: C#
 #6: C++
 #7: PHP
GitHub Ranking by Language
19
 PYPL PopularitY of Programming Language: how often language
tutorials are searched on Google
 PYPL ranking (Nov 2022)
 #1: Python
 #2: Java
 #3: JavaScript
 #4: C#
 #5: C++
 #6: PHP
PYPL: Programming Languages by Google Trends
20
 IEEE Spectrum top languages rankings:
 Mix of metrics: Google, GitHub, Twitter,
Stack Overflow, Reddit, IEEE, others
 IEEE top languages by jobs (Nov 2022):
 #1: Java
 #2: Python
 #3: JavaScript
 #4: C#
 #5: C
 #6: C++
IEEE Programming Language Rankings
21
 TIOBE Index (Nov 2022): programming languages on the search
engines (Google, Bing, Baidu, Amazon, others):
 #1: Python
 #2: C
 #3: Java
 #4: C++
 #5: C#
 #6: Visual Basic
 #7: JavaScript
TIOBE: Languages on Search Engines
Programming Languages:
Trends for 2023
23
 Top 6 mainstream programming languages for 2023:
 Python
 JavaScript
 Java
 C#
 C++
 PHP
 Less popular languages: Ruby, Scala, Perl
What to Expect in 2023?
 Non-mainstream languages for 2023:
 Go, Rust (high-performance)
 Swift, Kotlin (mobile development)
 Dart (Flutter framework)
 R (for statistics)
 C (replaced by C++)
How to Become a
Software Engineer?
 First find out if programming is for you!
 Sign up for the SoftUni free coding
course for beginners: https://softuni.bg
 Or follow a tutorial / book / video course on the Internet
 Does programming excite you?
 Do you really like it and enjoy it?
 Are you good at coding problems?
 Do you want to write code all the time?
How do I Become a Software Engineer?
25
 To become a software engineer, you
need to study hard and consistently!
 1-2 years @ part time (15-20 hours / week)
 Or 1 year @ 8-10 hours daily
 Developing practical projects
 Write ~ 100K+ lines of code (LOC)
 ~ 100K LOC == 300 days * 350 LOC
Study Hard with a Lot of Practice
26
 4 main groups of dev skills:
 Coding skills – 20%
 Algorithmic thinking – 30%
 Fundamental software
development concepts – 25%
 Programming languages and
software technologies – 25%
Learn the 4 of Fundamental Skills
27
Language-
independent skill
Language-
independent skill
Language-
independent skill
Language-
dependent!
28
 Basic Coding Course – calculations, data, conditions, loops, IDE
 Fundamentals of Programming – arrays, lists, maps, nested structures,
text processing, error handling, basic language APIs, problem solving
 Object-Oriented Programming – classes, objects, inheritance, …
 Databases and ORM – relational DB, SQL, ORM frameworks, XML, JSON
 Back-End Development – HTTP, MVC, Web apps, REST, Docker, Cloud
 Front-End Development – HTML, CSS, JS, DOM, AJAX, JS Frameworks
 Practical Projects – Git, software engineering, teamwork, DevOps
 Example: https://softuni.bg/currocilum
Typical Curriculum for Developers
 You need a portfolio of projects in GitHub!
 Examples: https://github.com/YanaSlavcheva/SoftUni-Work,
github.com/hammer4/SoftUni, github.com/VasAtanasov
 Show the employers your skills
 How do you prove skills?
 With a rich GitHub profile!
 Start a job and gain experience
Build a Portfolio and Start a Job
29
Learn more from my blog
➡ nakov.com/blog/2022/03
SoftUni – https://softuni.org 3

Programming Languages Trends for 2023

  • 1.
    https://softuni.org Which Languages GiveBest Career Opportunities? JavaScript, Java, Python, C#, C++, PHP or Others? Programming Languages: Trends for 2023 Svetlin Nakov, PhD Co-Founder, Innovation and Inspiration Manager at SoftUni https://nakov.com
  • 2.
    2  Software engineer,tech trainer, entrepreneur author of 16 books nakov.com  4 successful tech education initiatives  National Academy for Software Development (NASD) – 2004  Telerik Software Academy – 2009  SoftUni (Software University) – 2014  IT High School "SoftUni Svetlina" – 2018 About Svetlin Nakov
  • 3.
     The MostUsed Programming Languages in 2022:  Python, Java, JavaScript, C#, C++, PHP  Jobs by Programming Languages in 2022:  Jobs Worldwide by Programming Language  Jobs in Bulgaria by Programming Language  Programming Languages Trends for 2023  Language Popularity Rankings from Stack Overflow, GitHub, PYPL, IEEE, TIOBE, Etc.  Become a Software Developer: How To Start? Agenda
  • 4.
  • 5.
     JavaScript Mainstream Languagesand Frameworks 5  Best for: front-end apps, cross-platform UI, back-end apps  Comes with: HTML + CSS + front-end technologies (HTML, CSS, React, Angular, VueJS), JS back-end (Node.js, Express, MongoDB), TypeScript  Best for: enterprise apps, back-end apps, Web apps, Android apps  Comes with: Spring Framework, Java EE, Hibernate, MySQL / PostgreSQL + front-end (HTML, CSS, React) + Docker and cloud  Best for: data science, machine learning, AI, Web development, DevOps  Comes with: data science toolkits, Jupiter, NumPy, TensorFlow, PyTorch, Django / Flask, MySQL / PostgreSQL, HTML + CSS + JS, Docker and cloud  Java  Python
  • 6.
     C# /.NET  Best for: back-end apps, Web apps, enterprise applications, desktop apps  Comes with: .NET Core, ASP.NET Core, Entity Framework, SQL Server, front- end technologies (HTML, CSS, JS front-end, React), Docker and cloud  C++  Best for: embedded / IoT development, graphics and game development, finance, system programming, high-performance back-end computing  Comes with: STL, Boost, CMake, glibc, Qt, Unreal Engine, Linux, Docker  PHP  Best for: server-side Web apps, dynamic Web sites, e-commerce projects  Comes with: MySQL, PHP frameworks (Laravel, Symfony, CodeIgniter), front-end technologies (HTML, CSS, JS front-end, React), WordPress Mainstream Languages and Frameworks (2) 6
  • 7.
     TypeScript –strongly-typed JavaScript, less prone to errors, good for big and complex projects, used in Angular and Next.js  Swift – modern general-purpose language, mostly used on the Apple's ecosystem (iOS, macOS, alternative to Objective C)  Kotlin – simplified syntax for the Java and Android ecosystem  Scala – rich functional programming for the Java ecosystem  Go – modern highly-efficient server-side development language (alternative to C++)  Rust – multi-paradigm back-end language designed for performance and safety (alternative to C++) Less Popular Languages 7
  • 8.
     Ruby –dynamic language, build for simplicity and productivity (mostly for back-end Web apps, alternative to PHP and Python)  C – language for system programming and low-level development (for embedded and kernel-level devs)  R – specialized language for statistics and data analytics  Perl – old-fashioned powerful back-end language  Dart – front-end language for building UI with Flutter  Visual Basic – scripting for Windows (slowly disappearing)  Others: Assembly, MATLAB, Objective-C, Elixir, Lua, Delphi, … Less Popular / Specialized Languages 8
  • 9.
    9  Many techlanguages are not real programming languages!  SQL: database query and manipulation language  PL/SQL, Transact SQL, etc. – more powerful, still DB specialized  HTML and CSS: visualize Web content (text + images + links)  XML, JSON and YAML: represent, store and transport data  Bash / PowerShell: system administration scripting tools  HCL: describe and configure virtual infrastructure (IaC) Non-Programming Tech Languages
  • 10.
    The Most WantedLanguages in 2022 Programming Languages by Jobs
  • 11.
    11  LinkedIn JobsWorldwide (Nov 2022):  Java ⟶ 2.20M results  Python ⟶ 2.15M results  JavaScript ⟶ 2.02M results  C# ⟶ 0.44M results  PHP ⟶ 0.30M results  C++ ⟶ 0.21M results  Go, Swift, Ruby ⟶ < 0.05M LinkedIn Jobs Rankings by Language
  • 12.
    12  Jobs.BG devjobs in Bulgaria (Nov 2022):  JavaScript ⟶ 893 jobs  Java ⟶ 782 jobs  Python ⟶ 626 jobs  C# ⟶ 367 jobs  PHP ⟶ 293 jobs  C/C++ ⟶ 283 jobs  Swift, Kotlin, Go, Ruby, Perl ⟶ 40-80 jobs Jobs.BG Jobs Rankings by Language
  • 13.
    13  Dev.BG Jobsin Bulgaria (Nov 2022):  JavaScript ⟶ 710 jobs  Java ⟶ 464 jobs  C# ⟶ 290 jobs  PHP ⟶ 202 jobs  C++ ⟶ 140 jobs  Python ⟶ 128 jobs  Swift, Kotlin, Go⟶ 40-60 jobs Dev.BG Jobs Rankings by Language
  • 14.
    14  LinkedIn BGranking by programming language for Bulgaria (Nov 2022):  Java ⟶ 3564  JavaScript ⟶ 3308  Python ⟶ 3557  C# ⟶ 955  PHP ⟶ 683  C++ ⟶ 803 Ranking for Bulgaria: LinkedIn BG
  • 15.
    The Most PopularLanguages in 2022 Programming Languages Rankings
  • 16.
    16  Stack Overflowall time questions asked by tag (Nov 2022) https://stackoverflow.com/questions/tagged/java  JavaScript ⟶ 2.45M questions  Java ⟶ 1.88M questions  Python ⟶ 2.07M questions  C# ⟶ 1.57M questions  PHP ⟶ 1.45M questions  C++ ⟶ 0.78M questions Stack Overflow: Questions Tagged by Lang
  • 17.
    17  Stack OverflowDeveloper Survey 2022 https://survey.stackoverflow.co/2022  #1: JavaScript  #2: Python  #3: TypeScript  #4: Java  #5: C#  #6: C++  #7: PHP Stack Overflow Developer Survey
  • 18.
    18  Top languagesin GitHub (Octoverse 2022 report):  #1: JavaScript  #2: Python  #3: Java  #4: TypeScript  #5: C#  #6: C++  #7: PHP GitHub Ranking by Language
  • 19.
    19  PYPL PopularitYof Programming Language: how often language tutorials are searched on Google  PYPL ranking (Nov 2022)  #1: Python  #2: Java  #3: JavaScript  #4: C#  #5: C++  #6: PHP PYPL: Programming Languages by Google Trends
  • 20.
    20  IEEE Spectrumtop languages rankings:  Mix of metrics: Google, GitHub, Twitter, Stack Overflow, Reddit, IEEE, others  IEEE top languages by jobs (Nov 2022):  #1: Java  #2: Python  #3: JavaScript  #4: C#  #5: C  #6: C++ IEEE Programming Language Rankings
  • 21.
    21  TIOBE Index(Nov 2022): programming languages on the search engines (Google, Bing, Baidu, Amazon, others):  #1: Python  #2: C  #3: Java  #4: C++  #5: C#  #6: Visual Basic  #7: JavaScript TIOBE: Languages on Search Engines
  • 22.
  • 23.
    23  Top 6mainstream programming languages for 2023:  Python  JavaScript  Java  C#  C++  PHP  Less popular languages: Ruby, Scala, Perl What to Expect in 2023?  Non-mainstream languages for 2023:  Go, Rust (high-performance)  Swift, Kotlin (mobile development)  Dart (Flutter framework)  R (for statistics)  C (replaced by C++)
  • 24.
    How to Becomea Software Engineer?
  • 25.
     First findout if programming is for you!  Sign up for the SoftUni free coding course for beginners: https://softuni.bg  Or follow a tutorial / book / video course on the Internet  Does programming excite you?  Do you really like it and enjoy it?  Are you good at coding problems?  Do you want to write code all the time? How do I Become a Software Engineer? 25
  • 26.
     To becomea software engineer, you need to study hard and consistently!  1-2 years @ part time (15-20 hours / week)  Or 1 year @ 8-10 hours daily  Developing practical projects  Write ~ 100K+ lines of code (LOC)  ~ 100K LOC == 300 days * 350 LOC Study Hard with a Lot of Practice 26
  • 27.
     4 maingroups of dev skills:  Coding skills – 20%  Algorithmic thinking – 30%  Fundamental software development concepts – 25%  Programming languages and software technologies – 25% Learn the 4 of Fundamental Skills 27 Language- independent skill Language- independent skill Language- independent skill Language- dependent!
  • 28.
    28  Basic CodingCourse – calculations, data, conditions, loops, IDE  Fundamentals of Programming – arrays, lists, maps, nested structures, text processing, error handling, basic language APIs, problem solving  Object-Oriented Programming – classes, objects, inheritance, …  Databases and ORM – relational DB, SQL, ORM frameworks, XML, JSON  Back-End Development – HTTP, MVC, Web apps, REST, Docker, Cloud  Front-End Development – HTML, CSS, JS, DOM, AJAX, JS Frameworks  Practical Projects – Git, software engineering, teamwork, DevOps  Example: https://softuni.bg/currocilum Typical Curriculum for Developers
  • 29.
     You needa portfolio of projects in GitHub!  Examples: https://github.com/YanaSlavcheva/SoftUni-Work, github.com/hammer4/SoftUni, github.com/VasAtanasov  Show the employers your skills  How do you prove skills?  With a rich GitHub profile!  Start a job and gain experience Build a Portfolio and Start a Job 29 Learn more from my blog ➡ nakov.com/blog/2022/03
  • 30.