I've always known of myself that I'm not the type that can read something, then close the book and put that information to use. I've always had to connect what I'm reading to something real, or something I already know the concept of and associate it with that. Usually this way, I can connect the dots and its more familiar for me. Easier to understand.
This also applies to watching a video of information. I can watch it, take notes, re-watch the video, etc. But until I can cement the knowledge in my mind, its not much use to me outside of making some terminology more recognizable. More so as a person gets older.

I have literally written down every character of code the video gave me, followed along bit by bit, and still come out feeling inadequate and stupid.

So most of the learning I'm doing now is via online courses. Such as Coursera, Codecademy, Udemy, Udacity, etc. These things are great. I mean absolutely great. I wish I had options like this when I was a kid. But I grew up in a time when there were 3 television channels, air was clean, sex was dirty, and the only computer you ever seen was on some sci-fi movie.

But while I have a ton of these sites with a multitude of courses, its kind of still the same for me. I watch the videos, I take the notes, I re-read the notes, and sometimes even re-watch parts of the videos. Almost all of them have little quizzes throughout and also a test/assessment at the end. Usually these are a good way of seeing if you understand the information the video attempts to give. I'm usually good on most of these until towards the end of the course. I have literally written down every character of code the video gave me, followed along bit by bit, and still come out feeling inadequate and stupid.
Almost every course has a discussion forum for you to ask all your questions, and surprisingly there are many people who will respond and try to help you out. Again, this is great. But when I get stuck, its because I don't understand. I dig myself deeper trying to get it, but I only make matters worse as I then begin to not understand anything I thought I knew before this. So beating my head on the table trying to understand this new portion, then posting a question where I'm lost, then I have to wait for a reply. All in hopes that the reply will clear up some fog.

But usually by this time I've only become more despondent about all of it. AND I'm questioning everything I've learned up to this point. The nice people who respond to my question(s) really doesn't help much because my confusion has grown. I think its because I've become so confused and tied up mentally.
This is when I think a mentor would really be useful to me. Someone I could ask immediately (or within a short amount of time), while I'm still focused on what has initially caused me to to go haywire. And, hopefully, before I get all wrapped up in myself. But while everyone says to get a mentor, you'll soon see that these people are either not free, or they're non-existent. It makes sense, who wants someone bugging them all the time and not getting paid for it? Plus I'm to the point where I feel extra dumb just asking such simple questions.

A few posts ago I mentioned how I had questions on a part of the course I was taking, and I asked Sam (friend at work) about it. He sat down and walked me through it. He had me put it down on the dry erase board where I could actually see the data and how it flowed. And just like that, it cleared up for me. I had another question and asked Brian, he as well put it down on the board and again it was cleared up for me.
This evidence has taught me quite a few things. And I'm not ashamed to admit any of them.

  1. Writing things out really helps me see the light.
  2. Having people that know what I'm asking makes me feel less stressed.
  3. No matter how stuck I get, I still don't feel like quitting or giving up.
  4. Programming is fucking difficult.
  5. Programming is fucking fun (or can be when I get it).
  6. I feel very dumb when I get stuck.
  7. The more I try, the more familiar things should be.
  8. Going through code with others is enjoyable.
  9. I feel bad asking my friends to take time out of their lives for my questions.

But I cannot get over that feeling of seeing problems, and not having any idea what to do or where to start. Its like I've woken up in some foreign country and have no clue about the language or where I am. Frustrating and scary.

So I feel that I need to find someone, or some method, to be able to get me past the portions that kick my ass before I go brain dead. Some way other than make a message thread and hope someone responds, and then hope that I understand what they're saying. I'm toying with the idea of some type of online chat where you can live share a IDE/editor and both you and your mentor/helper/person thats smarter than I am, and walk through the questions step by step.
I'm thinking about starting a CS101 course from Udacity that I've heard about. Maybe if I keep the ball rolling, stop myself with every question and not continue until I understand it, and write things out, I can get better.