How a Nerd Walks Up the Stairs
Your steps should be in a cycle: short, long, long. Long in this case means a double step. Thus, you will cover five stairs in one short-long-long cycle. In addition, you should always start the first cycle on the same foot. Suppose you start on the left foot, then after two cycles you are back on the left foot, having covered ten stairs. While you are walking the stairs in this way, it is clear where you are in the cycle. By the end of the staircase, you will know the number of stairs modulo...Shannon and Thorp Hack the Roulette Wheel
It was in this tinkerer’s laboratory that they set out to understand how roulette could be gamed, ordering “a regulation roulette wheel from Reno for $1,500,” a strobe light, and a clock whose hand revolved once per second. Thorp was given inside access to Shannon in all his tinkering glory: Gadgets . . . were everywhere. He had a mechanical coin tosser which could be set to flip the coin through a set number of revolutions, producing a head or tail according to the setting. As a joke...Code is Not Literature
Code is not literature and we are not readers. Rather, interesting pieces of code are specimens and we are naturalists. So instead of trying to pick out a piece of code and reading it and then discussing it like a bunch of Comp Lit. grad students, I think a better model is for one of us to play the role of a 19th century naturalist returning from a trip to some exotic island to present to the local scientific society a discussion of the crazy beetles they found: “Look at the antenna on this...Seibel's observation that reading code is less like literature and more like science is dead on. No matter how readable the code is, when I'm confronted with 10,000 lines of it spread across numerous encapsulated functions, I must tackle it very differently from how I read prose. With a complex literary text, I can just read it in linear fashion with occasional segueing to look up words and concepts, with well-engineered code I must follow numerous cases into different flows of logic. These aren't the same at all.
I appreciate that he's trying to dispel the idea that we "read" code as we read for pleasure, I learn from code by experimenting with it. I open up the debugger and step through it, watch the variables change and see where it goes when I execute it. Most of all, I learn by changing that code and trying to build on it. I have enhanced my javascript skills immensely in recent years by cloning various projects on github and trying to expand on them or adopt them to my own purposes. I don't recommend opening up a code base and just reading it, actively engage it, break it, and enhance it.
The Educational Ethics of Hackers
A mantra among hackers is “Less Yack, More Hack.” The hacker is a bricoleur, involved in “making do,” and, in doing so, recovering a non-alienated self. Yet being a “hacker” is more than mere individual inventiveness. It involves a larger set of ideals. A hacker should always practice freedom of expression, respect privacy, catalyze self-initiative, be enthusiastic about involvements, have a passionate attitude toward work, do work that is truly enjoyed, exercise creativity, and p...Hacking is Playful
Also central to the Hacker Ethic is playfulness. At a 2006 O’Reilly Emerging Technology Conference, Matt Webb and Ben Cerveny wrote, “Hacking is a playful act. In a primal sense, play is the investigation and experimentation with borders and combinations” (O’Reilly Emerging Technology Conference, website). Despite early, highly structured approaches to computing in mainframe laboratories in the mid-twentieth century, a computing culture of iterative experimental hacking has evolved th...Storing Information In a URL
What is This? My Example urlHosted is an experimental web app that misuses the part after the "#" of a URL to store and read data. The app is unhosted. See this definition from unhosted.org: Also known as "serverless", "client-side", or "static" web apps, unhosted web apps do not send your user data to their server. Either you connect your own server at runtime, or your data stays within the browser. This means this app neither stores nor sends any of your data to any server. Inst...Store the content of a page inside the URL and have this site render it.
The World of the Electron and the Switch
This is our world now... the world of the electron and the switch, the beauty of the baud. We make use of a service already existing without paying for what could be dirt-cheap if it wasn't run by profiteering gluttons, and you call us criminals. We explore... and you call us criminals. We seek after knowledge... and you call us criminals. We exist without skin color, without nationality, without religious bias... and you call us criminals. You build atomic bombs, you wage wars, you murde...Spider Trap
A spider trap (or crawler trap) is a set of web pages that may intentionally or unintentionally be used to cause a web crawler or search bot to make an infinite number of requests or cause a poorly constructed crawler to crash. Web crawlers are also called web spiders, from which the name is derived. Spider traps may be created to "catch" spambots or other crawlers that waste a website's bandwidth. They may also be created unintentionally by calendars that use dynamic pages with l...An infinite-recursion website that lures web-crawlers into an infinite-indexing loop.
Hackers Hate Driving Cars
Imperfect systems infuriate hackers, whose primal instinct is to debug them. This is one reason why hackers generally hate driving cars—the system of randomly programmed red lights and oddly laid out one-way streets cause delays that are so goddamned unnecessary that the impulse is to rearrange signs, open up traffic-light control boxes . . . redesign the entire system.The imperfect traffic systems infuriate them.