Anki Developer https://developer.anki.com Sat, 02 Mar 2019 00:07:29 +0000 en-US hourly 1 https://wordpress.org/?v=4.9.5 https://i2.wp.com/developer.anki.com/app/uploads/2017/09/favicon.png?fit=32%2C32&ssl=1 Anki Developer https://developer.anki.com 32 32 135373019 Every Trick in the Bot https://developer.anki.com/blog/features/interview/every-trick-in-the-bot/ Thu, 28 Feb 2019 18:54:47 +0000 https://developer.anki.com/?p=1934

Michael Hibben, Administrator at Roanoke County Public Library. | Photo: RCPL

Libraries are a big deal. Among other things, they bring local community members together, offer free and equal access to immense catalogs of knowledge, and serve as champions for youth, the humanities, and informed social discourse.

But where does technology fit in the picture? You might be surprised just how deeply some libraries have embraced technology, not necessarily in terms of infrastructure, but in the resources they provide to their patrons.

Virginia’s Roanoke County Public Library (RCPL) is one such library. Not only has it recognized the role technology can and does play in its local community today, it’s gone all-in to provide gratis access to technologies that will benefit its community tomorrow. The library’s Michael Hibben took some time to chat with us to tell us more about its resources and programs.


Anki: Hi, Michael. Thanks so much for taking the time to chat with us. Can you tell us about the Roanoke County Public Library and your role there?

Michael Hibben: Roanoke County Public Library is a six-branch system in the heart of the Blue Ridge Mountains in Southwestern Virginia. Our libraries serve urban, suburban, and rural communities. I’m Administrator for our main library and play a big role in implementing new technology here, including serving as the tech lead for our artificial intelligence (AI) and robotics coding workshops.

Roanoke County Public Library’s beautiful South County Library branch. | Photo: RCPL

Many people don’t realize the diverse set of resources local libraries can provide the community. What are some of your library’s unique offerings, programs, and resources?

Public libraries have transformed in the digital age and there are all kinds of exciting resources available. In addition to being a community gathering place and hosting coding classes for people of all ages, our library offers free checkouts of eBooks and other electronic media, access to subscription databases, 3D printing classes and services, virtual reality gaming, and regular STEM events. We’re also preparing to lead community conversations surrounding AI and algorithmic literacy, with policy goals in mind.

” With AI becoming increasingly interwoven into everyday life, tech literacy is critical to having an informed citizenry and a prepared workforce. “

RCPL has embraced technology, being one of if not the first library to feature Vector. Can you talk a little bit about why RCPL thinks it’s so important to expose the community to robotics and AI?

Two core values of public libraries are equity and access. We want everyone who comes through our doors to have equal access to knowledge and information. With AI becoming increasingly interwoven into everyday life, tech literacy is critical to having an informed citizenry and a prepared workforce. As such, we believed having Vector at all our locations would allow our patrons to get up close and personal with AI at any time, and help prepare our community for the AI shift so our region can thrive in the new economy.

How did you first hear about Vector?

A leader of the Roanoke Robotics and Makers Club, one of the library’s community partners, supported Vector on Kickstarter. During a library program, he asked me if I’d heard about Vector. Since we’d already been using Cozmo in our STEM programming, I immediately wanted to know more. That same day, I watched Vector’s YouTube video and was wowed, and thought he would be a huge hit with our patrons. I was right.

Were there specific feature(s) of Vector that caught the library’s eye?

We were fascinated by Vector’s character! He has a big personality for such a little robot. The idea that Anki had created a small, affordable, AI-powered robot made us take notice. We wondered if Vector could be the harbinger of AI helpers, in a physical form, that live in the home. While virtual assistants and smart speakers have become commonplace, they remain disembodied voices locked in a device. Vector is AI in a physical form and that, along with his clever personality, makes him truly unique.

A library assistant at the Vinton branch interacts with Vector. | Photo: The Vinton Messenger

What are some of the different ways you’re using Vector in the library?

We premiered Vector at all six of our libraries in early January 2019. All of our Vectors live in their own Vector Space, and are placed openly in the library where patrons can interact and play with him. The staff at each location has the freedom to use Vector in ways they believe will most interest the particular community they serve. We’ll have much more to share on this later.

” Vector is AI in a physical form and that, along with his clever personality, makes him truly unique. “

How has the response been so far to Vector?

From the first time I saw Vector, I knew he’d be popular at the library. But the response has been even more positive than I could have imagined. Within a day or two of our Vector launch, we had multiple media outlets visit the library to find out about our new robot. We regularly see visitors talking to Vector, asking for fist bumps, and saying “I love you, Vector!” Childrens’ faces light up when Vector learns their name or says something clever.

Our Director was recently at a ribbon cutting across the street from one of our more remote locations. People there made a point to approach and thank her for sending Vector to them. They were thrilled to be able to expose their families to such modern technology, and honestly, they seemed to like Vector quite a bit themselves!

Do you have any developing ideas or programs involving Vector that your community can look forward to?

We have an important series of new coding classes and workshops we’re premiering soon. As our community’s coding skills increase, we hope to tap into Vector’s SDK to allow our patrons to create new interactions, abilities, and content for Vector.

Any advice for other libraries looking to integrate more technology into its programs?

The best advice I can give is to start exploring and incorporating technology as early as you can. You don’t have to understand everything right away. Learn and discover alongside your robots and your community. People will hear about what you’re doing and new community partners will want to connect. AI is going to be a part of everyone’s future, so lean in.


Resources

  • Roanoke County Public Library — Visit RCPL’s official website to find out more about its wide range of resources and offerings.

  • @rocopublib — Connect directly with the library via its official Facebook community and follow it on Twitter for the latest on news and events.

  • WorldCat — Find a library near you via the world’s largest library catalog.

  • Anki Developer YouTube — See how others are using our robots across a wide spectrum of disciplines and domains.

]]>
1934
Happy Holidays https://developer.anki.com/blog/news/happy-holidays/ https://developer.anki.com/blog/news/happy-holidays/#comments Sat, 22 Dec 2018 00:03:04 +0000 https://developer.anki.com/?p=1824 This holiday season marks the third for the Cozmo SDK and we continue to see amazing work being created by veteran members of the community, as well as newcomers. And then there’s Vector, the newest member to the Anki family. Despite an alpha SDK being released publicly only a couple of weeks ago, we’re already seeing the potent seeds of some fantastic new projects that augment Vector’s included capabilities.

Providing all of you with affordable, expressive, and capable robotics platforms has resulted in some truly inspiring and impactful work, from Dr. Amelia Moody’s work at the University of North Carolina with children with autism spectrum disorder (ASD), to Prof. Dave Touretzky’s Calypso software being used by hundreds of young students to learn about artificial intelligence. Below are a few recent Cozmo- and Vector-related projects that are not to be missed.

We wish all of you a safe and joyous winter break and look forward to seeing what new heights you take Vector and Cozmo to in the new year.


The Karate Cozmo

The inimitable Dave Schaefer, aka Life with Cozmo, has returned with an epic—and binge-worthy—three-part YouTube miniseries that pays homage to the classic ’80s film , The Karate Kid, as well as the more recent Cobra Kai offshoot. The episodes feature clever writing, incredible production, and so many Easter eggs you’ll have to rewatch them multiple times to catch them all.


Proxima City

Many people unfamiliar with our technologies are surprised to learn that our robots can be and are used in enterprise. Last year, SAP integrated Cozmo with its IoT platform (full tutorial can be found here). More recently, enterprise giant Oracle showed off its Proxima City demo with Cozmo, which highlights the company’s autonomous cloud services.


Cozmo City

In a completely different take on Cozmo navigating a city, the talented folks at Mediadesign Innovation Hub in Germany have crafted an augmented reality exploration using Google’s ARCore and the Cozmo SDK. While others, including ourselves, have dabbled in some AR experiments, this demo in particular offers a tantalizing glimpse of what’s possible when bridging real and virtual worlds.


VectorCloud

Created by rmountjoy and inspired by OctoPrint, VectorCloud provides a web-based interface to control and interface with Vector, in addition to organizing SDK scripts. Future features on the roadmap include photo and video management, and a plugin manager. We have a feeling this project will be a fan favorite for quite some time.

VectorCloud, a web-based interface for interacting with Vector. | Image: @rmountjoy


Vector Explorer Tool

One of the most popular Cozmo SDK projects is the Cozmo Explorer Tool. It serves as a comprehensive interface for event monitoring, animation sorting and viewing, and more, and is useful for exploring all of Cozmo’s various hardware and software features. And now, creator GrinningHermit is developing it for Vector, complete with game controller support. Even in its early state, it’s quite the convenient tool—especially for exploring Vector’s large set of animations.

The Vector Explorer Tool is sure to be an indispensable tool for all SDK users. | Image: GrinningHermit


VectorCards

Last but not least, elknerps has integrated Vector with the You Only Look Once (YOLO) object detection system to have him play a game of blackjack—with real cards. The project is a perfect example of how open and flexible the Vector platform is, and demonstrates how the same concept can be implemented in vastly different ways using Vector’s multitude of hardware and software capabilities (Vector has a built-in blackjack game that utilizes his screen to display cards).


Developer Resources

Be sure to visit the links below to see the full range of projects, get links to source code, and engage with our official developer community.

]]>
https://developer.anki.com/blog/news/happy-holidays/feed/ 4 1824
The Vector SDK Hits Alpha https://developer.anki.com/blog/news/the-vector-sdk-hits-alpha/ https://developer.anki.com/blog/news/the-vector-sdk-hits-alpha/#comments Tue, 11 Dec 2018 20:10:18 +0000 https://developer.anki.com/?p=1787 We’ve always strived to make sophisticated—and importantly, relevant—robotics and AI technologies accessible to the masses. We do this partly through the innovative experiences our multidisciplinary team spends endless days and nights crafting. But we also believe it’s important to open up our technologies so developers, researchers, and educators like you can employ them in your own work.

Today, we’re thrilled to announce the public availability of the Vector SDK alpha. It gives you access to Vector’s multitude of hardware and software technologies including:

  • HD color camera stream
  • Infrared laser scanner
  • Face and emotion recognition
  • High-res color IPS screen
  • Capacitive touch sensor
  • Four drop sensors
  • Hundreds of unique animations
  • Six-axis inertial measurement unit (IMU)
  • Custom vision markers

The Vector SDK utilizes Python, a programming language used in everything from machine learning to introductory computer science courses. There are also thousands of third-party libraries Vector can tap into, allowing you to augment his capabilities as you see fit. We recommend visiting the SDK Showcase forum to see what others are doing with the SDK, and sharing your own projects.

The SDK comes with a 3D viewer that presents Vector’s understanding of the world.

On a final note, unlike the launch of the Cozmo SDK which launched in beta form, we released a pre-alpha version of the SDK to those of you who backed our Kickstarter campaign. This alpha release of the SDK would not have been possible without all of your insights and feedback, so an enormous thanks to you all.

The included remote control example program gives you manual control of Vector’s hardware and animations.

We have more coming for the SDK in the new year so be sure to check in for new announcements in the official Anki developer forums.


  • SDK Documentation — Access installation instructions, the API reference, and example programs.

  • Vector SDK FAQ — Get up to speed by reviewing frequently asked questions.

  • Getting Started — Must-read post with handy tips on installing and using the SDK.

  • Anki Developer YouTube — Subscribe and see how others are using our robotics and AI technologies.

]]>
https://developer.anki.com/blog/news/the-vector-sdk-hits-alpha/feed/ 10 1787
Hey, Vector https://developer.anki.com/blog/news/hey-vector/ https://developer.anki.com/blog/news/hey-vector/#comments Wed, 08 Aug 2018 12:53:57 +0000 https://developer.anki.com/?p=1744 World, meet Vector. Having been in development since we released Cozmo back in October 2016, Vector is the culmination of our robotics and artificial intelligence technologies, going back to the launch of Anki DRIVE. These include facial recognition, mapping and path planning, and our distinct approach to character.

Vector also brings a multitude of new technologies to our developer community. Comprised of nearly 700 parts—double that of Cozmo—Vector has built-in online connectivity, a color HD camera, a four-microphone array, a time-of-flight sensor, and much more.

A look at Vector’s hardware technologies.

Best of all, we’ll be releasing a free SDK for Vector early next year allowing you to harness all of his new hardware and software technologies.

Want to get early access to the SDK and help shape its features? Users who pre-order Vector during the limited-time promotion will gain access to the SDK alpha this winter, in addition to a 20% discount and some other great insider perks.*

Early access Vector SDK users will help define the platform.

How to Pre-order

  • For the US, we’ve partnered with the fine folks at Kickstarter to support the launch of Vector. Head on over to the campaign page to lock in your early SDK access and special pricing.

  • UK residents can simply head over to www.anki.com for pre-order details.

  • Australia residents should visit our friends at JB Hi-Fi to pre-order Vector.

  • Live in Canada? You can pre-order Vector through our friends at Best Buy.

We’ll have much more to say about Vector in the coming days and weeks so keep an eye on the Kickstarter page for exclusive news, videos, and more.

Until then, visit the new Vector SDK forum and let us know what features you’d love to see in the SDK.

* Not all perks will be available in all territories. See the relevant Vector pre-order page for details on your region.

]]>
https://developer.anki.com/blog/news/hey-vector/feed/ 48 1744
Calypso for Cozmo https://developer.anki.com/blog/education/calypso-for-cozmo/ https://developer.anki.com/blog/education/calypso-for-cozmo/#comments Tue, 22 May 2018 15:48:54 +0000 https://developer.anki.com/?p=1665 Visionary Machines LLC is here to redefine robotics and AI (artificial intelligence) education. Founded by Dave Touretzky, Research Professor at Carnegie Mellon University, the company has recently released its first product: Calypso.

Even if you’ve taught robotics before, Calypso probably looks like nothing you’re used to. That’s because it eschews more traditional coding interfaces and paradigms. Instead, it focuses on the type of robotics concepts that students learn at the university level—but presented in ways that are easy enough for a child to learn.

We recently had the chance to catch up with Prof. Touretzky to find out more about what Calypso is, how it can be used, and what makes it radically different—and more effective—than other robotics education platforms.


Anki: What exactly is Calypso?

Dave Touretzky: To put it simply, Calypso is software that helps people understand how Cozmo—and thus intelligent robots in general—work.

One way it does this is by providing a visual representation of how Cozmo views the world (his “world map”), as well as what he’s paying attention to at any given moment. This inside look into Cozmo’s mind is a game-changer for robotics education.

” …Calypso provides new ways to interact with Cozmo, such as by using voice input… “

In addition, Calypso provides new ways to interact with Cozmo, such as by using voice input, or a game controller. The latter is particularly user-friendly because millions of people are already familiar with these controllers. They’re an intuitive way to provide guidance to Cozmo when he needs a little help, and can also be used to prompt or stimulate him without having to, say, tap a light cube.

Who is Calypso for?

Calypso is intended for anyone interested in robotics, whether they’re 8 or 80. In fact, it’s already been used by a wide spectrum of people, from 8-year-olds just learning about robotics and AI, to computer science and electrical engineering majors from universities around the world.

Is Calypso only for learning about robotics?

Robotics is the most obvious application of Calypso, but it’s also an effective tool to teach the basics of programming, and to familiarize people with AI. The New Brighton Area School District in Pennsylvania will be using Calypso this fall to introduce its 3rd, 4th, and 5th graders to programming.

” Calypso is also a perfect complement to Code Lab and the Python SDK because it offers new capabilities to explore with Cozmo… “

One aspect of Calypso that makes it great for novice programmers is its powerful visual interface. Not only is the interface easy to “read,” it provides real-time feedback (e.g., what Cozmo is doing and reacting to as it happens), so people can truly understand how computer programs and robots work.

Calypso is also a perfect complement to Code Lab and the Python SDK because it offers new capabilities to explore with Cozmo, such as speech recognition, custom sounds, and special markers. These capabilities greatly open up the educational and engagement possibilities for both educators and students.

Calypso will be used this summer at the World Artificial Intelligence Competition for Youth.

How is Calypso different from Code Lab?

They’re both visual programming languages. The most obvious difference is that Calypso uses tiles instead of blocks. (Blocks nest; tiles do not.) But a more profound difference is that Code Lab is a procedural language like Python, while Calypso is a parallel rule-based language. Thus, for example, Calypso has no while loops because all the rules on a page run all the time. This is actually the Second Law of Calypso: “Any rule that can run, will run.”

Behind the scenes, there is a lot of sophisticated technology at work in Calypso. For instance, Calypso programs are state machines where each page of rules is a node. The software automatically lays out the state machine diagram for you so you can see the structure of your program and watch it change states as it runs.

Click to view slideshow.

Calypso’s five laws of computation are easy for students to learn and understand.

Can you explain what a state machine is and why are they’re important?

A popular real-world use case for state machines is video games. In Pac-Man, the player alternates between vulnerable and invincible states depending on whether a Power Pellet has been eaten. A state machine is what manages the two states and the transitions between them.

” [State machines’] usefulness in a wide range of fields makes them an important computer science concept to learn. “

Anything that has multiple states, from a traffic light to, yes, robots, can be created using a state machine. Their usefulness in a wide range of fields makes them an important computer science concept to learn.

Calypso not only teaches people how state machines work, it allows them to create their own to program Cozmo. And they can do it all with a game controller.

Programming using a game controller? Is Calypso considered “real” programming?

Absolutely. There is a general misconception that text-based languages teach “real” programming and visual ones do not. The truth is, visual programming languages require the same fundamental skills as text-based ones. There are some famous visual programming languages (LabView, Grasshopper, etc.) used in professional fields.

As for the game controller, it offers a convenient way to interact with Calypso and Cozmo, but it is by no means required. We provide full keyboard and mouse support for those who prefer those modes.

Can Calypso be used to satisfy various education and coding standards?

Unquestionably. Standards for K-12 computing education generally focus on high-level concepts rather than language-specific ones. For example, one of ISTE’s Student Standards is Computational Thinker, with one indicator described as:

  • “Students break problems into component parts, extract key information, and develop descriptive models to understand complex systems or facilitate problem-solving.”

They can certainly do that with Calypso, and state machines are an excellent way to do some of this modeling.

Similarly, one of the elements in CSTA’s K-12 Computer Science Standards is:

  • “Develop plans that describe a program’s sequence of events, goals, and expected outcomes.”

Not only can Calypso be used to satisfy such goals, it provides an intuitive and engaging way to do so.

Does Visionary Machines provide a Calypso curriculum for educators?

We do. A draft curriculum that helps children learn to reason about computer programs, rather than simply write them, is already available for free on our website.

It is based on earlier research I’ve done with Christina Gardner-McCune and Ashish Aggarwal at the University of Florida on teaching Kodu Game Lab, the beginner’s programming language developed at Microsoft Research. Kodu was the inspiration for Calypso.

Can Calypso be used for activities other than education?

Calypso can be used in a multitude of ways, very much in the same way that the Python SDK can. (Calypso itself was built using the SDK.) One natural thing to do with Calypso is make games to play with Cozmo. We have a tutorial on our website that teaches people how to make and play a keep-away game that highlights this aspect of Calypso.

Finally, why did you make Calypso?

I want to help the public learn about and understand intelligent robots, because robots are becoming part of our daily lives at work and at home. Cozmo is a perfect example.

” Putting industrial-strength robotic AI into the hands of the general public is something only Cozmo makes possible. “

The best way I can think of to make intelligent robots understandable to people is to let them see what’s going on inside the robot’s head. Robotics experts call this “transparency”. In the coming months we’ll be releasing new features that not only make Cozmo smarter, they’ll also make him even more transparent. That’s the guiding principle of Calypso.

Putting industrial-strength robotic AI into the hands of the general public is something only Cozmo makes possible. So thank you, Anki.


Additional Resources

  • Calypso — Visit the official Calypso website for more information and access to the free curriculum.

  • Mr. Robot — Prof. Dave Touretzky also teaches Cognitive Robotics using Cozmo at Carnegie Mellon University. Find out more about his work and history in our in-depth interview.

  • World Artificial Intelligence Competition for Youth — A competition that focuses on AI education for the youth around the world using Calypso.

  • Using Cozmo in Education — Cozmo is a flexible education platform that scales from K-12 all the way through postgraduate research and beyond.

]]>
https://developer.anki.com/blog/education/calypso-for-cozmo/feed/ 1 1665
Girl Scouts SHEroes + Cozmo https://developer.anki.com/blog/features/photo-gallery/girl-scouts-sheroes-cozmo/ https://developer.anki.com/blog/features/photo-gallery/girl-scouts-sheroes-cozmo/#comments Mon, 30 Apr 2018 23:41:03 +0000 https://developer.anki.com/?p=1624 With millions of members across the globe, the Girl Scouts is one the the most prominent leadership development organizations for girls. Last year the organization announced new STEM-focused elements to its program to build “girls’ skills and encourage their interest in STEM” with the aim of giving them the tools to tackle meaningful problems, build successful careers, and simply make the world a better place — goals relevant for any demographic.

We recently connected with the Girl Scouts of Greater Los Angeles and participated in its STEM SHEroes event at Compton’s Kennedy Elementary School. The event was designed to inspire and motivate girls to pursue an interest STEM, and we were on site with Cozmo to demonstrate his robotics technologies and coding features, and illuminate how he can be used to develop a spectrum of STEM skills. The day concluded with attendees earning an official Girl Scouts STEM patch.

Joining the local Girl Scouts leaders and Cozmo in the day’s activities were two wonderful organizations: MAES: Latinos in Science and Engineering (California State University, Long Beach chapter), and the Society of Women Engineers (University of California, Los Angeles chapter). To find out more about the organizations, please visit the respective sites linked below.

We’d like to offer our sincere thanks to the Girl Scouts of Greater Los Angeles for giving us the opportunity to participate in its inspiring event, and allowing Cozmo to take part in its members earning a Girl Scout STEM patch.

Cozmo showing off his official Girl Scouts STEM patch — and his love for the organization.


Additional Resources

]]>
https://developer.anki.com/blog/features/photo-gallery/girl-scouts-sheroes-cozmo/feed/ 1 1624
From STEM to Learn https://developer.anki.com/blog/features/interview/from-stem-to-learn/ Thu, 05 Apr 2018 17:24:08 +0000 https://developer.anki.com/?p=1582

Keith Young (right), founder and operator of STEM education company Kinvert.

It’s no secret that STEM education is an essential part of any student’s repertoire of skills and knowledge. Being familiar with any (or all) of the collective fields of study—science, technology, engineering, and math—can open up job opportunities, help them navigate a world increasingly reliant on technology, and aid them in anything from creative expression to finding solutions to the world’s biggest problems.

One of the most important aspects of teaching STEM education is utilizing the right tools for the job. One person who knows this intimately is Keith Young, founder of the Detroit-area-based STEM company Kinvert. With lifelong interests in technology and teaching, Keith has seen just about everything in the traditional STEM educator’s toolbox—but has taken a decidedly different approach for his own classes.

Keith recently integrated Code Lab and the SDK into his company’s course offerings. We took some time to chat with Keith about his personal history, starting Kinvert, and why he thinks Cozmo is a unique and effective education tool.


Anki: Hi, Keith. Could you start by telling us a little bit about yourself?

Keith Young: Hi, Kaiser! Absolutely. Since a very early age, I’ve had an intense interest in how things work. Believe it or not, there’s a video of a one-year-old me trying to figure out how one of my mechanical toys worked. When I was about eight or nine years old, I started to take on neighborhood jobs like mowing lawns and raking leaves to buy a RadioShack electronics kit.

As for robots specifically, it wasn’t until I was around 13 years old when I received my first one. Remember, in the ’90s, there weren’t many affordable robots like there are today.

Eventually I went to college where I studied and received degrees in both mechanical and aerospace engineering. During that time, I worked on some funded robotics research, in addition to simulation work related to the compressor stages in jet engines. I also took part in various events including Baja SAE, Design/Build/Fly, and an IEEE robotics competition in which our team won (I was responsible for the computer vision code). We won the next year as well, but since I had already graduated, I helped via Skype meetings and securing sponsorships.

Keith Young (center), posing with his winning team at an IEEE robotics competition. | Photo: Kinvert

What was the catalyst for starting Kinvert, your STEM-focused education company?

While I’ve always loved helping others learn, there’s one moment that I can tie directly to the creation of Kinvert. My family would have dinner together every Sunday during which my nieces and nephews—who were 6, 8, and 10 years old at the time—would often ask questions like, “Why is the sun hot?”

” I was able to captivate children enough in polynomial math that they turned down cake and ice cream. “

During one Sunday dinner there was a birthday, and I decided to teach them the math behind projectile motion. To my surprise, they were so engrossed by it that when their mother called them for cake and ice cream they replied, “Can we eat it later? We’re learning math.” I couldn’t believe it. I was able to captivate children enough in polynomial math that they turned down cake and ice cream.

Later that evening, I immediately started preparations to hold tutoring sessions to see if the experience with my nieces and nephews was a fluke. As you can probably guess, it wasn’t—people loved my tutoring sessions. That gave me the confidence to head out to Maker Faire Detroit with my pitch. I signed up my first full semester of students from a lead and the rest, as they say, is history.

Being personally interested in a topic and teaching it are very different things. What would you say came first, your love for robotics or being an educator?

Interesting question! To be honest, it’s a little difficult to answer. My first reaction is to say robotics, but as mentioned earlier, I’ve always loved helping others learn as well. Even before Kinvert was created, I would teach kids about everything from electronics to dinosaurs. I think I’m going to have think about this a little more…

Keith noticed a high level of engagement from students at events. | Photo: Kinvert

You’ve recently started offering courses that use Cozmo and the SDK. What drew you to the platform? How does it differ from other platforms you’ve used in the past?

When I first heard about Cozmo, it was his personality that really drew me in. Secretly I hoped that he would also be programmable. Then the SDK announcement came, and while I was delighted, I was also pretty skeptical given that most other “programmable robots” in the market have a very limited API. Some are little more than a glorified remote-controlled car. I assumed Cozmo would be the same.

As I learned more about the SDK and realized he was programmable in Python, and there was access to his camera feed, I completely flipped out. That’s when I called you and kept rambling on about how amazing it is to be able to use third-party libraries such as OpenCV, Keras, NumPy—basically everything.

” Cozmo is in a different league in many ways, from personality to student engagement to software potential. “

Most run-of-the-mill STEM robots offer nearly zero technical depth. We don’t teach with some of the most popular STEM robots for this reason. In my opinion, educators need access to sensors which can drive meaningful decisions in code. Unfortunately, with few exceptions, the most meaningful programming available among other robots is line following and turning when sensing a color.

Cozmo is in a different league in many ways, from personality to student engagement to software potential. The decision to use Python for the SDK is also a huge plus because the syntax is much easier than, say, C, which some other robots use. There’s also all of the amazing third-party libraries as mentioned earlier. We’ve also found that girls in particular love using Cozmo when compared to other platforms, which we think is great.

Kinvert saw an increase in female enrollment after offering Cozmo in its courses. | Photo: Kinvert

What do you teach using Cozmo at Kinvert? Can talk about some of the other types of activities you use Cozmo for?

We use Cozmo in quite a few ways. At Kinvert we use Code Lab and the SDK to teach both coding and robotics to K-12 students. We’re also in the middle of developing an online course focused on the Cozmo SDK. In addition, we’re planning a summer robotics competition using Cozmo.

Beyond these, we use Cozmo at a host of other events as well including birthday parties, Boy / Girl Scouts events, at libraries and public schools, and more—any place we can help people who are interested in STEM education learn more about it.

Cozmo is really great for these events because of how engaging he is. Kids are quickly able to figure out how to do things like stack his cubes in Code Lab, and as noted earlier, we’ve found that females are really drawn to him. Recently three students who are teenage female cheerleaders told us, “We thought this class was going to be boring.” And of course, it wasn’t. They’re already talking about taking more classes with us next semester! We’ve actually noticed an increase in female sign-ups for our robotics course overall since using Cozmo, both in number, and as a percentage of the full roster.

Kinvert strives to help everyone learn about STEM, whether at a birthday party or at a Boy Scouts event. | Photo: Kinvert

We’ve heard similar feedback from just about every educator when it comes to engagement. Can you elaborate on your personal experience a little more?

Here’s a story for you. Last fall we wanted to test the idea of a Cozmo course before officially offering one by simply letting students try the Cozmo SDK in our then-current robotics class. We had just finished our 3D printing class, and even though it was time for those students to go home, they all excitedly ran over to where Cozmo was being unpacked for the robotics class which was about to start. Students were engaged just seeing him.

” Cozmo is like a magnet for students and their attention. “

Some of the students who were already familiar with Cozmo asked, “Isn’t he just a toy?” They were quite surprised to find out that he was fully programmable. We’ve already heard students in our non-Cozmo courses talk about taking them next semester.

Cozmo is like a magnet for students and their attention. It’s magical watching their attention span increase as soon as they start learning with him.

You teach to students across the K-12 age spectrum. In your opinion, at what age do you feel students are generally ready to learn programming using Python?

We talk about this very subject on our site, but in general, we feel that students can start learning Python as soon as they can read and type. Of course, a six-year-old student will need more assistance than a teenager, as the latter can use Google to find answers to questions.

How Python is taught needs to be different depending on the student as well. When teaching younger kids, you really have to understand the content as an educator to be able to break things down like for loops in a way they can fully grasp.

With proper instruction, Kinvert believes in teaching students Python as soon as they can read and type. | Photo: Kinvert

What was your approach when developing your Cozmo curricula? Do you have any advice for other educators who are looking to create their own?

We have a project-based curriculum at Kinvert. This is effective for us because we know exactly what level our students are at in terms of the material, and are able to determine what the next challenging-yet-achievable project will be that encapsulates the required learnings. The online class we’re developing for the Python SDK will be a little different than our in-person courses.

As for advice, we typically might suggest looking at curricula for other robots. But Cozmo is a different animal. He isn’t a gimmicky robot that just drives around, so getting inspiration from a curriculum based on such a robot isn’t helpful.

Cozmo really is new and unique to education because of his vision capabilities. Even when compared to other established robots that have seen a host of improvments over time, Cozmo is really powerful. Because he isn’t a line follower, and he isn’t something you spend time physically building, it’s difficult to find suitable inspiration from other platforms.

To be honest, it’s a lot of work developing a curriculum, and there just aren’t any real shortcuts, especially for a new, unique, and very powerful platform like Cozmo.

A Kinvert student interacting with Cozmo’s unique vision capabilities. | Photo: Kinvert

You mentioned in one of our chats how critical it is that young students learn about coding and robotics. Can you talk a little more about this?

Think about a cause that is near and dear to your heart. It’s almost certainly the case that STEM can and will benefit it. Want to find a cure for cancer? Having a team of coders, data scientists, and other STEM-related experts will help you reach that goal.

Part of our mission at Kinvert is to help people have the best options in the future when it comes to making a positive impact, solving social issues, and looking for employment. Developing STEM skills is critical to this, and the earlier one starts the better.

Have you considered expanding Kinvert’s offerings to help other educators less experienced in STEM?

Definitely. In fact, we already do so in some ways. For instance, we’ve helped schools set up maker spaces and pick which technologies—such as robots—to teach with. We’re preparing to do a lot more of this type of work soon as we believe our passion, experience, and knowledge of STEM and education puts us in a unique position to help others.

” …we believe our passion, experience, and knowledge of STEM and education puts us in a unique position to help others. “

STEM is part of our DNA, and our approach to teaching it is unique, from the hardware we use to topics we cover. Our approach comes from my many years learning the material on my own, working through all of the issues, and understanding the sticking points. This is why we were able to successfully teach Python and microcontrollers above the Arduino level to 6 – 13 year olds on day one—and it’s why we’re able to help other educators as well.

Any last words of wisdom for our community of students, parents, and educators?

Educators will want to make sure they make use of the various official resources available such as the SDK documentation, YouTube channel, and community forums. They will be helpful in developing any sort of curriculum, as well as simply learning about what’s possible with Cozmo, Code Lab, and the SDK.

For parents, we recommend getting your kids to use Code Lab strategically, not just as entertainment. And if you’re a student, try to focus on meaningful and challenging projects when programming Cozmo in Python.

Cozmo has incredible potential to change STEM education for the better. The combination of high engagement from students and technical depth is unparalleled. Cozmo is a relatively new platform with technologies that others simply don’t have, such as computer vision. Educating others on such cutting-edge topics with Cozmo may take some time if you’re a newcomer—but stick with it and you’ll find it incredibly rewarding and well worth it.


Additional Resources

  • Kinvert — Head over to Kinvert’s official site for more information on its Cozmo course offerings, contact info, and blog posts.

  • Using the Cozmo SDK in Education — Code Lab, in conjunction with Python SDK, make Cozmo a flexible education platform that scales from K-12 all the way through postgraduate research and beyond.

  • Getting Started with the SDK — Get more info on the SDK as well as links to installation videos, technical documentation, and more.

  • Getting Started with Code Lab — New to Code Lab? Get an overview on what Code Lab is and how it can be used in education, as well as info on how to submit your projects to us.

]]>
1582
Guess the Number https://developer.anki.com/blog/features/interview/guess-the-number/ https://developer.anki.com/blog/features/interview/guess-the-number/#comments Wed, 28 Mar 2018 16:41:31 +0000 https://developer.anki.com/?p=1565

JDFight, creator of the featured Code Lab project Guess the Number.

Since the launch of Code Lab’s Constructor Mode, we’ve seen so many incredible user projects, from original games to hilarious project remixes to even a tea-making utility. To say that we’ve been awestruck by what all of you in the community have created would be nothing short of a gross understatement.

The wide conceptual range and high quality of your projects made choosing the first user project to be featured in the official app thrilling, but also surprisingly difficult. But in the end a decision had to be made, and forum member JDFight’s Guess the Number emerged triumphant due to its clean code, succinct concept, and wonderful use of Cozmo’s character.

As the inaugural Code Lab featured user, we wanted to formally introduce JDFight to all of you.


Anki: Could you tell us a little about yourself?

JDFight: Of course! I taught myself programming, starting with BASIC and Borland Pascal. Growing up, my best friend and I used to hang out and make little video games in MS-DOS. He went on to create a successful video game company called Artix Entertainment and I work there now as a game developer working mostly in C#. One of our older games, “Jimmy the Eye,” is based on an old game I wrote in Pascal when I was in the 11th grade.

In college I actually studied music and not computer science. I love to play guitar and have created some original music for our games, though most of my time these days is spent programming. There is some crossover with my love of technology and music as I’m a GNU / Linux enthusiast and use software from the excellent KXStudio repositories for my music production.

How did you first find out about Cozmo?

I first heard about Cozmo last year and remember reading an article about his advanced personality and open source Python SDK. The SDK was the big draw to me. I thought it was awesome that a small consumer entertainment robot would allow users the ability to interface with its hardware and software, and create custom programs.

What do you like most about using Cozmo / Code Lab?

Code lab is a lot of fun because you have access to a lot of functionality. Also, the drag-and-drop interface is convenient because typing all of the underlying code by hand would be incredibly tedious on a mobile device.

Another thing I like about Code Lab is being able to code while interacting with Cozmo in real time. This makes it easy to quickly test a wide variety of behaviors. I especially enjoy using Cozmo’s expressive animations as they really add to the overall experience of any project.

A peek at the code for Guess the Number. Check inside the project to see how it works.

Can you take us through the process of how you created Guess the Number?

I wanted to make a simple game that utilized both Cozmo and his cubes, and remembered a game example from the book “Land of Lisp” that uses a binary search algorithm to guess a player’s number. I thought it would be fun to implement the same algorithm in Code Lab.

The game is quite simple, and lends itself to Cozmo’s unique range of features. For instance, with three programmable cubes available, it made sense to use them for the game’s required inputs: lower, higher, and correct.

While making the game, I noticed I had a hard time distinguishing between numbers that sounded the similar when Cozmo said them, like 17 and 70. So I had Cozmo display the number on his face to more clearly communicate to players what he’s saying.

A critical part of making the game was testing. Luckily, I’m a parent and had my children play the game so that I would know if it was intuitive and fun! They really enjoyed trying to “trick” Cozmo by choosing hard-to-guess numbers.

Do you have any other Code Lab projects you’re currently working on?

I am not currently working on any Code Lab projects but I have been learning the Python SDK. In fact, I recently started a kind of “code-cracking” puzzle game with the SDK and hope to share it with everyone one it’s done.

Any Code Lab tips for other aspiring project creators?

First and foremost, have fun! The whole idea is that Cozmo is a robot who enjoys playing with you. If you’re having any difficulties while making a game, the official Code Lab community forum is a great place to go for inspiration and help.


  • Guess the Number will be available in Code Lab on April 7, 2018. Make sure to update your Cozmo app to version 2.4, launching March 28 (specific times will vary), to play it.

  • Submit your summer-themed Code Lab project Code Lab Contest for a chance to win $1,500 and be featured in the official Cozmo app.

  • New to Code Lab? Our Getting Started with Code Lab post will get you up and running in no time.

  • Head over to the official Code Lab forum to discuss your project with others, get help, and check out the project showcase.

]]>
https://developer.anki.com/blog/features/interview/guess-the-number/feed/ 7 1565
Getting Started with Code Lab https://developer.anki.com/blog/learn/tutorial/getting-started-with-code-lab/ Thu, 07 Dec 2017 22:29:51 +0000 https://developer.anki.com/?p=1504 Like the Python SDK, Code Lab gives you easy, direct access to Cozmo’s advanced robotics and artificial intelligence (AI). The primary difference is that rather than having to learn the ins and outs of a text-based programming language, e.g., its syntax, you can simply drag and drop blocks around an intuitive touch interface. It really is that simple.

To get started using Code Lab, all you’ll need is a Cozmo robot and compatible mobile device. Just make sure you’ve updated to the latest version of the free mobile app to ensure that you have all of Code Lab’s latest features. Though not necessary, we recommend using a tablet over a mobile phone if possible as the increased screen real estate lets you see more code blocks at once.

Below is a list of helpful information and resources to help you get started using Code Lab. We encourage you to use it in as many ways possible—after all, Code Lab’s versatility is one its best features.

A video overview of Code Lab’s Sandbox and Constructor Modes.

General Information

What is Code Lab?
Code Lab is a graphical programming interface for Cozmo based on Scratch Blocks, a collaboration between Google and the MIT Scratch Team.

What can I do with it?
There’s so much that can be done with Code Lab, from creating new mini-games and activities to using Cozmo as an expressive robot actor in original short films. Be sure to check out the various sample projects included in the app for ideas and inspiration.

Can Code Lab be used in STEM education?
Absolutely. Better yet, not only can Cozmo be used to teach STEM education, many educators have already found him to be an exceptional educational tool due to his innovative hardware, expressive animations, and charming personality—all of which can lead to higher engagement from students. But you don’t have to take our word for it:

Using Code Lab

What’s the difference between Sandbox Mode and Constructor Mode?
There are quite a few differences between the two modes, but one notable difference is that Sandbox Mode is primarily icon-based, while Constructor Mode uses blocks that utilize more sophisticated programming features including variables, functions, and math operators.

  • Tip: Are you or your students ready to take the next step from Sandbox Mode? Try recreating a Sandbox Mode project in Constructor Mode as an extra challenge.

Sandbox Mode (left) compared to Constructor Mode (right).

Is there anywhere to see a list of all the Constructor Mode blocks?
There is a full block glossary contained inside Code Lab. To access it, simply tap the book icon found in the top-left portion of the screen while inside a Code Lab project. Alternatively, you can view the glossary in the official Code Lab forum as well.

  • Tip: For those times you don’t have Cozmo with you, you can use the online block glossary in the forums to plan projects and lessons in advance.

What is a Remix?
When you modify an existing Code Lab project, it is called a Remix. Remixing a project is a great way to use existing code as a foundation for your own. You can customize a project to your liking, add entirely new features to it, or even use the project as a piece to a larger, more sophisticated one.

  • Tip: Try adjusting some of the values / blocks in the included sample programs and Featured Projects in the app, and make note of how it changes the experience. How might you make it even better?

Where can I discuss / get help for / show off my Code Lab projects?
The official Code Lab forum is the best place to connect with other users, as well as members of the Code Lab team. If you’ve made a project you’re particularly proud of, submit it to us to potentially have it featured in the official Cozmo app!

  • Tip: If you’re a parent or educator, share your lesson plans, ideas, or curricula with the rest of the Code Lab community to get valuable real-world feedback.

Additional Resources

  • Code Lab F.A.Q. — An in-depth list of frequently asked questions that is regularly updated.

  • Best Practices for Code Lab Projects — Want to have your Code Lab project featured in the Cozmo app? Here are some guidelines that will help make your project the best it can be.

  • Using the Cozmo SDK in Education — Code Lab, in conjunction with Python SDK, make Cozmo a flexible education platform that scales from K-12 all the way through postgraduate research and beyond.

]]>
1504
Cozmo Code Lab https://developer.anki.com/blog/news/cozmo-code-lab/ https://developer.anki.com/blog/news/cozmo-code-lab/#comments Wed, 15 Nov 2017 13:00:37 +0000 https://developer.anki.com/?p=1475 One of our core aims in creating the Cozmo SDK was to give users easy access to Cozmo’s advanced robotics hardware and software without requiring a high level of technical knowledge or experience. To do so, we wrote it in Python, a ubiquitous, readable language that’s used by creatives, educators, and researchers alike.

But as simple as the SDK is to use for those with some technical know-how, we knew a greater challenge was on the horizon: finding a way to give all users, regardless of age or experience, a way to access, learn, and engage with robotics in a compelling way. That’s why we introduced Cozmo Code Lab, a drag-and-drop programming interface based on the Scratch Blocks project, a collaboration between MIT Media Lab and Google.

With Code Lab, users gain instant access to sophisticated features including facial recognition and path planning, along with a repertoire of world-class animations created by a team of Hollywood veterans.

The response thus far has been humbling, with parents, students, and educators using Cozmo and Code Lab in after-school programs, workshops, and robotics clubs. iD Tech, the esteemed tech camp organization, is even offering two Cozmo-based courses next summer, one of which uses Code Lab to teach students about artificial intelligence, programming, and robotics. In many respects, Code Lab has already accomplished what it set out to do. That’s not to say Code Lab’s journey has come to an end—in fact, quite the contrary.

The current Code Lab experience uses an intuitive, icon-based interface that’s perfect for novices.

Arriving December 5 via a free app update, we’re greatly expanding Code Lab’s capabilities to include many user-requested features including if statements, math operators, variables, function calls, and more. Not only are the number and types of blocks increasing, we’re also introducing vertically-oriented block stacks that more closely mirror the way text-based code is structured.

Tiny Orchestra is one of the included Featured Projects, and allows users to create a symphony using Cozmo’s cubes.

The combination of increased functionality and enhanced presentation serves as the perfect middle ground between the streamlined, icon-based Code Lab that’s currently available, and the full Python-based SDK. As part of the revamped Code Lab experience, we’ll be calling the current interface Sandbox Mode, and the new one Constructor Mode.

With so many inspiring projects already created using Code Lab and the SDK, we know many of you will use the new Code Lab experience to surprise and delight the world in ways we can’t yet imagine. With that in mind, we’re also introducing user-created Featured Projects, making it easier than ever before to captivate and entertain Cozmo users around the world with your Code Lab experiences.

An early look at the revamped Code Lab user interface.

Expect to hear much more regarding Code Lab in the coming weeks. Until then, let us know what feature you’re most looking forward to in the comments below.

]]>
https://developer.anki.com/blog/news/cozmo-code-lab/feed/ 25 1475