What Can't JavaScript Do?
Tags: podcast, javascript
Published: 2022-09-21 18:29:26

{% spotify spotify:episode:2CWDUi05TVVcc3olo0vqUA %}

## What is HTML All The Things?

HTML All The Things is a [web development podcast](https://www.htmlallthethings.com/) and [discord community](https://discord.com/invite/jweMCx9) 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](https://podcasts.apple.com/us/podcast/html-all-things-web-development-web-design-small-business/id1412209136) or checking out our Patreon to get a shoutout on the podcast. 

**[Support us on Patreon](https://www.patreon.com/htmlallthethings)**


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

[Instagram (@htmlallthethings)](https://www.instagram.com/htmlallthethings/)
[Twitter (@htmleverything)](https://twitter.com/htmleverything)
[TikTok](Html All The Things)