Stories on maker education and innovation 

formats

Giving Yourself Margin

Enjoying Nature

I’m in one of those seasons of life where my schedule feels three notches beyond packed.  We enjoy staying active in our church, our community, and family.  My wife and I believe in the concept of going above and beyond in our professional lives too.   We, however, recognize that packing our lives with more activities isn’t sustainable or healthy.  

As I’ve been reading about innovative teams and business culture, I’ve been smacked in the face by this very simple idea: margin.  It’s the idea of giving yourself or your team the gift of time.   Here are a few places where this idea shows up:

  • “Innovation time off”: The post-it note was invested at 3M when a leader gave his team 20% of their work time to develop new product concepts.  Innovators like Google have adopted this idea of “innovation time off” too.  Through this strategy, Googlers invented amazing products like Gmail, Google Cardboard, and many others.   
  • Create margin for your teams: In the world of engineering, there’s a temptation to plan monthly schedules down to the exact hour to make sure you’re getting 100% capacity from the team.   The best teams make time to plan regularly.   They, however, acknowledge that you can’t think and plan for everything.  In fact, that level of planning is wasteful.  It’s great to give your team margin to account for the unexpected stuff that ALWAYS happens and creates the opportunity for creative thought.  The extra time can be helpful to address process improvement or reduce technical debt.
  • Genius hour: It’s cool to see the idea of margin showing up in k-12 education too.   Many innovative educators have tried increasing student engagement in learning by empowering them to have time to learn a topic of interest to the student.   In most cases, the student present their work or new knowledge to the rest of the class.   To learn more about this practice, check out the following posts on Edutopia and Gallit Zvi’s blog.  

In the world of personal finance, it’s a common practice to make sure you have an emergency fund to cover the unexpected things of life.   I have to say that I’m guilty of not always creating margin for myself to have down time to recharge my mind, my heart, and soul.   This might be prayer, going fishing or having open time to relax.   This is a place of growth for me.   It’s an opportunity to learn to say “no” to some good things of life to make room for the best.

What are your favorite ways to create margin for your team?   How do you create margin for yourself?

 

Photo Credit: https://pixabay.com/en/hiking-hiker-mountains-rocks-hills-691739/

Join the Spark Macon Maker Space Community on Facebook

 

 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
No Comments  comments 
formats

Thanks to our SparkMacon Maker Space Teachers

In the past year, we had the pleasure of organizing our first young maker program serving 15 young ladies from our community partner, Real Impact.    Through this program entitled Project Renaissance, our students gained exposure to STEAM skills including coding, 3D modeling, 3D printing, laser cutting, costume making, Arduino hacking, and robot building.   This program would not be possible without the generous support of the Georgia Technology Authority and the work of the Middle Georgia Regional Commission.

We had an amazing team of teachers and coaches helping to build our students through this program.  I wanted to take a moment to thank our amazing team!

  • Code: Stephen Finney
  • 3D printing: Corey Robinson
  • Laser cutting: Patrick Hobbs
  • Video Editing: Larry Najera
  • Cosplay: Libby McCormick
  • Electronics: Glen Stone
  • Arduino: Robert Reese
  • Robotics: John Robison
  • College Student support team:
    • John Robison
    • Corey Robinson
    • Elizabeth Tate
    • Parker

On behalf of our Macon community, I want to thank each of them for their gift of time, sharing their passion for their craft, and caring for our students.   We appreciate your inspiration, leadership, and service.   I’m sure that this experience will leave a lasting positive impression on our students.

We also want to extend our thanks to Geneva West and all the parents who supported the students.  We appreciate all of your time and support!

Here’re a few pictures from our last DiY Arduino Robot building workshop.   For me, it was very exciting to see the students complete this final workshop.   We’re very proud of our students!  The students accomplished the DiY robot design reviewed in this post.

diyRobotics__3_20_2016 diyRoboticsParts

We’re looking forward to repeating a 4-month maker workshop series starting in May.  This workshop series will cover the topics of 3D modeling/printing, Robotics building, Arduino hacking, and code.   We plan to offer tracks for adults and young makers.

Learning To Code

 

 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
No Comments  comments 
formats

Grammarly

Published on March 5, 2016 by in technology

Grammarly.com

In this blog post, I wanted to share a tool for anyone who cares about improving their clarity in writing.   As a blogger, I always appreciate any tool that helps me communicate well.  Honestly, it takes a great deal of internal focus to make sure I’m following the rules of grammar and punctuation.   I appreciate any tool that helps me do this more quickly.   I stumbled across a new Chrome extension to help.   You can learn more about this extension at Grammarly.com.  During my brief review of this free service, it feels very quick and helpful in Gmail, WordPress, and many other online services. For a detailed review of Grammarly features, check out the following video from BecomeAWriterToday.com.

Learning To Code

 

 

 

 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
No Comments  comments 
formats

Programming Lego Mindstorms EV3 with Python

Published on February 15, 2016 by in technology

Lego EV3

In our educational makerspace, our team has promoted the python programming language with young makers.   The python programming language has engaged students young and old for many reasons.   The language tends to be approachable and concise.   The language connects to a broad range of situations including Minecraft programming, Raspberry Pi, video game programming, and web development.   Software professionals love this language too!  Python is one of the most popular programming environments at Google!   

Lego Mindstorms have become a common tool for introducing students to robotics, sensors, and computational thinking.   I had heard that the Lego Mindstorm EV3 platform was based on Linux.   I started looking into ways that you could program Mindstorm robots using python and linux.  

There’s an amazing community of Linux/Lego hackers who have created a platform to fill this need.   Check out http://www.ev3dev.org/ .   All that you need to add to your Lego Mindstorm ev3 is a small wifi dongle, a microsd card and a way to write to it.    Here’s some tutorials to help you get started with installing the “ev3dev” environment and setting up Wifi.   Please keep in mind that using the “ev3dev” environment is completely reversible.    Just take out the microsd card from your “ev3.”

Here’s a sample program to give you a taste of programming “ev3” using python.   Using this small program, the user can control an ev3 robot using the keyboard.

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
import time
import termios
import tty
import ev3dev.ev3 as ev3
import sys

motor_left = ev3.LargeMotor('outB')
motor_right = ev3.LargeMotor('outC')
motor_a = ev3.MediumMotor('outA')

#==============================================

def getch():
   fd = sys.stdin.fileno()
   old_settings = termios.tcgetattr(fd)
   try:
      tty.setraw(fd)
      ch = sys.stdin.read(1)
   finally:
      termios.tcsetattr(fd, termios.TCSADRAIN, old_settings)
   
   return ch

#==============================================

def fire():
   motor_a.run_timed(time_sp=3000, duty_cycle_sp=100)

#==============================================

def forward():
   motor_left.run_direct(duty_cycle_sp=75)
   motor_right.run_direct(duty_cycle_sp=75)

#==============================================

def back():
   motor_left.run_direct(duty_cycle_sp=-75)
   motor_right.run_direct(duty_cycle_sp=-75)

#==============================================

def left():
   motor_left.run_direct( duty_cycle_sp=-75)
   motor_right.run_direct( duty_cycle_sp=75)

#==============================================

def right():
   motor_left.run_direct( duty_cycle_sp=75)
   motor_right.run_direct( duty_cycle_sp=-75)

#==============================================

def stop():
   motor_left.run_direct( duty_cycle_sp=0)
   motor_right.run_direct( duty_cycle_sp=-0)

#==============================================

while True:
   k = getch()
   print(k)
   if k == 'w':
      forward()
   if k == 's':
      back()
   if k == 'a':
      left()
   if k == 'd':
      right()
   if k == 'f':
      fire()
   if k == ' ':
      stop()
   if k == 'q':
      exit()

In my case, I added a “wifi” module to my “ev3” while using ev3dev. This enabled me to use a secure shell terminal to access the “ev3” Linux environment. This program was saved in a python script called “robot_control.py” To execute the program, I simply type the following command into the Linux prompt.

python robot_control.py

Let’s break down this program into parts. In the following section, we import some code and setup variables to access the various motors of the “ev3” brick.

import time
import termios
import tty
import ev3dev.ev3 as ev3
import sys

motor_left = ev3.LargeMotor(‘outB’)
motor_right = ev3.LargeMotor(‘outC’)
motor_a = ev3.MediumMotor(‘outA’)

In the following function, we grab one character from the keyboard.

1
2
3
4
5
6
7
8
9
10
def getch():
   fd = sys.stdin.fileno()
   old_settings = termios.tcgetattr(fd)
   try:
      tty.setraw(fd)
      ch = sys.stdin.read(1)
   finally:
      termios.tcsetattr(fd, termios.TCSADRAIN, old_settings)
   
   return ch

To move the robot forward and backward, I use the following functions. There are similar functions for turning the robot, firing a marble gun and stopping.

1
2
3
4
5
6
7
def forward():
   motor_left.run_direct(duty_cycle_sp=75)
   motor_right.run_direct(duty_cycle_sp=75)

def back():
   motor_left.run_direct(duty_cycle_sp=-75)
   motor_right.run_direct(duty_cycle_sp=-75)

In the main loop of the program, we ask for one character from the user. Based on this input, the system executes different functions in the program. The robot follows the following protocol for movement:

w : move robot forward
s : move robot back
a : turn robot left
d : turn robot right
space bar : stop the robot
f : fire the marble gun.
q: quit the program.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
while True:
   k = getch()
   print(k)
   if k == 'w':
      forward()
   if k == 's':
      back()
   if k == 'a':
      left()
   if k == 'd':
      right()
   if k == 'f':
      fire()
   if k == ' ':
      stop()
   if k == 'q':
      exit()
 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
No Comments  comments 
formats

Visual Programming Tools To Engage Students

9627322546_68dcd87377_z

A friend of mine had just finished doing “Hour of code” on Code.org with her STEM club.   She asked me to comment upon what you might be able to do next to extend their learning experiences from code.org.    The website does an amazing job of introducing the basic ideas of code(sequencing, loops, decision making, variables) to young makers.  In this post, I’ll share a few project ideas and products that will help keep your students engaged in coding.

Scratch This visual programming environment from MIT Life Long Kindergarten has become a powerful tool to engage students to code creatively.   Students projects range from games, to mini-movies, musical instruments and art.  I recommend checking out some of the projects built by students here.  I love seeing people combine Scratch with Makey Makey.  It’s always fun!

MIT App Inventor – To help make Android App building more accessible to EVERYONE, researchers at MIT have released a wonderful tool to empower makers and students to quickly build apps using a puzzle metaphor of programming.  The MIT App Inventor enables you to test your apps in real-time using your Android device.   Additionally, you do not need to install special tools on your system since the development environment is browser based.  To learn more about this tool,  visit http://appinventor.mit.edu orAppInventor.org .  I’ve written some sample programs on this blog post here.

Learn To MOD The open world game Minecraft has high engagement factor with middle school students.   I enjoy playing the game with my kids too.   The folks at LearnToMod.com have created a comprehensive set of video lessons combined with visual programming experiences to help students learn to write their own Minecraft extensions or mods.   The system uses ScriptCraftJS which I’ve reviewed in here.

Scratch with LEGO Wedo – The Lego WeDo kit enables students to program a distance sensor, tilt sensor, and a motor that interfaces with standard Lego’s .    The “offline” versions of Scratch interface with the official Lego WeDo hardware introducing new blocks to the friendly Scratch interface.   You can learn more about the specialized Lego Wedo blocks from this resource.   You can find lesson plan ideas here.

Scratch For Arduino (S4A)  –  The Arduino has become an inexpensive platform to introduce digital electronics programming to students young and old.   While Arduino is a simple learning platform, it can also do some amazing work like 3D printing or robotics.    S4A enables students to leverage their Scratch skills to program Arduino.   To get students started on projects, I typically encourage students to figure out how to blink an LED or control a servo.

http://lab.open-roberta.org/ – This tool enables you to use block programming to control your Lego Mindstorm EV3 robot.   The website also includes a small robot simulator just in case you don’t have a Lego Mindstorm robot.  I’m looking forward to testing this website on some actual EV3 hardware soon!

 

What are some of your favorite lesson plans for getting kids to code?

 

Photo credit : https://www.flickr.com/photos/curiouslee/9627322546

 

Learning To Code

 

 

 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
No Comments  comments 
formats

Adventures with TinkerCAD and Minecraft

My kids and I really enjoy playing Minecraft together. There’s something magical about designing a 3D structure and getting to see it in a game world. Using my favorite 3D modeling tool for students, TinkerCAD, we tried importing stuff from Thingiverse into Minecraft. Here’s some of the results from our experiments.

I’m thinking about using this idea to motivate a future workshop on TinkerCAD.

Keep watching InspiredToEducate.NET for more details!

Hope you have a great week!

trex

castle

xwing

tardis

triceratops

 

Top Stories on InspiredToEducate.NET

Learning To Code

Science Education

 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
No Comments  comments 
formats

Broken Toy to Wifi Controlled Robot #DIY #Arduino #RaspberryPi

Broken toy to Wifi controlled robot

A good friend of mine from our local makerspace enjoys teaching students about electronics by taking stuff a part.   He has a talent for finding free or inexpensive pieces that students enjoy deconstructing.   Through this experience, he has the opportunity to connect the theory of electronics/mechanics to real stuff.   Inspired by this teacher, I decided to try it myself.  My sons bought a broken RC car from Good Will for $2.00.   With the car in pieces, we started playing with the components to see if we could get anything working.   With bread board and batteries, we found that the motors of the RC car were function.   After an evening of hacking using an Arduino, a motor driver, a Raspberry Pi, and Wifi connector, we cobbled together a Raspberry Pi controlled robot.  (see below)  Not bad for $2.00 of source materials.

Your Mission… Should you choice to accept it

So… I’d like to offer a challenge for this month.

1. Find something broken.

2. Take it apart, and figure out how to make something new from it.

3. We’d love to hear your stories of taking something broken and re-purposing it into something beautiful, fun or functional.

Post your entries to Twitter, Instagram, Google+, or Facebook using the hashtag #RepurposedCraft. 

The best entries will experience awesome social media fame and glory.   I’ll make sure to celebrate them on the blog too!  🙂

Thanks for sharing your work!!!

 

 

 

Are you passionate about DIY, tinkering, and crafting?   We would enjoy hearing what you want to make in 2016.  Thanks for taking this quick survey.

Maker Workshop Survey 2016 

 

 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
No Comments  comments 
formats

Historic #SpaceX launch! Amazing Booster landing!

Published on December 22, 2015 by in technology
 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
No Comments  comments 
formats

Lessons learned from teaching Minecraft coding workshops

castle

In the past few months, I have had the opportunity to lead Minecraft coding workshops using ScriptCraft in our makerspace and a local museum.   Walter Higgins had done an amazing job of creating documentation and tools to help students learn JavaScript while playing with Minecraft.    I wanted to share some reflections on teaching this workshop to support others who might do similar coding dojo’s for young makers.

What went well?

  • Parents + Students = Win! In our most recent classes, we adjusted our space and class invite to welcome parents to learn along with their students.   I enjoyed seeing the parents getting engaged in the material just as much as the student.    For the students that were pair programming with their parents, it looked like they were having a fun time.
  • Adapting to broad age range: In executing this workshop, we served students middle, high school and adult students.   I believe we can do this kind of workshop because of our amazing mentors and the fantastic tools provided from code.org and Khan Academy.   If someone already has experience with block programming, we pushed them to learn hand crafted Javascript.   We also created a detailed class content outline and instructions.   If a student wants to move faster than the class, we empower them to move forward.   I also believe having great mentors in the workshop helps too.  We try to make sure we have a mentor for every 5 students.
  • The following workshop order worked well
    • 1 hour – Hour of code on code.org.  This helps the students obtain the core ideas of programming: loops, sequencing, variables, decision making.
    • 1 hour – During this hour, we allow the students to enter a common Scriptcraft server.  The students have the ability to upload javascript files into the server.   We scripted out instructions to help students install Notepad++, NppFTP, Text Mate, or Filezilla FTP.   In the world that we built, we distributed signs with sample ScriptCraft commands.   Some students enjoyed finding these signs and trying out the commands.
  • I really wanted the students to make a concept jump from block programming to JavaScript programming.   To that end, I’ve created a small tool that sketches out ScriptCraftJS mods based on a blockly program.   This seemed to work well.
  • Many student just enjoyed building a Minecraft server.   It was cool to see their excitement in learning that they could build and host a server for their own Minecraft building parties.   In building a Minecraft server, the students had to follow steps a network engineer might do like installing java, putting file in a particular location on the computer, and using the command line.

What can be improved?

  • Learning from server crashes: Sometimes the students think too big!  It’s really fun to see the students test the limits of software.   It’s very common for students to try to make very large blocks of mushrooms or TNT.   The server usually doesn’t handle this scale of work.  So… the students learn a lesson in making sure that their requests of the system are reasonable.
  • Clarity of support scripts: We’re going to continue to increase the clarity of the scripts and lab instructions we’ve created for the class.   For advanced students, they seemed to enjoy working ahead of the class using the instructions.
  • Reviewing sample programs: I think we could have generated more diversity of work if we created a tutorial where the students executed and inspected existing sample programs of a higher complexity.   I hope this would help spark more ideas.   It’s great that I have the sample programs built already!  In DroidScript or Arduino, you can make tons of interesting software by combining code and ideas from well crafted samples.

I do want to give a shout out to my friends who help co-teach this workshop with me.   I really appreciate their time in helping to inspire the next generation of game developers!

 

growingLoop
S
tudent learning about loops and variables

 

random

Sample programs from our ScriptCraft server

 

stairs

 

Top Stories on InspiredToEducate.NET

Learning To Code

Science Education

 

 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
3 Comments  comments 
formats

10 Resources for Building Makerspaces in Schools

Real Impact 3d printing
Girls from Real Impact Center learning about 3D printing at SparkMacon Makerspace
During a teacher meetup through we held last night, we mentioned ways that makerspaces and project based learning directed by student interest can inspire student curiosity, creativity, and personalized learning.     We organized this meetup to listen for ways we can support teachers and students in our area.   I really appreciate the time my wife and our teacher friends spent sharing their experiences in their class rooms across school boundaries.   Teachers are always busy this time of year.  So, we really appreciate their influence and time.  I also want to say thanks to Geneva from Real Impact Center in Macon.  As always.. we appreciate your leadership and time.
During the conversation, we shared the ideas and tools we’re using to design learning experiences in SparkMacon Makerspace.   It was awesome time!  It felt like we had a small “unconference” over coffee.  I put together this post to aggregate some helpful ebooks, guides, and tools for bringing maker education into your class room.  We hope you find these tools helpful in engaging your students.
You also might enjoy the following infographic from http://margaret-powers.com/.   Margaret has awesome ideas and coaching on her blog serving educators. I enjoy following her posts on Twitter.  Make sure to follow her content.
Why MakerEd
 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
No Comments  comments 

No tweets to display

© Inspired To Educate
credit