DEV Community

Ethan
Ethan

Posted on

How do I make myself learn?

Currently I do fronted web dev with HTML/CSS/JS. And I want to learn a framework for the front end. I did research and choose React mainly for its popularity, I already know some and I like the syntax. And I plan to use 30 days of React to learn it. But I don't have a lot of motivation to learn unlike the huge amount I had when I learned HTML, CSS and JS.

So how do I get myself to learn? How do I give myself the motivation to learn?

Top comments (21)

Collapse
 
tracygjg profile image
Tracy Gilmore • Edited

Ethan,
Personally I do not think you can force yourself to learn. You have to find a passion, something that excites you. I question your justification for choosing React. It is popular and for good reason but that does not mean it is right for you or even the projects you will be working on. I suggest you consider two things:

  1. What of the three technologies you already use excites you most? If it is HTML consider React from the JSX and component (function or class) perspectives. If it is CSS and UI design, you might want to investigate topics such as: styled components and Material UI. However, if JS is your thing you might want to err away from one specific framework and deepen your understanding of the language (check out MDN). You might want to explore Functional Programming or even venture into TypeScript (which need not be as great a leap as you might think).
  2. If you specifically want to learn a framework, I suggest you might want to broaden your perspective and look at some of the newer contenders such as SOLID, Alpine or Svelte. Again, see which one interests you most, after all, React is popular now but it will be replaced one day, who knows by what, so keep your options open.

Studying that which excites you most is (I have found) the best way to maintain motivation. It was the advice I gave my kids when they were considering go to Uni, chasing the money is a fools errand and seldom makes people happy.

Best of luck on your learning journey.

By the way, I have 30+ years in the Software industry and still learning. I achieved this by not chasing the buck but following that which excited me.

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

These kind of problems (motivation, time management, ideas) where all problems I faces when I had no proper goal in mine.

When I started to get really interested in accessibility and community all these problems went away on their own.

So maybe you lack on real interested. Until then, just do it and make a habit out of it. And hopefully the motivation is starting to show eventually when realinzing you are making some progress.

And as @cppshane mentioned in his comment, maybe the tutorial thing isnβ€˜t for you. Wasnβ€˜t for me either.

Collapse
 
flkdnt profile image
Dante Foulke

@yuridevat , you are exactly right. In my life experience, especially with ADHD, motivation has nothing to do with willingness to learn, but everything to do with applicability. If I didn't see a use-case, or a problem was that solved by __ technology, or even how I could use it in my day-to-day life, I'm highly unlikely to spend time to learn it, as I am sure many people are.

It's literally why I put off programming for several years until I saw a problem(managing and maintaining several hundred windows servers treated as pets, not cattle) that programming(specifically PowerShell) would help me manage. And since I had that revelation, I've gone all in on learning programming languages, containers, IaC etc.

So, for Ethan, I don't know much about React, but, if you are already working in web development then it's going to be easier to look at a "new" technology like React and determine if it'll make your life/workflow easier. I'd honestly start with YouTube videos of the use-cases that make sense to you:

  • How is X company using this technology?
  • How would you do the same thing with html/css/js and React(side-by-side comparison)
  • Maybe a history of why react was developed to begin with - all frameworks/programming languages are developed out of some sort of necessity, frustration, or ideology and learning the reasons behind it can provide important insight.
  • Also, look at conference talks on react, or "How React made my life easier" or"How React made my life harder"(you can learn a lot about the limitations of something by looking at criticisms)

Also, as a side note, having something like a lab environment or Docker installed makes it so much easier to play around with new technologies.

Collapse
 
cppshane profile image
Shane Duffy

Eh I've always hated the tutorial/training sites where you make a pointless app specifically for the purpose of learning.

What I usually do is come up with a very simple app idea (of something that I'd actually be interested in making), and then just... start googling.

Following tutorials is boring, but building something you actually want to build is addicting.

Collapse
 
cppshane profile image
Shane Duffy

I actually did this a few years back when I was trying to learn Angular. I made a simple little app that just displays two different random publicly available API's to help developers come up with new project ideas:

sparkr.dev

Perhaps it will help spark your imagination πŸ˜‰

Collapse
 
beeburrt profile image
B. Burt • Edited

So that site of yours @cppshane , it's to help people find ideas for projects to build? Is that right?
That's fricken super cool! I'm into it

Thread Thread
 
cppshane profile image
Shane Duffy

Haha thanks, yeah I've used it a few times to get the creative juices flowing.

Collapse
 
bcostaaa01 profile image
Bruno

Hey Ethan,

Thank you for sharing your experience and feelings with the developer community.

I must tell you in advance that I (and perhaps all of us or the grand majority) have faced the same as you are facing right now.

To keep yourself motivated, you need to first find the motivation within yourself. If it is coding and creating things that excites you about programming and that made you want to learn and get into this community, then building projects, even if small for the beginning/current time, might give you that extra boost, the β€œpush” you perhaps need.

As for learning React and any other framework out there (Vue, Svelte, etc), investing deeper in JavaScript or venturing into Typescript might be the wisest decision to take for now, as @tracygjg very well mentioned.

Setting (clear and achievable) goal/s, as @yuridevat mentioned, is also a great strategy and indeed that’s what would guide yourself the best throughout your career. It is great to set ambitious goals, but β€œbaby” steps, one at a time, will take you further for now.

My personal advice: stick around here in the community, share your learnings, your projects, your goals, thoughts, read other people’s articles, etc. A sense of community can give you an extra boost of motivation. In the end, we all share the same passion, right? πŸ˜‰

Good luck in your path to becoming a great software developer! I hope to see you around here more often πŸ™‚

Collapse
 
cicirello profile image
Vincent A. Cicirello

Give yourself a project. Something that you want to build. And then use that as motivation. Use Google, etc to figure it out as you go.

Collapse
 
webjose profile image
JosΓ© Pablo RamΓ­rez Vargas

Nobody will come hold your hand, so I guess you are greatly on your own. I'll just tell you what motivates me: Ego and money. The more I learn, the greater the number of times I'm right, and I like being right. πŸ˜„

Then, the more times I'm right, the more money I get to charge employers.

Collapse
 
tracygjg profile image
Tracy Gilmore

Hi Ethan,

It looks like you are getting some good advice from the community. I particularly like the suggestion from @bruno to start a small personal project. Keep it simple and build it up. Use it the investigate unfamiliar techniques and push it out to repo regularly.

I would also suggest following as much of the SDLC as possible. Don't just cut code but create unit tests and even exercise TDD. Try to adopt professional engineering principles as more as possible but also don't let them drag you down or damage your enthusiasm.

It is all too easy to get trapped in to perpetual tutorials so be selective of which ones you follow.

Best Regards.

Collapse
 
wiseai profile image
Mahmoud Harmouch

It can be tough to keep up with the constant learning curve as a developer. New technologies and frameworks are always emerging, and it can be difficult to find the motivation to stay ahead of the curve. However, there are a few things that you can do to make the learning process easier and more enjoyable.

One way to make sure that you're always learning something new is to participate in hackathons and other coding competitions. This will not only force you to stay up-to-date with the latest trends, but you'll also have a lot of fun in the process.

Another great way to learn is to take on side projects. Use your spare time to work on something that interests you, and you'll be surprised at how much you can learn in the process. Not only will you pick up new skills, but you'll also gain valuable experience that will help you in your day-to-day work.

I think the best way is to set small achievable goals. Break down the learning material into chunks and focus on one at a time. This will help you stay focused and motivated. Also, try to understand why you are learning something and how it will help you in the future. This will help keep you motivated and engaged as well.

Another great way is by setting rewards for yourself after achieving each goal. It could be anything from a special treat or an extra hour of sleep or even a night out with friends; whatever works for you. Knowing that you have something nice waiting for you after completing your task can really help keep you focused and motivated.

Last but not least, make sure that you are taking regular breaks while studying. Taking frequent breaks can help restore your energy levels and also give your brain some time to process the new information that it has learned. You can also use this time to reward yourself for all the hard work that you have put in so far!

Collapse
 
lissy93 profile image
Alicia Sykes

Is there a project idea you have, that you'd really enjoy building? I often find the best way to learn a new language or framework, is just by using it. And maybe if you're building something that you find interesting, it could help you stay motivated.

There's also things like #100dayOfCode, to help you stay accountable, and all the communities that go along with it.

Collapse
 
xsgxmicha3lx profile image
xSGxMICHA3Lx R6S

**** motivation! **** others! Go and see what others are doing with programming and after that explore AI. (being programmer is good, because the programmer always can create everything he or she wanted). next go for good researching on your resource that you are using, after that fix your problems and go for higher peaks.

Some comments may only be visible to logged-in visitors. Sign in to view all comments.