Skip to main content

C'est la Z

Tag: teaching

Refactoring

One of my laments on teaching computer science is that students are rarely taught and given the chance to develop good programming practices. There's usually not enough time. Beginners work on small "toys" which don't lend themselves to good software development practices and later on, there's so much other material like algorithms, data structures etc. to teach and learn that programming practices usually amount to lines like: "Make sure to comment your code.
# COMMENTS

Sigcse2018 Bootstrapworld on Creativity in CS classes

I really didn't know what to expect at the Creativity, Customization, and Ownership: Game Design in Bootstrap: Algebra session. I've been a big fan of Bootstrep for years and looking at the authors, Emmanuel Schanzer's been a freind forever. I've never met Shriram Krishnamurthi in person but am looking forward to it. We've traded emails and blog comments. I'd like to consider him a friend and I certainly respect him and his work even though we frequently disagree around the edges.
# COMMENTS

Tools can shape how we think

I've been having fun with this years Advent of Code competition. So far, I've been able to keep up but with I expect that to change in another couple of days since I'll be traveling for the weekend. After solving a problem, I like looking over some of the other solutions on the Advent of Code subreddit. Even with similar agorithmic solutions there's a decent amount of variation in the actual code and solutions in different languages can look radically different.
# COMMENTS

Thoughts On A Hackathon

Yesterday I was one of the judges at StuyHacks. A one day hackathon at Stuyvesant run by and organized by the students. I don't have attendee stats but there were kids from all over the city and at least one team from New Jersey. The youngest student that I met was in sixth grade and the oldest were high school seniors. The judging was at the end but I decided to stop by earlier to see how the hackers were doing.
# COMMENTS

Early Interesting Problems - Happy Ladybugs

We all love interesting problems. The trouble is that it's hard to find suitably interesting problems for students when they're just learning the basics. In the very beginning the problems practically dictate the solution: loop over a list and add all the elements or calculate the sum of a list of integers. Determine if number is prime Convert a word into pig-Latin It's not that there's no thought involved in solving these but the students already know the mechanics of solving these by hand so it's a direct translation into a program.
# COMMENTS

Programming Idioms

I just read Jeff Yearout's recent post titled The Beginner's Garden of Concepts. Not directly related but it got me thinking about programming idioms. I've been using the phrase "programming idiom" for years to describe a short useful recurring code construct. I didn't realize that it was officially "a thing" until doing a web search on the phrase years later. As our students grow from newbies on I think it's helpful for them to see recurring and related patterns and programming idioms gives us a name to apply to many beginner patterns.
# COMMENTS

New Term New Tool - Thonny, a Python IDE

Last year I wrote about repl.it, an online IDE that supports multiple languages. At the time it had some rudimentary classroom support and since I started using it, repl.it has become better and better. I used it last year with my class because I had to start the year in a lab where I couldn't easily install my own software. I'll continue to use repl.it - mostly for it's ability to schedule publish and manage assignments but when possible, I like having my students work locally.
# COMMENTS

Theseus's Curriculum

With the school year starting I was originally planning on writing about my class rules. Instead I think I'll riff on Alfred Thompson's post today titled Curriculum is Hard. I'm guessing I found curriculum design and development daunting decades ago but at this point in my career it's something I enjoy. In any event, Alfred got me to thinking - when is a curriculum your own? If you grab a curriculum complete with lesson plans, assignments; the whole kit and caboodle and you use it verbatim it's clearly not your curriculum.
# COMMENTS

Teaching APCS-A for the first time

I got an email from a friend the other day. Among other things, he mentioned that he would be teaching APCS-A for the first time this year. He's a little trepidatious. He knows his stuff but he hasn't really done much using Java. I was going to respond in an email but thought I might share here instead. TL;DR - for all you APCS teachers who are new or new to Java - learn your core CS, lean on your resources and support and it's OK to tell your kids "I don't know, I'll get back to you.
# COMMENTS

Three strikes and you're out or third time's a charm

Brenda Wilkerson, Director of CS and IT education for Chicago public schools was one of the keynote speakers at this year's CSTA conference. During her talk, she made a comment about it taking three times through to get it right so if you're working hard and struggling in your first year of teaching CS, it's not the time to give up. Learning to teach takes time. She's absolutely correct. I saw this in myself and I've seen this in many other young teachers.
# COMMENTS