I have, for the past few days, been immersing myself in adding parts to my arduino to extend functionality. There’s a game involving a map that has been floating around in my head for a very long time. It’s finally time for me to do something about it, so I’m starting to learn the things necessary to make it happen. I successfully hooked up a shift register to add a lot more leds, which will be necessary and now am hooking up a different type of shift register to add more buttons. This has proved a bit more difficult, but now, in my advanced age, I know that it takes time for things to sink in. Today was one of those great days where after struggling for a while, the light bulb went off over my head and I think I understand how things work.

Today’s success has gotten me thinking about how I learn things. I’m very quick to buy books or videos to help me learn new things. Sometimes the books are helpful and sometimes they aren’t. I used to just consider these things a crapshoot, but now I’m seeing a trend. I like it when I have working examples. I HATE it when problems are given, but no solution is provided. I know why the authors do that, so that people actually take the time to try to solve the problems, but it drives me nuts. The main reason is that, after struggling with something for days or weeks, I’d like to move on. But, since I can’t solve the problem, I feel that I can’t move on. The author has posed the problem because he or she thinks I should be able to figure it out at this point. The fact that I’m unable to makes me think I’m not ready to continue. But, I’m just spinning my wheels where I’m at. This is probably the number one reason that I quit working through a book or series. It’s ok with me, if lots of examples are provided, but no problems are posed. If I’m working through the book, I must have a reason, so I can usually try to work through the problems I’ve come up with.

This past year, I’ve basically abandoned “Learn C the Hard Way” because there was a problem that I couldn’t figure out and no solution was provided. I’d struggled with it for weeks and got nowhere. Clearly, there’s a mental block I couldn’t get through and needed some help. So, I bought a different book on C programming. One that’s an actual college textbook. This one has been a lot more helpful and I’ll probably stick with it for a while longer. Maybe, I’ll go back to “Learn C the Hard Way” in the future, but I just find it incredibly frustrating when I get stuck. I guess I’ll just have to see.

My recent studies have been more on using the arduino and the sample programs on their website have been invaluable. I tried reading the documentation and then writing programs on my own. Sometimes this worked, sometimes it didn’t. When it didn’t, it was incredibly helpful to see something working. And since some things had a few examples, I could see different ways people were using the command.

Anyway, today’s success just reminded me that things take time to learn. As long as I keep remembering that and working on stuff, I’ll usually understand things eventually, which is kind of cool.