AD
Episode
281
Interview
Web News

Is JavaScript Enough?

Recorded:
December 19, 2023
Released:
January 3, 2024
Episode Number:
281

We've all heard of HTML, CSS, and JavaScript - the latter being used in both frontend and backend technologies. Despite the utility and versatility of JavaScript, other languages still exist and thrive off of large fanbases such as PHP and Python. Why is this? Isn't JavaScript enough? In this episode, Matt and Mike discussed programming languages that you might find useful as a web developer (or other developer for that matter) other than JavaScript. The duo covered the pros and cons of each of these other languages as they discussed which ones you may be interested in learning after mastering the art of JavaScript.

Listen

Also available on...
...and many more, check your podcast app!

Who’s in This Episode?

Show Notes

What you'll learn in this episode

  • Whether you should bother learning more than just JavaScript as a web developer
  • A collection of other programming languages you might be interested in learning after mastering JavaScript
  • The pros and cons of each "JavaScript alternative" language


How to support the show

Patreon

Prices subject to change and are listed in USD

  • Support the show from as little as ~$1/month
  • Get a shoutout at the end of the episode (while supplies last) for just ~$3/month
  • Help support the HTML All The Things Podcast: Click Here

Scrimba Discount!

We receive a monetary kickback when you use our link

  • Learn to code using Scrimba with their interactive follow along code editor
  • Join their exclusive discord communities and network to find your first job!
  • Use this URL to get 10% off on all their paid plans: https://tinyurl.com/ScrimbaHATT


Show Notes

Why you should learn a new programming language

  • JavaScript is great and as a general purpose language can almost do anything you need it to
  • There are other programming languages for a reason though
  • If you know programming fundamentals (conditionals, loops, DSA, OOP, Types, etc) a programming language is more a tool rather than a barrier

Which programming languages to learn after JavaScript?

Python

  • Versatility: Python is known for its versatility in various fields like web development, data science, machine learning, and automation. Its simplicity and readability make it a great choice for both beginners and experienced programmers.
  • Large Community and Libraries: Python has a robust community and a wide range of libraries, making it easier to find solutions and support for your projects.
  • Data Analysis and Machine Learning: If you're working on a project involving data analytics, machine learning, or scientific computing, Python is often a better choice due to its rich ecosystem of data science libraries like Pandas, NumPy, and scikit-learn.
  • Automation Scripts: For writing quick and efficient automation scripts or system administration tasks, Python's simplicity and extensive standard library can be more convenient than JavaScript.

PHP

  • Web Development: PHP is a staple in web development, especially for server-side scripting. It's useful for creating dynamic web pages and integrating with databases.
  • Widespread Use: PHP powers a significant portion of the web (including WordPress), offering numerous job opportunities.
  • Server-Side Web Development: For building traditional server-rendered web applications, especially those that require complex server-side logic or deep integration with databases, PHP is a solid choice.
  • Content Management Systems: If you are working on websites that heavily rely on content management systems like WordPress, PHP is essential as it is the core language of these systems.
  • Go (Golang):
  • Performance and Efficiency: Go is known for its high performance and efficiency, making it suitable for building scalable network servers and concurrent applications.
  • Simple Syntax: Go’s syntax is clean and concise, which can be easier to grasp for someone already familiar with JavaScript.
  • High-Performance Network Servers: When developing high-performance network servers or distributed systems, Go's built-in concurrency support and efficient execution make it a superior choice.
  • Cloud-Native Development: For building scalable, cloud-native applications, Go is often preferred for its performance and compatibility with modern cloud infrastructure.

Rust

  • Memory Safety: Rust offers memory safety without garbage collection, making it a strong candidate for systems programming and high-performance applications.
  • Growing Ecosystem: Rust is gaining popularity in system-level programming due to its speed and safety, with a growing ecosystem and community.
  • System-Level Programming: If you're working on system-level applications like operating systems, game engines, or software requiring high memory efficiency, Rust is ideal due to its focus on safety and performance.
  • High-Performance Web Assembly: For projects that require compiling to Web Assembly for performance-critical web applications, Rust offers better control and efficiency compared to JavaScript.
  • FFMPEG conversion right in the browser

C++

  • System-Level Programming: C++ is essential for system-level programming, game development, and applications requiring high performance.
  • Foundation for Understanding More Complex Concepts: Learning C++ can deepen your understanding of how programming languages and computers work at a lower level.
  • Game Development: In scenarios like game development or graphics-heavy applications where performance is critical, C++ is often chosen over JavaScript due to its speed and control over system resources.
  • Real-Time Systems: For real-time systems or applications where hardware control and timing are crucial, C++ provides the necessary low-level access and performance.
  • Swift/Kotlin:
  • Mobile App Development: Swift for iOS and Kotlin for Android are the go-to languages for native mobile app development. They offer modern language features and are backed by Apple and Google, respectively.
  • Cross-Platform Development: With the rise of frameworks like Flutter and React Native, understanding Swift and Kotlin is beneficial for cross-platform development and optimizing native modules.
  • Native Mobile Applications: When building native mobile applications, Swift for iOS and Kotlin for Android offer optimized performance and access to platform-specific features that JavaScript-based frameworks cannot fully leverage.
  • Performance-Critical Mobile Features: For parts of mobile applications where performance is critical, like complex animations or hardware interactions, using Swift or Kotlin can provide a smoother user experience compared to JavaScript-based solutions.


Links

  • Michael LaRocca
    - Author of the Self-Taught the X Generation blog, at selftaughttxg.com