Coding

STEM Tuesday– Coding– Author Interview–Josh Funk

 

 

Welcome to STEM Tuesday: Author Interview & Book Giveaway, a repeating feature for the last Tuesday of every month. Go Science-Tech-Engineering-Math!

Today we’re interviewing Josh Funk, author of How to Code A Sandcastle. Its a delightfully, accessible picture book about a girl constantly thwarted in her attempts to build a sandcastle until she realizes she can design code for her a robot to accomplish the goal.

 

Josh Funk: Thanks so much for inviting me to join you for STEM Tuesday!

Christine Taylor-Butler: Josh, your bio page is hilarious. There’s so much of your personality there. The short bio. The very short bio (4 words) and your bio written by your cat (which is longer than your short bio). You don’t take yourself too seriously. Have you always been like this?

Josh: Hmm… (Josh thinks for a second) Yes. Definitely. I made up my own Garbage Pail Kids when I was in kindergarten with a neighbor (I thought up the names and he drew them). I was a huge They Might Be Giants fan throughout middle school and high school. And I was the kid who had every episode of The Simpsons on tape (in order, without commercials, btw) back before they were all on DVD and decades before streaming.

However, it took a while for me to come out of my shell. I was pretty shy and reserved (at least that’s how I saw myself) until the middle of high school. And even then, I still acted pretty average/normal/conforming throughout most of my life (studying a practical topic like computer science in college, getting a job to help support my family, etc).

But in short (like my short bio), deep down I have always been a big goofball.

CTB: 
How to Code A Sandcastle includes a foreword by Reshma Saujani, founder of Girls Who Code. That’s such a nice touch. But boys code too! For instance, your day job is as a software engineer. So this book is for every kid right?

code a sandcastle

Josh: Yes, of course, coding is for everyone. However, when I looked around my office a decade ago, and even think back to my programming classes in college at the turn of the century, a quick visual survey showed men outnumbered women about 20 to 1. So when I wrote How to Code a Sandcastle, the main character was always a girl (named Pearl, after the coding language PERL … and my grandmother).

 

And when my agent and I were shopping the book, my editor at Viking/Penguin (who had previously edited my book Dear Dragon, illustrated by Rodolfo Montalvo) told us of a yet-to-be announced partnership with Girls Who Code. They had plans to release some GWC chapter books, a nonfiction guide to coding, and some baby board books about coding (along with Reshma Saujani’s adult memoir).

Examples of books by Reshma Saujani

 

 

 

 

 

 

 

But my publisher had no plans for picture books … until they received mine.

My editor asked if it would be okay to share my manuscript with Reshma, to which I answered, “Of course!” And while I had interest from other publishers, I always knew that Girls Who Code’s mission aligned with one of the main reasons I had for writing the book the way that I did. So signing on with their program was a no-brainer.

Having said all that, of course the book is for all genders, just as coding is for all genders.

CTB: In How to Code a Sandcastle, Pearl and her robot, Pascal (also named after the coding language) use sequences, loops, and conditionals (which I call “if-then-else”) to get past the obstacles to building castles on a beach. So how did you get from software engineering in a heavy tech environment to writing children’s books? Most are not tech specific.

Josh: As a parent, I was reading a ton of books to my kids (who are now in high school and college). And I decided I wanted to try to write my own. So I did. And they were … terrible. The first picture book manuscript I wrote was so long that I fell asleep while reading it to my kids at bedtime.

But my wife suggested I take a class through the local adult education center taught by children’s book author Jane Sutton and she recommended I join SCBWI and it all sort of sprawled out from there. I started attending conferences, met the folks who founded The Writers’ Loft, and eventually, several years later, sold my first picture book through a slush pile submission (Lady Pancake & Sir French Toast, illustrated by Brendan Kearney) and signed with an agent shortly thereafter.

I also stopped playing fantasy football, which freed up a lot of my time (I was really into fantasy football).

CTB: Picture books are so spare. Every word counts. And yet you are able to break Pearl’s coding of her robot helper into specific problems to solve in the proper sequence in so few words.

Josh: Yes, it absolutely is. As is writing. In fact, there are lots of things that coding and writing have in common. How to Code a Sandcastle is not the first picture book manuscript I wrote when trying to meld ‘coding’ and ‘picture books’.

CTB: The robot’s first actions are wrong, so Pearl refines her code to be more specific and tries again. Many people forget trial and error is how real engineering works.

Josh: My first trial was about a sister and brother who get sucked into their computer screen and end up in a fantasy world (think Alice in Wonderland meets Tron or The Wizard of Oz meets The Matrix). They met witches named “Iffie & Elsie” and a pointer named Arnie and … none of my critique partners understood it. And it was also way too long for a picture book. So after four months of revising, I eventually put it to the side and started from scratch.

For my second trial, I realized that taking coding (a foreign concept to many) and a fantasy world that no one knew was too much to put in a single 40-page picture book. So I got rid of the fantasy world. I was always a big fan of the Sir Cumference series by Cindy Neuschwander and Wayne Geehan and saw it as a terrific way to introduce a potentially complicated topic (geometry) in picture book form by using a world kids might be familiar with (King Arthur and the Knights of the Round Table). So I thought that maybe I could similarly put coding into a fantasy world that people did know. King Arthur was obviously off the table and I already had written a series of picture books about fairy tales (illustrated by Edwardian Taylor), so fairy tales weren’t an option. So I tried Greek Myths. This attempt, however, was short-lived, as I realized most Greek Myths are about adult topics with lots of violence, death, and romance (especially between members of immediate families). That’s where trial #2 errored out.

For my third trial, I thought, “What if I take coding and put it in the real world?” And so I did. I wrote a story about a sister and brother who went to the local town fair that came through during the summer. The older sister saw everything through a lens of coding (the Ferris Wheel was a loop, the tickets they had for rides were like variables, etc) and the little brother was annoying (because that’s what little brothers are). But my critique partners still didn’t understand the coding parts. And they didn’t think the story was very good. So after another several months of revising, I put this one into the ever-growing error pile as well.

But I didn’t give up. I stepped back and thought about what you ultimately do with coding. You create apps. You make programs. You build websites. So I asked myself, “What do kids create, make, and build?” They create with blocks. They make snowmen. And they build sandcastles. Rather than ‘build’ a sandcastle, maybe we could ‘code’ a sandcastle. And that’s when everything clicked. My critique partners understood it … and they even noted that they actually thought they were learning something about coding.

And you know what? That previous attempt about the sister and brother at the fair wasn’t even wasted! Once I had written How to Code a Sandcastle and knew the format and pacing (and had seen some of Sara Palacios’s amazing illustrations), I took that earlier manuscript out, replaced the annoying little brother with a silly, goofy robot (Pascal), and rewrote the story into the sequel, How to Code a Rollercoaster.

code rollercoaster

Proving once again, that sometimes a failed experiment can lead to something great (I think there are some picture books about that).

Who knows, maybe one day I’ll write a middle grade story about a sister and brother who get sucked into their computer …

CTB: 
You are also introducing terminology in context. Such as creating a “loop” to keep from coding the same task over and over again. Or using “if-then-else” coding for decision making. The illustrations are such wonderful enhancements to the story. Did you have input or was the illustrator, Sara Palacios, able to grasp the concepts without direction?

loop illusJosh: I don’t know how much Sara knows about coding, but as is often the case in the picture book world, I didn’t give much direction at all to Sara when illustrating. And as is also often the case, what Sara came up with was brilliant. The illustration of the loop in the beach blowup was an awesome surprise to see when I first saw the sketches – perfectly encapsulating the visual of a loop!

 

I did have notes about what failures there should be during the “if-then-else” sequence, as those were critical to the plot.

lifeguardBut Sara was our top choice for illustrator and I am so thrilled that she was able to make time in her very busy schedule to work on these books. Side note – she was a superstar for getting it done in a very timely fashion. It was critical that this book come out before summer (as it was a beach-themed book), so if the book hit any delays, it would have had to be bumped an entire year (as they weren’t gonna release it October).

CTB: 
People might be surprised to learn you’re a musician and write your own music for your book trailers. Music is very similar to math and coding. There are rhythms and patterns. Do you think your background in those subjects helps you make deeper STEAM connections for your readers?

Josh: I very much believe in the connection between math and music. And I think it’s the perfect explanation for how math and science can be deeply connected to the arts. Music is an art form. But it’s also math in at least four plus dimensions (note/tone/pitch, tempo, volume, instrument, …).

Even when I write stories, I often think of them as solving a puzzle, needing all the right ingredients to work properly. They all need characters, conflict, plot, rising tension, satisfying conclusion, etc. Sometimes I like to add even more of a challenge by writing in rhyme, which needs a specific rhythm, which I also think comes from my musical background.

CTB: 
Speaking of rhyme, you use a lot of rhyme in other books but didn’t do it in the coding series. Was that a conscious choice?

Josh: Whenever I write a book I try to think about what charm I’m bringing to the book, or what clever aspect makes this book something only I could write. Often that charm comes from rhyming.

But for the coding series, the charm is the coding. The challenging part of writing these books was trying to figure out how to write a picture book about coding. It didn’t need the additional challenge of fitting that into a specific rhythm and rhyme scheme.

CTB: So what’s up next for you? Anything we should keep our eye out for?

Josh: This fall, Dear Unicorn, illustrated by Charles Santoso, will be released (9.19.23).

unicorn

In Dear Unicorn, Connie (a human) and Nic (a unicorn) are matched as pen pals in a school project. Throughout the year they mail each other letters along with art they’ve created. Connie is a glass half-empty type, while Nic sees the glass completely full. Over time, these polar opposites become friends through letter-writing, which all leads up to the end of year pen pal art festival when their two classes will finally meet (of course, none of the students realize they’re writing to a different species). And I’ll pull from the publisher’s blurb here: “With Josh Funk’s signature laugh-out-loud humor and Charles Santoso’s explosively fun illustrations, Dear Unicorn is a celebration of new friends, art, and stepping outside your comfort zone.”

Also, a sixth Lady Pancake & Sir French Toast adventure is on its way in the fall of 2024, with a few more books in the pipeline.

Thanks so much again for inviting me to be part of STEM Tuesday. I had a blast chatting with you!

Note to reader. I learned coding during college. Back then it was Fortran IV and cardboard “batch” cards you had to punch and manually feed into a massive machine. Decades later one of my daughters gravitated to coding too while exploring film and multimedia in high school. She’s an artist but found it fun and good for stress release. Coding is like any other skill or language. It doesn’t have to lead to a career. For some people, coding is like a puzzle. It’s useful for learning logic, sequencing and problem solving. But when I was growing up books were dry informational texts. Do check out Josh’s work. There’s genius at work and his writing speaks to the child in us at every level. You might be surprised by how much you learn about the logic of  coding (and many other subjects) along that journey.

 

Win a FREE copy of How To Code A Sandcastle.

Enter the giveaway by leaving a comment below. The randomly-chosen winner will be contacted via email and asked to provide a mailing address (within the U.S. only) to receive the book.

Good luck!

 

josh

photo by Carter Hasegawa

 

Josh Funk is a software engineer and the author of books like the Lady Pancake & Sir French Toast series, the ​It’s Not a Fairy Tale series, the How to Code with Pearl and Pascal series, the A Story of Patience & Fortitude series, Dear Dragon, My Pet Feet, and more. For more information about Josh Funk, visit him at www.joshfunkbooks.com and on Twitter, Instagram, and Facebook at @joshfunkbooks.

 

author christine Taylor-butler

Photo by Kecia Stovall

 

Your host is Christine Taylor-Butler, MIT nerd and author of Chelsea Clinton’s Save the . . . (Polar Bears, Tigers, Blue Whales), and many other nonfiction books for kids. She is also the author of the middle grade sci-fi series The Lost Tribes. Follow @ChristineTB on Twitter and/or @ChristineTaylorButler on Instagram

STEM Tuesday– Coding– Writing Tips & Resources

http://www.basicbook.org, GPL <http://www.gnu.org/licenses/gpl.html>, via Wikimedia Commons

05 REM I used to think of coding (programming, as we called it back in the day.) and writing as two separate things. Polar opposites.

10 REM Now, I’ve come to realize the two are not as different as they may appear. 

20 PRINT “If you want to learn more about my coding past, press “Y”.”

30 INPUT (N)

40 IF N = “Y” THEN GOTO 150 ELSE 50

50 REM Writing code and writing stories both involve accomplishing a goal through a series of operations.

60 REM To achieve one’s goal with writing, one uses language and word operations to convey ideas.

70 IF (THIS HAPPENS) THEN… 

80 REM The story flows and the plot develops.

90 REM To achieve a goal in coding, one uses a programming language’s set of operations to implement ideas in a functional manner.

95 PRINT “On a scale of 1 to 10, enter your level of excitement for writing like a coder.”

100 INPUT (X)

110 IF X >=1, THEN GOTO 200 

150 REM After my sophomore year, a huge change happened at my high school. The computer programming class moved from punch card programming to actual work on computer stations connected to the school district’s mainframe. Game on!

Pete Birkinshaw from Manchester, UK, CC BY 2.0 <https://creativecommons.org/licenses/by/2.0>, via Wikimedia Commons

160 REM BASIC programming was the name of the game back in the day. For some reason, unlike most of my family and friends, coding came naturally to me. The logic, oh the logic, drew me in like a tractor beam. I was hooked. 

170 REM Several years later, probably around 1984, I scraped enough money ($100!) from odd jobs and such to walk proudly into our local Dolgins store and purchase a Texas Instruments 99. I hooked it up to a blue, plastic 13” black and white television we had sitting around in the basement. I was in heaven. 

Ron Reuter, CC BY-SA 3.0 DE <https://creativecommons.org/licenses/by-sa/3.0/de/deed.en>, via Wikimedia Commons

180 REM My parents and siblings worried about my sanity, a 19-year-old sitting in the dark basement for hours, writing a primitive electronic football game or a program to show an animated smiley face graphic saying “Hello” over the 2” speaker and scaring the crap out of my mother as she walked by. Heaven.

190 REM Sometimes, one gets run through the wringer by siblings and friends for buying a freaking computer instead of spending that money on a real video game console, like ATARI or INTELLIVISION, that ordinary people actually want to play. When this happens, one learns to code simple, low-graphic games to show aforementioned siblings and friends that coding can be fun. A football simulator, PONG(!), craps, blackjack, etc. were all in the output of my TI99 and me. My friends and siblings, however, were not as impressed as I was.

195 GO TO 50

200 REM Coding also runs in a similar vein to writing in the aspect of trial and error. One simple mistake, a glitch in syntax or in logic, can stop a program or a paragraph dead in its tracks. Writers and coders both run into walls, fall off cliffs, or get lost at times. That’s when the true creator’s heart and soul kick in. Analyze, problem-solve, take a step back, and then try again. Instead of getting stuck in a loop, a coder or writer changes the subroutine, reformats, and changes the inputs to get better outputs.

210 REM There is a difference between writing and coding, though. In coding, a programming language allows many creators to communicate the story through that single voice of the code. In writing, the opposite is true. The writer uses the tools of language and individual experiences (see Creative Braining) to create their unique voice.

220 REM Finally, a friend recently told me that throughout high school, their child was intent on majoring in computer programming. However, once the student spent a year in programming classes at college, they changed majors. The student figured out that writing code for games was not nearly as fun as playing games. I laughed and said that sounded like the 20+ years I wanted to be a writer before I accepted it was hard work and found the discipline to actually sit down and write.

230 PRINT “Thanks for reading!”

240 END

Ron Reuter, CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0>, via Wikimedia Commons

My apologies to you, dear reader, for putting you through a rusty and mistake-ridden use of a 1980s version of BASIC programming for this STEM Tuesday Writing Craft & Resources post. Memory fades, as does the free time to go online and review the proper syntax of BASIC.

On a positive note, writing this post did trigger a desire to jump into contemporary programming languages and learn Python or another modern coding language. It also made me dig into the storage boxes to find one of the greatest coding-themed computer games ever written, The Island of Dr. Brain. When my kids were young, we would play Dr. Brain for hours and they had little to no idea they were learning how to think and manage like coders. They probably still don’t since their main memory is probably of Dad hogging the family PC while playing Dr. Brain “with” them.

 

Mike Hays has worked hard from a young age to be a well-rounded individual. A well-rounded, equal-opportunity sports enthusiast, that is. If they keep a score, he’ll either watch it, play it, or coach it. A molecular microbiologist by day, middle-grade author, sports coach, and general good citizen by night, he blogs about sports/training-related topics at  www.coachhays.com and writer stuff at  www.mikehaysbooks.comTwo of his science essays, The Science of Jurassic Park and Zombie Microbiology 101, are included in the Putting the Science in Fiction collection from Writer’s Digest Books. He can be found roaming around the Twitter-sphere under the guise of @coachhays64 and on Instagram at @mikehays64.

 


The O.O.L.F Files

This month’s version of the O.O.L.F.(Out of Left Field) Files explores

Steve’s Old Computer Museum (Warning! This site is a rabbit hole for computer nerds, especially us who sport more than a few gray hairs. I need to go in and see how many of these I’ve had the pleasure of working on.)

The Texas Instruments TI-99

BASIC, how I loved thee!

FORTRAN was, and still is, the language of science and mathematics.

Bill Gates Just Revealed The Best Programming Language for 2023!

Dr.Brain!

 


 

STEM Tuesday– Coding– In the Classroom


Although I studied Electrical Engineering in college, I ended up spending most of my time as an engineer working with code. I love coding, and I’m happy to see so many great books about coding for young readers. Here are the books I read.

Coding Games in Scratch: A Step-by-Step Visual Guide to Building Your Own Computer Games
by Jon Woodcock

I love Scratch. It’s a block code, meaning you put the commands together rather like Legos. The code blocks are designed to help keep you from putting the code pieces together wrong. This book does a great job of walking you through the building of computer games in Scratch. If you want to learn basic coding concepts while making fun games, check out this book.

cover image of the book "Get Coding!" featuring two cartoon people, a computer, and a dog

Get Coding! Learn HTML, CSS & JavaScript and Build a Website, App, and Game
by Young Rewired State

This book is packed with information and activities for learning about coding and the web. It even has a related web site – https://getcodingkids.com – to help you through the missions.

 

Bonus Book: Hunting the Cyber Trail: Be a Computer Forensic Scientist
by Alix Wood

Follow a fictional computer forensic scientist as he searches computers for clues to the whereabouts of two missing kids. I love that this book gets into how information is formatted within computers, something I dealt with a lot when I was programming. This book also has lots of activities that are computer-related, but don’t require a computer to complete.

Now for some other activities you can try to get you into a programming frame of mind.

How-To

A computer program is basically a how-to for a computer. Programmers put together instructions that tell computers what they need to do.

A great activity as you start programming is to write a how-to. This could be a recipe, instructions for completing a craft, or instructions for something you do every day, like washing your hands. Once you’ve created your how-to, have someone try to follow your instructions. That’s when you find out if you forgot any instructions or if anything was unclear.

Flow-Charts

Flow-charts are really useful tools for programmers. They’re a graphical representation of a process or algorithm. Learn about flow-chart symbols and create a flow-chart for a process or algorithm. Here are some resources to help:
https://www.bbc.co.uk/bitesize/guides/z3bq7ty/revision/3
https://www.digitaltechnologieshub.edu.au/teach-and-assess/classroom-resources/lesson-ideas/have-fun-with-flowcharts
https://technovationchallenge.org/curriculum/coding-15-flowcharts

Explore ASCII

Remember me mentioning the formatting of information in computers? Well, one of those things is called ASCII – American Standard Code for Information Interexchange. It is a way to represent text characters using numbers. This is generally written in hexadecimal (base 16) numbers.

To learn about hexadecimal, read the beginning of this article: https://learn.sparkfun.com/tutorials/hexadecimal or this: https://www.codeproject.com/Articles/4069/Learning-Binary-and-Hexadecimal. You don’t have to get too deep into hexadecimal to work with ASCII.

Use an ASCII table (either from p. 24 of “Hunting the Cyber Trail” or here: https://www.sciencebuddies.org/science-fair-projects/references/ascii-table. (There are lots more versions out there if you want to find something different.)

Get the hang of ASCII by converting your name into hexadecimal ASCII code. Then, write a full message and give it to a friend. See if they can decode your message.

Explore More

There are lots of great resources out there that support programming. One of the biggest is Code.org. They have fabulous activities there, including a bunch that don’t require a computer: https://code.org/files/Hour-of-Code-Unplugged-Activities.pdf

—-

Janet Slingerland is the author of more than 20 books for young readers, including 3 books about coding. To find out more about Janet and her books, check out http://janetsbooks.com.