Flow: The Psychology of Optimal Experience by Mihaly Csikszentmihalyi
Is from this article about being more efficient at work and play. It's from the general topic of "Getting Things Done," which is an efficiency movement that you can find lots of books and websites on.
That except describes exactly what it was like when I started programming as a hobbyist. While it's a lot less intense for me a couple of decades later, much of the elements of "flow" are what makes me put in the extra time and effort to craft something exceptional. A certain amount of it is also ego, as I want to put out a product on which I can lay claim to things that reviewers and players alike marvelled at.
Here's an interesting description of what makes work, or can make work, more interesting:
This concept of Flow is a powerful one, and resembles what we all want work to be like, but rarely is. Flow, as described by Mihaly Csikszentmihalyi is a "state of inner experience in which there is order in consciousness." He also states that "some of the activities that consistently produce flow (are) sports, games, art, and hobbies." "The more a job inherently resembles a game - with variety, appropriate and flexible challenges, clear goals, and immediate feedback - the more enjoyable it will be."
- Variety
- Appropriate and flexible challenges
- Clear goals
- Immediate feedback
- A sense that one's skills are adequate to cope with the challenges at hand.
- A rule-bound action system
This is what the ideal job looks like. This job will resemble play, and will be addictive. As much as you can create work like this, you will be a happy person. As much as you can make your work like this, you will want to do it.
You need to be like this with your programming. Not your game playing, but your programming. The way you totally get into a game like WoW or Halo, that's how you must be in your programming craftsmanship.
How do you get there? Read programming books and articles, even about topics you don't really understand. Believe it or not, your brain will manage to remember a few things, and just like a Harry Potter or other "mystery" books, these ideas will prove to be useful in later chapters of your career.
Visit a site like http://www.codeproject.com/ and pick some topics that sound interesting. Read and article or two about graphics, or something else you always wondered about regarding how programs work, for example, printing, transparent windows, buttons, etc. They usually have sample programs with source code so that you can see how to implement those features for yourself.
Though I do read the kuro5hin site on my own, I found this particular article via Kotaku.com, which is a site I'd recommend to all of you game industry wannabes. It's a good site to start your day with, full of industy news. Good stuff that'll give you a nice perspective of what's going on. You can be among the second to know about next-gen stuff and industry goings on.
To be among the first to know, you need to solve that whole getting a job in the industry problem.
No comments:
Post a Comment