Bob Ross, Pigmented Lullabies, And WordPress Sucks

There are three parts to this story.  One is about Bob Ross and insomnia.  The other is about traveling and painting.  The third is about how WordPress sucks, or really how WordPress.com does.

Bob Ross and Insomnia

I actually purchased the entire collection of Bob Ross DVDs off eBay a while back.  I think that’s like 30 DVDs or 30 seasons.  I got them because I like watching him paint and following along with a palette knife for fun.  Just a fun Saturday night in the Show household watching Bob and painting.

I (and many other people) have noticed that Bob Ross has a soothing effect on you which makes you fall asleep.  That soothing voice.  That soft scraping and brushing sound.  His laugh every time he bangs the solvent off his brush then gives himself lymphoma by wiping it on his pants.  Just something about watching him puts you to sleep.

But, then I realized this phenomena happens with *every* painting video I watch.  I swear I cannot watch a painting video without passing out.  I have quite a few, as I like to follow along and see if I can replicate their paintings as a way of studying.  They’re just relaxing and enjoyable, but if I’m not trying to follow along then BAM pass out.  Drooling, out, coma, worse than eating a bag of Doritos and 2 tukeys gone.

This gave me an idea….

Plein Air Painting

I travel quite a lot for work or personal activities and one thing I like to do is drag along some kind of painting equipment and do a painting outside.  The fancy French phrase for painting outside is “En Plein Air” and since I’m an American I butcher that into “plain air y’all.”

I love painting outside.  It’s simultaneously relaxing and frustrating to go outside to paint.  It’s relaxing because you’re outside, you get a bit of exercise walking a long distance with your gear and back, you have the sunshine, people come talk to you, and honestly who cares if your painting sucks.

Oh, that’s why it’s frustrating.  It’s damn hard to make anything decent outside as just about everything is stacked against you.  That sunshine?  Better bring sunscreen.  That plain air? Better hope it doesn’t rain.  Those people you talk to? They will talk your ear off for hours.  Eventually I just gave up trying to make something decent and now I just use it to practice and maybe get some ideas for a real painting at home.

But, this added to my idea….

PeerTube Is Awesome

Youtube is the way most people host a video show, but youtube is dangerous if you want to give away free content or to do something in the edge of acceptable.  It’s too easy for an army of idiots to demonitize your content which gives all the money to Youtube and you’re screwed.  In my case, I was reluctant to use youtube because of the constant harassment, their demonitization and censorship policies, and a host of other things they just do plain wrong.  Sure, it’s the cheapest way and you could make some money, but it’s too risky all my hard work would get erased.

Not to mention that if you put 2 in chords of music (which can’t be copyrighted) giant corporations will snag your content and make money off it.  I actually think it is entirely unethical for Youtube to allow companies that are being critiqued by a critic to earn money on the critic’s work.  People who review movies and video games should be allowed to review them as a right of free speech and not have the money go to the company being critiqued.  I’m sure Roger Ebert would be livid if he was told that Sony would get his paycheck for the month because he talked about 2 Sony movies. But that’s Youtube.

Then along came PeerTube which allows you to host your videos but share the load using Webtorrent.  PeerTube gives you a very minimalist Youtube experience and is moderately easy to install.  As usual their instructions aren’t super good but I’m able to setup a PeerTube instance now with Docker in about 10 minutes.

My only complaint about PeerTube is that it is definitely aimed at a Youtube crowd, so doing it as a vlog or similar journal wouldn’t work too well.  I have however had success at embedding videos right into a WordPress like I did with this post for my refactoring course I teach online. Really simple to embed videos and also get the webtorrent functionality, so I’m happy with it.  I can use PeerTube for videos and embed them into a blog….except….

WordPress Sucks

This blog you’re reading now is hosted on WordPress.com and you cannot embed a damn thing here.  They want to push you toward their shitty and expensive video service so they block any attempts to embed custom HTML.  I’m sure they have some dipshit lame reason with something like security, but it’s really all about making me pay for their video service.

But, I’m also kind of tired of WordPress in general.  I started using it to just test out what it’s like to try to use it and, while it works, it isn’t nearly as polished and capable as people claim.  It’s also expensive to run either from them or from yourself  where it requires a decent amount of hardware just to basically serve static files.  The inability to embed PeerTube on wordpress.com while being able to do it on a wordpress I host is the last straw.

Going forward, I plan on doing videos instead of writing, and I’m hosting them myself with PeerTube and possibly VuePress.  I have to say that usually people who make blog generators totally screw it up.  I tried Hugo and it was a total nightmare brainfuck of figuring out where things went in some bizarro world where the template controlled how my documents were laid out and deviating from your typical blog format was nearly impossible.

But so far VuePress ends up being pretty easy to use, works mostly as expected, is easy to extend and alter, and produces a cheap easy to run featureful static website that’s modern.  I also feel that VuePress is a gateway drug to using Vue.  I think if the Vue project showed how to take a VuePress site and then use that to make a working product they’d have some great docs and a great way to get people to use Vue itself.

Oh yeah, that idea….

Pigmented Lullabies

I realized that I travel to a lot of really great places.  Hawaii, Miami, San Francisco, Chicago, Seattle, Portland, Washington DC, and even more before I started painting.  In that time I had this idea to chronicle or record what I was doing.  I wasn’t making great paintings outside, but it was a lot of fun and I figured other people might enjoy it.

I also remembered that watching someone else paint is very soothing and relaxing, causing even the worst insomniacs to fall asleep quickly.  I should know since I am very happily an insomniac.  I love waking up at 3am and just getting up to go work.  But sometimes I want to sleep so I put on a painting video and I’m out in no time.

It took me a very long time to figure out all the particulars of recording video and editing it in Davinci Resolve (which could be an entire course on its own), but I’ve now been able to produce 5 videos (a total of about 7 hours of content) and host them myself at ZedShaw.art.  You can see me getting better at editing the videos and if you watch my most recent one in San Francisco at Ocean Beach you’ll see the majority of the features I want in the video.

This is so much fun and so easy that I’m going to be converting this blog into mostly video content.  I’ll have an announcement about that in the near future, but honestly I’d rather spend my time writing for books than blogging, and making videos is now easier for me than writing a blog post.

Better Than A Rubber Ducky

My final idea about my painting videos is that it might help you figure out bugs.  Let’s say you can’t solve a bug in your code.  One trick is to talk to a rubber ducky and explain the problem.  Another is to find a way to relax.  I like to paint.  Or go for a walk.  Then I usually get the answer.

If you’re stuck on a bug, then I’m curious if watching me paint will help you out.  The videos are fairly quiet, usually with random street noise or a soothing ocean wave sound, and maybe a little talking.  I imagine you could just turn it on and leave it running while you code, and when you get stuck or need a break just watch it to chill out.

Let me know if that works.

What If It Worked?

I talk about people sending me suicide threats in this essay.
If you are contemplating suicide, then please call the 
National Suicide Hotline at 1-800-273-8255. There is no shame
in asking for help, so make the call.

I receive about 1-3 angry emails a month regarding my positions on various things.  The latest round of “Fuck You Zed” emails was regarding my stance on Python 3 being a complete waste of human energy.  That’s understandable as many people who have absolutely no lives at all tend to attach their narcissistic egos to fake things in order to add some desperate level of meaning to their pathetic totally useless lives.

People are so attached to their programming languages that they even hate newbies who just don’t ask the right questions in IRC.

fuckyounoob.jpg

We’ve all, as a community, decided that beginners are on the list of people we all can hate.  I mean, if this is how someone treats a dude who just wants to get the end of a file, can you imagine how they feel about me?

I’m sure this <feline> asshole is just sooooooo tired of beginners coming and asking stupid questions, but then you wonder why the fuck they’re on IRC in the first place if it’s such a total waste of time?  Actually, I know why.  They can hide behind the internet, safe from a solid punch in the face, and treat people like crap to make themselves feel better about basically being total losers.  Seriously, if the vast majority of your authority in life comes from ASCII text caps lock screaming at people just trying to learn something then you have got to be one of the biggest losers out there.

But, let’s say you’ve spent your evening treating innocent people like shit with your ASCII BLAST importance and your insecure narcism just really isn’t healed.  You are still resentful of the fact that you’ve memorized every page of the ANSI C standard and nobody recognizes that as the pure genius it actually is. You were in the SPECIAL KIDS class God Motherfucking Dammit!  You were destined for greatness!  You worked, like, sort of hard too so it should be you that’s famous!

Nope, you are stuck as a PHP programmer, toiling away for peanuts making billionaires wealthy when really it should be you, Mr. Gifted Fear Failure Esquire, getting the book deals and not that asshole Zed A. Shaw.  Who fuck is that guy anyway?  He constantly makes mistakes while he’s putting out all his books, and code, and content, and paintings, and building guitars, and playing guitars, and you know what, fuck that guy.  You know what you’re going to do!

Death Threats

I get a few death threats too.  My most recent one was this:

go_fucking_kill_yourself.jpg

If they give a valid email address I usually rip them a new one.  You see, violence is a bad thing, but self-defense is not.  Sure, you may hurt someone, you may even kill them, but if they were trying to kill you or hurt you, then you’ve actually prevented an evil thing by stomping them into the ground.  And there’s one thing I’ve learned over decades of dealing with violent people:

Violent people do not respond to kind words and reason.  They only respond to being hurt.  After you’re done kicking their ass, sure, they might be amenable to reevaluating their life. Chances are though they are sociopaths and that means they are not going to change.  Same goes for narcissists.  Psychology still can’t figure out how to cure either afflictions, and in the world of violence, narcissism and sociopathy go hand in hand. Can’t cure them or stop them with words, so your only option is harm.

You are perfectly allowed to use violence to defend yourself or someone you love.  Sheeeeeiit, martial arts were invented by Buddhist monks for this damn reason.  I think if Buddhist monks can have this attitude then you can my friend.  In fact, I think allowing violence when you can stop it is just as bad as doing it yourself.

But I received this threat and couldn’t reply to the loser who sent it because he wasn’t man enough to enter an email address.  I just posted it on Twitter and then moved on with my life. At least, until I realized something.

People Die From This

If you ever read news about online bullying you’ll see the obvious tragedy of suicide and abuse.  What you’ll also see is a complete lack of remorse from the perpetrators.  They’ll usually choose someone who is an outcast in their society.  A nerd, a poor kid, or someone with some disability that gives the abuser a reason–blessed by society–to hate the victim.

Once the larger group decides that this person is a valid target the sociopaths take their cue and feel justified in their abuse.  At first it’s maybe name calling, then it escalates to humiliation, destruction of their livelihood, life, and then escalating further until they’ve driven the poor outcast to the edge at which point, they give the push.  That one little tug, aimed at a human being weak from continuous abuse, and designed to make them end their life.

And when the killer gets caught, almost universally one of the first things they claim is they didn’t do it because it was a suicide. It wasn’t their fault, they didn’t actually kill them, and it becomes clear the abuser, the killer, is not remorseful.  It was not a game.  It was not an accident.  It was a calculated act following a calculated chain of abuse designed to destroy another human being for no real reason.  They’ll claim the victim wasn’t even human. The victim did some incredibly terrible thing, that turns out to be something minor.  The abuser will do anything to avoid admitting that they killed someone.  Society said they could kill them.  Why aren’t they getting a trophy?

You see this with child abusers, spouse abusers, bullies, rapists, and many sociopathic killers.  You’ll ask them why and they’ll tell you the victim deserved it.  Why?  They ate a yogurt.  They wore a short dress that day.  Their skin was different.  They voted for the wrong politician.  They like the wrong genitals.  It’s always something that is incredibly trivial in the grand scheme of things, but it doesn’t matter what the victim did.  All the victim actually did was exist and happen to give their murderer or abuser an excuse to exercise his or her desire to satisfy their narcissistic need to hurt someone that day.

Query

I started wanting to know why someone would send this?  I mean, did they think it’d work?  They would send a one line sentence with poor grammar and I’d jump off my building?  I’d blast myself in the face with a shotgun?  I’d drink some drano? Slit my wrists in the tub?  Did they think it through?  What if I was having a particularly bad day and all that was needed was this tiny push? This message that I’m worthless and unloved.  That I’m a nobody who deserves to die because…

I don’t agree with the direction of Python 3.  Or maybe, I wrote a thing about abusive people in Ruby ten years ago.  Yes, TEN years ago.  Or maybe I hate Haskell?  Like I said, once a community decides I deserve it, the reason doesn’t matter.  Any reason is good enough to justify the abuser’s actions.

Whatever their reason, I don’t need the answer.  I know it all too well.  I know this person is a pathetic fucking loser.  I know they wrote that hoping I would die, hoping to kill me, but needed an excuse, and my disagreement with this totally inert concept called Python/Ruby/Haskell is all they needed.  Their community has crafted the right amount of propaganda and cohesion to allow any decision about my “asshole” status be the abuser’s cue that I’m fair game.  They can threaten to kill me, force me to suicide, and it’s alright.  I deserve it right?  I mean I hate Python 3.  That’s important.

It Won’t Work

If people think that I’m easily intimidated or threatened they’re sadly mistaken.  I’ve defended myself from abuse most people could never have survived, and some little worm pumping chars into a web form is an ant by comparison.

Now, I try my best to be good to people, but I have a very strong sense of self-defense and vengeance.  I try to be careful with it, but I have no problem destroying someone who tries to hurt me.  Like I said, you have a right to defend yourself and people you love.  I’m also definitely not some little weak snowflake nerd, and I definitely am not going to kill myself because some pathetic weakling took 10 minutes to write a sentence demanding I do so.  Fuck you.

More importantly though–and this I hope really pisses this asshole off–my life is fucking awesome and I’m in the best mood and position I’ve ever been in romantically, financially, socially, and in every way that mister Help Form Killer can’t possibly compare.  While this guy was wasting time filling out this shit I was probably doing something awesome.  Shit, I was probably doing 10 awesome things that day.

The Reward

Sending this across state lines is a felony, and I want this person in jail.  I want them publicly humiliated and dragged out in court to justify why they tried to kill me.  You laugh, and say they didn’t try to kill me, but that’s how we should take these demands of suicide.  It is only done because it might actually work one time, and when it does, this person will go back to eating Cheetos and jerking off to CGI lolicon.  They won’t care.  In fact, I bet they’d be happy and brag about it.  They were justified because I hate Python 3, and for that, they deserve to be in jail.

With that in mind, I am now offering a $1000 reward for any information that leads to the arrest of this person.  It’s not much, but I’m going to bet that this loser’s friends could use a grand and don’t like him at all.  If you have information, then feel free to send it to me.  If you want to stay secure I have my My GPG Key for you to use.  You can email me at help@learncodethehardway.org any time to send me your information or post a comment on this blog.

Fuck you loser.  I hope I catch your ass.

 

You Don’t Need Talent To Enjoy It

I bought some really nice flowers yesterday and made sure they were not blooming yet.  It didn’t matter because the damn things start blooming about 2 seconds after I put them in water and that means they will be dead by tomorrow.  I had to crank out a quick painting of them today, but I also had to work on my books.  I setup an easel in the living room and I would use the painting as a reward for getting exercises done.


That’s the only photo I saved from the painting. It came out terrible. The only thing that worked about this setup was that it made me want to get exercises done.  I’m definitely going to use that hack in the near future.  Other than that, this painting was a total absolute turd of paint.  I could not get the values right, the color, nothing.  Flowers and portraits are my most difficult subjects for sure, which is why I practice them the most.  It’s the subtlety that gets me and requires my concentration, and I have too much of a heavy hand and a love of sloppy thick paint to pull that off without effort.

I wouldn’t say I have any particular talent at painting.  I’m definitely not a genius and I put in a lot of work to be even moderately alright at it.  I know a ton of tricks and I’m fascinated by the technology used by European painters from the 1500-1800s, but that’s not talent.  That’s just being able to read some books and do what they say.  If you sat me down in front of a person, and said I’d get $200 if I can do a decent likeness of the person in 4 hours I’d just laugh at you.  Maybe I’d pull it off 1 time out of 10.

I’m also not necessarily a “visual person”.   I do these weird experiments where I practice painting an object from memory, which you would think makes me a genius with some kind of photographic memory.  Nope.  I read a book on how to learn to paint from memory and did what it said, then adapted it based on research from other books and articles on memorization.  Everyone could learn how to do it if they put in the time and believed they could.

I love to paint.  I just love everything about it.  The feel of the thick paint going on.  The way I can use color to trick the eye into seeing something that’s not there. The random times when it clicks and I groove right into a damn good painting without any effort. Painting outside and talking to people.  Everything about it is enjoyable and I could give a fuck if I have any talent or not.  I’m enjoying myself and I get to give them to friends.   Sometimes I sell them. Lots of times I just toss them.

It’s all about the moment and the challenge.  The feeling of that meditation that paint gives me.  My oh my do I love self-portraits for this.  Self-portraits and landscape painting quite literally saved my life at a time when everything was sad and dark.  Doing paintings of my face helped me reconnect with who I am. Painting outside got me out of bed.

So many people think you need talent to enjoy something, but I’ll tell you having zero talent is liberating.  You can stop worrying about the end result and just enjoy the process and experience.  Just go for it.  It really doesn’t matter if what you create is any good.  All that matters is if you learn something for the next time.

 

 

Vignettes Of Terrible Art Teachers 2

She’s standing in front a TV playing a creepy video of a gender neutral hair model with a dinosaur bone in front of it wrapped in birthday present wrapping paper.  “What do you think of this piece?”  Art is always a piece.  Artists are never “popular”, they’re always “important”.  Every piece by anyone moderately popular is important and must be taken seriously.  This piece is by a student, so I’m not sure what the rules are here.  Will I still be required to prostrate myself at the altar of artistic expression, or can I say what everyone is thinking?

I go for the latter, “It seems like the artist is just doing things at random and is making fun of video installation art.”  Immediately the teacher gets visibly upset.  I’m being cynical. I have no idea what I’m talking about.  All the other true believers attack my statement.  I have no right to be so cynical.  I don’t know why this artist made this so I could be criticizing someone who was raped and this is their expression of their past experiences.  I just stand there and take it, since I’m outnumbered 1 cynic to 12 true believers.

The teacher is looking at our paintings in a critique class and praising everyone.  She’ll ask them why they painted this road, or that building, or their face, and the experienced students know the game.  They effuse wildly about their personal connection to the subject.  How deeply the construction cranes in the Dogpatch move them to tears and impact their life in deep meaningful ways.  Before that this student was into a ceramic bird that changed her life forever.  Another had pasted some flowers onto a photo of herself, but the real meaning was her ever changing views on feminism.  Another talked for 20 minutes about how this trip to Muir woods changed her life in profound spiritual ways so her paintings of roads are an expression of her deeply moving experience.

The teacher comes to my paintings and asks me why I painted them.  I say, “I wanted to practice noses.”  She scowls at me and says, “It seems like you aren’t personally attached to your subject.”  I confusedly pause then ask, “I’m not personally attached to my face?” She completely misses the absurdity in this question and fires back, “Yes, it seems you’re just painting it because it is there, not because you truly love it.”  I look around all the other true believers are staring at me with a mixture of sadness and incredulity, except one.  She’s rolling her eyes with a look of, “Sorry dude, she’s an idiot.”

I’m in a class billed as a figure class that will make me more expressive and find my “true” artist inside.  I actually don’t care finding my true artistic expression.  I just want to get more figure classes in, and this sounded like a lot of fun.  The class would teach us to apply different techniques in a situation where a nude model would pose while different color lights are cast on them with music playing to set a mood.  The teacher was also really nice and a very good painter so I figured I’d learn something.

During the class I’m just sucking ass and can’t figure out why.  I’m trying to paint the figures but the music is distracting, the lights make no sense, and the teacher is constantly waffling between “be loose, don’t think” and “why isn’t that drawn correctly?” I try as hard as I can to satisfy both goals of not being accurate and also being accurate but it’s impossible.  On the final day I realize that, given the models are all white skinned, then the crazy color lights mean there is zero flesh tones.  Aha! Why the hell didn’t the teacher just tell me this?  “Because you have to discover that for yourself.”  Well then why am I paying you money?

About half way through the course I ask why we’re doing the lights and the sound.  She says so we can’t think about what we’re doing.  So I ask then why are we expected to be accurate in these conditions?  She says if you’re really an artist it’ll be accurate.  I ask if she does this with her paintings and she says, “Oh no, not at all.”

 

Vignettes of Terrible Art Teachers

I sit down in the class and start setting up my gear.  Brushes, paint, palette, all pulled out from my bag.  I forgot to bring brushes on the trip from San Francisco to New York so I ran to a Blick the day before and bought the cheapest ones I could use for the class.  Some simple synthetic brushes that would work.  The teacher walks over, picks a brush up, and goes, “Oooooooh look at your fancy brushes.”  I have literally met the man for an hour and he’s already insulting my gear.  I laugh and say they’re just cheap ones from Blick and he scrutinizes them, eyes scrunched up, like I’m lying, before putting them down.

He instructs us to make a grisaille of our still life setup, copying from a photo we found online.  I copy it, matching the values and he observes me do this the entire time.  I used alkyd paints so they would be dry the next day.  The next day he comes in and he gives everyone a long lecture on how we have to make our underpainting a lot lighter or else his method won’t work.  I look around the room.  I’m the only one with a dark grisaille.  Why didn’t he tell me that before the paint dried?

The second day I talk to a student from the school that’s hosting us and show her my funky Bob Ross paintings as a joke.  She immediately points to the middle of the painting and say, “What?! You can’t do that!”  I say something like they’re just a joke but I can kind of do whatever I want.  “I’m going to tell your teacher.  He needs to talk to you about this.”  She storms away angry.  I’m dumbfounded anyone would have this reaction at an art school, but shrug it off thinking, “Nah she’s not going to do anything.”

The next day she takes the teacher to lunch.  The day after that, he takes me to lunch.  He spends the entire lunch trying to convince me to not attend this school or study their methods because of my Bob Ross paintings.  He said I wouldn’t fit in at that school, and that my views on art are different from everyone else’s.  I just flat out told him, “You’re right.  This place is a damn cult.  There’s no way I’d study here if people react this way to a joke Bob Ross painting.”

It took him an hour to gradually crush my aspirations to be an artist, and it almost worked.  Thankfully, I have a high dose of “Fuck You” in my blood to counteract people like that.  I shrugged it off a week later and went back to studying anyway.  But, I can’t imagine how someone else would have taken it.  That kind of interaction would have derailed many students permanently.

Copying & Repetition

You ever hear parents complain about their kids TV habits?  “Oh my god! If I hear Blues Clues one more time! Timmy plays that damn video over and over and over.”  What Timmy is doing is learning.  Timmy probably also mimics his parents and siblings actions, copies their speech patterns, observes their habits, and repeats them over and over.

Copying other people and repetitive training is the foundation of education, but in today’s education this has been thrown out in favor of “conceptual learning”.  The idea of conceptual learning is if you expose someone to the concept of a subject then they’ll have a higher more refined understanding of the topic than simple copying and repetition (what they call “rote learning”).  The reality is conceptual models of education simply find students lucky enough to naturally know the topic, and then leave the rest to fail and flounder.

In the united states, there is even a slight racist tinge to the attitude of conceptual vs. rote education.  I’ve heard many people say that “Asians really can only copy others because they use rote education in school.”  If you’ve spent any time studying Asian art and culture you know this isn’t true at all, and is a very racist attitude.  Whether it’s the Ruby Programming language, or BABYMETAL, or Old Boy, it’s entirely wrong to think that Asians are unoriginal little robots because they learned by rote.

There’s also a strange fear associated with rote learning that says if you learn rote you’ll somehow be less “creative”.  The problem with this is that nearly every creative thing you do requires rote practice.  The idea that I’m going to learn the major scale on a guitar by just learning the concept of a major scale is laughable.  Nobody who teaches music thinks that.  I learned guitar from repetition and copying other guitarists.

Painting might be the next discipline someone who believes in “concepts” puts forward as an example of avoiding rote learning.  Again, there’s a very long history or repetitively copying the works of other artists. There’s even a term for it: “Master Copy”.  Every great artist and almost all art schools have copying other artists as a way to learn to paint or draw.

If doing rote copying turned painters or musicians into unoriginal robots then all of them would be that way.  Painters and musicians are frequently put forward as the pinnacle of creativity, so clearly rote copying doesn’t impact your originality.  In fact, the dividing line between amateur and professional is how much they practice, and practice is repetition. Artists do small studies in a formal way. Musicians play scales their whole life, again repetitively copying.

How about writing?  Again, you learn to write by first copying the alphabet, then small stories, then trying to write on your own, and reading and trying to emulate your favorite authors.  Copying and repetition is all there.  Memorizing a poem is copying and repetition.  Reading and pulling out quotes and phrase structures is also copying and repetition.  Every author who is any good copies other authors and repeatedly writes almost obsessively.

Martial Arts, Dance, Singing, even Mathematics is full of copying and repetition.  Denying the role of these two practices in education denies what is a foundational aspect of human learning.  This is even the foundation of non-human learning, so why is it that people in the computer science field think there is no role for copying and repetition?

Rote in Computer Science Education

Copying and repetition is necessary in education because it builds instinctual basic skills someone needs to understand the more abstract conceptual parts of a discipline.  Nobody thinks you can memorize all of Jazz, but they definitely know that if you can’t instinctively play a scale then you’re probably not going to be able to play Jazz.  Nobody thinks you can memorize all of art, but if you drawing or color isn’t instinctual then you are going to struggle.

I believe Computer Science education could benefit greatly from copying and repetition at the beginner level and possibly later.  Copying is how a vast majority of programmers learned to code, but many CS educators deny this fact.  If you’re imagining yourself at 12 trying to learn to code, then I’m betting you had either a book or website with code that you copied and made work.  This should just be how we start people in programming, and not the current method of conceptual “weed out” classes.

Repetition is a mostly un-researched aspect of CS education that I’d like to explore more.  I believe that repetition happens naturally if you have copying as a base part of the educational experience.  However, I feel that drilling and repeating aspects of a language that need to be instinctual would improve retention.  For example, if students had to memorize all the lexemes and syntax structures of a language while they’re copying small working programs.

I think the main reason why this is ignored or vilified in CS is the same reason that most programmers simply can’t teach:  They are so far removed from their beginner experience that they forget that they actually learned to code via rote learning.  We see it all the time when a programmer attempts to teach non-developer and immediately tries to get them to use Vim and write C code.

The experienced programmer has completely forgotten the nights they spent repeatedly copying other people’s code and writing and rewriting buggy code to make it work.  To them this isn’t “rote” because they were so deep in it that they can’t see all the implied rote work actually being done.  They were also 10, so their brains were very bad at meta-cognition and can’t really say why they thought anything, so how can their recollection of their self-education possibly be accurate?

Hopefully Computer Science will adopt the educational style I’ve found in Music for beginner, and painters for intermediate developers.   I believe an early training that involves a mixture of rote (scales, chords, ear training) followed by copying and modifying (learn a song and try to improvise) will benefit beginners.  For intermediate programmers I think the Painting style of education would work well:  copy master works and create your own studies of simple subjects.

Adopting these two models would make CS accessible to more people, and make it easier for beginners to transition to intermediate and then advanced skills.