DEV Community

Mikhail Karan
Mikhail Karan

Posted on • Originally published at htmlallthethings.com

What Can't JavaScript Do?

What is HTML All The Things?

HTML All The Things is a web development podcast and discord community which was started by Matt and Mike, developers based in Ontario, Canada.

The podcast speaks to web development topics as well as running a small business, self-employment and time management. You can join them for both their successes and their struggles as they try to manage expanding their Web Development business without stretching themselves too thin.


What's This One About?

This week Mike and Matt discussed the many use cases for JavaScript. Over the past several years, JavaScript has been steadily exploding in popularity, with an appropriate number of frameworks and tooling being released alongside all the interest. With that though, is there anything that JavaScript can't do? What about what it excels at?

Topics

What is JavaScript good at?

  • Creating interactive web apps
  • Creating interactive User experiences
  • Single-threaded server handling
  • Cross-platform compiling
    • Simple app creation that can be written in JavaScript and run across desktop and mobile applications
  • 95% of apps for Frontend, backend, and mobile
  • Other reason to use/learn javascript
    • One of the most popular languages
    • Fun to learn because of the visual indicators that web apps provide

What doesn’t JavaScript do well?

  • Structure
    • Because JavaScript is flexible it doesn’t have a straightforward structure to follow (like MVC) when developing apps
    • Frameworks complicate this as they add their own paradigms
  • High availability/reliability
    • Because JavaScript is a runtime scripting language it does not compile down to machine code. This can cause unexpected issues with things like garbage collection and memory usage
  • Consistency
    • Because JavaScript relies on many different engines (V8, webkit, etc) it has inconsistencies across them
    • One app can perform differently and unexpectedly across different browsers and platforms
  • Speed
    • If performance and speed is a serious concerns then JavaScript might not be the right language for you
    • As it is a higher-level language it does not perform as well as something like C or Rust (lower-level languages)
  • Realtime systems that need to be fast, 24/7 operation and consistent are exactly where you should lean towards a lower level language
  • High availability backend services also place you might want to lean towards a more native backend languages

Alternatives to JavaScript

Web - No real alternatives for frontend logic yet. You can do some stuff with php, python, flutter-web (dart)

Backend - PHP, Python, GO

Mobile - Flutter, Swift, Kotlin

Desktop - C#, Swift

Gaming - C++

Embedded Systems - C, Rust

Thank you!

If you're enjoying the podcast consider giving us a review on Apple Podcasts or checking out our Patreon to get a shoutout on the podcast.

Support us on Patreon

You can find us on all the podcast platforms out there as well as

Instagram (@htmlallthethings)
Twitter (@htmleverything)
TikTok

Top comments (4)

Collapse
 
parkeradam916 profile image
Parker Adam

Appreciate your post.

Collapse
 
mikehtmlallthethings profile image
Mikhail Karan

Thanks Parker!

Collapse
 
yuridevat profile image
Julia πŸ‘©πŸ»β€πŸ’» GDE

Thanks for sharing the pros and cons of JavaScripts. It provides a good overview and understanding.

Collapse
 
mikehtmlallthethings profile image
Mikhail Karan

For sure, JavaScript is a great language but I think it's important to know where it's lacking.