2009
12.11

In the world of Flex, it’s easy see what is being done while ignoring how it happens. Thanks to data binding, Catalyst, and lots of handy libraries it’s easy to get into the “make it work” way of thinking. I’m not talking about how to add a button to a form, or how to display a dataset in a grid, I’m talking about how to manipulate that data or perhaps to pull information out of it.

At it’s simplest, an algorithm is a series of steps to accomplish a goal. For example, an algorithm to clean dishes would be:

  1. Wet dish with soap and water
  2. Scrub until no longer dirty
  3. Rinse with clean water

But that algorithm isn’t the only way to wash dishes. Perhaps you have a dishwasher that takes care of these three steps, but requires an initial “rinse large food pieces off” step. So there are many different ways to accomplish the same goal.

When you create a function, you are creating an algorithm. The majority are simple and straightforward, so you probably don’t worry about them. But there’s the few that can become the entire focus of your time. You have a dataset to chew through, or you want to work in some nifty transitions. You could end up spending the majority of your time on a relatively small piece of code because that’s the heart of your application. This is where the code side of the component lifecycle gets stretched and where any improvement will have a significant impact.

So, as I can, I’m going to create a series of posts about algorithms. You’ll learn how to compare them, different approaches to solving a problem, and some terminology. Don’t worry if math scares you or if Wikipedia’s Analysis of Algorithms makes your head hurt. There are plenty of people like Dijkstra, Euler, and Turing who are smarter than me and already did the hard stuff. We’ll just learn from their hard work and go on our merry way. I’ll try and cover both practical stuff and some of the high-concept stuff that makes computer science people excited. Hopefully this will turn into an algorithms education for normal people.

Related Posts (generated):

No Comment.

Add Your Comment

Switch to our mobile site