23 SEP 2023 by ideonexus

 We build our computers the way we build our cities -- ove...

The computer was suddenly revealed as palimpsest. The machine that is everywhere hailed as the very incarnation of the new had revealed itself to be not so new after all, but a series of skins, layer on layer, winding around the messy, evolving idea of the computing machine. Under Windows was DOS; under DOS, BASIC; and under them both the date of its origins recorded like a birth memory. Here was the very opposite of the authoritative, all-knowing system with its pretty screenful of icons. He...
  1  notes
 
24 JUN 2022 by ideonexus

 The Car Example for OOP

The `Car extends Vehicle` or `Duck extends Bird` type of tutorial obscures more than it illuminates. In good OO programming, we don’t make class hierarchies in order to satisfy our inner Linnaeus. We make class hierarchies in order to simplify the code by allowing different parts of it to be changed independently of each other, and to eliminate duplication (which comes to the same thing). Without any context as to what the code needs to accomplish, you can’t make a judgment about whether...
  1  notes
 
28 SEP 2021 by ideonexus

 Caching in Public Libraries

...libraries are a natural example of a memory hierarchy when used in concert with our own desk space. In fact, libraries in themselves, with their various sections and storage facilities, are a great example of a memory hierarchy with multiple levels. As a consequence, they face all sorts of caching problems. They have to decide which books to put in the limited display space at the front of the library, which to keep in their stacks, and which to consign to offsite storage. The policy for w...
Folksonomies: metaphor computer science
Folksonomies: metaphor computer science
  1  notes
 
28 JAN 2021 by ideonexus

 Computing is Pop Culture without History

Binstock: You seem fastidious about always giving people credit for their work. Kay: Well, I'm an old-fashioned guy. And I also happen to believe in history. The lack of interest, the disdain for history is what makes computing not-quite-a-field. Binstock: You once referred to computing as pop culture. Kay: It is. Complete pop culture. I'm not against pop culture. Developed music, for instance, needs a pop culture. There's a tendency to over-develop. Brahms and Dvorak needed gypsy music ba...
  1  notes
08 NOV 2019 by ideonexus

 Why numbering should start at zero

When dealing with a sequence of length N, the elements of which we wish to distinguish by subscript, the next vexing question is what subscript value to assign to its starting element. Adhering to convention a) yields, when starting with subscript 1, the subscript range 1 ≤ i < N 1; starting with 0, however, gives the nicer range 0 ≤ i < N. So let us let our ordinals start at zero: an element's ordinal (subscript) equals the number of elements preceding it in the sequence. And the ...
Folksonomies: computer science
Folksonomies: computer science
  1  notes
31 OCT 2018 by ideonexus

 Bumper Sticker Computer Science

A few of my favorites, not found in the linked article: "There are two ways of constructing software. One way is to make it so simple that there are obviously no deficiencies. The other is to make it so complex that there are no obvious deficiencies." C.A.R. Hoare "The purpose of software engineering is to control complexity, not to create it." Dr. Pamela Zave "The most important single aspect of software development is to be clear about what you are trying to build." Bjarne Stroustrup "T...
  1  notes
 
22 SEP 2017 by ideonexus

 Algorithms are Subjective/Creative Things

he algorithm may be the essence of computer science – but it’s not precisely a scientific concept. An algorithm is a system, like plumbing or a military chain of command. It takes knowhow, calculation and creativity to make a system work properly. But some systems, like some armies, are much more reliable than others. A system is a human artefact, not a mathematical truism. The origins of the algorithm are unmistakably human, but human fallibility isn’t a quality that we associate with ...
  1  notes
01 JAN 2017 by ideonexus

 1980 View of Software

Software is a new enough kind of thing in the world that humans are still figuring out how to deal with it. Though it can be bought and sold, you can't see, hear, touch, taste, smell, eat, or burn it. On an unlovely flat artifact called a disk may be hidden the concentrated intelligence of thousands of hours of design, for which you are expected to pay hundreds of dollars, and which you can reproduce on your own computer with perfect fidelity in less than a minute, free. Personal computers ha...
  1  notes
 
17 MAR 2014 by ideonexus

 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...
Folksonomies: computer science hacking
Folksonomies: computer science hacking
  1  notes

An infinite-recursion website that lures web-crawlers into an infinite-indexing loop.

24 JAN 2014 by ideonexus

 Ada Lovelace Describes the Analytical Engine

The distinctive characteristic of the Analytical Engine, and that which has rendered it possible to endow mechanism with such extensive faculties as bid fair to make this engine the executive right-hand of abstract algebra, is the introduction into it of the principle which Jacquard devised for regulating, by means of punched cards, the most complicated pattems in the fabrication of brocaded stuffs. It is in this that the distinction between the two engines lies. Nothing of the sort exists in...
  2  notes

It is a loom, but for weaving equations.