Posts Tagged ‘computers’

Venn diagrams are such fun tools.  I wrote a post a while back about the career planning Venn diagram that I ran across.

Career Options

And that is still what’s driving me.  Where to find that intersection between Enjoyment, Skill Set, and a Paycheck.

So let’s talk about another Venn diagram (I promise I’ll loop back around to careers in a moment).  Two of the things that I enjoy most are programming and dancing.  Can I make them intersect?  The default diagram appears to look like this.

Programming - Dance

But wait, dance is heavily influenced by music, there is a mathematical aspect to music (especially the way I think about it) and programming bears a striking resemblance to mathematics.  So here is my intersection model for programming and math.  Pretty, twisted, no?

Programming + Dance - Simple

In any case that leads to the core point of this post, which is that I’m taking a new turn in my reboot process and investing some significant amount of time into a project that really is an intersection between programming and dance.  I’m building a web site and suite of web (and possibly *phone apps) to help dancers find music.   Along with that I’m spinning up a new blog to help shape the ideas that go into the site.  So if music and dancing are things that interest you, please hop on over to my new blog.

And as promised, back to careers.  This lands me squarely on this version of the career diagram.

nopayoverlap

If the stars align I hope to bring the paycheck circle back into an overlapping state.

career-options

I’m a bit worried that I think too much in terms of dichotomies, dilemmas, quandaries and paradoxes (especially because I could only spell one of those words without the help of the spell checker).  But this one hit me over the head from a couple of different directions in yoga class this morning, so what the heck.

First the rant version:  I got to class this morning and put my mat in the back of the room and headed to the locker room to change.  When I got back, a young lady had put her mat directly in front of mine.  Very nicely lined up, she probably spent some real time making sure she directly centered it.  Now this was in a fairly small class, so it wasn’t that big a deal to shift left a bit.  But this particular studio has markings on the floor so that in a full class you know how to set up your mats to get three rows nicely staggered so that everyone can see themselves in the mirror.  So was she just so focused on getting to a relatively early morning class that when she got there she didn’t think to be polite about where she landed?  I’d like to give her the benefit of the doubt, but I’m not sure.  Then there were the three people that walked into a totally silent room and snapped their mats open when clear and crisp  “bang” sounds.  One of these days that’s going to startle me enough that I’m going to pee my pants.   Then they’ll be sorry.  You betcha!  Or the guy that stuck his towel on the only open shower stall as I walked into the room and then proceeded to spend several minutes gathering his accoutrements to actually take a shower.  Are these people all just oblivious, so focused on what they are doing that they don’t realize that they’re being incredibly rude?  Or are they totally aware and don’t care?  The flip side of this is that I like to feel that I’m a reasonably polite person, but I know I can focus to the sacrifice of all else even when I’m not trying, so I wonder how many blog posts are out there ranting about the incredibly rude things I’ve done?  Possibly even just the incredibly rude things I’ve done this morning?

Anyway, now that that is off my chest.  Call it the rudeness corollary to the Focus/Awareness Quandary.  Let’s get to the meat of the issue, which is what got kicked off in my yoga background process by the first couple of incidents.

This class was a Hatha class that the studio is calling their “Fire” series.  It’s small variation on Bikram using a few additional poses from the Gosh 84 posture series and mixes up some ordering.  The point is that it is very close to a series that I’ve been doing for years, but was only the second time I had done this sequence and a few of the postures therein.   So I had to listen to the instructor more carefully than I usually do and keep an eye on those around me for queues and examples for where things were different.  The net result was the least focused class I’ve had in a long time.  But at the same time, I caught a couple of queues for poses that I have done for years that I had somehow missed.  Which tells me that even in one of the more focused activities in my life, broadening my awareness sometimes is probably a good thing.

The real question though is how to know how to mix that up most effectively.  It is certainly useful in Yoga (as in programming) to be able to focus so tightly that the rest of the universe disappears.  But how long should you do that for?   My back is telling me (in the programming case) that perhaps that time is shorter now than when I was a teenager.  Maybe I need to invent a programming egg where I can just close myself in and spew code.  Anyone know where I can get one of those?  I’d prefer the model where I can just think the code too, no typing required …

One of my favorite yoga teachers opened class the other day with an exercise that I had never seen done before although I think it’s more common in ‘softer’ yoga practices.  She asked everyone to turn to a neighbor and share a way that they use their yoga practice outside of class.  Well, since I’m an off the charts introvert (I am going to get around to writing that post one of these days), I managed to pause just long enough that as I turned to each of the people around me, they had already engaged with someone on their other side.  So no big deal, I sat and enjoyed a few minutes of meditation.

But near the end of the sharing time the teacher looked up from her conversation and commented on how relaxed I looked sitting by myself in the middle of the chatty room.  And of course she then put me on the spot to share with the entire class.  An introvert’s nightmare.  But I sucked it up and took the opportunity to very briefly share that I was volunteering to teach High School students Computer Science and since Yoga was one of the skills that was newest to me, I frequently took things I learned in Yoga to help me teach in that entirely different environment.

And this is why I find Yoga so much fun.  The response wasn’t a blank stare or a nervous laugh (either of which would be completely reasonable and somewhat expected when I allow myself to geek out in public), it was “Oh yeah, I use a programming example to help teach yoga sometimes.”  And went on to describe how she talks about how computer code reduces down to a series of zeroes and ones, each of which has meaning.  Which means that if one of those bits gets flipped for whatever reason your program may do something entirely different than what you expected.   And doing yoga is kind of like this kind of program – every instruction you send to your body is important at the most exacting level – crossing wires or flipping one bit can make your program crash or do something different than you wanted.  I particularly take this to heart in things like Chataranga (Yoga Pushups) where a very healthy exercise can quickly degrade into a shoulder injuring anti-exercise.

In any case, you should all be proud of me.  I  did not respond by breaking down the argument on the spot and trying to open a discussion about how this analogy may or may not be applicable and where it might break down.  I answered with something that I hope came out as a slightly more engaged version of “Thank You” and we went on with the class.

But since you’re here, let’s break this down a little bit.  Especially because I just reviewed binary numbers with my class and we’re going to do a check on error detection soon.  With my old Apple II which had no parity bit for its memory and had a dense enough instruction set that flipping a bit in an instruction almost certainly did something valid but different than intended I think the analogy is pretty accurate.  Especially because it wasn’t uncommon to have an occasion to program directly in machine code.  In the current world almost no-one including the deepest level system programmers write machine code directly (and yes, I know quite a few such creatures, was one myself not too long ago).  Further, with a modern computer almost all memory is error checked in some way or another so a single ‘bad bit’ will either be automatically corrected or something will error out rather than continuing to execute the error.

And now I am thinking about exceptions like Black Hat Hackers that probably do write machine code directly and certainly look for places where changing a single bit will make a program behave differently than intended.  But of course I could get myself stuck in an infinite loop here so I will stop and allow you to get back to something more important.  Like going to a good yoga class of participating in your favorite form of healthy exercise.

Or take a moment to add your thoughts on why programming and yoga (or your favorite form of exercise) are related. I bet my yoga teacher and I don’t have a corner on that market…

I’ve been attempting to acquire a number of new skills and been around people learning new skills for various reasons in the last year or so and it has lead me to formulate what I think of as “The Beginner’s Dilemma.”  The general idea is that as one starts to develop some facility in a new skill, one over assesses one’s competence, sometimes by a significant amount.  At some level this is probably a good thing – if you accurately assessed your ability at the very beginning you’d probably give up.  Or at least I would.  On the other hand, if you over assess too much at something like driving a motorcycle or flying a plane, you might earn yourself a Darwin Award post haste.

As usual, the most important variation on this is in my continued attempt to teach high school students to program, but let me share a couple of short anecdotes from other parts of life first.

My most long-standing version of The Beginner’s Dilemma is ballroom dancing.  When I first started to learn to dance I thought I was god’s own gift to dancing almost immediately.  Nearly twenty years later  (with lots of hours of lessons, practice and competitions) I’m just happy that I can get out on a dance floor without stepping on my partner’s toes while leading something that is recognizably the dance that I am attempting.  Now part of that is because I’m not a natural dancer, but the part about overestimating my ability early on is completely true and not because I got worse from practice!  When taking beginning group lessons today, I see the younger version of me all over the place accompanied by various levels of chutzpah, so I’m not the only one that goes through this phase.

Another blatant variation on this is the effect of new yoga students in Bikram Yoga classes where all levels take the same class.  The last two times I’ve taken classes I ended up near a young man who obviously thought he had the whole thing figured out (different dude each time).  Each of them took a place front and center in the class, which is a good indication that they are ready to show the world what they can do.  On the first day, the young man made it through the whole class, but never held a pose for more than a moment – I actually really enjoy this variation because it helps me work on my focus, especially in balancing poses, there is nothing like someone continually falling over in front of you to practice focus while balancing.  On the second day the dude held all of the standing poses, but completely overextended everything – then he lay down and literally slept through the floor series!  Anyway, I wish them both the best and hope that they make it past The Beginner’s Dilemma hump without hurting themselves.

But this brings me back to the core point which is teaching youngsters to program.  I had a real advantage in the early eighties in that no-one around me new how to program.  So I could ride the overestimation wave long enough to actually get good before anyone came along to assess my work.  And fortunately it’s pretty difficult to hurt either one’s self or one’s Apple II by programming.  Especially when one is young enough to sneer at things like lower back issues and lack of exercise.

But the kids in my class are expected to “know how to program” by the end of the year.  So when one of them spends days tweaking simple functions to draw a  Batman figure rather than spending the time on getting Batman to move and scale (which was the point of the assignment), I’m obligated to grade him down for that.  Right?  And burst a bit of his beginner’s overestimation bubble.  Or possibly a bit more than a bit.  I’ve got to say, that is one of the hardest parts of this volunteer gig.  Of course the kid next to him did something similar with being obsessed with the graphics design aspect of the assignment, but took my advice and spent time at home getting the actual programming stuff.  So I’m not going to beat myself up too much.

So how do you keep a student riding the wave of beginner’s overestimation in his own ability while still getting him to learn the things you want to teach him?

And how do I acquire a new skill myself now that I’ve overanalyzed this issue to the point where I doubt I’ll ever be able to ride a beginner’s overestimation wave myself?  At least I’m not in danger of trying to learn to drive a motorcycle. So there’s that.

I had this crazy idea that we should have the kids write a game of their own choosing as their final project for the semester.  I was particularly interested in doing this because even though many of the kids were still struggling with some pretty basic concepts, I felt like we were not tapping into their full potential in situations where we carefully designed each game for them, setting up a smooth path to success.

This was particularly twisted as even when we set up exercises leading up to each unit project, making sure that we had given them all the tools they needed and having helped them solve the hard problems, they still required extensive leading to get to working games.  When they got there at all.  So what made me think that giving them a relatively free hand to write a game of their own choosing would be a good idea?  Am I insane?

Well, possibly.  But I think back to when I was their age and what motivated me to spend hours on end learning the ins and outs of how computers work.  And it really was the idea of being able to create something out of thin air (and bits, bytes, and nibbles) that kept me up nights pounding away on my Apple II keyboard.  So why not take a chance and give them their heads?  So to speak.

Of course if we’re going to let them build their own games we need to introduce them to some software engineering and project management, right?  Oooops!!!  I carefully set up a schedule including time for design and design review.  Built templates for feature and technical specifications.  Sat down with each team to get them to talk about expectations and force them to draw lines either higher or lower on their feature lists depending on whether they were overly ambitious or entirely apathetic (one of the students put “I don’t care” for all three game ideas).  And setting things up so that they had a deadline to get a working “minimally marketable” game by the halfway point.

So despite a crazy month of January labs every team made it through.  But here is the craziest thing:  The students were almost completely flipped between their ambition level and the completeness of their final games.  Now don’t get me wrong, the kids that were totally into it had cool graphics, neat ideas, and all sorts of bells and whistles.  But their games hardly worked.  The kids that were most resistant to doing anything original (including the “I don’t care” team)  walked away with complete and relatively polished games.

In any case, the fact that we got 13 and 14 year olds to actually meet deadlines (at least mostly) was something of a miracle.  So may you don’t need to lock me up and throw away the key for this one.  But the jury is still out if I ever try something like that again.  After all, it’s hard enough to get highly trained (and paid) professionals to code to a deadline…

One of the things that I’ve been struggling the most with in my attempt to teach programming to high school students is to get them to experiment.  This is particularly hard for me because when I learned to program I had no formal instruction for the first four years, so experimenting was by far the most used tool in my toolbox.

Because of this I’ve been emphasizing that there are many different ways to do things and showing (or getting the students to demonstrate) different solutions wherever I can.  And then I try to get them to compare the solutions again emphasizing that they both solve the problem and where each solution has advantages and dis-advantages.  But in so many cases, they seem to get into a mindset of doing something the ‘right’ way and then they get stuck.

As I was settling into yoga practice this morning, the teacher said something that really connected with me.  We were doing Child’s Pose, which for this style of yoga is one of the most basic and oft-repeated poses.  As such, you kind of feel like you know it after the first class.  But even though there weren’t any new students in class, she spent a couple of minutes encouraging us to experiment with the pose, settling differently in the hips, holding the hands wider or narrower, same with the feet, etc.  Because even in the most simple things, you can train yourself to do them more effectively.

That, of course, led me down the path of other physical training I’ve done including Kung Fu and dancing and marking patterns in how things are taught and how I learn them.  I’m not going to attempt to dump all of the details, but whenever I’ve found a teacher that takes the approach of “your body and your background is different than mine, so let’s try this a bunch of different ways until we land on something that works” I learn much more than the “this is the way it’s done and I’m very successful doing it this way, so let’s get you doing it exactly this way and you’ll be successful too” type of teacher.

So how does this relate to programming?  I’m pretty sure it’s almost the same concept.  For instance, almost any language has a bunch of looping constructs and you use them differently for different tasks and there are plenty of ways that you change up how each of those constructs are used depending on any given task.  And of course as anyone who’s worked with programmers for any period of time knows, there will be endless debates about what the ‘best’ way to solve a particular problem is, with the line often blurring between style and function.  Which is almost a direct parallel to conversations I’ve had with martial artists and ballroom dancers, now that I think about it.

And while I don’t think many of my 15 year old students spend a lot of time practicing yoga (or ballroom dancing, or Kung Fu), I suspect some of them have trained in high school sports like basketball and soccer.  And it seems like the same concept would apply.  Does anyone out there have a good example I can use in a more familiar (to a 15 year old) sport?  Or thoughts on how to draw such a story out of the aforementioned 15 year olds?

One of the kind of cool things about the organization that I’m volunteering to teach high school level Introduction to Computer Science for is that they provide us with some (I think) unconventional supplies.  One of these is a ‘raffle ticket kit’ along with some prizes (the grand prize is an XBOX).  Pretty neat, huh?

That lead my co-teacher (I’ll call her X for now, since I forgot to ask if she has an objection to me using her name in this context) and I into a discussion of what we should be giving out raffle tickets for. (*)  It doesn’t seem like we should do this for things like showing up to class or handing in homework (although this was what was done during volunteer training).  I think we’ve got a reasonably good start at a plan for rewarding “above and beyond” type of behaviors rather than expected ones.  I may have more to say on this once it solidifies, it seems like one of the many planning tasks that I can’t believe full time teachers manage on a regular basis.

So then we went down the path of how to track and reward some of the expected behaviors.  If there are no consequences for missing homework it seems like we will be in danger of the wrong kind of feedback ending in no-one doing their homework.  So X, who has a couple of years of Teach for America under her belt, said “Why don’t we give them gold stars – you’d be amazed at how motivated even high school aged kids get by that.”

After a very brief, “you’ve got to be kidding” reaction, I had two other thoughts.  The first is that I have witnessed many yogis and yoginis that can probably measure their time on this planet by multiples of the kids we’re talking about being very motivated by being able to put a gold star or other type of sticker on their attendance sheet for a 30 day challenge.  Which is a pretty strong argument to do something like that.  It is also so low budget that I can’t imagine that it would interfere with things like an x-box give-away and so low impact in other ways that it shouldn’t cause an interference pattern with our actual grading system.

On the flip side of the coin,  the other thought that I can’t get out of my head is the image of my mom cracking up (and almost falling off her chair) when I told her I got a “gold star” at work.  I was in my mid-thirties at the time.  It really is a completely ridiculous name for an award for an adult professional.  She did mute her hilarity (a bit) when I noted that there was a monetary award associated with it that definitely wasn’t a laughing matter.

But that leaves me with a real knee jerk reaction against giving gold stars to students.  Perhaps we’ll have to get stickers that don’t involve gold stars or stars of any kind.  Or perhaps I’ll just get over it.

Does anyone have other good ideas for low impact and low cost reward systems for high school students to run in parallel with official grading?

(*) Since I was trolling the interwebs for this after spouting my mouth off about it being all right to end a sentence with a preposition in English under some circumstances, here are a couple of references.  The first is a blog post from my favorite linguist, John McWhorter and the second somewhat more practical take from  grammar girl.

There’s an aspect of learning that I’ve been thinking about a lot as I attempt to reboot my own ability to learn.  I haven’t written about this yet though.  Not because it isn’t important.  In fact, I think it may be even more fundamental in some ways that the deliberate practice, the okay plateau, flow, and other concepts that I have spent some time one.  It’s also not new to me, I’ve worked with this concept for years as I coached younger engineers and butted my head against it in some unfortunate cases when managing more senior engineers.

The problem is I’ve never really had an easy way to talk about this concept.  It’s come up in a number of books that I’ve read about Talent and learning, but hasn’t been nearly as heavily referenced as either Ericcson’s 10,000 hours of deliberate practice or Csikszentmihalyi‘s Flow (P.S.) concepts.

So I was talking to my mom about this volunteer teaching gig that I’m training for and I mentioned the textbook that they’ve assigned (The First Days of School by Wong & Wong).  Her response was that she found the Wong’s stuff useful, but that I should really take a look at the work that Dr. Carol Dweck has done.  To which I said, “Dweck, that name sounds familiar” and immediately did a search of my notes to see that her name was languishing in my depressingly long list of “further research required”.  It turns out that she published a normal person consumable summation of her work as the book Mindset: The New Psychology of Success, which I promptly read.

So this concept that I’ve been trying to label as inborn talent vs. willingness to work hard or innate ability vs. stubbornness or any number of other kind of things finally has a nice clean label.  Okay, it’s had that label for quite some time, but now I have something to call it.

Here’s a quote from a 2012 interview of Dweck that sums up her definition of mindset:

In a fixed mindset students believe their basic abilities, their intelligence, their talents, are just fixed traits. They have a certain amount and that’s that, and then their goal becomes to look smart all the time and never look dumb. In a growth mindset students understand that their talents and abilities can be developed through effort, good teaching and persistence. They don’t necessarily think everyone’s the same or anyone can be Einstein, but they believe everyone can get smarter if they work at it.

One of the over-arching themes of the book is that people tend to have one mindset or the other and she goes into considerable depth about well-known athletes and business leaders that operate with a fixed mindset vs. a growth mindset.  And of course if you buy into the premise that a growth mindset is a healthier way to live and learn in general, then a decent part of the book is somewhat redundant.  But she does spend some time on how to put yourself into a growth mindset and how to use praise to put students into a growth mindset.

One of the really cool things that I think even Dweck understates in her book is that this mindset can change from task to task.  Most of the research that she quotes is done on a random set of people (they don’t try to group people by some general tendency towards a particular mindset) and they use some introductory statement to put one group into a fixed mindset and the other into a growth mindset.  One group will hear something like “This is a skill that only some people are good at, we’re giving you a test to see if you’re one of them” and the other group will get “Everyone can do this, we’re just observing some semi-related aspect of the exercise.”  The group that got the latter explanation will do measurable better than the group that got the first.  On a very wide variety of tasks.   So even if you (like me) have a bit more built in fixed mindset that you’d like to admit, you can chip away at this one step at a time.

And all this is made more important and relevant in my current endeavors because I will be teaching computer science to high school students.   When I decided to do this my biggest hesitation was exactly around the mindset issue, although I didn’t yet have that term.  Even though I’ve been struggling with it for years, I did somehow manage to slip into a predominantly fixed mindset learning mode of learning in my formative years.  This is especially ironic since (in case you missed it), it was my Mom that turned me on to Dweck’s work.  But one thing that fell very naturally into a growth mindset for me and I think is one of the reasons that I became undeniably good at it, was programming.  I believe that this was in large part because nobody around me knew how to program. So there was no one to judge how well I was doing (either in a positive or negative way) and put me in a fixed mindset.  I just plugged away at it until I could do more and more things, slipping into that crazy overlap between deliberate practice and flow that is quite possibly the reason for being.

So if the very lack of formal teaching in computer science is what got me into a place where I was able to excel as a programmer, what business do I have trying to teach that very skill?  I hope that the answer to that is to learn how to guide my students in a way that lets them achieve that same feeling of unlimited potential that I had as a teenager discovering the wonders of computers.  And I think that Dweck’s mindset concept will be a key part of how I do that.  Thanks for that, Mom.  As well as all of the amazing things you’ve taught me over the years.

By the most strict definition, it’s been 9 months since I started this reboot project.  But for various reasons I’m going to write off about three months of that time and call this my six month check-in.  Not the least of which is that I hadn’t really gotten to the point where I felt like a top down check in made sense in April…

Here is a paragraph from my very first post which I need to keep coming back to as it is way too easy to get lost in the details:

I’m taking a minimum of a year off of full time employment to dive into this experiment, if this ends up being a year of self-improvement and self-discovery, I’ll count it as a success but not be thrilled with the outcome.  My overall objective is to accomplish the brain reboot and in the process discover my next big thing, which I hope will be a project/career that will both improve the world around me and provide a sustainable living.

And to do this I developed a what I can only describe as a self-directed curriculum.  I’m going to just blatantly cut and paste my original ‘curriculum’ post from October here, as I didn’t really remember it in detail and I’ve been living it…


—–Begin Excerpt—–

Because I am fundamentally a reductionist, I am going to divide my efforts into three broad categories.  One is large goals that I intend to spend something measurable in hours per week over the course of the year to achieve a specific objective.  Another is what I’m thinking of as tools and techniques – experimenting with different methods of learning on small things or specifically aiming at acquiring a particular skill that I believe will help my ability to execute on my larger goals.  The final category is the scatter-shot learning of anything that strikes my fancy.

Well that’s completely amorphous, you say?  Let’s dig a bit deeper.

I’ve already mentioned the top four big things:

  1. Learn a language – there are two major questions to answer here. The first is the language, I’m leaning towards Spanish, but some of the other contenders are Mandarin Chinese, Japanese, French, Latin, Gaelic, and Ancient Icelandic.  This certainly deserves at least one blog post of its own, so stay tuned. The second is technique. I’m not even sure where to start with a discussion on how to learn a language (although I’ve been accumulating ideas from various sources) so again, stay tuned.
  2. Music – While my initial measurable goal is to learn an instrument to some level of mastery, I’d also like to dig more into music theory and develop sight reading skills. Contenders here are piano, guitar, violin, clarinet, saxophone, ukulele, harmonica, vocals and upright bass.
  3. Programming – I’m not even going to try to attack this in a small paragraph.
  4. Writing – Well, let’s start with blogging, perhaps more will come of it.  Although I did just notice that nanowrimo is next month. Hmmm…

And some of the skills that I’m hoping to develop:

  • Speed reading
  • Memorization techniques
  • Analysis/Critique – If nothing else I am going to start reviewing books and teaching company courses that I read and listen to.
  • Math – there is certainly room for a ‘big’ learning subject here as well, but my initial interest is in exercising basic math skills to see if that help stretch my brain and make some other activities easier.
  • Physical skills – Keep doing yoga and dance and perhaps re-introduce an eastern martial art of some kind – I am certainly strongly planted in the strong body helps a strong mind camp.
  • Typing?

I’m not sure that the last category is actually a separate thing, but I’m including it as a reminder to myself to  strike a balance between a disciplined approach and making sure that I have a blast in the process.

—–End Excerpt—–

And of course I gave myself full permissions to morph the curriculum as I went (including calling 9 months 6 months, just because).  So where am I now?

At a very high level, I feel both very good about what I’ve accomplished and pretty frustrated at the pacing.  But a large part of the point of this whole exercise is to get better at learning in general and while it’s very hard to measure that explicitly, I feel some movement in the old noggin’ so that has to count for something…

At the next level, I have stuck with my top four major objectives but would say that physical skills which I had originally placed as a minor player actually ended up getting elevated to top tier status.

And for a quick brain-dump style status report, here’s what I’ve got:

  1. Language: I landed on Spanish and spent some time listening to Pimsleur audio + their minimal reading writing accompaniment.   It was slow progress at best.  I certainly wasn’t able to absorb this information without reviewing multiple times per lesson.  So I broke down and signed up for a small class size Spanish 1 at a local school.  This seemed to get me over a bit of a hump.   I’m just starting level II and fell like I’m making real progress.  I think there is some chance that I will hit at least minimal functionality sometime in the foreseeable future which is definitely further than I’ve ever gotten before with a language other than English.
  2. Music:  I landed on Piano + some ear training supplemented with a bit of music theory.  I made it through a level one piano book quickly as it was mostly review.  I stalled out a bit on the level two stuff but can see myself getting back to that soon.  I am pushing hard on the ear training as it feels like a breakthrough on that would be more fundamental in my general brain training than incremental improvement of keyboard skills.  I am also having a lot of fun going through the Billy Joel songbook (and will add Brubeck as well) – this is definitely not an example of deliberate learning, but may start slopping into flow.
  3. Programming:  I’ve some thoughts on branching into iOs and Android programming, but for now I’m playing with some ideas that have been floating in my head for years for some dance music tools, and I can do initial implementation of that nicely in the Microsoft universe.   In fact as I’ve started spending a bit more time on this it’s pretty easy to get lost in it and not want to do anything else, which is great.  Also, I signed up for a volunteer gig to teach intro to computer science to high school students, so I’m busily training to teach this stuff.  There will definitely be more on that here shortly.
  4. Writing:  Most of my writing has been in the context of this blog.  Alicia and I took part of an online fiction writing class, but stalled on it as we both manage grammar pretty well and there was a bit too much emphasis on basics in that class.  But one of these days some fiction may escape me…
  5. Physical Skills: I’ve had a blast starting to learn to tap dance, which is something I’ve never tried before.  Learning a new physical skill has definitely been a key part of helping me think about how I learn in general.  I’ve also dug deeper into yoga, adding a vinyasa (or flow) style to my practice and spending more time working with poses on my own rather than just pushing through them in class.  This is definitely a place where I’m playing with deliberate practice, but I certainly have a long way to go.

For the small random things, I’ve spent considerable time on speed reading as I think that’s the biggest bang for my buck.  And of course I upgraded physical skills to a major skill.  I haven’t been great about attacking small projects though and that’s a little disappointing.  Although if we were to add cooking and canning into the mix, they might count.

And of course my progress on the top level of what I want to do when I grow up is on the slow side.  But re-awakening my joy in programming and taking a stab at passing that on to others in a new way has to count as a good start, right?