Tuesday, October 13, 2015

How My Son Taught Himself Object Inheritance With Minecraft

Like every elementary school boy on planet Earth, my son has an unhealthy obsession with Minecraft.  Long ago he grew tired of building stuff and has been reviewing mods, creating texture packs, and figuring out the boundaries of the sandbox.

With the addition of command blocks and the expansion of the command language in recent releases he has been challenging himself to create new and exciting game play.

So what does this have to do with with the foundation topic of object oriented programming, Object Inheritance? Well, let me tell you a story...

My son wanted to make a friend that would follow him around and carry stuff for him in the game.  (Geek Benefit #3: We can make our own friends if we can't make friends.)  He started by creating a command block that cloned a mini armor stand and named it Timmy.  Timmy unfortunately was a rather boring friend because it just stood in one place and did nothing.

What to do? Well, there is a thing in the game that does follow a player around.  So my son decided to clone a dog.  He updated the command block to make Timmy always be where the dog was.  That looked weird so he made the dog invisible.  Cool!  Just like that Timmy has inherited the dog's AI.

But that was not enough.  Timmy needed to follow him around AND carry stuff. Minecraft Riddle: "What's mobile and carries a chest?"  Minecraft Answer: "A donkey."  So next he cloned an invisible mule and made it stick to Timmy too.

And poof, we now have a mini armor stand named Timmy that has the AI of a dog and the carrying capacity of a mule!

So instead of the boring "pet shop" inheritance example in the first C++ book I read decades years ago, he used the rather exciting example of Minecraft mobs to build his custom class, Timmy!  The armor stand has now inherited the class properties of the dog and the donkey. Okay, I know, it's not a pure example, but it was a very small step illustrate the concept.  And he figured it out for himself out as part of his fun. The best type of learning.

Friday, November 28, 2014

Like Minds Geek Fiction Now Available

Today Like Minds is finally published.  Like Minds is a near future science fiction thriller that includes AI, Augmented Reality, the FBI, and even a serial killer.  After working on the book for over a decade, I'm really excited to announce that the ebook version is available on Amazon today.

To read more about the book you can go to the official book page: http://likeminds.authorbenmiller.com/  and I'll post updates to the Facebook page as well if you like that kind of thing.

Sunday, March 16, 2014

RasPi Softener Salt Level Monitor

If you can't tell from the fact that this is my first post in 2014 and it's March already that I am not one for routine tasks, then I'll tell you.  I'm not one for routine tasks.  More often then not, I get distracted or forget.  So when it comes to my water softener, I usually discover it's low after the black plastic spatulas all turn white.  So it's about time I did something about it.
I was inspire by the cool (and cheap) HC-SR04 distance sensors. They look like cool little robot heads and can tell you how far away something is.  I HAD to use one for something.
Johnny Five
The idea was simple.  Monitor the distance from the lid of the softener do the bottom and alert when the distance to too far.

Sunday, December 8, 2013

QR Code Adventure

QR codeHere's a fun game that my kids enjoy.  It's a cool techie activity for holiday and vacation time that adds a little excitement and gets kids up and moving about.  I call it the QR Code Riddle Hunt.

Sunday, November 17, 2013

Raspberry Pi Camera with Pan Tilt

I was inspired by +John Ellis's posting about his super cool garage security project to add more video and automation to my Pi projects.  He used a webcam in his project like I did in the Frankenfeeder project.  But I wanted to play with something new and hearing all the excitement around the camera module for the Raspberry Pi I thought I would take a look at it.
UPDATE: Step by Step tutorial version is online

Saturday, September 28, 2013

Learning Moment and Science

We had a great family learning moment and experiment I thought I would share.  It was so simple to setup that if you have the parts, it only takes a moment.

Over dinner, my son (3rd grade) talked about a video they watched at school about a young girl who invented a flashlight that worked by the heat of your hand.  I later found the video here: http://www.youtube.com/watch?v=9CCGUMkcbjg.  Big congrats to her, way to go!

Saturday, September 7, 2013

Frankenstein Update I

Just a quick update on the Frankenstein project.  It's been slow getting started, but this will be worth it. We wanted to do some proof of concept testing.  So we needed to get a peltier plate in to start working with it.  Well Digikey obliged and we now have this little guy to play with.

Peltier Plate for solid state cooling