Central Florida Google Developer Group @ Orlando Maker Faire – Orlando 21

Atlanta Maker Faire 2016

Hey, Orlando Google Developers! Central Florida Google Developer Group wants to invite you for a fun road trip to Orlando Maker Faire on Oct 21st! Maker Faire is a gathering of fascinating, curious people who enjoy learning and who love sharing what they can do. From engineers to artists to scientists to crafters, Maker Faire is a venue to for these “makers” to show hobbies, experiments, projects. MakerFaire events are called the greatest “show and tell” on the planet.

We believe that the road trip to Orlando MakerFaire will have the following impacts for our community: 1. It helps inspire our GDG tribe. 2. We want to expose GDG members to innovative ideas, tools, business concepts, and art that we leverage in the community. 4. It’s going to be REALLY fun!

Let us know that you’re interested in being a part of this meetup. We’ll kick-off with breakfast at 9:00am.

Get details and register for the event on our Meetup.com page.

 

 

Related Blog Posts for Developers

If you’re in the Florida area, I would like to invite you to the DevFest Florida 2017.  All the Google developer groups in Florida have combined forces to throw an awesome developer party and learning conference.   Join us for a great weekend of networking, learning, and hacking! Learn more at https://devfestflorida.org/.

Bot Draw : Logo like framework for building VR experiences

Sample AFrame experience

Welcome to Bot Draw!(aka Project Dark Bat)

Looking for a fun way to practice your JavaScript skills and build cool VR experiences? InspiredToEducate.NET designed this code sample to enable you to play with very simple ideas in JavaScript. This sample uses a JavaScript framework called AFrame to build 3D content in your browser or mobile phone browser. The display engine supports major VR platforms including Google Cardboard, Vive, and Oculus. (Thank you AFrame community!)

In Bot Draw, you command a small bot who can travel in 3D space. The robot can place boxes, spheres, images, and other 3D shapes. This tool borrows ideas from popular code education tools like Logo, code.org, ScriptCraft by Walter Higgins.

You can review a sample scene here: https://dark-bat.glitch.me/

You can use the keys WASD to move around the scene.

You can edit and study the code here: https://glitch.com/edit/#!/dark-bat

If you make something cool, please let us know!

Hope you find this fun and helpful!

 

File Overview

  • views/index.html – This file contains HTML and JavaScript for the VR scene. To learn more about AFrame related content, please refer to AFrame.IO. Feel free to remix this glitch sample and start tinkering!!
  • public/demo.js – This file provides other demo functions using bot draw.
  • public/bot_aframe – Interested in enhancing the “Bot” code? This is the file for you!

Bot Draw methods

In order to draw, you start by creating an instance of the bot. The bot object has additional methods for drawing, turning, or moving.

Moving and turning:

  • moveUp(steps) – Move the bot upward a few steps
  • forward(steps) – Move bot forward a few steps
  • moveLeft(steps) – Move bot left
  • moveRight(steps) – Move bot right
  • setAngle(degrees) – Set angle of direction for the robot. Enter direction in degrees
  • getAngle() – Get current angle for the robot.
  • turn(angle) – Turn the robot a few degrees.

Drawing stuff:

  • drawBoxAt(width,height,depth,x,y,z) – Draw box at a particular location.
  • drawBox(width,height,depth) – Draw box at current robot location.
  • drawSphere(radius) – Draw sphere at current robot location.
  • drawSphereAt(radius,x,y,z) – Draw sphere at particular location
  • drawCone(radius,height)
  • drawCylinder(radius,height)
  • drawImageAt(strPath,width, height, x,y,z) – Draw image at particular location. The path should be a fully qualified path to a valid web image.
  • drawImage(strPath,width,height) – Draw image at bot location. The path should be a fully qualified path to a valid web image.

Remember locations, Return to locations

  • saveLocation(locationName) – Store bot location and give it a name.
  • moveToLocation(locationName) – Return to location by name

Change colors:

bot.drawColor = “red”

 

AFrame: Building WebVR experiences with HTML and JavaScript

Sample AFrame experience

Hey, makers and web developers! Looking for a fun weekend coding challenge? In this post, I wanted to introduce you to a simple tool called A-Frame for building VR experiences using HTML and JavaScript.  Originally sponsored by the Mozilla foundation, A-frame enables you to quickly build WebVR scenes, panoramas, games, or data visualizations.  With very basic HTML skills, you can build delightful VR experiences.  I believe you’ll find the declarative or tag based coding style very approachable.  For advanced developers, you can drop to the JavaScript and ThreeJS abstraction layers to customize the experiences in more detail.

Don’t have an expensive VR rig? No problem!  AFrame supports platforms as simple as desktops, mobile phones or Google Cardboard.  I find it impressive that the AFrame platform supports advanced rigs like Vive and Rift.    I’m looking forward to seeing support for Microsoft Mixed Reality too.

Here’s a quick “hello world” experience for you to test drive.

Projects Built with AFrame

How can you get started with AFrame today?

Make sure to check out the impressive community of plugins on the AFrame registry

If you’re in the Florida area, I would like to invite you to the DevFest Florida 2017.  All the Google developer groups in Florida have combined forces to throw an awesome developer party and learning conference.   Join us for a great weekend of networking, learning, and hacking! Learn more at https://devfestflorida.org/.

 

 

 

Maker uses Arduino to enable his Wife To Hear Again

Scott Walker's Bone Conduction listening device.
During our last Arduino meetup at SparkMacon makerspace, I had the pleasure of witnessing a most moving talk.  In organizing this conversation, we wanted to discuss why tinkering and engineering with Arduino matters.  It’s helpful to remember that the makers movement  is important because it creates new opportunities to serve and change lives with more accessibility and lower cost.
The Arduino platform has become the heartbeat of maker tools.  In our makerspace, an Arduino powers our 3D printer, laser cutter, several robots, wearables, and drones. On Instructables and Thingiverse, you can find hobbyist and expert makers sharing their designs of fantastic inventions.  I think it’s cool that the Arduino was not designed for the engineering expert.  The creators of Arduino needed to teach microprocessor and electronics design in months.  (not years)   With this in mind, they aspired to create a micro-controller that was very accessible to the novice.   The device needed to scale to more advanced use cases as well like digital fabrication and robotics.   The creators desired to drive down the cost of the microcontroller from hundreds of dollars to tens of dollars.

With this introduction in mind, I’d like to share the story of Scott Walker and his wife.  It’s just amazing.   Scott Walker and I worked together at Mercer Engineering Research Center in our software systems division.  As I have been learning more about the makers movement, Scott Walker has been a wonderful mentor and example of the power of focus.  His focus comes from a singular idea: he loves his wife.  Many years ago, Scott’s wife started losing her capacity to see and hear due to usher’s syndrome.  Close your eyes and imagine your life without sound or sight. Their doctors told them that she would probably never hear again. Long before IoT in the home was hip and cool, Scott started inventing small gadgets and tools to support his wife so that she could remain active, interact with the internet and be aware of situations in their home.
During a dental visit, Scott’s wife noticed that she could hear parts of a conversation while a dental tool was being used.  With some experimentation on the part of the dentist, they confirmed that she could hear parts of the conversation when the tool was being used against her teeth.  Previously, medical professionals had dismissed that idea of using bone conduction to enable her to hear.  Given this experience, Scott started his own research into bone conduction for his wife.
After consulting with a friend from Mercer Engineering Research Center, Scott discovered that Adafruit sold an inexpensive bone conduction sensor that he could integrate with an Arduino board.  With excitement, he ordered the parts and started prototyping and iterating on his design.  Through experiments, they learned that Scott’s wife had an easier time perceiving lower registers over high pitch voices.  Scott programmed the micro-controller to map all incoming sound to lower registers. In later iterations of the device, he added a Bluetooth capability so that he could play music and phone calls from his IPhone into the bone conduction device.  With a great deal of hard work, Scott created a prototype device enabling his wife to perceive nearly 100% of a normal conversation.

In a very moving moment in the talk, Scott talked about his wife’s experience talking on the phone with her son using this bone conduction device.  At this point in life, she had not heard her son’s voice in over 10 years!  This was an emotional and technology game changer for her!  Scott has an amazing heart.  As he shared this story, you can see his eyes fill with tears of joy.  As a skilled software engineer and maker, Scott has built many things.  He’s most proud of the things he’s built to serve his wife.  It’s an outward expression and gift that only he could give.  There’s a unique joy in making game changing accessible technology.  His maker spirit is powered by his determination and focus to serve and love his wife.
Scott closed the talk asking the makers to have persistence in chasing their mastery of maker skills and learning.   He provided an amazing reflection on why the makers movement matters and it’s power to change lives.  Scott Walker is a true maker hero.  I am blessed to have him as a mentor.
If you’re interested in contacting Scott Walker about his bone conduction listening device or his other accessibility tools, feel free to reach out to Scott at lkosiliconmage@gmail.com.

Real Impact – Women in STEAM Conference 2017

I wanted to give a shoutout to one of my favorite “hands on” learning organizations in Macon: Real Impact Center.   Real impact center focuses on helping to inspire the next generation of young ladies to consider careers as science and technology professionals.  Given that women are underrepresented in STEM career fields, Real Impact has an important mission in exposing girls to STEM careers, giving them ‘hands on’ maker experiences, and helping them see that STEAM careers are cool.   On April 29th, Real Impact organized the “Women in STEAM Conference” in Macon, GA serving more than 250 young ladies with inspiring speakers and hands-on learning experiences.    InspiredToEducate.NET had the honor of presenting a workshop on making electronic music using code.

Stephanie Espy, the author of STEM Gems, shared an empowering message to the ladies on becoming a successful science/technology leader.   Her book interviews 44 female STEM professionals and reviews patterns on their success.   I love books that explore the roots of innovative and creative thinking.   Her book seems to explore patterns of experiences of female STEM leaders like the roles parents play in learning, patterns in play, patterns in teaching, attitudes, and growth mindset.    It was a great keynote!

stem gems1

women in steam conf 2017

Our team had a great time sharing our workshop on Sonic-Pi, making cool electronic music through code.   Sonic-Pi, designed by Sam Aaron, provides a playful environment for writing techno or electronic music using simple coding patterns.   While it’s a great tool to engage students in code education, it’s primary objective is to engage students in exploring music theory.   It’s such a fun learning tool.   During this talk, we had the opportunity to share about the makers movement, our SparkMacon Makerspace, and the fun experiences of building stuff with code.   Given that we were serving girls during our workshop, I had the opportunity to share about the first computer programmer: Ada Lovelace.    Many were surprised to learn that the first computer programmer was a woman.   Additionally, she was one of the first to realize that computers would do more than just crunch math problems.   Hundreds of years ago before electronic computers, she theorized that computers could be used for creative experiences if you could symbolize the creative problem.  Since music theory provides a set of symbols and ideas for defining music, tools for creating music with computers became possible.   If you think about how many creative tasks we accomplish on computers today(creating graphics, music, engineering structures, etc),  this was a profound and visionary concept.

It was fun getting to share this workshop since I love music and building stuff with code.  Music people and coders go through the same emotional challenges when they start.  Both disciplines require practice, problem decomposition, building up of muscle memory, and social skills.  Some of the best programmers I’ve known were music people.   I also want to give a shout out to my friends Joey Allen and Isaiah who coached the workshop with me.   They did a great job inspiring the girls.   In the one hour workshop, almost everyone had the opportunity to sequence some sound samples and put them into a loop.   Some of the more advanced students started building drum patterns,melodies, and longer musical forms.

If you’re interested in learning more about Sonic Pi, check out http://sonic-pi.net/, my blog post and this free ebook.  Interested in teaching an extended course in Sonic-Pi? check out http://www.sonicpiliveandcoding.com/.   It has lesson plans covering 10+ weeks of material.

Special thanks to Real Impact for your leadership in growing the next generation of young makers in Macon, GA!   You are amazing!!  If you’re interested in learning more about Real Impact Center, providing financial support or volunteering, make sure to connect with their website: http://www.realimpactcenter.com/  .   They have some pretty awesome summer camps this summer!

Sonic-Pi

Sonic Pi Screen

 

 

Making Chord Progressions using Sonic Pi

Music

I have to confess that I love music and code. When I get to share my two favorite things in one package, it gets me excited. In previous blog posts, I had talked about an amazing tool called Sonic-Pi for introducing music theory and computer science. While preparing this blog post, I had forgotten how much I enjoy generative music through code.

For the post today, we’re going to focus on making chord progressions and generating arpeggios. Let’s define a few terms before we dive into code.

  • Chords – In music theory, we define a chord as a named collection of notes.  In western music, there are two major flavors of chords. (Major and minor)  Major chords feel happy.   Minor chords are often used in movie scores to represent darker moments or points of anticipation.  For a more formal discussion of chords, check out this article from Wikipedia.  For the purpose of this blog post, keep in mind that a chord has three notes: the root, third, and fifth.
  • Chord progressions – Chord progressions define a sequence of chords that make up a song.    This sequence of chords represents a major component of the soul or emotional thread of a song.
  • Arpeggios – An arpeggio represents a way to play the notes of a chord over time.

We should note that chord progressions for the western ear follow patterns.   The human ear enjoys hearing chord changes according to the circle shown below.  To keep things simple, you can make small transitions between one area of this circle.   You can execute the following chord progression and your eye will believe that it’s pleasing: G,C,D,C.    If your song moves from a G major chord to a D flat major, your ear will not find this automatically pleasing.  It will probably sound weird.

 

Circle of fifths

Circle of fifths

 

With this brief overview of music theory, I wanted to share a small Sonic-Pi program I’m using to enable students to play with chords, chord progressions, and arpeggios. You can inspect the code here.

Let’s break down the major ideas:

In the following code, we configure Sonic-Pi to the tempo of 130 beats per minute(BPM). We also create a Ruby array to hold the list of chords. Sonic-Pi already has a function to generate major and minor chords. We add the chord to the array using a push method.


use_bpm(130)

chord_list = []

chord_list.push(chord(:D4,:minor))
chord_list.push(chord(:A4,:major))
chord_list.push(chord(:D4,:minor))
chord_list.push(chord(:c4,:major))
chord_list.push(chord(:F4,:major))
chord_list.push(chord(:c4,:major))
chord_list.push(chord(:D4,:minor))
chord_list.push(chord(:A4,:major))

We need some way to loop over the chord_list and play each of them. The following code accomplishes this. We place the loop in a thread so that this music idea can exist in parallel with other musical ideas. We configure Sonic-Pi to use the “dtri” synth because it’s cool. The “pick_pattern2” function is something I’ve written to render out our arpeggio.


in_thread do
use_synth :dtri
loop do
for c in chord_list
pick_pattern2(c)
end
end
end

Let’s define “pick_pattern2”. In the following Ruby function, we’re giving a small collection of code a name. We pass in a chord to be played. In Sonic-Pi, a chord is simply an array of notes. In the first part of the code, we generate 6 notes based on the chord. Element zero represents the root of the chord. Element 1 represents the third. Element 3 represents the fifth. We generate notes 4 to 6 to be one octave above the ones previously mentioned. The rest of the code plays out notes in a timed manner. In general, we’re placing each note a half beat away from each other. The sequence is more artistic than technical.

def pick_pattern2(chord)
note1 = chord[0]
note2 = chord[1]
note3 = chord[2]
note4 = chord[0] + 12
note5 = chord[1] + 12
note6 = chord[2] + 12

play(note1)
sleep(0.5)
play(note2)
sleep(0.5)

play(note3)
sleep(0.5)
play(note4)
sleep(0.5)

play(note5)
sleep(0.5)
play(note6)
sleep(0.5)

play(note3)
sleep(0.5)
play(note4)
sleep(0.5)

end

There’s a few other functions for generating arpeggios. Feel free to play with them and edit them. If you make something cool, leave us a comment below. I’d love to hear what you’re making!!

Photo credit to Trey Jones.

7 Free Apps for 3D Design and Building Cool Stuff

Chess graphic

AutoDesk TinkerCAD – This web-based application has become my favorite way to introduce 3D design to makers of all ages.  It comes with accessible tutorials to help you understand the software quickly.  I have used TinkerCAD.com to engage students as early as 3rd grade due to the high usability of this product.   You can quickly export your 3D modeling content for 3D printing or online 3D printing services.   Students LOVE being able to export their work to Minecraft too!  Autodesk just added a “Minecraft” preview feature too!  We also export “obj” files that we can use in Unity 3D.

Shape Shifter – ShapeShifter.io enables you to build artistic 3D structures with just a few clicks.   While this app isn’t your traditional 3D modeling tool, some of the art forms that you can build are impressive.   You might find this application helpful in building a decorative cup holder, vase, or home decor.

Sketchup – This application has become a standard in 3D modeling for home decor and building structures.   Sketchup has content viewers for iOS, Android, and HoloLens. (not free)   This mature 3D building tool comes with a robust set of tutorials and support community.

Blender:  To be honest, I’m still in the process of learning Blender.  According to Wikipedia, Blender is a “professional free and open-source 3D computer graphics software product used for creating animated films, visual effects, art, 3D printed models, interactive 3D applications and video games.”  This open source software supports impressive features including soft body simulation, sculpting, rendering, and an integrated game engine.  While this is one of the most challenging 3D modeling tools to learn, you can leverage a robust community of YouTube tutorials for Blender or the Blender manual.

Onshape: This relatively new 3D modeling tool has become a favorite for adult makers and professionals.   Many of my maker space friends celebrate the robust tutorial system and standard parts collection.  The tool can model the movement of assemblies of 3D parts.  The OnShape team has designed their product to serve distributed professional teams who enjoy working an online cloud solution.  You can learn more about on their YouTube channel.

Sculptris: This application by Pixologic provides an introduction to CG 3D modeling especially for artists.   This product focuses on the “sculpture” metaphor of building 3D content.  It seems very appropriate for building organic 3D structures, animals, or characters.    Learn more at http://pixologic.com/sculptris/.

OpenJSCAD: I came across a tool called OpenJSCAD.org that empowers programmers to build 3D models using the popular JavaScript programming language or OpenSCAD language.  It’s pretty fun!   The tool enables you to export your creations to STL format for 3D printing or editing.   Code and build 3D stuff!  It’s that easy!

Keep in mind that this blog post only scratches the surface of free products.  AutoDesk offers free products for hobbyists, students, and educators.

This blog post outlines 20 additional free 3D modeling tools.

 

We enjoy hearing from you!  Let us know if you make anything cool.  Leave a comment below.

 

Photo credit: NoxicTonic – https://flic.kr/p/drEc9F

 

 

Applications of HoloLens in Education and Training

HoloLens and a brain

The Microsoft HoloLens has become the leading device in heads-up augmented reality. You can think of the HoloLens as a Windows 10 computer that you wear on your head with amazing context awareness of your room, your location, and direction of focus. The location and mapping capabilities of this device enable users to place 3D content or holograms in your work environment. As you place holograms in your work environment, the objects feel like they are physically fixed, stable, and present. As I have had the opportunity to study this device, I have become interested in ways that trainers or educators might use this technology. At a price point of $3000, the Microsoft Hololens will not be showing up in your K-12 classroom anytime soon. I believe it’s interesting to anticipate how educators will use it. In this post, I believe that trainers and educators will use devices like HoloLens to engage their students with visualizations of complex structures and processes. I would hope that students someday use the device as a platform to learn through their creativity.

Hololens

It should be noted that the Microsoft HoloLens has a way to capture the point of view of the user. This feature, entitled Mixed Reality capture, enables HoloLens users to record videos or transmit a live video feed of their session. From a training point of view, the mixed reality capture enables a single teacher to explore holographic content while sharing the experience with the rest of the class. In the future, we will be able to transmit this mixed reality capture view in the classroom or over the Internet.

Enabling Students to Learn Through Building

I believe that students learn best when they can build stuff. As I have had the opportunity to build applications for the HoloLens, I built a ‘proof of concept’ application showing how students might build in a Minecraft environment using HoloLens.   This video was recorded using the HoloLens mixed reality capture.

The HoloLens already comes with Holo Studio which enables users to build playful 3D structures. While this scenario is exciting for students, the price of Windows Holographic devices will need to decline in order for this use case to become common. We are looking forward to Lenovo and Acer to ship Windows Holographic platforms at a price point closer to $300 to $400 later this year.

Visualization of Complex Structures and Processes

In the short term, I can imagine professors, teachers, and trainers using the HoloLens as a platform for student engagement.   Instead of showing students slides of complex structures or processes during a lecture, the holographic applications of the future will bring this content to life.   My wife teaches microbiology and biology at a local college.   She has become very curious about ways to use HoloLens to teach internal cell processes and biology structures.   You can check out an early cell exploration app here.   I have included a few tweets below to share other visions or use cases in medical education / digital health.  In the medical market, there’s great interest in using Microsoft HoloLens to practice or simulate medical procedures.

Providing Training and Education at a Distance

Given that the Microsoft HoloLens enables teachers to share their perspective in videos or video streaming, I predict there will be a new ecosystem of holographic apps for remote learning and teaching.   Suppose that a remotely located student needs support from a trainer, the student can initiate some form of video chat application to connect to the trainer.    For example, a biology professor needs to remotely support lab techs back at the campus research lab.   In this case, the research tech needs help to complete a procedure in the lab.    In the ideal case, the remote trainer should have the ability to place helpful annotations to focus attention and place 3D content/pictures to coach the student.    In this scenario, the HoloLens can transmit the view and perspective of student to the trainer.  The trainer can provide mentorship or coaching using a remote view.   In a similar fashion, teachers may use the Microsoft HoloLens in recording lectures for their classroom or transmit live video over the internet.

We enjoy hearing from our readers.   If you got an idea for a Windows HoloLens application, leave a comment below.   The possibility for Windows Holographic computing is out of this world.

 

 

 

Celebrating SparkMacon Makerspace Community in 2016

SparkMacon 3D Print

Happy Holidays everyone!  We wanted to share a few memories and pictures from our community outreach in 2016 and workshops.   We’ve also included pictures from our road trip to Atlanta Maker Faire.  We’re very thankful to our team and community members who continue to grow Macon as a Maker City!

From my perspective, I enjoy seeing new relationships and friendships form through our coworking/makerspace.   Our team also enjoys seeing the growth of our maker businesses, our young makers, and creatives.   It’s a true joy to connect and support our Macon makers.   We want to thank Real Impact and our volunteer teams for their service to coach young makers to grow their creativity.   We also want to thank our team members who lead our start-up community events like Young Entrepreneurs Academy,  .NET users group,Creative Entrepreneur Meetups and other community networking events.

We’re looking forward to growing the Macon Makers movement together in 2017!

Merry Christmas to you and your family!

Onward and upward!

The SparkMacon Team

Tiz the Season To Code a Christmas Song

Music

Hi, friends! Hope that you and your family have a very Merry Christmas. Last week, we celebrated National computer science week. In schools over the world, kids and adults had their first exposure to the fundamentals of computer science: putting commands in order, looping, breaking problems into smaller parts, and decision making.  Make sure to check out the great learning resources at Code.org .

I have to confess that Christmas is one of my favorite seasons because of the music.   Growing up, my parents provided me and my brother a precious gift of teaching us music.  I started playing violin at age five, learned cocktail piano with my mom in high school, and started coaching choirs in college.   Music is in my soul.   Christmas is just a wonderful time to be a music maker.

There’s a really fun tool by Sam Aaron and University of Cambridge Computer Laboratory that teaches music theory and computer science called Sonic Pi.  This tool does an amazing job of helping students understand music theory concepts by building songs with code.   The software uses the Ruby programming language and has brief and fun tutorials to inspire the student to make electronic music while coding.   You can learn more about Sonic Pi in our blog post here.   Sonic Pi runs on Mac, Windows, Linux, and Raspberry Pi.

There’s also a great ebook from our friends at MagPi on Sonic Pi.  MagPi is a great resource for students, makers, and parents who enjoy Raspberry Pi.

Here’s your mission if you choose to accept it

I wanted to offer a coding challenge to students, parents, and makers who follow our blog.  Try coding up a Christmas or Holiday song.   I found that it was a fun exercise since it requires you to think about melody line building, timing, and coding.

To help inspire your imagination, I have coded up the classic song: Silent Night.   Download Sonic Pi, copy the code from here into Sonic Pi, and listen.    There’s a track for the melody and the track for chords.

Hope you enjoy this challenge!  Make sure to share your creations in the comments below!

Silent Night using Sonic Pi / Ruby

Top Stories