Adventures in Freelancing: Recap of Recent Work

Adventures in Freelancing: Recap of Recent Work

Virtual Museum Whew! I’ve been deeply immersed in refreshing a museum exhibit, Take A Stand at the Illinois Holocaust Museum in Skokie. We wrapped it at the end of last week, with me attending the installation virtually through Apple’s awesome FaceTime iPad application. It was also great to work again with my friends at Inquirium.

What’s next? I have NO IDEA, so I have to figure out what to tackle next. I’ve been snoozing a lot, which is perhaps a sign that I wasn’t feeling quite up to it. To get myself rolling again, I feel the need to recap some of the insights I’ve had while working on the project.

Revisiting Old Competencies

In a past life, I was an interactive designer. I loved moving computer-generated graphics, having gotten hooked on it when I was a 7th grader in 1981, vowing to become a master of computer graphics and make games. This went somewhat according to plan, studying computer engineering and then digital media / fine art before entering the video game industry. In 1998, though, I got out of the business having realized that it wasn’t a good fit. I wasn’t sure exactly why this was, and it was devastating at the time to realize it, but I went with my gut and got out.

Since then, I’ve paid the bills by doing Internet-related graphics and design work, which is fairly easy from a technical perspective, but still a big challenge creatively. Revisiting this museum project, as it borrows heavily from computer game technology, got me thinking about the past. Working with Inquirium, particularly my friend (and cousin) Ben, was a productive and satisfying experience. What was different about this experience and others? I think it is because while I like computer graphics, I really respond most deeply to the storytelling and camaraderie of making things. I’ve been missing that for a long time.

One big difference between this project and others that involved similar programming is that my code was written FOR other team members (in this case, Ben) so we could achieve our goal as a unit. Most other projects I’ve worked on tend to isolate me as a unit of production, taking care of problems because I’m capable of doing it by myself. This kind of teamwork, where individual members of the team are assigned work that is assembled invisibly by others, is my least favorite style of working.

The takeaway is this:

  • I enjoy working with talented comrades on the same challenge, all eyes giving full attention.
  • I don’t like task delegation models that disperse work, then asseble and use it out of my sight.

This recent work experience was a good example of what I like, and I am going to have to nudge my design work in this direction. In particular is the idea in Design is a Job that it’s OK to insist on sticking to the process that works. My process is verbose and very chatty, and it’s not suitable for clients who use the task dispersion delegation model.

Two followup actions:

  • To find more comrades, I think that I’ll need to create new toolkits that demonstrate how I like to do things. Seeing is believing, in this case. It’s also good to have these packaged and ready-to-deploy.
  • To find the right clients, I may make the application process more difficult and not feel so apologetic about it all the time. I tend to want to help everyone, but I have to be careful about maintaining the distinction (as my friend Colleen pointed out to me recently) between pleasing people and providing service.

Perfection in the Small


p>I continue to be fascinated by the idea of perfecting the small. I tend to think in big projects that would take a year to do to perfection, and the thought of ALL THAT WAITING is often demoralizing. It’s the steep learning curve, the feeling of sucking and not knowing, and the uncertainty of the outcome that conspire to paralyze me in place.

You may have been seeing the progress I’ve been making on my index card docks, which are blocks of wood with a slot cut in it. This is a very small woodworking project, but it has proven to be an excellent introduction to the world of woodworking. I’ve been surprised at just how many subtleties there are in making a straight cut and applying a quality finish. Like many disciplines, the art of wood finishing has a few basic rules that everyone knows. However, the real techniques behind artistry are deeply buried, and the search to uncover those secrets is highly entertaining. My goal at the end of this is to have luxuriously-finished wooden blocks that I make myself. It’s a tiny piece of woodworking, but one that has meaning and application right away.

On a similar note, there’s the game design notion that great games challenge you at the edge of your ability while simultaneously expanding it. GPuzzle games like Angry Birds, Plants Versus Zombies, and Portal do a good job of introducing new game concepts in the introductory levels, one at a time, and providing enough challenge for you to solve the problem. As the levels increase in difficulty, you’re called to apply what you’ve learned in new ways. My index card docks are an example of this in real life, and it works because of these principles:

  • It’s something I actually WANT to use.
  • It’s simple enough to MAKE quickly, but can ABSORB additional technique to raise its quality.
  • It’s an element that can be APPLIED directly toward the greater achievement goal.
  • It’s utility and beauty can be READILY DISCERNED in application.

A great deal of educational material I’ve been exposed to, from the first day in school, does not follow these principles. For a starter project, I think they’re essential.

Card Block Experiments I think I can apply this approach to those giant projects I have in my head. For example, creating a new museum-quality interactive exhibit toolkit is an idea that I’m excited about now having just finished this last job. However, I am also seeing the sheer amount of work involved, perhaps THOUSANDS of hours.

Why not start with something small, but essential? I’m thinking of writing a simple Timer, which is a piece of code that keeps track of how much time has elapsed. Timers are useful for all kinds of things, and I’d like to write a perfected timer based on my recent experience. This is the code equivalent of making a block of wood with a slot in it. After that, I may make a perfect screen, which manages perfect sprites, which will require the use of my perfect timer to make animated transitions. That would be the foundation of a perfectly simple museum interactive toolkit.

While it’s not comprehensive in the way packages like Unity3D or UDK are, it’s mine, and it becomes part of my body of work. It can only get better. Eventually, it will build into something, because one’s body of work always grows.

Banh Mi and Pickled Lemonade

On a lighter note, while I was out in San Jose I did get to try some local food. For example, this Vietnamese sandwich place:

Dakao Banh Mi San JoseBanh Mi Order BoardLemon Soda Apparently this store, Dakao, is well-known for providing cheap-but-delicious sandwiches called (banh mi). I’m a big fan; Vietnam has an interesting blend of cuisines, combining French bread and the “garden sandwich” concept with local ingredients and flavoring. It’s easily my favorite sandwich in the world.

Banh Mi Sandwich A little later in the week, I learned about another Vietnamese drink called a Soda Chanh. It’s made out of a pickled key lime slice, mixed with sugar and club soda. I didn’t get to try one (this is a picture of Ben’s, after I had realized he had ordered something interesting).

Summary Thoughts

The first big takeaway this week is that I can retrofit my old competencies to fit with my desired working style:

  • Work with people who are creating a story
  • Code for use by other creatives
  • Work together on the same challenge, not as isolated task crunchers

Secondly, to find those people and projects, I must create toolkits that support these kind of projects. That’s packaging knowledge and creating kits.

Because this is a daunting task, working in the small is a strategy I can try applying, using desire, utility and reusability as metrics for success. By working in the small, one can achieve excellence more quickly. This creates more energy, which builds momentum.

Pursuing this path requires tuning out people who tell you that you are doing it wrong. Instead, YOU need to be able to discern whether you’re meeting your personal criteria. If not, that’s when you can look around for more knowledge. The right kind of expert, in my case, is the one who can understand my personal criteria for the project and give me an idea, not a lecture.

I’m not saying that diligent practice of time-proven techniques should fly out the window, but in the very initial stages of new endeavors, it’s important to arrange for quick, meaningful victories. A lot of the educational projects we’re subjected to are not meaningful, contrived to “illustrate a principle” that makes no sense because it is presented outside of meaningful context. The project probably should embody some salient aspect from the reason you want to do it in the first place.

We’ll see if I can apply these insights in the coming weeks.


  1. Mary A. Witt, M.M.F.T. 12 years ago

    Our worlds are very different so I need to ask a question. What is a toolkit? Is it free or purchased? Is it a generic sampler of what you’ve done in the past? Do you mail it to people or is it a download?

    I enjoy reading your blog. I’ve been a sole proprietor in a counseling business for a year now. I’m making changes to my schedule this fall to help keep my work/personal balance.

    Thanks, Mary

  2. Author
    Dave Seah 12 years ago

    A toolkit is the programming equivalent of a collection of parts and related tools that provide useful functions, designed to be easily used by other programmers. A really good toolkit presents its solution elegantly, and works in the most common cases without much fitting, while still allowing for easy customization.

    The general idea of toolkits, in my case, is to just start packaging up the knowledge I have so they work as beacons to like minded people who are interested in the same thing. This serves a few purposes:

    • Google allows people to find it, and if the quality is there they may want to talk to me further. This creates opportunity!

    • I’ll have examples of code and related know-how that serves as a credibility indicator for my ability as a programmer.

    • The process of packaging will sharpen my own thoughts, perhaps leading to other opportunities in the form of personal projects.

    • I’ll have a collection of toolkits that will make programming future projects a little easier.

    • I’ll have a body of work that I feel good about.

    That’s the general idea. Good luck with the counseling business! Work/Personal balance is a tough thing to manage.

  3. Stephen P Smith 12 years ago

    I absolutely love how you share your thoughts and watching how you move from point A to point B in your mind. I can only dream of being this organized.