2015年1月31日星期六

Why machine? Why programming?

There is always a question in my mind, ever since I first started my programming. What is computer supposed to do? Yes, for gaming, for working, for communication and so on. But what is computer's most basic reason for being built? Why there was a human suddenly came out an idea of building up this machine? I found my answer just now, after watching "The Imitation Game" .

This WW2 movie gave me the answer because this is a story of a great man who got the very first idea of inventing a computer, something that could analysis by its own.

The greatest mathematics in Britain were assembled in WW2, to decode the German coding machine that change its pattern every 24 hours and they only got 16 hours to find out the only correct pattern out of six hundred and fifty million of million of possibilities. Facing the life of hell, there was one man who dare to take the challenge with a unimaginable way. He wanted to find out not only a way to solve the puzzle for one day's code, but a way to break everyday's code. And he made it.

I realized that the invention of computer is a change in human's respect to life. This change in mind is much more important than any other improvement in that period. Instead of repeating invariable jobs, humans seeks a way to build up machines to release themselves. This, is the very beginning idea of the invention of computer. And this is also what a real computer should do and must do.

This reminds me the topic of this course this week: recursion. The aim for it is quite similar. Instead of telling computer what to do for every step, a programmer should have a idea of letting a computer repeat doing some step until it reaches the purpose. Man might not have to do every thing to build up a huge project, because there is another powerful companion with excellent calculation and no mistake on every order. The goal for a programmer is to develop its ability to the very end and make a good use with this creature.

2015年1月25日星期日

Why Geeks Should Write?

Geeks, defined as a group of strange people that could not be easily accepted by normal ones, usually have more ideas and understanding than others. I don't think myself as a geek because I do have the things that I'm bad at, but I'm not like geeks who seems different in someway but have their own specialties. In this case, it's hard for me to tell the real reasons for geeks to write but I would like to present my words in a mortal's perspective.

Firstly, as one of the most basic human capacities, writing should be a normal activity for people to keep track their thoughts and impressions. For geeks, it is the same idea. Geeks have their own ideas and they need to find a way to record them. There is a stream of consciousness in everyone's mind, a geek might come out with thousands of different ideas in one day but no one could organize this messy information without writing. People are forgetful, and writing is the most helpful way to help organize and reinforce the impression of their thoughts.Let me illustrate a simple example, a person who make memos is better organized than someone who don't. In my opinion, geeks should write because they need to visualize their ideas before more ideas jump into their minds, drive them crazy and make everything out of control.

Writing not only helps manage ideas, but also create a platform for people to exchange their acknowledgment in different region and even different time period. This might be the best reason for geeks to write. I think an real history is enough to show the importance of writing. Galileo was one of the most famous astronomers in the world. However he did not gain his glory in his life time, but after two hundred years. How could people learn heliocentric theory if Galileo did not write down his great view? He was recognized as a crazy and evil madman in his period but not anymore at present. Same to geeks, they might not be understand currently, but people in the future or from another country might accept their ideas. Thus, they need to pass down their thoughts in words.