Swizec Teller - a geek with a hatswizec.com

    Is JavaScript really getting too complex?

    You sometimes hear people on the internet complain that JavaScript is becoming too complex. They reminisce of the old days when you could write some code, plop it in a <script> tag, and it worked.

    Now you need Babel, and Webpack bundling, and transpiling, and a bazillion different versions of JavaScript, and a framework for components, a framework for CSS, and and it's all just one big hairy mess.


    baloney giphy

    JavaScript is wonderful. ❀️

    The JavaScript community is one of the most welcoming beginner friendly communities I've ever met. Everyone is welcome. Everyone is productive. Everyone can get started.

    With experience or without, there is a place for you in the JavaScript world.

    Swizec Teller published ServerlessHandbook.dev avatarSwizec Teller published ServerlessHandbook.dev@Swizec
    Remember that one time I tried to use Kotlin and fell flat on my face?

    Y'all who only ever used JavaScript don't know how good you have it.

    JavaScript is a slice of heaven in the programming world. TypeScript too. No other community spends so much time making life easier.

    What I love about the JavaScript community is how hard everyone works to make it even more accessible. There's a wealth of resources to learn from, a bunch of tools making your life easier, abstracting away the complexities. πŸ‘Œ

    Swizec Teller published ServerlessHandbook.dev avatarSwizec Teller published ServerlessHandbook.dev@Swizec
    In my experience other communities (except maybe Ruby/Rails) do focus on making life easier, but their target audience is the engineer with 10 years of experience.

    JavaScript instead is like "How do we make this more accessible to someone with 10 days experience?"

    In the JavaScript world you can find everything from total beginner stuff like "How to write a for loop and why" to complex topics you run into after years of working on real projects.

    There's even people streaming their work! I would've killed to learn by watching experts work when I was a kid.

    You know how I learned to code?

    By opening Turbo Pascal's help files, in a language I barely understood (English), and trying things. It was fun but dear god it was slow.


    And I didn't even have the internet. Once a week I could ask my teacher about things and that was it. No Google, no blogs, not even books.

    I probably could've had books but have you tried to read a college text book as a 12 year old? It doesn't work very well.

    men_in_black_textbooks giphy

    That's what learning how to code used to look like. You can poke around and try stuff, ask one or two mentors, or read books way beyond your level.

    Now you have blogs and courses and video streamers and experts answering questions and ... it's amazing. I love it 😍

    Beginner friendly helps everyone

    The best part is that this helps everyone. Even experts.

    Swizec Teller published ServerlessHandbook.dev avatarSwizec Teller published ServerlessHandbook.dev@Swizec
    And when you make something accessible to people with 10 days experience.

    You're making my life easier too so I can focus on solving problems instead of programming tricks. And I love that ❀️

    When you make something more accessible to beginners, when it's quicker to get started, that helps experienced people too.

    Consider this πŸ‘‡

    Would you rather spend an hour setting up Webpack and Babel and your basic file structure and a development server and hot reloading and all the plugins or ...

    ... run create-react-app and get started building your app in 30 seconds?

    I know what I'd pick πŸ˜‰

    That same CRA tool that makes it easier for beginners to start with React, makes it quicker for an expert, too.

    Or how about this πŸ‘‡

    Would you rather spend your time thinking about memory optimization, clearing array buffers, making sure there's no overflows, thinking about deallocation, and memory paging, and swapping and thrashing and all those things ...

    ... or trust a garbage collector is Good Enough and focus on solving your business problems?

    yeah, exactly

    We stand on the shoulders of giants

    Computer science and software engineering go back many decades. Every generation solved a new set of challenges and we take those solutions for granted.

    We love to think the stuff we learned in our engineering youth represents The Fundamental Fundamentals. We scoff at the new kids on the block. Pha, they don't even know how to efficiently write to a drum-memory. Useless

    Wait what, a drum memory?

    Read The story of Mel my friend, it is amazing.

    But here's the thing, you don't know (me neither) about drum memory because we don't need to.

    Someone before us solved that problem.

    We also don't think about optimizing registry assignment, aligning memory so it's used efficiently, writing to hard drives without leaving huge holes, or cleaning up our own memory. Tools baked right into our environment handle that for us.

    And that's amazing.

    Time saved thinking about low level concerns, is time you get to use for problems unique to you and your company.

    So please, keep adding complexity, keep adding abstractions, the more you come up with, the less time I have to waste on silly little details :)

    killin_it giphy

    Enjoy your Monday, ~Swizec

    Did you enjoy this article?

    Published on June 10th, 2019 in Front End, Technical

    Learned something new?
    Want to become an expert?

    Here's how it works πŸ‘‡

    Leave your email and I'll send you thoughtfully written emails every week about React, JavaScript, and your career. Lessons learned over 20 years in the industry working with companies ranging from tiny startups to Fortune5 behemoths.

    Join Swizec's Newsletter

    And get thoughtful letters πŸ’Œ on mindsets, tactics, and technical skills for your career. Real lessons from building production software. No bullshit.

    "Man, love your simple writing! Yours is the only newsletter I open and only blog that I give a fuck to read & scroll till the end. And wow always take away lessons with me. Inspiring! And very relatable. πŸ‘Œ"

    ~ Ashish Kumar

    Join over 14,000 engineers just like you already improving their careers with my letters, workshops, courses, and talks. ✌️

    Have a burning question that you think I can answer?Β I don't have all of the answers, but I have some! Hit me up on twitter or book a 30min ama for in-depth help.

    Ready to Stop copy pasting D3 examples and create data visualizations of your own? Β Learn how to build scalable dataviz components your whole team can understand with React for Data Visualization

    Curious about Serverless and the modern backend? Check out Serverless Handbook, modern backend for the frontend engineer.

    Ready to learn how it all fits together and build a modern webapp from scratch? Learn how to launch a webapp and make your first πŸ’° on the side with ServerlessReact.Dev

    Want to brush up on your modern JavaScript syntax?Β Check out my interactive cheatsheet: es6cheatsheet.com

    By the way, just in case no one has told you it yet today: I love and appreciate you for who you are ❀️

    Created bySwizecwith ❀️