A sample text widget

Etiam pulvinar consectetur dolor sed malesuada. Ut convallis euismod dolor nec pretium. Nunc ut tristique massa.

Nam sodales mi vitae dolor ullamcorper et vulputate enim accumsan. Morbi orci magna, tincidunt vitae molestie nec, molestie at mi. Nulla nulla lorem, suscipit in posuere in, interdum non magna.

CLick here to expand all course descriptions

Posts by (1)

The Hidden Beauty of Computer Science

If you haven’t read the book yet and just glimpsed the title of this book, you will be definitely terrified by some keywords: code? hardware? software? programming language?! Please, don’t be threatened by these stubborn words and let your mind keep stepping onto a journey to the beauty of computer science.

As a computer science background, I read some of classical books from the Code’s author – Charles Petzold, who is a famous writer for Windows Programming (book list of Charles Petzold,  However, the content of this book is not similar with his other technical textbooks, the Code is a book about the story and history of computers, from some discoveries at very beginning of electronics, such as how to think of the combination of light bulb and switch that can be also treated as the fundamental logic of  modern computers.

After reading Code, there has a question coming from my mind. What if the creative inventors who are not comfortable with the fundamental concepts behind what they have applied, for example, doing your Arduino sketch but without knowing what a chip looks like? (Check chapter 18 for detail). From my personal point of view, this will potentially hinder the creativity moving forward! Be cautious of that! How do you think? What is your experience on doing creative work without knowing much about ‘hidden’ story?



12 comments to The Hidden Beauty of Computer Science

  • Allison Burtch

    Your question about creative inventors being uncomfortable with the fundamental concepts behind the application of their creation is interesting. Many times we are left with the how of design but dont’ know “why” it was structured as such. Jaron Lanier, one of the founders of many parts of the internet, wrote an interesting book called, which brings up the question regarding technology whether something “ought” to exist.

  • Allison Burtch

    aaand the book is called You Are Not a Gadget

  • ytf208

    Did you read the book about the coding poem? That is a really interesting poem.

  • gs1754

    I totally agree with your point. An artist needs to know its tools. An artist needs to know his capabilities. A saxophone player needs to know his instrument. He needs to know the scales by hart, how to give the sound a feeling. Difficult tasks. A painter must know about color theory, composition, and its paint. But in modern art like in modern art, there is no such thing that there is no such thing, so, if the process of the artist is to not know his tools than I guess its ok.

    Alison, that book looks awesome! I’m going to read it when I have the chance. Thanks.

  • hm1109

    As a design background, I’ve been looking for GOOD computer science books to get a sense of it. I think this book looks great and definitely check out to read further!

  • Jess

    I’m interested in your question, too. I believe that kind of creative inventors who are not comfortable with the fundamental concepts behind what they have applied produce a wrong design we can see around us. And I want to confess that I was one of them when I was studying industrial design in my undergraduate school. I didn’t try to know about inside of electric products, but draw a sketch and make a prototype. Those looked pretty plausible but I bet that those are not going to be a real. So I lost my passion for product design. But in this semester, things are changing. Blinking LED, something like that seems so boring. But when I building my P.comp final project, I was able to feel how much that practices are applied successfully in it. Even I didn’t read this book though, I can guess this book is related to the reason why we spent almost one month for putting a LED, switch, and drawing a rectangle in processing.

  • At a place like ITP where you have to pick up new programs at a lightning speed, it’s really hard to fully learn about the fundamentals and structure of what we are learning. Most of the time, we are learning how to start the program, go on-line to find similar projects as yours and copying the open source. Yes, we learn tons from looking at other codes but there is alway that empty uncomfortable gap where I don’t fully know what I am doing by heart. I will definitely read this book. My question is, is a program like ITP a right way to teach things? We all love the program and how much we gain from it but we are always chased by time. I mean, a lot of times, we have to lean a program and make a project in 1 or 2 weeks. When do we have our quite moment to really sink things in?

  • Harry (Chiu-Hao) Chen

    Thanks Allison provided this great book. The author of the book reminds me another digital era visionary – Kevin Kelly (KK). Although these two visionaries are sometimes standing on different view point towards on technology and humanity. It is still valuable to take a look at their argument, see this speech

  • Harry (Chiu-Hao) Chen

    I also really like Jess’ experience and evolution. Jess did a good job for her PCom project!! Jess and I were in the same PCom class, I can totally understand her struggling when facing on those ‘hard’ things that are totally out of her domain knowledge. In fact, we can not (and maybe we are not necessary to) know every fundamental theory of technologies, but if we are able to break down every small piece of knowledge, like Jess’ experience, we may feel more confortable whenever we are trying to build up larger project by assembling every little knowledge. Again, I don’t think we need to exactly know the fundamental theory of everything, but trying to persuade yourself dive more deeper into that technology you are going to apply. Every little confidence may help you build up more and more creative works.

  • Mack

    I started reading this book a few months ago:

    But it was far too dry for me. It gets at a crucial point though, which is that design and a REAL understanding of programming shouldn’t be mutually exclusive. Which may seem obvious, but is difficult for most institutions to grasp. Since computer programming is so often grouped in computer science / math circles, some think the brain is used differently in each. In the end, both require creativity and problem solving. Utilizing code in creative exploits is like trying to learn how to surf for the first time, you’re not going to do well if you don’t know what’s actually going on in the ocean. I’m sure there are plenty of artists who use code who don’t care about the technical aspects of what is going on – in my opinion, they should be aware of the work that came before them, and the fact that someone worked for years on getting that chip to convert the stream of data from TTL to RS232, so that you can use it in your magenetic card reader project. In my physical computing class, this wasn’t stressed too much, but reading CODE helped me grapple with this theme more. There is too much going on in an Arduino to worry about all the time, but you should be aware of what actually is going on, and hopefully have some knowledge of it.

    I was actually having a conversation about this exact thing with Surya, Ryan and Sarah at a bar last week.

  • Yang Wang

    yes, that’s right, as a graphic designer, learning some print knowledge is inevitable, and quite necessary. After knowing this knowledge, you would know what on earth look like after your virtual works printed. That’s important, if you want to be a master of your area, that cannot be enough for just learning how to use the tools, you should try to figure out how your tools work.

  • Harry (Chiu-Hao) Chen

    Thanks Mack for sharing his experience on Pcom project. It’s amazing that I originally thought Mack’s background is engineering when I saw his card reader project. I am really admired that people can utilize technology and turns the related object into a beautiful art form. I agree with Mack’s opinion to be not so way much caring about technical aspects from his observation. From my first thought after read the book CODE, I originally tend to consider people (especially for the creative people to do their physical computing works) should be better to know about the history or fundamental theory of some technology, however, I think I was wrong. I was way too much worry about that! The skill and mindset of people are so diverse, in other words, people should choose what they can understand and utilize to maximize the resource of what they have. Then, people will spontaneously try to dig more advanced exploration once people feel interesting or uncomfortable about the method they have applied. It makes more sense to argue that creative people should know more about fundamental theory based on what they are situated among creative jobs. A good example comes into my mind is Processing. The Processing language was initiated by MIT student – Ben Fry and Casey Reas, however, not every one that uses Processing needs to know about how to write Java compiler or how to design Jave Virutual machine (JVM) for better performance. I assume that if I were Dan Shiffman, I could be one of the man will (have curious or chance) to look at the design of Processing language, because he is the master of Processing application and might have more and more question on his mind towards the design of Processing language. This is the important reason to push people to look at advance part of technology. I hope my example could be better to example when and why people should move forward to look at the beauty of technology. 😀