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

    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 SeniorMindset.com avatarSwizec Teller published SeniorMindset.com@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 SeniorMindset.com avatarSwizec Teller published SeniorMindset.com@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.

    vxNSHwE

    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 SeniorMindset.com avatarSwizec Teller published SeniorMindset.com@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 15,161+ engineers just like you already growing their careers with my emails, workshops, books, and courses.

    ⭐️⭐️⭐️⭐️✨
    4.5 stars average rating

    Have a burning question that you think I can answer? Hit me up on twitter and I'll do my best.

    Who am I and who do I help? I'm Swizec Teller and I turn coders into engineers with "Raw and honest from the heart!" writing. No bullshit. Real insights into the career and skills of a modern software engineer.

    Want to become a true senior engineer? Take ownership, have autonomy, and be a force multiplier on your team. The Senior Engineer Mindset ebook can help 👉 swizec.com/senior-mindset. These are the shifts in mindset that unlocked my career.

    Curious about Serverless and the modern backend? Check out Serverless Handbook, for frontend engineers 👉 ServerlessHandbook.dev

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

    Want to get my best emails on JavaScript, React, Serverless, Fullstack Web, or Indie Hacking? Check out swizec.com/collections

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

    Did someone amazing share this letter with you? Wonderful! You can sign up for my weekly letters for software engineers on their path to greatness, here: swizec.com/blog

    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 by Swizec with ❤️