What do you really use a robot for?

· J.D. Wisgo

So, what do you really use a robot for?

The other day I had a conversation with someone when I was talking about my interest in robotics, and they asked a simple question: "What do you actually do with one of those robots?"

Although at first it seemed to be a strange question, after I thought about it, I realized that to many people who are not interested in robotics, it might not be obvious at all. So I decided to dedicate a short article to this topic and talk about what you really use a robot for.

Robots with a specific job

First of all, it depends on the type of robot, of course. There's two major categories of robots. The first is robots that have a very specific, well-defined job. A good example of that is the robot vacuum cleaner, like Roomba, Shark, things along those lines.

Those sorts of robots you buy for a very specific purpose, and they're designed with only that in mind. So when you buy a Roomba, you have certain expectations, and from what I've seen, they generally do a pretty good job, although they're not perfect.

So in that case, there's not really anything else involved, it's just focused on the job at hand. There's no extra bonuses. It's probably not going to talk to you, or anything like that, and it doesn't necessarily even have to look pretty because the visuals of it are a side point.

Robots for tinkering

On the other end of the spectrum are robots that are more about research. For example, toy kits for kids that are designed to be programmable, and might use a visual programming language like Scratch or something along those lines. There's also more expensive robots for adults to program at a deeper level, or those targeting serious researchers (often in the thousands of dollars).

But the point with those is that there's not really any obvious task that they're going to be doing. It's more a collection of hardware, maybe with some programming or type of logic built in, and the whole goal is to simply tinker. And by tinker I mean experiment, try different things, and kind of just see what you can learn.

There's a few different goals that you can have. For example, simply learning about robotics in general. Not just the programming, but also the hardware, and see how the pieces fit together. Another goal could be to learn about what robots can actually do, where their limitations are, etc.

Yet another goal could be to actually improve on things. In other words, make a robot do something that maybe no one has ever done before, or is at least really difficult to do. For example, to jump or to find some object, or achieve some goal that is very challenging. In that sense, you're sort of improving upon the field of robotics.

Robots in the middle

Now, there's some robots that are kind of in the middle. For example, Aibo, Sony's robot dog. Those are supposed to have a personality and somehow fit into your lifestyle, in a way that's similar to a real pet.

So you buy one of those, and maybe it doesn't necessarily talk to you, but it might follow you around the house, or it might bark or be cute. Kids can also play with it to do different behaviors. But in that case, the goal is a little more vague. It's not going to be cleaning your house, but it is going to sort of act as a friend or a companion.

And there's a whole class of robots that are companion robots. Some are designed to talk to you, or something that you just pet to get the sensory experience, and it may vibrate or something along those lines. So there's a whole category of bots that are designed to act as a companion in a sense.

And I guess for some people, if they're living alone and they're lonely... and I believe that Japan in particular has this problem, because a lot of people, I think, are essentially shut-ins and sitting at home alone. The goal is to add some warmth to their life and basically make them feel better. To improve their life in some way, improve their mood, and maybe even cheer them up and give them a companion, even if it's just a robot with artificial logic behind it.

Experimentation in the real world

For me, when I talk about being interested in robots, above all I just think they're cool. To me one of the most important things is the experimentation, like I mentioned earlier. For me personally, I can really enjoy thinking about buying a robot and then doing all sorts of experiments with it, because I like to program. And even though I'm using Claude now to do coding, there's still a lot of the same iteration of trying something and experimenting, to see how it turns out.

And if I go back in time (I've been programming for a long time now), to me that's one of the joys of programming in general, of coding, writing software. You try something and you see what happens. It's sort of like an experiment. You get to try something and see the result yourself, which is sometimes unexpected.

And then you build on that. You say, "Oh, that does that, now I'm going to try this". Maybe there's a problem, or maybe there's a new avenue. And you iterate. You build on that to add more functionality or fix bugs, improve the behavior of something, optimize, make it faster, better, something along those lines.

So to me, coding with robots is sort of the next iteration of that. It's the next step. Whether you're writing code or telling Claude via a prompt, you're experimenting, you're trying new things. Have your robot try something, then see what happens.

In the real world there's a lot more complexity. There's things like lighting, physical objects, different colors, moving objects, etc. There's so many different factors. Even the ground. If you're moving on the ground, you might slip, the robot might fall over, somebody might push them. There's so many things that can happen. Maybe it will run out of battery. There are countless things that can happen in the real world, even for the simplest of robots.

That's one of the interesting parts about working on programming robots. To me, it's just taking things to the next level, where you're doing the experimentation, the discovery, the exploration, but you're doing it in a much bigger domain. Instead of just playing with bits or pixels on a screen, you're playing in the real world.

I was thinking about this earlier today, and I also enjoy VR (virtual reality) using hardware like Quest 3. But that's kind of like taking a virtual world and allowing you to jump into that virtual world and do things there. To me, robotics is sort of the opposite. You're in the real world, but you're taking these sort of fantastical elements, these crazy things that didn't normally exist, and you're bringing them into the real world. So it's kind of the opposite of virtual reality, in a way.

And to me, that exploration, that experimentation, that tinkering, is really one of the most fun things about robotics.

Robotics technology as a hobby

Now, of course, there's a whole other element. I was thinking that when I was younger, I had some friends that were really into cars. I'm not a huge car person, although I do like looking at cars and thinking about which ones I like or don't like. But I'm not a huge fan in terms of following the specs and the details and the technology.

However, I'm a little more like that with robotics. For example, I can look at a robot and kind of appreciate its design, how it works, the behavior, think about the sensors, the servos, the CPU, and I can really get into all that tech. I can really get involved in it. So for me, having robotics as a hobby is also about that, being sort of obsessed with all these figures and specs.

I can watch YouTube videos and learn about robotics. There's a lot of fun things there, but it isn't necessarily achieving anything. There isn't necessarily any output, but I am learning things, and it is enjoyable to watch some of these super expensive robots, like those $100k robots that I'll probably never own myself. And I can really appreciate how they balance, how they jump, how they spin, the really cool things they do.

So to me, that's really one of the joys of robotics, which is getting into that technology, understanding it, and, just like my friends did back in the day, enjoying all those pieces and how they fit together. Which is a bit different from actually using a robot. So for me, that's a big element of being into robotics.

Pushing the hardware to its limit

But at the same time, when you actually buy one or find one in the garage, you can actually program that, experiment, do trial and error, and learn all about what it can do, try to take it to its limit in terms of the hardware. What does the hardware allow? What can I achieve using coding, whether it's Claude or ChatGPT or whatever, to achieve amazing or surprising things with that hardware?

Because sometimes the possibilities are not obvious. You have a piece of hardware, and by hardware I mean things like the tires or the legs, CPU, the sensors, those sorts of things, cameras, microphones. What can you do with that? If you have a certain set of pieces of hardware, can that walk around your house and search for an object? It may sound like a simple thing, but just doing that can be a huge amount of work.

I won't go into details on room mapping and object searching now, because I hope to have a post or two about those things in the future. But that's just an example of real world robotics.

I managed to ramble on for quite a while on this topic, but hopefully it was interesting to those of you who are into robotics, or those of you simply wondering what's so great about robotics.

Until next time.