Profile cover photo
Profile photo
Mamie Rheingold
I design environments, communities & experiences.
I design environments, communities & experiences.

Mamie Rheingold's posts

Post has shared content
Just in time for I/O… brand new Glassware

You probably didn’t expect us back with another update so soon, but we’ve got a few new Glassware coming your way. Well, 12 to be exact. 

Runtastic is your personal trainer. You’ll have a collection of workouts to help whip you into shape or push you to reach your fitness goals. 

94Fifty Basketball works with the 94Fifty Smart Sensor Basketball to help you with your game. It measures muscle memory that the human eye can’t see. You’ll get feedback after each shot to help you shoot like Ray Allen. (ok, maybe not Ray Allen but maybe it’ll help you make varsity.)

The Guardian keeps you up to date on breaking news alerts and lets you save the articles you want to read later. 

Duolingo makes learning a new language feel more like a game and less like high school Spanish class.

GuidiGO is your personal tour guide. Choose from 27 destinations and over 250 guided tours. Relive the Impressionist history of Montmartre, the magic of the Hagia Sofia in Istanbul, or the hidden secrets of San Francisco!

Allthecooks is no stranger to Glass, but they’ve added some new features to keep your hands free while cooking. You can now use voice commands to switch between recipes and directions. 

Zombies, Run! Because let’s face it, running is more fun when you’re being chased by zombies. 

Star Chart lets you look up at the sky and explore the stars, planets and constellations above.

Shazam on Glass can tell you the name of the track and artist of a song that’s playing around you. Just say “OK Glass, Recognize this song.” lets you keep up with everything happening in the world of football. (World Cup fans, we’re looking at you.)

Livestream let’s you broadcast live video, read chat messages from your audience and share your point of view via social networks.

musiXmatch picks up on the music playing around you and shows you the song lyrics for songs in any language. 

Learn more about our latest Glassware additions here:
Brand New Glassware
12 Photos - View album

Post has shared content
Really excited for +Ivy Ross to start at Google Glass today!

I LOVE these questions that she wants to explore:
- "Can technology be something that frees us up and keeps us in the moment, rather than taking us out of it?"
- "Can it help us look up and out at the world around us, and the people who share it with us?"
A letter to our Glass Explorers, from the head of Glass

My name is Ivy Ross, and I’m excited to be joining Google on Monday, May 19 to lead our Glass efforts. With your help, I look forward to answering the seemingly simple, but truly audacious questions Glass poses: Can technology be something that frees us up and keeps us in the moment, rather than taking us out of it? Can it help us look up and out at the world around us, and the people who share it with us?  I have spent my career--Calvin Klein, Swatch, Coach, Mattel, Bausch & Lomb, Gap and, most recently, the intersection of design and marketing, trying to answer questions like this in different ways, for different products.  But Glass is especially cool, as no one has really tried to answer them with a product like this before. That’s our job, Explorers!  I'm just getting started on Glass, but, because of all of you, and your thoughtful and smart feedback, I feel like I have an incredible head start.  And I look forward to learning even more from you, and experiencing Glass together.

Ivy Ross

Post has shared content
LOVE THIS. Great message: Make your passion.
Video: Women Techmakers: Make your passion.
#wtm   #developers   #womentechmakers  

Last month 11,000 technical women attended 125 events across 52 countries to build greater visibility, community, and resources for women in technology.

Today we're excited to debut a video featuring innovative women leaders who share their personal stories, solutions, and impact on the technology industry. 

Learn more about the Women Techmakers program at and join our Google+ community at

Post has attachment
Capturing my latest learnings on le blog:


After a decade of faking my way through Illustrator, I decided to finally learn how to properly use the tool! 

I’m taking the Skillshare class, Learn the Ins and Outs of Illustrator, and in less than 1.5 hours of video instruction I am already interacting with Illustrator on a whole new level.

Keyboard shortcuts? So much more efficient. That crazy pen tool that never made sense to me? Love it. Anchor points? Yes please. That panel on the right side of my screen? I understand (and use) it!

The course project is to reproduce our favorite print ad using Adobe Illustrator… Rules are meant to be broken, so I decided to reproduce the conceptually and visually whimsical illustrations by Vahram Muratyan. As a francophile who (sometimes) dreams of living in New York, his collection of illustrations for Paris vs New York delight me (you can buy his art prints here!) — and his graphic geometric forms are simple enough for me to replicate as an Illustrator n00b. 

In just under another 1.5 hours, I put my newfound Illustrator skills to use and recreated the basic shapes of “le surnom" representing the City of Light vs. The Big Apple. Above is an animated gif of my process, exploring the three main ways the teacher, Brad Woodward, shows us how to build forms: free form, shapes, and strokes & lines.  

Next up: the typography!

Post has attachment
Applying the maker movement to homelessness

I met Marc Roth last week and was inspired by his personal story -- he got himself a membership at the TechShop in SF while he was homeless, taught himself how to use the machines, became a TechShop instructor and now has his own business!

He has a vision for a Learning Shelter -- a makerspace, shelter and 90-day training program to give its participants (all homeless) the skills and experience they need to get a job.

I think this would be an amazing opportunity for our SF tech community to apply our skills & expertise in order to help our neighbors. But first it needs to exist!

There are only 4 days left to his Indiegogo campaign and he needs our help to make this happen!

Post has shared content
I <3 the kids I got to interview! And! 
Google Developers Live: Meet the kids of

Program Manager Mamie Rheingold interviews 4 young coding members of, an online community for kids to "learn skills, discover cool projects and meet other awesome kids!" Hear their stories of why and how they learned to code and get inspired to teach programming to young adults in your community.


Post has shared content
The Glass Developer Relations team is heading to Denver, CO on Monday!

I'm looking forward to meeting Explorers as well as Glass-curious developers, designers and entrepreneurs in the area!
Developer office hours will help you kickstart, work through, or accelerate your Glass project. A few members of the Glass team will be on hand to answer your questions, help you with any issues you're having, or just brainstorm together.

Whether you already have a project or can't quite figure out where to start, we're here to help.

Don't yet have Glass but you're curious about it as a development platform? This is for you, too! Come learn more about Glass and meet other developers, designers and entrepreneurs in Colorado.

Please RSVP on this event for entry.

About the venue. We are hosting our office hours at Gather cafe inside Galvanize. The building is located in the old Rocky Mountain Bank Note Building on the corner of Speer and 11th in the Golden Triangle neighborhood. Parking on the streets is 2 hour parking until 6pm, when it is free. There is also a $5 day lot on Delaware Street between 12th and 13th streets.

Post has attachment
The latest post on my blog ( is about how my dad and I started to learn programming.

Learning to read & speak Python

When I first tried to learn Python a year ago, it was like traveling to Japan when I was ten years old, surrounded by the sounds and sights of Japanese for the first time. I became familiar with the sound of the language and was introduced to its cadence and character. I learned how to say hello, please and thank you, but I didn't totally understand what was going on. 

One of the reasons my first attempt at learning Python while I was working full-time wasn't a success? I just didn't have enough time for it -- and programming takes time. I remember working on my homework assignments and all of a sudden two hours had passed and I was late for a meeting. And BTW, I have a whole new appreciation for why software engineers don't like meetings. Just when you feel like you are about to solve the problem, you have to stop what you are doing to attend what is probably not a well-run meeting... and then when you return to your desk it takes a good while to remember what you were doing before you were interrupted... then repeat. I found the back-and-forth context switching of learning programming during breaks to be too taxing on my attention. If I really wanted to understand programming, I needed to immerse my brain in this new way of seeing & thinking. 

The last two months were an opportunity to dive deeper and not just recognize the language, but learn how to speak it. 

My dad and I used a combination of 2 online learning tools & curricula to guide our learning:
1. Learn Python the Hard Way taught us how to read code
2. Udacity's Introduction to Computer Science  taught us how to speak code

Learn Python the Hard Way ( is an online series of 52 written exercises with accompanying videos, which guide you from opening Terminal to writing your first web application complete with automated tests.

We stopped watching the videos after the first four lessons, but returned to them during the last weeks of my leave when we were really trying to understand Object Oriented Programming. But the 44 written exercises my dad and I completed during my 2-month leave (we still have 8 lessons to go!) provided a foundation for understanding core concepts of programming as well as Python as a language.

LPTHW breaks programming into its most fundamental parts and drills you on them -- sometimes relentlessly. My dad and I looked like we were back in 4th grade trying to memorize our multiplication tables, testing each other with our flash cards for "%s", "import" and "not (True and False)". This may sound boring (and may look nonsensical) -- and I do not think it is the best way to learn how to code by itself -- but this was the first time I actually understood (dare I say "grokked"?) Classes and Object Oriented Programming intellectually. The author, Zed Shaw -- who has an accessible and amusing voice -- provides code to run for each exercise and then meticulously dissects it to reveal its parts. 

LPTHW taught me how to read, but not necessarily how to speak Python. Complemented with Udacity, however, these two different online learning resources provided an awesome multi-modal approach to learning programming.

Udacity's "Introduction to Computer Science" ( teaches Python through the process of building a search engine. Three-minute videos introduce concepts (like the find( ) method) followed by interactive coding exercises to apply what you learn by building (i.e. use the find( ) method to find all URLs in a body of text).

It is possible that without my first stint with Python a year ago & without the conceptual education of LPTHW, Udacity may have felt fast or confusing -- I still wouldn't understand why there are empty parentheses or periods or understand what the heck "find( )" or a "method" really mean. But Udacity's problem sets were like the greatest tests -- they forced me to think deeply about the problem & apply what I learned to build something.

And I loved that the instructor, David Evans, not only teaches you how to program, but also teaches you how to approach solving a programming problem. Lesson 2.5 on "How to Solve Problems" was awesome. David walks you step-by-step through his thinking as he tries to solve one of the hardest questions on a previous problem set. Three things that stuck with me:

Before jumping into code, understand what it is you are trying to do. It can help to write or say in plain English what you are going to need to know & do in order to build the solution.
Implement the simplest solution first and worry about one-off exceptions later. 
Be iterative: break the solution down into many tiny parts and alternate between writing code and testing it out. 
My dad and I are still working our way through both LPTHW and our Intro to CS Udacity course, and we are a long way from being fluent in Python. But I can confidently say we are conversational. 

We plan to continue our co-learning on Python one day a week -- and had dreams of finishing both LPTHW & Udacity before we try out the Coursera "An Introduction to Interactive Programming in Python" course in October and move onto Think Python. But I also know from Front-End Web Development that the best way to learn is to build something. 

Any ideas for what I can build?

Post has attachment
Go inside The Garage, the hacker/maker/design space I imagined, designed, and manage with an awesome team of Googlers. Make sure the watch the video! :)

Post has attachment
The latest from my blog: Why learning to code makes my brain hurt (& why that is a good thing!) 


Why should I learn to program? I have no intention of becoming a software engineer. However, I do think that knowing how to code is a basic literacy for surviving & thriving in the world today. As Douglas Rushkoff advises, we all need to learn to program or we will end up being programmed by others.

In many ways, software has become — has always been — my secondary nervous system, coordinating & sometimes governing the way I communicate, learn, move from place to place, find out what I need to know. For this reason, even if I never build anything with what I learned, I think it is valuable to have a basic understanding of how things work — like understanding the physics of the digital world. But why wouldn’t I want to program a machine to automate repetitive tasks and make my life more efficient? It frees up more time for me to do more creative work. What a gift!

At first — and to some extent still — my brain hurt after studying Python for a few hours. Just as my muscles are sore after a good workout, my brain was physically tired from training it to think in a way it wasn’t accustomed. But over the past two months, I started the process of rewiring my brain to think in a new way. A few weeks ago I even dreamed about code! (Okay, so it was the English equivalent of me saying the ABCs but still!)

In my next post I will share how my dad and I started learning Python and my recommendations for how to learn both the fundamental concepts of programming and how to apply that knowledge to actually build something. 

But first, here are a few of the beautiful & sometimes painful lessons I learned about programming. In short: programming teaches you to experiment, fail, ask questions, be creative and collaborate.

Lesson 1: The power of experimentation + making mistakes.

From start-ups to large companies, there’s a lot of talk about “failing fast” on the way to innovation & success. But what does facing and embracing failure actually look like on a day-to-day basis? Spend a day programming if you want to learn. 

Most of the time, your program won’t work. Seriously. It could be a simple typo or a missing “:” or maybe it is a much bigger (and less visible!) flaw in the logic of the program — but most of the time you are trying to figure out how to solve a complex problem or you are trying to understand why your solution doesn’t work. If you are lucky, you will get an error message that points you to where your code failed and categorizes what kind of failure it was. But it isn’t always this kind of conversation between your mind and the machine — a lot of the time all you know is that your code is broken and you need to fix it. 

Programming hones a pessimistic optimism through which you see the world — you have to spend your day noticing what is wrong. This can be a really uncomfortable state of mind to cultivate all day — and yet I found it totally consuming & strangely addicting. As if in a game, I often felt just moments away from unlocking the puzzle in front of me and I just had to try a bunch of stuff to understand what worked (and why). (And poof there went a few hours!)

Lesson 2: Programming teaches you to ask better questions

When most of your time is dedicated to understanding why something doesn’t work, a critical survival skill is knowing how to ask a question to get the most relevant answer. Here was a typical chunk of my day: think until my brain hurt, ask a question using Google, end up on Stack Overflow, go back to Sublime, run the code, repeat. 

Since data, transparency, openness, and knowledge-sharing are core to the culture of software engineering, you can find an answer to almost any (basic) programming question on the internet… in fact, finding the answer or a detailed discussion about a specific error message or kind of programming problem opens you up to an entire universe of information on the internet. If you know how to ask the right question, you will magically be shown to people who have wrestled or are wrestling with the same issues, and sometimes (more often when you are a beginner like me) they know more than you do. 

So after a few iterations of the brain hurting —> Google —> Stack Overflow cycle, you learn how to ask better questions. 

Lesson 3: Programming is one of the most powerful and expressive forms of creation.

Just because programming is binary at its lowest levels doesn’t mean there is a right vs. a wrong way to solve any programming problem. This process of finding your way to a solution that works in a realm where there is no one correct answer requires you to be extremely creative! I remember a year ago, when I first started to learn Python in a class at Google, I was shocked to find that all 15 of us students around the room each solved the same problem and arrived at the same solution in 15 different ways. Programming is not only a science, but it is also an art. I hope you non-programmers out there really let that sink in, because it was something I didn’t understand until I started doing it.

Take this user experience: I want to navigate my photos by where I was when I took them. Compare Photo Maps in Instagram to viewing your iPhone photo albums by “Places”. Those are two totally different experiences — and therefore different programmatic implementations — to address the same challenge.

I’m only beginning to understand the medium of code, but I now appreciate the extent to which my peers at Google are creative masters. I knew that Googlers are programmers’ programmers (I mean, some of them even wrote the programming languages that other Googlers use to build Google… meta!), but I didn’t understand what that meant until I practiced thinking like a programmer on a daily basis. 
other Googlers use to build Google… meta!), but I didn’t understand what that meant until I practiced thinking like a programmer on a daily basis.

Lesson 4: Programming is collaborative (and libraries are so cool!)

There is a myth that programming is a solo activity, but that isn’t the case at all! Yes, you have to spend a lot of time in your head and going back and forth between your code and the error messages you get when you try to run it. But that’s only part of the process.

First of all, programming is collaborative in the generic sense… i.e. it requires a team of (or 10k+) engineers working closely together on one code base to create something of the scale & complexity of Google. But it is also collaborative in that everything is built on top of something else.

I always assumed that to be a “real” programmer and to build something “authentic” you had to do it all by yourself. But that’s foolish! Why do you have to start from scratch if someone else has solved a part of the problem for you? I never thought I’d be geeky enough to understand this, but libraries are so freaking cool. To put it most simply (go read the wikipedia article for a more in-depth explanation): they are collections of modular, reusable code written for a particular language, which programmers can import and apply to their unique applications. (I will save the rest of my love letter to libraries for a future post.)  

Before you learn to create complex programs these days, often you learn how to find, understand, and glue together pieces of complex programs that others have created. This reminds me of a book I’m reading, Reinventing Discovery, which demonstrates the power of collective intelligence + networked science. The author, Michael Nielsen, tells a story of Turing Award winner Alan Kay talking about how programming has changed:

"Today, programming has changed. Today, a great programmer isn’t just someone who can quickly solve a problem from scratch. A great programmer is someone who is also a master of the information commons, someone who, when asked to solve a problem, knows how to quickly assemble and adapt code drawn from the commons, and how to balance that with the need to write additional code from scratch. Such a master can build on the work of others to solve problems faster and more reliably than other lesser programmers."

Yes! (I also see a connection between this & what my dad writes about in Net Smart — but I’ll save that for later, too :)). I think it is so beautiful how we are all managing & contributing to the commons of the internet, and how the collective intelligence we can all see in something like Wikipedia also exists at a deeper level… that the underbelly of the internet is also composed of many individuals working independently & together to create a greater whole. Gestalt!

But the internet will only remain a commons if more people are active creators of knowledge and applications, not just consumers.
Wait while more posts are being loaded