From chapter 3 in The Art of Learning
When we’re in a learning phase, we often feel weak, exhausted or hopeless, and this is something we can also experience physically. A boxer with a great right hand but a weak left hand will take plenty of punches and go through some tough rounds while learning to use his left side more skillfully. Although learning through trial, error and slow improvement is tough, we should be careful not to doubt ourselves. This can quickly lead to a downward spiral, in which we berate ourselves for every mistake, and the possibility of achieving our goals seems to shrink at every turn.
An idea I didn’t take to heart while learning Chinese, what a trial that was, but am trying to while I gain some rudimentary skills in programming with Swift.
We all begin our lives with a limited amount of practical knowledge, so it’s our job to teach ourselves as much as possible. Those who fail to do so will quickly fall behind! So, set yourself the goal of learning one new thing every day, even if it’s just something you heard on the radio. Then put this new piece of knowledge to use as soon as you can. By learning new things within the area of your specialty each day, you’ll be one step closer to achieving excellence.
You can also learn from those around you. Find your reference group – a network of people who share your values – and spend time with them. Their accomplishments will lift you up, too.
From The Psychology of Selling
Now, fair warning, this code involves many concepts that you aren’t familiar with, but that’s okay.
We could have used only the concepts that we know so far to build this app, but our code would not have been elegant, well-formed, or anything resembling the code you would actually write in the real world.from class transcript. A startling admission to what we had learned to date.
There are times when this has to be the most frustrating courseware I have ever experienced for learning anything.
Instead of continuing to invest in codebase’s, or making a large investment in engineering talent, for the simple and not so simple apps. we are developing, I thought I might take a few months to deep dive into a course on Swift. Learning new skills and acquiring new knowledge is a pretty essential part of life and I thought there might be some ancillary benefits from having some programming ability. Designers should code. The benefit where I might change from senior designer to junior iOS dev. seems more like a pipe dream at this point.
Generally speaking TeamTreehouse’s production values are pretty high and you are more likely guaranteed a level of quality that you might not be assured of on other platforms like Udemy (though I have found a couple great design courses there).
Here are some of the problems I had, am having:
- Learning programming concepts is an absolute bore. This may have as much to do with my own interests and abilities as this courseware ’s approach. The actual creating part of programming is fun of course, I still remember the first C programs I wrote. Some courseware I have used speeds you through the material, gets you creating “apps” as soon as possible, then adds complexity later. Others get students to actual outcomes faster – ever more advanced “hello World”‘s. – TeamTreehouse doesn’t take this approach.
- I’m not convinced that using video alone or how they deliver the material via video is effective. There is at times a tremendous amount to unpack within a video. Often its very difficult to parse meaning, or to capture all that the instructor is saying. Rewatching videos over and over again is extremely inefficient. Not all the platforms I have experienced have this difficulty.
- I could in no way rely upon the course material alone. In fact, I used 3 other textbooks to teach myself the topics introduced in the videos. I realize that constantly searching for answers is a required part of programming but at this level I would prefer a more complete course.
- Answers to questions are slow to come. Often they do eventually come, and the community is great, but I prefer to be able to ask questions in something approaching real time. Often times what the instructor is teaching is unclear or he makes a giant leap in logic, with no one to answer questions, you need to pause your learning until someone is available to help.
- Basic concepts are taught using more advanced, often complex, examples. The upside to this is that you are immediately given more realistic coding challenges. The downside is that if you don’t understand the concept being introduced before using in a more realistic situation you tend to get frustrated. I think it interferes with learning, and I prefer the more graduated approach I have seen in books from Big Nerd Raunch. First learn the skill, then gradually add more realistic usage through practice.
What has made me stick with the platform to this point is the desire to actually finish the course I started. I hate in-completes. I might also be a victim of the sunk cost fallacy.
I’ve wanted to do this for awhile but time, schedule and my son Camren’s changing interests haven’t made the stars align. But a recent query from Camren as to exactly what I do for a living, and my failure to give an adequate explanation, gave me a push to spend some time this summer giving him some experience in some of the more accessible parts of my field. First up is creating some of the silly stickers that he and his friends like to send back and forth, then some UI work on an app., then a code warrior camp and finally he can help me with some usability testing. A sort of hands on look at product development/user experience.
All our work is created in Sketch and he has taken to the app. fairly well, especially considering that he is only 11. This is his superpower I think, if the task is enjoyable he will find a way to learn, usually via YouTube. He’s become a master of minecraft, various magic tricks, and other things this way. Just don’t ask him to memorize Chinese poems. Smart kid.
His first set of stickers are available now on the app. store.