Complex numbers, working with oscillations (trigonometry), using Turtles to draw, some basic algebra, my favorite, Cellular Automata, and more, are covered in Math Adventures with Python: An Illustrated Guide to Exploring Math with Code by Peter Farrell. Farrell is a math and computer science teacher who is interested in math education and using technology in learning. Continue reading Math Adventures with Python
Project oriented programming books, books that help you develop actual working programs while you learn to program, are the thing, and the new Impractical Python Projects: Playful Programming Activities to Make You Smarter is an excellent example. Continue reading Impractical Python Programming For Fun
Python Flash Cards: Syntax, Concepts, and Examples is a new book-not-a-book that helps people who are staring out learning the Python programming language. Continue reading Learning Python In A Flash…
First, in case you don’t know, “Scratch” is a programming language and environment.
Its mascot is a cat, of course, but the name “scratch” supposedly comes from the use of scratching by disk jockeys. Scratch was first developed at MIT back in the early 2000s, and has advanced considerably since then. You now see the basic format of this language either duplicated or mimicked in many different environments.
Scratch can be an online langauge or you can run a stand alone version, but the former is easier and better. To get started, go here and follow instructions.
If you want (your kid or you) to learn scratch fast, you may want to consider getting the cards produced by No Starch Press. You can get ScratchJr Coding Cards for ages 5 and up, or the much more advanced Scratch Coding Cards for kids 8 and above.
The idea is simple. You put the stack of cards on your desk next to the computer, which is tuned to the MIT Scratch site. Then you try out the stuff in the cards. By the time you are done you (or your kid if you step aside and allow access to the computer) will be pretty good at scratch programming.
I used the 3 year and above cards with Huxley, and we are about to start on the 8 and above cards, although he is very advanced and we are likely to skip past the first several.
By the way, Scratch runs on the web so you can access it from any sort of desktop or laptop computer including Chromebooks,a nd there are iOS and Android versions. It runs on the Kindle Fire as well.
For somewhat younger kids, and for kids who do not happen to have a tablet they are allowed to use because they drool on it and stuff, there is an alternative that is on one hand a little harder to code but on the other hand more intuitive and very creative. I speak of the Botley Coding Robot, which comes in two styles: 1) Learning Resources Botley the Coding Robot Activity Set, 77 Pieces and Learning Resources Botley the Coding Robot, 45 Pieces. (I tested the latter, but they are the same in the parts that matter). Continue reading A New Robot For Littler Kids
Over recent months, there has been an important advance in opportunities for kids to learn to code and mess around with technology.
The Scratch programming language is a project set at MIT. Scratch programming involves moving images, called blocks, from a pallet into a work area, hooking them together and maybe changing some values attached to them, in order to develop programs that mainly, but not exclusively, manipulate sprites. (See example of code blokcks above.) The project is located HERE. This is a full object oriented programming language with quite a few features that make it very powerful, for a kid’s toy. Continue reading Kids coding and technology advance
Automate the Boring Stuff with Python: Practical Programming for Total Beginners by super Python expert Al Sweigart is a pretty thick intermedia to somewhat advanced level programming book.
It covers how Python works, so someone familiar with programming languages can get up to speed. Then, the book tackles a number of key important tasks one may use a computer for. This includes working with Regular Expressions, file reading and writing, web scraping, interacting with Excel spreadsheets and PDF files, scheduling things, working with email, manipulating images, and messing around with the keyboard and mouse.
I wold like to see a second volume with yet more programming ideas and examples. It could be a series.
From the publishers:
If you’ve ever spent hours renaming files or updating hundreds of spreadsheet cells, you know how tedious tasks like these can be. But what if you could have your computer do them for you?
In Automate the Boring Stuff with Python, you’ll learn how to use Python to write programs that do in minutes what would take you hours to do by hand—no prior programming experience required. Once you’ve mastered the basics of programming, you’ll create Python programs that effortlessly perform useful and impressive feats of automation to:
Search for text in a file or across multiple files Create, update, move, and rename files and folders Search the Web and download online content Update and format data in Excel spreadsheets of any size Split, merge, watermark, and encrypt PDFs Send reminder emails and text notifications Fill out online forms
Step-by-step instructions walk you through each program, and practice projects at the end of each chapter challenge you to improve those programs and use your newfound skills to automate similar tasks.
Learn to Program with Small Basic: An Introduction to Programming with Games, Art, Science, and Math is yet another addition to the growing list of programming books for people interesting in learning programming.
Basic is an under-appreciated language. I wish I had a good basic compiler handy, and I’d love to see a basic scripting version that worked like bash. Can you see the value of that?
Anyway, Small Basic is an updated modernish basic that runs only on Windows, so while I can’t use it, you might, and this book looks like a good intro. From the publisher:
Small Basic is a free, beginner-friendly programming language created by Microsoft to inspire kids to learn to program. Based on BASIC, which introduced programming to millions of first-time PC owners in the 1970s and 1980s, Small Basic is a modern language that makes coding simple and fun.
Learn to Program with Small Basic brings code to life and introduces you to the empowering world of programming. You’ll master the basics with simple activities like displaying messages and drawing colorful pictures, and work your way up to programming playable games! You’ll learn how to:
Store and manipulate data with variables Process user input to make interactive programs Use if/else statements to make decisions Create loops to automate repetitive code Break up long programs into bite-sized subroutines
Inside, you’ll find hands-on projects that will challenge and inspire you. You’ll command a turtle to draw shapes, program magical moving text, solve all kinds of math problems, help a knight slay a fearsome dragon, and more! Each chapter ends with extra practice examples so you can take your programming skills to the next level!
Have a look at the list of books, below.
Would you like a subset, or all, of these books, in electronic format, for very cheap? There is a way to do that. Note: This is time sensitive, the offer running for just about two weeks and it started yesterday.
I’ve reviewed several of these books on this blog, and have recommended them. I’m going through Python Crash Course right now, and we’ve found the various kids programming books to be helpful, for instance. I’ve not looked at the grey hat or black hat books, but I’m sure they are fine.
The publisher, No Starch Press, has created one of those deals where you give them a small amount of money and they give you a pile of books. Since I review a lot of books, esp. computer related books, the publishers sent me the info on this, asking if I would pass it on. See the site for details, but you can have have the firs three for $1+, those plus the next three for $8, and those plus the bottom three for $15+. In addition, if you get the first bundle (or more) you get a “sampler,” which is probably a big pamphlet for their other books, not sure.
Here is something really important, to some of you, about these eBooks: They come in multiple formats and are DRM free. So this is not as restrictive as, say, getting a book from Amazon or B&N. They are in PDF, MOBI, ePUB so they’ll work on pretty much any reader.
There is also an option for donating so a charity, including the Python Foundation, but also, pretty much any charity you can think of, while you buy the books. You can divide your payment between the publisher, the charity, and a tip jar. I’m not sure who gets the tip!
Any on of these books costs more than all of them, in any format, so if there is any single book on this list that you were going to get anyway, in electronic form, now’s your chance to get a whole big pile of them. With books, that is always a good things. And, since they are electronic, when you move, they add hardly any weight to your stuff! Electrons are light!
Automate the Boring Stuff with Python: Practical Programming for Total Beginners
Doing Math with Python: Use Programming to Explore Algebra, Statistics, Calculus, and More!
Teach Your Kids to Code: A Parent-Friendly Guide to Python Programming
Gray Hat Python: Python Programming for Hackers and Reverse Engineers
Python Playground: Geeky Projects for the Curious Programmer
Python for Kids: A Playful Introduction to Programming
Black Hat Python: Python Programming for Hackers and Pentesters
Invent Your Own Computer Games with Python
Python Crash Course: A Hands-On, Project-Based Introduction to Programming
Python Crash Course: A Hands-On, Project-Based Introduction to Programming is a fast-paced, thorough introduction to programming with Python that will have you writing programs, solving problems, and making things that work in no time.
In the first half of the book, you’ll learn about basic programming concepts, such as lists, dictionaries, classes, and loops, and practice writing clean and readable code with exercises for each topic. You’ll also learn how to make your programs interactive and how to test your code safely before adding it to a project. In the second half of the book, you’ll put your new knowledge into practice with three substantial projects: a Space Invaders-inspired arcade game, data visualizations with Python’s super-handy libraries, and a simple web app you can deploy online.
My review: How to learn Python programming
MORE COMING SOON
Scratch, the colorful drag-and-drop programming language, is used by millions of first-time learners, and in Scratch Programming Playground, you’ll learn to program by making cool games. Get ready to destroy asteroids, shoot hoops, and slice and dice fruit!
Each game includes easy-to-follow instructions, review questions, and creative coding challenges to make the game your own. Want to add more levels or a cheat code? No problem, just write some code.
Invent Your Own Computer Games with Python will teach you how to make computer games using the popular Python programming language–even if you’ve never programmed before!
Begin by building classic games like Hangman, Guess the Number, and Tic-Tac-Toe, and then work your way up to more advanced games, like a text-based treasure hunting game and an animated collision-dodging game with sound effects. Along the way, you’ll learn key programming and math concepts that will help you take your game programming to the next level.
Want to introduce kids to coding in a fun and creative way?
With the Scratch Coding Cards, kids learn to code as they create interactive games, stories, music, and animations. The short-and-simple activities provide an inviting entry point into Scratch, the graphical programming language used by millions of kids around the world.
Kids can use this colorful 75-card deck to create a variety of interactive programming projects. They’ll create their own version of Pong, Write an Interactive Story, Create a Virtual Pet, Play Hide and Seek, and more!
Each card features step-by-step instructions for beginners to start coding with Scratch. The front of the card shows an activity kids can do with Scratch–like animating a character or keeping score in a game. The back shows how to put together code blocks to make the projects come to life! Along the way, kids learn key coding concepts, such as sequencing, conditionals, and variables.
This collection of coding activity cards is perfect for sharing among small groups in homes and schools.
You probably don’t know the name Grace Hopper, but you should.
As a rear admiral in the U.S. Navy, Hopper worked on the first computer, the Harvard Mark 1. And she headed the team that created the first compiler, which led to the creation of COBOL, a programming language that by the year 2000 accounted for 70 percent of all actively used code. Passing away in 1992, she left behind an inimitable legacy as a brilliant programmer and pioneering woman in male-dominated fields.
Hopper’s story is told in “The Queen of Code,” directed by Gillian Jacobs (of “Community” fame). It’s the latest film in FiveThirtyEight’s “Signals” series.
Actually, I’m sure the readers of this blog DO know the name Grace Hopper. But anyway, this is a great film.