I hope the field of computer science never loses its sense of fun. ... What you know about computing other people will learn. Don’t feel as if the key to successful computing is only in your hands. What’s in your hands I think and hope is intelligence: the ability to see the machine as more than when you were first led up to it, that you can make it more.
More importantly, it is difficult to study minds because we are mental beings. We have our own minds to maintain and protect, and may not wish to discover facts that force us to change, or make us question our own being in the world, or conflict with our sense of right and wrong. We have not discussed belief systems known as religions to any extent in this book. However, particularly threatening are facts that run counter to ourreligious beliefs, especially if those beliefs are strongly held. Further, scientists have hopes, standards, and ethical beliefs, and they—like anybody—are not eager to find that their beliefs are invalid.
Unix is not so much a product as it is a painstakingly compiled oral history of the hacker subculture. It is our Gilgamesh epic: a living body of narrative that many people know by heart, and tell over and over again—making their own personal embellishments whenever it strikes their fancy. The bad embellishments are shouted down, the good ones picked up by others, polished, improved, and, over time, incorporated into the story. […] Thus Unix has slowly accreted around a simple kernel and acquired a kind of complexity and asymmetry about it that is organic, like the roots of a tree, or the branchings of a coronary artery. Understanding it is more like anatomy than physics.
Lilah did little more than sleep and eat and cry, which to me was the most fascinating thing in the entire universe. Why did she cry? When did she sleep? What made her eat a lot one day and little the next? Was she changing with time? I did what any obsessed person would do in such a case: I recorded data, plotted it, calculated statistical correlations. First I just wrote on scraps of paper and made charts on graph paper, but I very quickly became more sophisticated. I wrote computer software to make a beautifully colored plot showing times when Diane fed Lilah, in black; when I fed her, in blue (expressed mother's milk, if you must know); Lilah's fussy times, in angry red; her happy times, in green. I calculated patterns in sleeping times, eating times, length of sleep, amounts eaten.Then, I did what any obsessed person would do these days; I put it all on the Web.
Code is not like other how-computers-work books. It doesn't have big color illustrations of disk drives with arrows showing how the data sweeps into the computer. Code has no drawings of trains carrying a cargo of zeros and ones. Metaphors and similes are wonderful literary devices but they do nothing but obscure the beauty of technology.
Seemingly innocuous language like 'Oh, I'm flexible' or 'What do you want to do tonight?' has a dark computational underbelly that should make you think twice. It has the veneer of kindness about it, but it does two deeply alarming things. First, it passes the cognitive buck: 'Here's a problem, you handle it.' Second, by not stating your preferences, it invites the others to simulate or imagine them. And as we have seen, the simulation of the minds of others is one of the biggest computational challenges a mind (or machine) can ever face.
Well, writing novels is incredibly simple: an author sits down…and writes.Granted, most writers I know are a bit strange.Some, downright weird.But then again, you’d have to be.To spend hundreds and hundreds of hours sitting in front of a computer screen staring at lines of information is pretty tedious. More like a computer programmer. And no matter how cool the Matrix made looking at code seem, computer programmers are even weirder than authors.
jQuery is by far the most widely used library for JavaScript. It is used on more than 50% of websites. Many frameworks, such as Backbone and Twitter’s Bootstrap, are built on top of jQuery. Being able to extend and write plugins for jQuery can not only save lots of time, but also makes code much cleaner and easier to maintain.
believe the power of jQuery is highly underutilized. Most developers will take advantage of its shortcuts and CSS selectors, but most of the time they fail to take advantage of much else. Being able to extend jQuery, whether by adding your own functions, CSS selectors or full-blown plugins, makes you a much stronger and smarter developer.
In my experience, requirements change quite often, or new situations will arise that weren’t anticipated at the start of the project. If the situation can be addressed with a plugin, I just whip open the standalone plugin page, make the updates and pop the new plugin back in. Because the plugin is self-contained, it’s easy to recreate the problem, fix it, and get it back into the codebase.
Ultimately, I try to think of my application’s main codebase as just stringing together various components and code from many sources. It just controls logic and flow. The real nitty-gritty is handled behind the scenes. This is why frameworks like Backbone are so important — they hide a lot of the details in the background and allow you to just focus on the flow and control of your application.