Growing up in the eighties, I coded games on a ZX Spectrum, soldered radios on handmade circuit boards, and studied mechanical engineering. I moved to the US and founded a tricycle manufacturing company, then spent 20 years in product design and manufacturing. As robotics evolved, it became a confluence of all these passions, and I wanted to bring them all together. I decided to start a robotics company to make personal robots for home and work and ultimately to improve people’s lives.
But I wanted to be
for real and do that with formal training and knowledge to build a team of peers with excellence. I researched programs and was blown away by the Masters of Robotic Systems Development (MRSD) at Carnegie Mellon University (CMU). I was 48, married, and had two kids in college, so I believed that the chances of getting into such a program were slim.
And yet, I will never forget the day that I was working on Atticus, an electric car I was building in my garage, when I opened the letter of acceptance from CMU. I called my wife, Rafaela, to see the upcoming rocket launch. We looked east and watched a crisp trajectory on a blue sky from Cape Canaveral. I told her, “There is one more thing: CMU has accepted me… What do we do now?” She answered, “Now we move to Pittsburgh.” We teared up.
At the start of MRSD, I felt capable and prepared, but given my age and career stage, it crossed my mind that this was some experiment by the admissions committee. I wanted to prove them right, and this is how I did it. Hopefully it will inspire future students:
Super Powers
Sleep well and unlock your full potential using 100% of your faculties. You won’t be yawning on people’s faces and will be more fun to be around. I never pulled an all-nighter and was fresh every morning – hopping on my bike, sun or snow, and riding to campus.
I regretted every time I broke this rule. A few times, I spent a few hours late trying to finish a tough assignment and ended up going to bed defeated and exhausted. After a good night’s sleep, I solved the same hard problem in a few minutes.
Move Mountains
Be healthy, eat right, and do not skip meals. Snack healthy, with the occasional treat. Sipping on a cup of tea gives great focus while studying. Work out at least three times a week—swimming, yoga, dancing, or a run outside. Walk or bike to CMU every day if you can.
My kids are my main source of inspiration, and Rafaela is my main source of strength and motivation. She had access to the CMU facilities and enjoyed every guest lecture and special event. With her support, I kept my discipline and good habits and was ready for any challenge. If you can, invite your friends and/or family to join you in your healthy routine.
Good job, Andrew
Enjoy Pittsburgh and CMU’s perks. After working Saturday mornings at CMU, I would swim with Rafaela and walk to the Carnegie Museum of Art for lunch to appreciate some art. Other times, we walked to Phipps Conservancy to admire their exhibits and enjoy tropical weather while it was snowing outside. I was then ready to return to CMU and meet my project team, refreshed and full of ideas.
Sunday mornings, we hiked at Frick Park and then had lunch at Noodlehead. After a short walk in Shadyside and a cup of espresso, I was ready to work for the remainder of the afternoon, which would set me up for a successful week. If there was a nice movie showing in Squirrel Hill, we would watch that too.
Certain je ne sais quoi
The point is that art and nature can inspire. I believe there are three ways to solve hard problems:
- Brute Force. You are working in a lab, implementing the theory you know, experimenting, unit-testing, and integrating systems. Things are moving great until you start hitting problems and issues you have never seen before. Your theory starts falling behind. You hit a wall, but keep plowing. Your work turns into a mind-numbing trial and error. This is when you should switch to the second step.
- Research is a great principled approach to work. Take two steps back and dive into theory to start moving forward again. This might save you tons of time. ”A month in the laboratory can often save an hour in the library.” — Frank Westheimer. From here, you can circle back to 1 and keep developing your awesome work. If you cycle through these enough – and are also someone familiar with art, music, nature, and other references – you might inadvertently experience number three.
- Creativity is what sparks breakthroughs. The most inspired solutions are often the cleanest, simplest, most obvious (after the fact), and impactful. Being able to see the whole with clarity, and connecting disparate areas is what sets great engineers and scientists apart. If you walk out of a museum looking for your sketchbook to write or draw an idea, then art has done its job.
There is always tomorrow
But do not procrastinate. Even assignments that look easy will get harder as you progress and consume all the allotted time. As soon as an assignment is released, download it and skim through it. Understand if it is self-contained, download any additional resources needed, and code.
The next day, read and understand its theory before trying to solve it. The following day, familiarize yourself with the code, data structures, functions, methods, and libraries. Run unit tests and operate code manually, like turning knobs to understand its inputs and outputs.
Solve any theory questions and code logic on pen and paper first. Only after you think you have a solution, code it up. Type answers to the assignment as you go. That avoids the time to synthesize the whole assignment at once. Leave it alone for a day. Revise it one more time and submit it. Don’t spend too much time on that last 5% to get to perfection. Just do your best
by yourself and move on to the next task.
Starting any work is the hardest part, but once you start, you will get in the flow. A good habit that writers use is to stop writing mid-chapter or paragraph. This sounds counterintuitive, but picking something up mid-sentence is much easier than starting to work on a fresh new task. So when you reach a good point amicable to re-entry, stop it. Write down what your next step should be while your mind is on the problem, and move on. The main exception is: if ideas are flowing like water, thank the universe and stay at it.
Bookworm
Study smart. The first lecture is when professors will motivate the subject and show where each topic will fit over the course of the semester. Keep those things in perspective. Otherwise, you might understand discrete pieces of the material and get perfect grades, but go into the wild without knowing what to do with it.
Build a cheat sheet (and get away from slides), keeping concepts summarized and connected. You can make one for planning, control, computer vision, etc. That can also turn into your professional working manual when you graduate.
There is a bottom-up and a top-down approach to learning. We need both to connect in the middle. Don’t get too narrow and deep too quickly. Be curious, see the whole, discover, play with it, and connect ideas. Like playing with blocks, understand from the basics, building up to the most challenging and complex aggregates.
Given a new concept, write it down in your own words how you would explain it to a child (Feynman). Work on a blank piece of paper, organizing and connecting different concepts and ideas with diagrams and arrows. The goal is to be confident enough so, when confronted with a problem, you will know the many ways to solve it.
Read from different sources to improve your intuition. Interweave different topics to be quick on your feet. Reach out to experienced engineers, roboticists, and CMU professors. If you see a windowless nook in the basement, peek inside and you might find a PhD student working on cutting-edge material and eager to share their work.
Think like a roboticist (or in your area), and let curiosity drive your studies. Pretend you are designing, building, and controlling an autonomous mobile base with a manipulator. As you learn new concepts in any subject, think about where they fit in your robot.
Hardware rules. Autonomy rules. There is nothing like implementing software on a real autonomous robot. Some unknowns (perception, internal friction, binding forces, encoder wraparounds) will never happen the same way or at all in simulation. I went to CMU wanting to develop real robots. At every first lecture, I asked the professor, “Can I use a robot or build a robot for this class?” The answer was always a resounding “yes!” Know what you want and ask for it.
Be persistent. There will be a point when ideas start repeating themselves, and you will realize that you are seeing the whole thing and know what to do. You are beginning to become a master of your art.
Many hats
Work on everything every day and be ready for context changes. Be a pro and work like a pro. Make sure all assignments are being worked on, with total focus, at different stages. Don’t get stuck on one thing. Keep them organized. I used physical binders with neat lecture notes, printouts, and to-do’s.
It is not enough to stick a bunch of smart people in the room and expect great work to happen. Facilitate and empower your team to have a clear direction. Keep the ball rolling on every front, and work every chance you have to move an inch forward. Randy Pausch once said, “hard work is like compound interest.” The ability to change context and perform at your best, both alone and in a team, will transfer to your career.
Laws of Motion
Keep moving. About every 45 to 60 minutes, take a break from studying and go for a walk; this is known as the Pomodoro Technique. Leave the problem alone for a while, and you might crack it in only a few minutes after walking away from it. Stretch your legs and your body. It will ground you, refresh your mind, and remind you that you are still living in the real world. Power naps and breathing exercises are great, too!
Walk through different schools at CMU, and you will meet amazing people. You might also have serendipitous encounters, like when I bumped into Red Whittaker at Gates Cafe… I saw him having his Greek yogurt, so I walked unsuspectingly across the whole cafe with my Greek yogurt and sat by his side. He greeted me with a big smile, and we had the conversation of a lifetime.
Fundamentals are fundamental
Don’t be a hacker. Learn
the fundamentals and be principled. It is so refreshing to collaborate with someone who just knows it without guessing or pretending. Be that person. It will keep your head above water during class, reinforcing familiar material and freeing you up to absorb new topics. When you find gaps in your learning, jump right into it. Keep learning every chance you get. While standing in line for five minutes, pull out your phone and quickly check on some lingering topic.
In software, most people will reach for a library or framework that abstracts everything away – a computer science tic. Those abstractions often sit on top of awful layers of planet-warming cross-dependent complexities running slow and inefficient code, another CS tic. I can understand it all better looking under the hood. “Hey, look, it’s that algorithm exactly as we learned in SLAM. Now we know what’s going on, and we can do better”. Be brave, open the hood, and save our planet.
Shiny objects
Robotics is a rich field with a lot of breadth and interesting topics – but it is also noisy and full of hype. Be attentive and discerning. Think with your head, and don’t ignore whole bodies of work that are principled and proven to work. Neural networks are great, but understanding traditional AI will take you farther than spending your whole time fiddling with a black box. I enjoyed Professor Narasimhan’s computer vision class, where he taught us fundamental methods of computer vision. By the end of the course, we understood what was going on under the hood of a neural network.
Only one you
Don’t fake it, just make it. Be genuine and truthful. Be you! You have to believe in yourself. Confidence goes a long way, but integrity goes even further. Don’t pretend to be someone else. Think before speaking, or people will see right through it. Speak with knowledge, clearly and simply. If you can teach a subject, then you know it. It is liberating, and people will want to work with you every time.
Force of nature
Be positive. There is a lot of negativity out there, and people are capitalizing on the doom and gloom. If you let that drive you, it will be hard to function. Your job now is to be a student. Focus on your goals, be curious, and learn as much as you can with awe.
Being in a robotics program at CMU is a privilege granted to very few. We are responsible for making the best of it and sharing this unique, rare, and powerful knowledge with the World. Try to grow smarter and stronger to make the most impact. Perhaps even helping to solve wicked problems such as poverty, inequality, prejudice, fanaticism, wars, pandemics, and threats to our oceans, nature, wildlife, and planet.
Enjoy this amazing moment in your life. Dream big. Be kind to your peers. Leave your ego outside the door and prove that the good ones can win. From what I can tell, this is the Carnegie Mellon philosophy.
Infinity and beyond
These principles should transfer to your career and life. The only grade out there will be the fruit of your work and kindness. Learn to work unconstrained and unbounded. Listen carefully and learn to see with your own eyes. Understand the goals and challenges ahead of you and solve them in the most humane, efficient, and elegant way. Be brave, be fair, and make yourself heard.
Life is a sequence of ups and downs. Always throw your whole self at it, no matter how dire or boring something looks. You will build a string of achievements, big and small. There is no final destination, so just enjoy the ride and leave things better than you found them.
Go out to build robots and systems that will help people. If you fail, there is always tomorrow. So at night, sleep with a clean conscience and be ready for another day. Sweet dreams!
Paulo Camasmie
MRSD Class of 2020
CEO of Symbol Robotics Inc.