Helping humans speak to the computer
It’s important to keep the purpose of an application in mind as you write it. An application is there to help humans speak to the computer in a certain way. Every application works with some type of data that is input, stored, manipulated, and output so that the humans using the application obtain a desired result. Whether the application is a game or a spreadsheet, the basic idea is the same. Computers work with data provided by humans to obtain a desired result.
When you create an application, you’re providing a new method for humans to speak to the computer. The new approach you create will make it possible for other humans to view data in new ways. The communication between human and computer should be easy enough that the application actually disappears from view. Think about the kinds of applications you’ve used in the past. The best applications are the ones that let you focus on whatever data you’re interacting with. For example, a game application is consid-
ered immersive only if you can focus on the planet you’re trying to save or the ship you’re trying to fly, rather than the application that lets you do these things.
One of the best ways to start thinking about how you want to create an appli- cation is to look at the way other people create applications. Writing down what you like and dislike about other applications is a useful way to start discovering how you want your applications to look and work. Here are some questions you can ask yourself as you work with the applications:
- What do I find distracting about the application?
- Which features were easy to use?
- Which features were hard to use?
- How did the application make it easy to interact with my data?
- How would I make the data easier to work with?
- What do I hope to achieve with my application that this application doesn’t provide?
Professional developers ask many other questions as part of creating an application, but these are good starter questions because they begin to help you think about applications as a means to help humans speak with com- puters. If you’ve ever found yourself frustrated by an application you used, you already know how other people will feel if you don’t ask the appropriate questions when you create your application. Communication is the most important element of any application you create.
You can also start to think about the ways in which you work. Start writing procedures for the things you do. It’s a good idea to take the process one step at a time and write everything you can think of about that step. When you get finished, ask someone else to try your procedure to see how it actu- ally works. You might be surprised to learn that even with a lot of effort, you can easily forget to include steps.
The world’s worst application usually begins with a programmer who doesn’t know what the application is supposed to do, why it’s special, what need it addresses, or whom it is for. When you decide to create an application, make sure that you know why you’re creating it and what you hope to achieve. Just having a plan in place really helps make programming fun. You can work on your new application and see your goals accomplished one at a time until you have a completed application to use and show off to your friends (all of whom will think you’re really cool for creating it).