Mycroft and Building a Future of Open Artificial Intelligence
Last year a new project hit Kickstarter called Mycroft that promises to build an artificial intelligence assistant. The campaign set out to raise $99,000 and raised just shy of $128,000.
Now, artificial intelligence assistants are nothing particularly new. There are talking phones and tablets such as Apple’s Siri and Google Now, and of course the talking trash can, the Amazon Echo. Mycroft is different though and I have been pretty supportive of the project, so much so that I serve as an advisor to the team. Let me tell you why.
Here is a recent build in action, demoed by Ryan Sipes, Mycroft CTO and all round nice chap:
Mycroft is interesting both for the product it is designed to be and the way the team are building it.
For the former, artificial intelligence assistants are going to be a prevalent part of our future. Where these devices will be judged though is in the sheer scope of the functions, information, and data they can interact with. They won’t be judged by what they can do, but instead what they can’t do.
This is where the latter piece, how Mycroft is being built, really interests me.
Firstly, Mycroft is open source in not just the software, but also the hardware and service it connects to. You can buy a Mycroft, open it up, and peek into every facet of what it is, how it works, and how information is shared and communicated. Now, for most consumers this might not be very interesting, but from a product development perspective it offers some distinctive benefits:
- A community can be formed that can play a role in the future development and success of the product. This means that developers, data scientists, advocates, and more can play a part in Mycroft.
- Capabilities can be crowdsourced to radically expand what Mycroft can do. In much the same way OpenStreetmap has been able to map the world, developers can scratch their own itch and create capabilities to extend Mycroft.
- The technology can be integrated far beyond the white box sitting on your kitchen counter and into Operating Systems, devices, connected home units, and beyond.
- The hardware can be iterated by people building support for Mycroft on additional boards. This could potentially lower costs for future units with the integration work reduced.
- Improved security for users with a wider developer community wrapped around the project.
- A partner ecosystem can be developed where companies can use and invest in the core Mycroft open source projects to reduce their costs and expand the technology.
There is though a far wider set of implications with Mycroft too. Much has been been written about the concerns from people such as Elon Musk and Stephen Hawking about the risks of artificial intelligence, primarily if it is owned by a single company, or a small set of companies.
While I don’t think skynet is taking over anytime soon, these concerns are valid and this raises the importance that artificial intelligence is something that is open, not proprietary. I think Mycroft can play a credible role in building a core set of services around AI that are part of an open commons that companies can invest in. Think of this as the OpenStack of AI, if you will.
Hacking on Mycroft
So, it would be remiss if I didn’t share a few details of how the curious among you can get involved. Mycroft currently has three core projects:
- The Adapt Intent Parser converts natural language into machine readable data structures.
- Mimic takes in text and reads it out loud to create a high quality voice.
- OpenSTT is aimed at creating an open source speech-to-text model that can be used by individuals and company to allow for high accuracy, low-latency conversion of speech into text.
You can also find the various projects here on GitHub and find a thriving user and developer community here.
Mycroft are also participating in the IBM Watson AI XPRIZE where the goal is to create an artificial intelligence platform that interacts with people so naturally that when people speak to it they’ll be unable to tell of they’re talking to a machine or to a person. You can find out more about how Mycroft is participating here.
I know the team are very interested in attracting developers, docs writers, translators, advocates, and more to play a role across these different parts of the project. If this all sounds very exciting to you, be sure to get started by posting to the forum.
Going Large on Medium
I just wanted to share a quick note to let you know that I will be sharing future posts both on jonobacon.com and on my Medium site.
I would love to hear what kind of content you would find interesting for me to share. Feel free to share in the comments!
Thanks!
Upcoming Speaking at Interop and Abstractions
I just wanted to share a couple of upcoming speaking engagements going on:
- Interop in Las Vegas – 5th May 2016 – I will be participating in the keynote panel at Interop this year. The panel is called How Open-Source Changes the IT Equation and I am looking forward to participating with Colin McNamara, Greg Ferro, and Sean Roberts.
- Abstractions in Pittsburgh – 18-20 Aug 2016 – I will be delivering one of the headlining talks at Abstractions. This looks like an exciting new conference and my first time in Pittsburgh. Looking forward to getting out there!
Some more speaking gigs are in the works. More details soon.
Community Leadership Summit 2016
On 14th – 15th May 2016 in Austin, Texas the Community Leadership Summit 2016 will be taking place. For the 8th year now, community leaders and managers from a range of different industries, professions, and backgrounds will meet together to share ideas and best practice. See our incredible registered attendee list that is shaping up for this year’s event.
This year we also have many incredible keynotes that will cover topics such as building developer communities, tackling imposter syndrome, gamification, governance, and more. Of course CLS will incorporate the popular unconference format where the audience determine the sessions in the schedule.
We are also delighted to host the FLOSS Community Metrics event as part of CLS this year too!
The event is entirely free and everyone is welcome! CLS takes place the weekend before OSCON in the same venue in Austin. Be sure to go and register to join us and we hope to see you in Austin in May!
Many thanks to O’Reilly, Autodesk, and the Linux Foundation for their sponsorship of the event!
Suggestions for Donating a Speaker fee
In August I am speaking at Abstractions and the conference organizers very kindly offered to provide a speaker fee.
Thing is, I have a job and so I don’t need the fee as much as some other folks in the world. As such, I would like to donate the speaker fee to an open source / free software / social good organization and would love suggestions in the comments.
I probably won’t donate to the Free Software Foundations, EFF, or Software Freedom Conservancy as I have already financially contributed to them this year.
Let me know your suggestions in the comments!
Supporting Beep Beep Yarr!
Some of you may be familiar with LinuxVoice magazine. They put an enormous amount of effort in creating a high quality, feature-packed magazine with a small team. They are led by Graham Morrison who I have known for many years and who is one of the most thoughtful, passionate, and decent human beings I have ever met.
Well, the same team are starting an important new project called Beep Beep Yarr!. It is essentially a Kickstarter crowd-funded children’s book that is designed to teach core principles of programming to kids. The project not just involves the creation of the book, but also a parent’s guide and an interactive app to help kids engage with the principles in the book.
They are not looking to raise a tremendous amount of money ($28,684 is the goal converted to mad dollar) and they have already raised $15,952 at the time of writing. I just went and added my support – I can’t wait to read this to our 3 year-old, Jack.
I think this campaign is important for a few reasons. Firstly, I am convinced that learning to program and all the associated pieces (logic flow, breaking problems down into smaller pieces, maths, collaboration) is going to be a critical skill in the future. Programming is not just important for teaching people how to control computers but it also helps people to fundamentally understand and synthesize logic which has knock-on benefits in other types of thinking and problem-solving too.
Beep Beep Yarr! is setting out to provide an important first introduction to these principles for kids. It could conceivably play an essential role in jumpstarting this journey for lots of kids, our own included.
So, go and support the campaign, not just because it is a valuable project, but also because the team behind it are good people who do great work.
The Hybrid Desktop
OK, folks, I want to share a random idea that cropped up after a long conversation with Langridge a few weeks back. This is merely food for thought and designed to trigger some discussion.
Today my computing experience is comprised of Ubuntu and Mac OS X. On Ubuntu I am still playing with GNOME Shell and on Mac I am using the standard desktop experience.
I like both. Both have benefits and disadvantages. My Mac has beautiful hardware and anything I plug into it just works out the box (or has drivers). While I spend most of my life in Chrome and Atom, I use some apps that are not available on Ubuntu (e.g. Bluejeans and Evernote clients). I also find multimedia is just easier and more reliable on my Mac.
My heart will always be with Linux though. I love how slick and simple Shell is and I depend on the huge developer toolchain available to me in Ubuntu. I like how customizable my desktop is and that I can be part of a community that makes the software I use. There is something hugely fulfilling about hanging out with the people who make the tools you use.
So, I have two platforms and use the best of both. The problem is, they feel like two different boxes of things sat on the same shelf. I want to jumble the contents of those boxes together and spread them across the very same shelf.
The Idea
So, imagine this (this is total fantasy, I have no idea if this would be technically feasible.)
You want the very best computing experience, so you first go out and buy a Mac. They have arguably the nicest overall hardware combo (looks, usability, battery etc) out there.
You then download a distribution from the Internet. This is shipped as a .dmg
and you install it. It then proceeds to install a bunch of software on your computer. This includes things such as:
- GNOME Shell
- All the GNOME 3 apps
- Various command line tools commonly used on Linux
- An ability to install Linux packages (e.g. Debian packages, RPMs, snaps) natively
When you fire up the distribution, GNOME Shell appears (or Unity, KDE, Elementary etc) and it is running natively on the Mac, full screen like you would see on Linux. For all intents and purposes it looks and feels like a Linux box, but it is running on top of Mac OS X. This means hardware issues (particularly hardware that needs specific drivers) go away.
Because shell is native it integrates with the Mac side of the fence. All the Mac applications can be browsed and started from Shell. Nautilus shows your Mac filesystem.
If you want to install more software you can use something such as apt-get
, snappy, or another service. Everything is pulled in and available natively.
Of course, there will be some integration points where this may not work (e.g. alt-tab might not be able to display Shell apps as well as Mac apps), but importantly you can use your favorite Linux desktop as your main desktop yet still use your favorite Mac apps and features.
I think this could bring a number of benefits:
- It would open up a huge userbase as a potential audience. Switching to Linux is a big deal for most people. Why not bring the goodness to the Mac userbase?
- It could be a great opportunity for smaller desktops to differentiate (e.g. Elementary).
- It could be a great way to introduce people to open source in a more accessible way (it doesn’t require a new OS).
- It could potentially bring lots of new developers to projects such as GNOME, Unity, KDE, or Elementary.
- It could significantly increase the level of testing, translations and other supplemental services due to more people being able to play with it.
Of course, from a purely Free Software perspective it could be seen as a step back. Then again, with Darwin being open source and the desktop and apps you install in the distribution being open source, it would be a mostly free platform. It wouldn’t be free in the eyes of the FSF, but then again, neither is Ubuntu. 😉
So, again, just wanted to throw the idea out there to spur some discussion. I think it could be a great project to see. It wouldn’t replace any of the existing Linux distros, but I think it could bring an influx of additional folks over to the open source desktops.
So, two questions for you all to respond to:
- What do you think? Could it be an interesting project?
- If so, technically how do you think this could be accomplished?
Happy Birthday, Stuart
About 15 years ago I met Stuart ‘Aq’ Langridge when he walked into the new Wolverhampton Linux Users Group I had just started with his trademark bombastic personality and humor. Ever since those first interactions we have become really close friends.
Today Stuart turns 40 and I just wanted to share a few words about how remarkable a human being he is.
Many of you who have listened to Stuart on Bad Voltage, seen him speak, worked with him, or socialized with him will know him for his larger than life personality. He is funny, warm, and passionate about his family, friends, and technology. He is opinionated, and many of you will know him for the amusing, insightful, and tremendously articulate way in which he expresses his views.
He is remarkably talented and has an incredible level of insight and perspective. He is not just a brilliant programmer and software architect, but he has a deft knowledge and understanding of people, how they work together, and the driving forces behind human interaction. What I have always admired is that while bombastic in his views, he is always open to fresh ideas and new perspectives. For him life is a journey and new ways of looking at the road are truly thrilling for him.
As I have grown as a person in my career, with my family, and particularly when moving to America, he has always supported yet challenged me. He is one of those rare friends that can enthusiastically validate great steps forward yet, with the same enthusiasm, illustrate mistakes too. I love the fact that we have a relationship that can be so open and honest, yet underlined with respect. It is his personality, understanding, humor, thoughtfulness, care, and mentorship that will always make him one of my favorite people in the world.
Stuart, I love you, pal. Have an awesome birthday, and may we all continue to cherish your friendship for many years to come.
Heading Out To linux.conf.au
On Saturday I will be flying out to linux.conf.au taking place in Geelong. Because it is outrageously far away from where I live, I will arrive on Monday morning. 🙂
I am excited to be joining the conference. The last time I made the trip was sadly way back in 2007 and I had an absolutely tremendous time. Wonderful people, great topics, and well worth the trip. Typically I have struggled to get out with my schedule, but I am delighted to be joining this year.
I will also be delivering one of the keynotes this year. My keynote will be on Thu 4th Feb 2016 at 9am. I will be delving into how we are at potentially the most exciting time ever for building strong, collaborative communities, and sharing some perspectives on how we empower a new generation of open source contributors.
So, I hope to see many of you there. If you want to get together for a meeting, don’t hesitate in getting in touch. You can contact me at [email protected]
for GitHub related discussions, or [email protected]
for everything else. See you there!
SCALE14x Plans
In a week and a half I am flying out to Pasadena to the SCALE14x conference. I will be there from the evening of Wed 20th Jan 2016 to Sun 24th Jan 2016.
SCALE is a tremendous conference, as I have mentioned many times before. This is a busy year for me, so I wanted to share what I will be up to:
- Thurs 21st Jan 2016 at 2pm in Ballroom A – Ubuntu Redux – as part of the UbuCon Summit I will be delivering a presentation about the key patterns that have led Ubuntu to where it is today and my unvarnished perspective on where Ubuntu is going and what success looks like.
- Thurs 21st Jan 2016 at 7pm – in Ballroom DE – FLOSS Reflections – I am delighted to be a part of a session that looks into the past, present, and future of Open Source. The past will be covered by the venerable Jon ‘Maddog’ Hall, the present by myself, and the future by Keila Banks.
- Fri 22nd Jan 2016 at 10.30am – in Ballroom DE – Ubuntu Panel – I will be hosting a panel where Mark Shuttleworth (Ubuntu Founder), David Planella (Ubuntu Community Manager), Olli Ries (Engineering Manager), and Community Council and community members will be put under the spotlight to illustrate where the future of Ubuntu is going. This is a wonderful opportunity to come along and get your questions answered!
- Fri 22nd Jan 2016 at 8pm – in Ballroom DE – Bad Voltage: Live – join us for a fun, informative, and irreverent live Bad Voltage performance. There will be free beer, lots of prizes (including a $2200 Pogo Linux workstation, Zareason Strata laptop, Amazon Fire Stick, Mycroft, Raspberry Pi 2 kit, plenty of swag and more), and plenty of audience participation and surprises. Be sure to join us!
- Sat 23rd Jan 2016 at 4.30pm – in Ballroom H – Building Awesome Communities On GitHub – this will be my first presentation in my new role as Director Of Community at GitHub. In it I will be delving into how you can build great communities with GitHub and I will talk about some of the work I will be focused on in my new role and how this will empower communities around the world.
I am looking forward to seeing you all there and if you would like have a meeting while I am there, please drop me an email to [email protected]
.