The 4 Things 12-Year-Olds Taught Me About Coding

For the main 8 weeks of this summer, I spent some of my wildest, most intense, and formative work-weeks ever teaching coding to seven different groups of pre-teens. (and one wonderful duo of 14-year-olds) I had kids in my classes who had barely ever touched a computer, kids who knew words like “java” and “variable” but had never coded before, and kids who already knew two languages.

I taught primarily JavaScript, utilizing a fun little device invented by the BBC and Microsoft called a micro:bit. I also taught Java, a little bit of Scratch, and Python. My students used Processing to make games, they used the Cozmo SDK to experiment with robotics, and sometimes they worked on old-fashioned text-based adventures.

It wasn’t a job for the faint-of-heart. I won’t lie: the pay isn’t exactly cushy, and the hours are long. But, not only was it extremely rewarding to see my students grasp coding principles and build impressive projects, I believe this summer also made me a much better programmer. In an attempt to preserve some of that improvement, here are some of the key things I picked up from my 8 weeks:

Visual representations are always (always) useful

I never had a situation while teaching where drawing a picture or diagram did not help. When teaching a new concept, I would draw it out. I feel like my students often learned more from my lop-sided doodles of boxes than they did from my actual explanation of how variables store data.

The same thing applies to particularly complicated programming problems or finding an annoying bug. I would take my students up to the whiteboard, and we’d draw a flow diagram of how the code worked, or draw out what the code was supposed to be doing. 9 times out of 10, the drawing caused enough of a realization that they could finish fixing their project themselves.

Sometimes, if you’re having trouble, you just need to pull out something to draw on.

Taking breaks is key

This tip is one that I hope most people know already. It is one that I’ve always theoretically known – I’m just very bad at following it. See, my normal coding process looks like this:

a) receive an assignment

b) devise a solution

c) code until it works

It’s not the healthiest of methods.

Thanks to the daily schedule of camp, I was forced to walk away from the bugs in my student’s projects and do other things. (like, for example, spray them with water guns. It’s very therapeutic) The number of solutions that came to me over lunch or breakfast is astounding. I should really take more opportunities to step away from the code…

If you’re trying to learn, never copy code

There’s this idea that I see in many coding circles of creating “tutorials” to learn a new language (or tool, or API…) that seem to consist entirely of looking at pre-made code and copying it down word for word. I really don’t think this works in terms of retention or actual understanding.

Sure, coding demonstrations are great as that: demonstrations. When it comes to the actual writing of code, if you want to remember how to do it, you really need to change or re-apply it somehow. The kids that always copied the code directly from the whiteboard? They continued to need that prompting and had trouble coding on their own. The kids who took the extra time and questions to really understand something, and then wrote their own version? They could really go deeper to write and understand their own programs, barely needing my help later.

The solution doesn’t always have to be iterative, or the most efficient. Sometimes it just has to work

If you’re a programmer, you probably know DRY. You probably know Big-O notation. When you’re trying to have good coding style, or you’re being graded on runtime, they feel like the most important things in the world.

Now, imagine you have a small project. A tiny one really. None of the code is very complex, O² or O³ runtime will still take fractions of a second. No one is going to be grading your style. You might even be on a bit of a time crunch.

You could spend a while figuring out the MOST efficient solution with the LEAST amount of repetition. Or, you could take the most obvious, most code-repetitive and not-super efficient solution that you can already picture the code for, and just get it done. Sometimes it’s best to go back and fix it/make it a better piece of code later, so that you can move on to more important things.

On Summer Camp

Yesterday marks the final day in my second week of working at an undisclosed, technology-focused, summer camp. It’s wild, it’s hectic, and it’s absolutely exhausting. But I kind of love it. There’s just something about working a job where there’s always a new challenge and all the employees want to work together to make the end product great.

Weekends are good too, consisting of lots of group activities. Backyard cookouts, lots of board games, and a visit to a very cute cat cafe last night.

Kids are a lot like cats: (this is really the best comparison I can make) They’re finicky, prickly, and often unexpectedly curious. The littlest things can trigger the biggest reactions, but when you take in the whole you can’t really hate them for it.

Teaching them coding can also be the strangest thing. I may have had my forays into HTML and CSS when I was in middle school, but I didn’t start coding in earnest until the spring semester of my freshman year. HTML can include variables, but I had no clue what a boolean or a conditional or a loop was in high school, much less at age 12.

The thing about kids is that they are usually so ready to get it, even when they doubt themselves. But when they manage to stay focused and ditch the fear of being wrong, they can make really cool stuff. When they don’t manage to stay focused and try to run all over the place… well. It’s still summer.

The most gratifying parts so far are the moments when a 7-year-old who walked in the door barely able to type tells me she loves the class, a child is shocked at how long I’ve been coding and exclaims “you’re so good!” or when they try to teach me how to play their favorite video games.

It really is the little things.

Fall Semester 2017

The best part about fall was probably how much more comfortable I’ve been on campus. I have a major now, friends, a routine, and some favorite haunts. But it also was a semester with some change. I feel I’ve had a bit of an overall in extracurricular activities. I left a few things behind (namely, swimming) and embraced one or two new ones.

This year Labor Day was legitimately the first weekend after school started. (UIUC schedule, what are you doing?) Labor Day almost always means my birthday. This year it fell on that Friday. Thankfully, my roommates family is way too kind, and instead of sitting alone in the empty dorms, they took me in for a few days. It was refreshing to spend some time in a part of Illinois I would probably never see otherwise, and again, they’re way too nice.

Classes this semester mainly taught me a few things: Even fun English classes are more reading than my schedule can accommodate, (beginning) political science is dreadfully boring, calculus 3 is harder than it looks, and I much prefer theoretical computer science to actual programming work. That last one has me thinking a lot about where I’m heading. I always knew that even the most prestigious programming job at somewhere like Google or Microsoft would not be the one for me, but now I’m thinking grad school and research or the like might be in my future. App making is cool, but pondering the next big theoretical breakthrough might be more my speed.

When I haven’t been studying, I’ve mainly been spending my time with my sorority. We started off the year strong with the largest amount of new members we’ve ever seen, and had a great semester of activities and spontaneous meme-making. I truly love them so much, and how close-knit we remain, even as we outgrow the chapter rooms and office that the school allows us to have. Some highlights: barndances, smores, study hours, halloween costume shopping, clue week, our homecoming float, and my two lovely littles.

Early October brought something I had been waiting on for a while: The Script’s concert right in Champaign, IL. Before this concert, I don’t think I realized just how many instantly-recognizable songs that band had written. It was a fun, ecstatic time. A week later, October 13th, was the University’s 150th anniversary, and they set up a ferris wheel right on

the quad. I can’t make this stuff up, y’all. I waited over an hour to ride that thing. Can’t say I regret it, though.

Despite looming assignments and final projects, I spent basically the entirety of Thanksgiving break intermittently watching Stranger Things and working my way through the newest 1200+ page book in a favorite series. I needed the break, even if my final weeks would have been less hectic had I spent more time on schoolwork.

At the end of the semester, (literally during finals week) I celebrated Hanukkah away from home for the first time. I didn’t realize until the day arrived that I’d never actually lit a menorah away from my parents. It wasn’t a particularly important moment, but it was a bit of a surprise. I do love that holiday, however (un)important. The biggest sadness was probably that I didn’t get to make our yearly latkes until I got back home.

That about wraps it all up. I’ll leave you with a (short) list of what I read during the semester. Next year’s goal is probably to waste time less, and read a bit more.

This Semester’s Reads:

Warcross by Marie Lu

I Hate Everything But You by Gaby Dunn and Allison Raskin

Turtles All the Way Down by John Green

The Lord of the Rings Trilogy by J. R. R. Tolkien

The Gormenghast Trilogy by Mearvyn Peake

Oathbringer (Stormlight #3) by Brandon Sanderson

Madrid + Barcelona

Hi, all! I’ve been done with school since about the second week of May, but I haven’t been around much since just a few days after arriving back me and my family jetted off to Spain! Despite speaking Spanish, I’d never been to Spain proper, and as my mom and dad both had art they wanted to see there, it seemed like the place to go.

We first flew into Madrid and were there for a few days. We mostly walked around the city and saw a few art museums such as the Prado and the Reina Sofia.

After seeing our fill of Madrid we took a (super fancy) high-speed train across the country to Barcelona! Madrid was wonderful, but I honestly preferred Barcelona by far. My photos seem to show that too since I have many more from the second city.

Barcelona is really the city of architecture, and it seems like there’s something designed by Gaudi on every third block. It’s also a really great city to walk in, and I feel like we definitely did walk the entire city.

We had a lot of great food while in Spain, but the very best was El Quim, which is located in a market called La Boqueria. I encountered El Quim about a year ago when it was featured in the Barcelona episode of the show I’ll Have What Phil’s Having (which is wonderful and well worth watching, by the way) and I knew we had to go there.

Being a restaurant in a market, it took a little bit of patience and some finagling to get a seat, but the food was fantastic. I was also rather pleased to be served by the owner of the place.

Out of the more special locations we went to in Barcelona, we visited two Gaudi designed places, Park Güell and La Sagrada Familia. The park is very cool and fun but the Sagrada Familia is amazing. I’ve been dragged to seen a lot of European cathedrals in my time but this one really wow-ed me. It’s very modern and sort of timeless, and the stained glass windows are truly beautiful. They don’t praise Gaudi for nothing, y’all.

Probably one of the best parts of the experience was also going up one of the cathedral’s towers. We choose to go up the Passion, which is on the side that is still under construction and also looks out over the city centre. There is an elevator to take up to the top of the tower, but you do have to climb the stairs down.

The climb down was actually really great since there are windows all along that you can look out to see either the city or the details of what was being built as we watched.

Another cool thing we managed to see is an Olympic stadium! In case you don’t know, I love the Olympics, so even though we couldn’t seem to find the aquatic center / it’s not there anymore, it was still nice to walk around the former Olympic park and imagine what it might have been like when the games were played there in 1992. Nearby to the park, there was also an architectural installation that my dad wanted to see. It was super minimalist and not something I’m a huge fan of, but all the reflective marble was nice.

Life Update: I declared a major and joined a sorority?

This spring semester has turned out to be a very eventful one for me. Beyond a full course load of classes, some very exciting changes have happened in my life!

First off, I declared my major! You may or may not know that I entered the University of Illinois college of Engineering as an Undeclared Engineering student. Essentially, this is a very cool and very selective program at my school where you are in the engineering college but have yet to be tied to a set major. In our first semester, we take the basics that all engineers must complete (Calculus, Physics, Chemistry…) and have the opportunity to explore all 16 majors through tours, shadowing students, and special seminars held by professors and advisors from each department.

This process was really hard for me because I came into school thinking I wanted to do one area of engineering and ending up loving something on the complete opposite end of the spectrum. I started off with a lot more course work more related to structural and large-sized things, (Civil or Industrial engineering) ended up kind of hating it and thinking I might not even want any sort of engineering, and then discovered I loved a certain class I’d barely even thought of as engineering.

I can now proudly say that I’m a Computer Science major at Illinois! I even got a sweatshirt to prove it.

Another sort of different things that happened is I rushed and successfully joined a sorority. Greek life was something I never considered coming into school because I never really knew anything about it, and also had some rather false assumptions. But being here and seeing some of it in action (and also being at a school with one of the largest greek systems in the nation) made a sorority something I actually really wanted. So, I decided to participate in an informal spring rush, and am now a member of the Theta chapter of Alpha Omega Epsilon.

Now my experience is a little non-traditional, my sorority is specifically for technical science majors (though it’s still a social organization!) and does not have a house. But what it does have is a great, close-knit group of supportive women and a slightly smaller community than I would have in any of the big social sororities on campus. I honestly love everyone in my chapter who I’ve spent time with so far, and this next week after spring break is our big little week, (where we are matched with an older sister who will be our “big”) and that’s extra exciting!

♥, Tamara