[{"data":1,"prerenderedAt":193},["ShallowReactive",2],{"site-info":3,"\u002Fwriting\u002Fbest-way-to-learn-find-a-topic-run-with-it":55},{"id":4,"title":5,"baseTitle":6,"body":7,"city":14,"description":11,"extension":15,"firstName":16,"lastName":17,"meta":18,"navigation":19,"path":35,"resumeUrl":36,"role":37,"seo":38,"socialLinks":39,"state":52,"stem":53,"__hash__":54},"siteInfo\u002Fsite-information.md","Site Information","| Front-End Software Engineer | Cincinnati, OH",{"type":8,"value":9,"toc":10},"minimark",[],{"title":11,"searchDepth":12,"depth":12,"links":13},"",2,[],"Cincinnati","md","Dave","Berning",{},[20,23,26,29,32],{"name":21,"to":22},"About","\u002Fabout",{"name":24,"to":25},"Work","\u002Fwork",{"name":27,"to":28},"Writing","\u002Fwriting",{"name":30,"to":31},"Endorsements","\u002Fendorsements",{"name":33,"to":34},"Contact","\u002Fcontact","\u002Fsite-information","\u002Fresume","Front-End Software Engineer",{"description":11},[40,44,48],{"label":41,"href":42,"icon":43},"LinkedIn","https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fdavidberning\u002F","simple-icons:linkedin",{"label":45,"href":46,"icon":47},"GitHub","https:\u002F\u002Fgithub.com\u002Fdaveberning","simple-icons:github",{"label":49,"href":50,"icon":51},"Email","mailto:daveberning@icloud.com","lucide:mail","OH","site-information","NPLL1hH9hpVz07oyT1KXspbl9TxZpTQW2UUiJAMDAjs",{"id":56,"title":57,"body":58,"category":173,"description":174,"extension":15,"externalUrl":175,"featuredImage":176,"meta":177,"navigation":178,"path":179,"platform":175,"publishedAt":180,"readingTime":169,"seo":181,"status":182,"stem":183,"tags":184,"updatedAt":191,"__hash__":192},"writing\u002Fwriting\u002Fbest-way-to-learn-find-a-topic-run-with-it.md","The Best Way to Learn a New Framework: Find a Topic You're Passionate About and Run With It",{"type":8,"value":59,"toc":163},[60,64,70,73,76,81,84,87,91,94,97,102,105,108,111,115,118,137,140,144,147,150,154,157,160],[61,62,63],"p",{},"Learning a new programming language, framework, or skill is a daunting task. As a web developer trying to keep up with the field, it can feel overwhelming. Technologies seem to come and go every few months — there's always a new up-and-coming framework around the corner.",[61,65,66],{},[67,68],"img",{"alt":11,"src":69},"https:\u002F\u002Fmiro.medium.com\u002Fv2\u002Fresize:fit:1400\u002Fformat:webp\u002F1*kqiqhJnR4k-oPMSLEVWmdA.jpeg",[61,71,72],{},"If you're coming from a strict HTML\u002FCSS background like me, taking the next step into the JavaScript world can be intimidating. I lived in a jQuery comfort zone for years. As a young and naive developer, I thought jQuery was all I'd ever need — boy was I wrong. I'd see these neat frameworks and what they could do, but I never felt skilled enough to use them. I'd take a brief look at some examples, get immediately overwhelmed, and go back to what I knew best.",[61,74,75],{},"That all changed when I started a new job and had to get serious about JavaScript frameworks. I was creating and maintaining AngularJS applications for a popular custom home builder — and I had no idea what I was doing. I had no choice but to invest time outside of work and actually learn the framework. That's when I discovered a better way to approach learning.",[77,78,80],"h2",{"id":79},"my-problem-with-hello-world-tutorials","My Problem With \"Hello World\" Tutorials",[61,82,83],{},"I've spent many hours watching tutorial videos on LinkedIn Learning and other platforms. They're great resources, but they all share one thing in common — they start with \"Hello World.\"",[61,85,86],{},"Don't get me wrong. \"Hello World\" is a perfectly fine entry point when you're picking up a new programming language for the very first time. But if you've been developing for a few years, those generic tutorials won't hold your attention for long. Learning should be exciting, not rehearsed and dull.",[77,88,90],{"id":89},"find-your-own-hello-world-project","Find Your Own \"Hello World\" Project",[61,92,93],{},"The best way to learn a new framework is to skip the generic examples and build something you actually care about.",[61,95,96],{},"I use a \"Periodic Table of Elements\" app as my go-to tutorial project for every new framework I learn. It's consistent enough to compare implementations across frameworks, but interesting enough to keep me engaged. Let me walk you through how to apply this approach yourself.",[98,99,101],"h3",{"id":100},"step-1-pick-a-topic-youre-genuinely-interested-in","Step 1: Pick a Topic You're Genuinely Interested In",[61,103,104],{},"This is the most important step. Without a topic that actually interests you, you might as well close this tab and go find a Hello World tutorial.",[61,106,107],{},"A friend of mine was learning HTML and CSS and built everything around Jeeps — something he was already passionate about. That focus kept him motivated through the frustrating early stages. My wife, a rocket scientist friend, and I had just returned from the March for Science in Washington D.C. I love science, so it became my topic. For you, it could be sports stats, music, cooking, travel — anything you'd be excited to build around.",[61,109,110],{},"The topic itself doesn't matter. Your genuine interest in it does.",[98,112,114],{"id":113},"step-2-come-up-with-a-simple-app-idea","Step 2: Come Up With a Simple App Idea",[61,116,117],{},"Once you have your topic, brainstorm a short list of app ideas. Don't worry about whether it's been done before — this project exists to help you learn, not to disrupt an industry. Here are some ideas I considered for my science theme:",[119,120,121,128,131,134],"ul",{},[122,123,124],"li",{},[125,126,127],"em",{},"Periodic Table of Elements Application (the one I went with)",[122,129,130],{},"Animated Planets and Moons of the Solar System",[122,132,133],{},"\"Your Weight on a Planet\" Calculator",[122,135,136],{},"Planet Weather App",[61,138,139],{},"Pick one and keep it simple. You can always build on it later.",[98,141,143],{"id":142},"step-3-build-it-and-solve-real-problems","Step 3: Build It and Solve Real Problems",[61,145,146],{},"You have your topic, you have your idea — now it's time to build. You can still follow along with tutorials, but you'll start encountering real-world problems that generic examples never cover. Things like fetching and processing data from an API, managing state, or structuring a component hierarchy. Those are the problems that actually teach you how a framework thinks.",[61,148,149],{},"Struggling through those moments is where the real learning happens.",[77,151,153],{"id":152},"the-payoff","The Payoff",[61,155,156],{},"Taking this approach saved me hours when learning AngularJS. Not only did I pick up the framework faster than I would have grinding through tutorials, but I actually enjoyed the process — and I ended up with a unique portfolio piece along the way.",[61,158,159],{},"The best way to learn a new JavaScript framework isn't to follow a prescribed curriculum. It's to build something that means something to you.",[61,161,162],{},"Do you have a topic you're interested in? What's your app idea, and which framework are you trying to learn? Share it below — you might just help spark an idea for another developer.",{"title":11,"searchDepth":12,"depth":12,"links":164},[165,166,172],{"id":79,"depth":12,"text":80},{"id":89,"depth":12,"text":90,"children":167},[168,170,171],{"id":100,"depth":169,"text":101},3,{"id":113,"depth":169,"text":114},{"id":142,"depth":169,"text":143},{"id":152,"depth":12,"text":153},"Article","Skip the 'Hello World' grind. The best way to learn a new JavaScript framework is to build something you actually care about. Here's how to do it.",null,"https:\u002F\u002Fmiro.medium.com\u002Fv2\u002Fresize:fit:1400\u002Fformat:webp\u002F1*7GJlC3q3iyFXTLriuksrow.jpeg",{},true,"\u002Fwriting\u002Fbest-way-to-learn-find-a-topic-run-with-it","2017-06-21",{"title":57,"description":174},"published","writing\u002Fbest-way-to-learn-find-a-topic-run-with-it",[185,186,187,188,189,190],"Learning","Career","JavaScript","AngularJS","Vue","React","2026-04-08","c7jTB7SSfDimF3PleqPuxR583odUncuHmepZ7aW1Tag",1775699599317]