Robots have a rich history. The ancient Hebrews wrote about an artificial being, the golem, that would assist with tedious labor; Leonardo da Vinci published a design for a mechanical knight in 1495; and Westinghouse’s Televox robot, created in 1927, listened to human voice commands. These developments all paved the way for today’s Jetsons-inspired vision of our robotic future.

Yet despite all the online tutorials available to teach the average person how to build a robot, we’re just not there yet. We’re close, but building a robot today — at least from the ground up — still requires a developer’s skillset, or at the very least, baseline coding knowledge. At least this project no longer breaks the bank, given the types of technology now widely available at a decent price.

Let’s examine what it really takes to create a robot that functions with a clear purpose.

Step 1: Set the intention

The first step is setting an intention for the bot. Is it going to create autonomous beach art? Will it be an in-home companion with advanced emotional intelligence that learns new things? Foster interest in STEM education? Streamline processes along the manufacturing supply chain? The sky’s the limit, but there’s no reason to get too complicated — sometimes the most successful robots are those that fulfill a single purpose. Regardless, without clear intent, it is impossible to construct a successful creation.

Step 2: Choose your platform

Next, decide what operating system your robot will run on. Choosing the best operating system depends on whether you are building an industrial robot or a cognitive robot. Windows 10 trumps Linux for robots intended for everyday use, largely due to its integration with Microsoft’s AI solutions. Additionally, Windows 10 is user-friendly and easy to operate with basic computer knowledge. Once you have decided what kind of robot you want to create, you can choose the operating system that best makes your robot come to life.

Step 3: Build the brain

The next, and arguably most important, step is building your robot’s central command unit. This serves as the backbone that supports the robot’s desired features, whether it’s voice cognition, speech, facial recognition, motion detection, or another capability.

The foundation of this “brain” can be as simple as a handheld, Internet-connected piece of hardware. Popular iterations include Raspberry Pi, an affordable minicomputer you can self-program, and LattePanda, the first maker board preinstalled with a full Windows 10 operating system, thus providing the same user experience as a regular Windows PC. The LattePanda is palm-sized, Intel-based, and Arduino-enabled, allowing for a processor that optimizes, develops, and customizes coding for robotics prototypes. The good news is that LattePanda isn’t just for software developers — it can be used by educators and makers through its step-by-step tutorials.

Step 4: Create the shell

The functionalities that you staked out for your robot in Step 1 will dictate what physical features it requires. For instance, if you’re building a cleaning robot that requires vision, the brain will need to be compatible with a laser scanner, motor drivers, and touch sensors. If the robot needs to be able to communicate with other devices, ensure that the brain can accommodate messaging connectivity.

Robots are going mainstream

Some of the most impressive robotic inventions are already on the market. Take InMoov, the first open source, 3D-printed, life-size robot that walks and talks. While InMoov has the typical humanoid look robots have in the movies, it comes in all shapes and sizes, serving varying purposes for businesses and consumers alike.

Robots are everywhere, and they are not going away. Businesses in North America ordered nearly 35,000 robots last year, a 10 percent bump from 2015 due to the measureable increases in productivity and speed that robots provide. Likewise, more than one in 10 American households are projected to own a robot by 2020, up from one in 25 in 2015. These statistics highlight the need for a more mainstream understanding of all that goes into building an operational robot, no matter how basic or complex it is.

At the end of the day, there is a lot of noise out there about how to create a robot. True, there are many ways to do it, but in order to be successful, the process requires knowledge and patience. It involves setting a clear strategy, weighing the pros and cons of different operating systems, programming the brain to carry out desired functions, and building the physical features that enable your robot’s predetermined functionality.

Ricky Ye is the CEO of DFRobot, a robotics and open source hardware provider that is dedicated to creating innovative, user-friendly products that foster a strong community of learning.