I don’t know if I can do this

Hello. I have now been studying web development for almost six months, putting in an average of 5 hours study time a day. I’ve been through the responsive web design and JavaScript sections of FCC a couple of times each. I’ve done a handful of Udemy courses, tried building a couple of dozen projects and… I seem to have learnt almost nothing. Even sitting down to build a simple, single page web site is as slow and cumbersome for me now as it was two weeks after I started. Nothing seems to stick for me. I’ve looked up how to use things like flexbox and grid countless times but I seem to be completely unable to remember how they work. I’ve taught myself how to build a responsive nav bar over and over again. If you asked me to implement one now, I’d have to look it up.

Has anyone else experienced a learning failure along these lines and, if so, do you have any advice you could share? When I started learning, I was kinda hoping I might be ready to start applying for junior level jobs after about six months but that’s clearly not the case. I really don’t want to give up on the idea of becoming a developer but on current evidence, it’s going to take me years before I’ve learnt enough to do anything useful.

1 Like

Have you finished the projects at the end of Responsive Web Design section? I think that’s a really good starting point. The projects are not very complicated, there are user stories that you have to fulfill so you know exactly what you have to do and you just have to figure out how to do it.

1 Like

Why do you think this is a good approach?

I think you should deliberately stretch yourself instead of doing the same stuff multiple times.

2 Likes

Hi @gordon_woodbine !

It sounds like you were hoping to memorize a whole bunch of stuff but it is literally impossible. It is totally fine to look up things. As long as you have a basic understanding that is what matters.

Also, 6 months of anything (job or not) you are still going to be a beginner.
And that is totally fine.

I am almost 8 months in and still looking things up every few minutes.

It will probably years before you start to feel really confident with your skills.

I fell into this trap as well when I first started.
The narrative is “learn to code in X months and get a job” but most people get their first job in double that time and more.

Just focus on the learning and not a timeline that you set for yourself.

The second I ditched the timeline and just focused on learning, I started to learn way more because that extra pressure to get a job in a few months no longer existed.

Focus on getting comfortable with the basics and keep building projects.

Also, I would suggest moving away from udemy tutorials.
Nothing against udemy but coding along with tutorials isn’t the best way to learn.

Struggling through a project will teach you a lot more.

I am working on a new project now and I am constantly looking up bootstrap docs and react router documentation. But I am learning a lot through the process.

Keep learning and keep building!

9 Likes

That is so true!

Of course, there is some value in Udemy, but I learned so much more from actually building small projects and apps from scratch, myself.

6 Likes

I’ve done four out of the five. In fact, trying to do the portfolio project was what made me realise how little I seem to have learnt.

Because I think anything that I try to build on an empty foundation is likely to fall down. I haven’t been able to understand the material in those sections, so I’ve repeated the exercises to try to improve my understanding. But perhaps you’re right and I just need to push forwards regardless and trust that understanding will come later.

This is what I’m struggling with. I feel like I’m no better at doing this than I was five months ago.

Maybe you need to build smaller projects.
Projects that like 30-40 lines of code.

Once you finish the responsive projects and javascript projects then maybe you can keep building some of these ideas before moving onto the front end section.

Here are some ideas to get you started.

Restaurant Webpage
Image gallery
To do list
Random color generator

You can check out these other ideas.
Write down a game plan and slowly build the project. Even though this list has the full solution try not to jump straight for the full code.

I think with enough practice building smaller projects you will start to get more comfortable.

You can also try javascript 30. I would suggest taking the same approach and slowly build out the project. And then compare your solution with his.

4 Likes

Thank you so much for taking the time to reply and for linking those resources. I’d say I’ve done about 20 projects from the JSBeginners series (or variations on them) and I’ve done about 1/3rd of the Wes Bos ones as I found his course a while ago. I’m generally able to work through a project of this nature and come up with a solution. The problem I have is that I don’t seem to learn anything from doing this. The next time I encounter a similar problem, I’m basically starting from scratch. This is what I mean when I say nothing seems to stick.

We tend to see only those things that we don’t understand and we completely ignore what we have learned so far. That’s why we often feel like we have learned nothing.

To fight with this feeling I keep a journal where I write down the things I find hard and I’m struggling with. So now when I’m reading the things that were problematic 6 months ago, I look like this:

image

6 Likes

I feel like all beginners can relate to this.
It is just because this stuff is all new to us.

That feeling will probably stay for a while.
But I think you should just keep learning and building and you will be surprised at how much you have learned. (even if it doesn’t feel like it right now)

6 Likes

Thanks for the encouragement :slight_smile:

2 Likes

You’re not going to know it all ever. And a lot of software development is looking up syntax and remembering it or relearning the proper syntax. My biggest takeaways from courses like this is the high level overview of many technologies. I can think about issues and remember which pieces of technology I need to get the job done, not necessarily know how to type it out from memory. I’d rather be able to talk to someone about implementation than remember syntax perfectly because you can always go back and look up syntax. The important thing is knowing when to use which piece of technology to solve the problem. Also I’m super naive on how long I think things will take to complete. Good rule of thumb is it will take you at least 6 times longer than you think it will especially while learning.

4 Likes

I think volunteering may help you apply what you’re learning. I work mostly with WordPress and I’ve built websites for nonprofits as a Catchafire volunteer. You could probably even build a custom-coded site for a nonprofit, so long as they can update it easily. They will get the help they need and you will apply what you’ve been learning and gain experience. Here’s Catchafire’s website: https://www.catchafire.org/

2 Likes

Friend what I can tell you is 10 years ago I gave up, and that was like the biggest mistake I ever made, now I’m still scratching the surface but everything is starting to lineup, so don’t give up and focus on what you can do, not what you can’t do, and keep adding to the things that you can do daily. 5 hours A-day must pay dividends so keep doing what you doing, but change your focus from what you can’t do to what you Can.

7 Likes

I think everything here has already been said. I’m in a similar position to yours, since I’m also very new to programming.

A little suggestion of mine for you would be to write all the errors you encounter and their fixes in a notebook. Writing things down will make you remember them faster. And, even if you don’t remember them, you always have your notebook to go through.

Also, just a little encouragement, what you describe is exactly the same as the duning-kruger effect. As long as you keep at it, your confidence and skill will go up. So, keep at it!

3 Likes

Just a few things to weigh in which I hope might help.

  1. Take a break, relax (have a week off)
  2. You know more than you think you do (ALWAYS!)
  3. “Speak it” in the way that you have to if you are learning a language. Learning in classrooms and in courses will never truly teach you. You have to speak to native Italians if you want to learn to speak it. Passing a driving test doesn’t mean you can drive, you have to actually drive until you do it unconsciously.
  4. Have you got a portfolio that is published? I’m not sure, but I think if it’s personal to you then it has more meaning and what you do to show this or fix this has more stickiness because your emotions are really engaged. The emotions/feelings make those synapses work and you don’t even know it’s happening. It’s MORE important to you than an anonymous mock up that you do for a class.
  5. I read the other day that just because you remember something, it doesn’t necessarily mean that you understand it. Conversely, you might understand something but not be able to recall it. I guess that when these two come together you’re there! If you don’t remember I’m sure it’s fine to look it up 100 times (I bet everyone does).
  6. Spaced repetition. Find something that you are having trouble with. Create with it anyway. Repeat twice a week (or something like that), until you dream it :slight_smile:
  7. Print out some code snippets - that you wrote - and stick them up around your house. Wherever you go, there it is! View it and wonder at it as you make your coffee, go to the fridge… etc.

I’m just starting out and I’m quite apprehensive at all the stuff that is already beyond my recall and understanding but I’m going to trust that I can do this. I feel quite intimidated by teenagers who can do this standing on their heads with their eyes closed - but that’s not going to stop me. I also have a critical career need and whilst that is my main driver, I’m trying not to let that be my focus. My focus is going to be enjoying the process and taking in the (small) triumphs and (large) fails!

Don’t give up. You are going to do this. Look back on this thread in 6 months. I bet you’ll feel different.

Good luck and best wishes
Andrea

6 Likes

What kind of development do you aspire to do? Web? If so, why does web development interest you? What specifically appeals to you?

I’ve been designing websites half my life. I used homestead to design my first website, then received Dreamweaver (before it was an Adobe product), and I’ve used Wordpress for more than 10 years.

I took a lot of flack for using WYSIWYG editors instead of “writing” my own code. I carried shame about this for years.

I’ve taken many courses on HTML and CSS, even JS, most of it doesn’t “stick” for me in the way you’re describing. I constantly look things up and have to “relearn” things.

I’ve started this course multiple times, and last year I committed to finishing all the projects. I got frustrated in all the same places I usually do and wondered why I love creating websites but hate writing code.

Then I figured it out, I’m not a developer, I’m a designer. I like using design to create websites, I loathe writing code. Now I understand the difference in those two terms.

One day I will finish the projects in the responsive web design course for my own satisfaction. But I am not a developer. I’m a designer.

I understand how code works together to create my designs, and I can tweak, and change things. But I’m not the person who will ever code a design from scratch.

So going back to my question above, knowing the “why” behind your desire to learn development may help you hone in on what you are good at within this world.

But, after six months it might be hard to tell, so don’t give up. Something attracted you to this world, and unless you are only motivated by the earning potential, there is a reason why you want to learn this stuff. Be open to the idea that your place in Web Dev may be adjacent to, but not actually writing code for a living. :slight_smile:

4 Likes

I’ve been doing sites for years and most days I still feel like I have CRS.
( Can’t Remember Sh#t)

I take, make, update, and refine detailed notes constantly.
(Think of it as an active learning exercise. )

Every time I have a usable code snippet, such as a navigation bar, I add it to a file I’ve created in Notepad++ with detailed comments.

Later, when I need a navigation bar, I just copy and paste, and edit accordingly.
(It also really helps me save time during the initial development phase.)

Hope this helps,

MB

2 Likes

Professional developer with 5+ years experience here :raising_hand_man:and I still can’t remember how to use grid or flex box without having a cheat sheet open in a browser tab to the side :slight_smile:

This is totally normal in my opinion. The simple answer is you have to live through these struggles. It’s a sign that you’re spending more time learning through tutorials and guided content as apposed to just building stuff.

If that simple website took you a long time, document how long it took. Start a fresh project and see how long it takes you to build the exact same site again.

You really just have to increase the amount of learning you do “off rails”. Tutorials are holding your hand too much and so you’re not experiencing the pain of making decisions and figuring things out on your own.

This is just a reality for most people. A small select minority manage to find that first entry-level job within the first year but there’s a complex combination of complimentary background, raw talent, less distractions in their life, more available time to dedicate toward learning, better at learning in general, luck, different opportunities etc…

You gotta think, some people go the post-secondary route to get into the industry and they’re looking at 2-4 years of school (sometimes more) plus if they don’t get into some sort of internship program provided through the school they still have to jump through all the same hoops self-taught developers have to jump through.

It can be a long journey no matter the path you take.

It was roughly 5 years for me but I wasn’t consistent with what I was learning or how much I was learning throughout that. Once I knew for sure I wanted to be in web, it took roughly 3 months of insane focus to get the first job and it was 90% luck. I also had almost 5 years of learning how to program in other tech stacks before I decided to focus my efforts on web, as well as had dabbled in making websites and working with web technologies over the years.

Yes. I find myself to be a naturally deep learner. Which means I learn slowly. I’ve learned to overcome this a bit over the last half-decade or so but I really struggle to pick up new concepts quickly if I don’t understand all the moving parts.

The single thing that has helped me the most is to switch my focus to building as much as I can while knowing as little as possible. Then afterwards I scratch that itch to know more and dive deeper but only after I’ve built something real with whatever it is I’m learning.

I would never take a course on something I want to learn without building something with it first.

Good luck with your journey!

Edit

Oh another useful tip too is this concept called “code katas”. Basically the idea is to isolate a task that you want to get better at and practice that one thing over and over again.

So an example could be that you want to get faster at making a nav bar. So you could take a web site that you’ve already built and just delete the nav bar. Practice adding a nav bar to that website over and over again, building up your speed, and experimenting with different approaches. Over time you’ll feel extremely confident at that one task.

And you can try that approach with anything you want to get better at. Like practicing your scales if you’re a musician.

4 Likes

Thank you, everyone, for taking the time to respond and for sharing your thoughts. I realised late on yesterday that I had, most probably, slipped into a depressive episode without realising. They sneak up on me sometimes and mess with my thinking (including my ability to remember things) and I don’t always realise I’ve drifted into one until presented with a sufficient amount of evidence. Posting on a public forum about my inability to learn things being an example of evidence in this case. The fact that said forum is full of people willing to give their time and encouragement to a stranger is deeply heartening, though :slight_smile:

This is such a good idea and something I’m going to try to do as soon as I can. Learning how to use WordPress is somewhere on the long, long, long list but I might bump that up if it means I can help out with something like this sooner.

This is great, thank you :slight_smile:

I’m a big fan of the Dunning-Kruger effect, even if I do try not to be a living embodiment of it.

This whole list is excellent but I’m particularly in favour of Number 1 :stuck_out_tongue:

Thank you for this, it’s something I will try to keep in mind. I think one of the difficulties with being a beginner in a field is that you don’t necessarily know what you don’t necessarily need to know and, in my case at least, leads to thoughts such as “Well, I’ll just have to master all of it then, won’t I?”

I absolutely recognise myself in this. I am bad at learning things in isolation and always want to understand how all the pieces fit together. But as web development appears to be made up of approximately five billion different pieces, I’ve given myself quite a few memory overflow errors in trying to do this. Everything else you’ve written also seems like absolutely solid advice so thank you so much for sharing it :slight_smile:

2 Likes