Besides for writing being fun, it can also be great for problem solving. Writing can help get an action plan together, help figure out what your end result is and how to get there, and make results and consequences easier to see.
You can use this technique to compare strategies, free write until you find a solution, define a goal, outline all the steps needed to do a task, figure out if you really want to do something, or just put some ideas on paper.
I often find writing allows me to explore all possibilities and expand on ideas without worrying about forgetting how I got there. It like chess with a written record of if you do something, then what is your next move, and your next move. When you get to the end, you can access if that is a good strategy or tweak it or throw it away. Maybe you can find steps that were not necessary and eliminate them or combine a few steps in to one step.
A couple days ago, I was faced with an interesting programming task. Basically I need to take data in a text file, sort it, display it in a GUI interface, and pass all the data back into in the exact order. Not too hard to do on a 100 line file. However, I am dealing with a file of over 100,000 lines which means using arrays and such to sort would be very slow and it might break. The actual problem is even more complicated but for the sake of my nonprogrammer audience, I wont go into it .
The first thing I did was write out a long list of everything I needed the program to do and I set it aside, any time something else hit me that I needed it to do, I wrote it down. Next I just wrote in a general sense of where I needed to end up, what does my end data record need to look like to make intergrading it back into the main file in the correct order easy. Once I had that, I wrote out the points I knew I needed to hit. I knew I was starting with one file and ending with the same file but changed. I knew the points I had to hit along the way was to be able to show it to a user in a GUI easy web interface. Then I placed connect the dots. What did I have to do to connect each stage and I wrote it down
What looked like a huge task I was able to break down into a sequence I would work within. After I figured out what I needed to do and where I needed to end up, I just filled in the blanks. The end project was going to take around 500 hours, 5 or 6 program languages, a couple databases, and a tiny portion of my sanity . After a couple of days, I went back and looked at it again. I played with some different ideas and using some creative programming, I was able to get rid of the databases completely and only use 3 or 4 languages which will significantly cut down on programming time. A few hours of preplanning will save me days of wishing I did things differently, debugging time, and programming time.
Also, I now feel like I can put the rest of the program out of my head and only work on the one piece at a time because I can’t forget it sense it is written down. If I want to not work on it for a while, I have a plan so I don’t lose my ideas.
I also love this idea because it allows me to look back on how I solved something. How did I work around a problem? How well did my solution work?
This works on all sorts of issues, not just technical ones. You can write about:
- How to get more involved in life
- How to find a partner
- How to draw people to a blog
- A workout plan
- How to go back to school
- How to buy a new car
- How to have more alone time
- How to spend more time with like minded people
- How to build a house
- How to get up early
- A plan to write a book
- A plan to get organized
- How you can get an extra hour of productivity out of a day
- How can get to bed earlier
- How to get the kids to get along better
- How to get along better with a significant other, parents, etc
Any problem that you have, you can write about. You can draw pictures, write prose, or write a technical manual. You can write about creating your dream vacation and what steps will make it come true. You can write about anything. Even if you don’t know where you are going, writing can help you find the way.