Episode 37 LOL: Lexicon of Languages

Episode 37 – LOL: Lexicon of Languages

In this episode we’ll be talking about popular languages in 2019, some common traits they share, and deciding which ones to learn next.

“‘Sharpening the Tools’ is the section of the show where we discuss what tools we’re using, concepts we’re learning, and generally how we are continuing our learning in software development.”

“Sharpening the Tools”
————————–

Erin:

Finished with JavaScript Objects. Started digging into Python a bit just because.

Dave:

Office Olympics, remembering to take care of your physical self.

 

“Opening the Toolbox”

Episode Outline
===============

According a TechRepublic article, here are the 10 most popular programming languages as of December 2018:

  1. Java
  2. C
  3. Python
  4. C++
  5. Visual Basic .NET
  6. C#
  7. JavaScript
  8. PHP
  9. SQL
  10. Objective-C

We wanted to take a cursory dive into some of the different languages if you’re curious about them or trying to figure out which one you want to learn next.

 

Erin has experience with: JavaScript, C#, SQL, Python (minimal), and Java

Dave has experience with: JavaScript, (minimal) PHP

 

Lots of languages are based C in some ways, borrowing some ideas and syntax.

 

Compiled vs. Interpreted languages –

  • Interpreted means executed directly – JavaScript, Python, PHP
  • Compiled means it gets translated first (into machine code or similar) before it’s executed – C, C++, C#, Java, Objective-C

 

Static vs. Dynamic (Timing)

  • Static typed languages are those in which type checking is done at compile-time
  • Dynamic typed languages are those in which type checking is done at run-time

 

Weakly Typed vs. Strongly typed (Behavior of variable types)

  • Strongly typed means a variable will not be automatically converted from one type to another. (explicit conversion is required)
  • Weakly typed means variables can be implicitly coerced to unrelated types

 

Strongly typed languages: Must use explicit type declarations when declaring variables

  • Examples: Java, C#

 

Dynamically typed languages:

  • Examples: JavaScript, Python

 

JavaScript, Java, and C# are popular Enterprise languages and are very well established.

While Java and C# are server side languages, JavaScript is both a client side and server side language (Node.js).

 

Python and R are popular for Data Science

 

PHP: Hypertext processor: an early web language that’s pretty widespread throughout the internet, especially due to use of popular CMSs like WordPress.

 

Objective C

  • A general-purpose, object-oriented programming language that adds Smalltalk-style messaging to the C programming language. … It was selected as the main language used by NeXT for its NeXTSTEP operating system, from which macOS and iOS are derived.

 

10 Best Programming Languages to Learn in 2019 (for Job & Future):

https://hackr.io/blog/best-programming-languages-to-learn-2019-jobs-future

 

References
==========

Top 10 Programming Languages as of December 2018:

https://www.techrepublic.com/article/10-popular-programming-languages-developers-should-learn-in-2019/

 

10 Best Programming Languages to Learn in 2019 (for Job & Future):

https://hackr.io/blog/best-programming-languages-to-learn-2019-jobs-future

 

Strongly typed languages vs. dynamically typed languages:

https://stackoverflow.com/questions/2690544/what-is-the-difference-between-a-strongly-typed-language-and-a-statically-typed

 

Semantics v. Syntax

 

C influence on other languages

https://softwareengineering.stackexchange.com/questions/135544/why-are-several-popular-programming-languages-influenced-by-c

What does it mean to say a language is C-based?

 

Extra Links
===========

 

Enjoy the podcast? Consider supporting our work by becoming a patron on our Patreon page. Every little bit helps cover our basic expenses and keep the show going.

You can also donate to our JDT PayPal page.

 

You can reach us at helloworld@juniordevelopertoolbox.com

Facebook: Junior Developer Toolbox

Twitter: @JrDevToolbox

Instagram: JuniorDeveloperToolbox

Patreon: https://www.patreon.com/juniordevelopertoolbox

PayPal Donation Pool: https://paypal.me/pools/c/86X3cA2N3O

 

www.juniordevelopertoolbox.com

Posted by Junior Developer

Leave a Reply