Projects and Master Classes for the Hacker Dojo
Lee Felsenstein
5/17/2009
As an official “sensei” of Hacker Dojo I'm interested in bringing other sensei-level masters in to meet the group and make their skills and experience available to other dojo members and attendees. This requires a structure of projects to allow masters and learners to discover each others' strengths and weaknesses.
This list can never be exhaustive – it will be dynamic and subject to immediate needs and opportunities. I am putting down some ideas here which may influence thinking in this area.
Note on the “design and construction”projects:
The hardware development projects listed below are intended to involve young people and to provide them a set of learning tools. All will involve development of do-it-yourself instructions and courseware which can be taken up by others. These designs will reinforce the learner through tactile involvement in the hardware operation – as exemplified in the use of diode matrices rather than the more virtual emulation-based approach. We can accept performance hits in order to give the learners the visceral experience of seeing the lights display the results of the logic operation as implemented by hand. “I did it myself” is the intended statement from the young learner, along with an attachment to the designs as examples of the way things were done by previous generations, before they had all the flashy stuff. In the process it is intended that learners emerge with a far superior depth of knowledge compared to graduates of university CS programs.
Design and construction of a microcode learning platform.
This would be a series of rack-mounted card cages and power supplies designed for use as a test and development bed for microcoded machines based upon a manually-programmable diode-matrix logic card. This logic card would emulate a PLD device such as the 22V10 or PAL16R8, but instead of electrical programming of a chip the developer would place MELP diodes into matrices with tweezers to express the logic equations. This process is understandable on a tactile level and provides the root point of development of symbolic systems for expressing logic and programming.
The project would involve:
-
Design, schematic entry, and printed circuit layout of the basic programming matrix board, the logic board and several ancillary boards (e.g., memory, I/O, clock generator, display). Parts fabrication, assembly and testing.
-
Design of mechanical packaging, rack mount card cages, power supplies and interconnection systems. Parts fabrication and assembly.
-
Documentation of all components.
-
Development of a learning syllabus for the microcode learning platform.
Design and construction of a general-purpose minicomputer using the microcode logic cards.
Design and construction of a Linux-capable computer using the microcode logic cards.
Upgrade of minicomputer with memory-management.
Design and construction of character ASCII impact printer.
-
Print matrix card layout and fabrication
-
Mechanical cable D to A converter
-
Card carrier and impact generator
-
Data interface and sequencer
-
parallel
-
serial
Development of real-time video edge-detection “tooning” for webcams and smartphones.
Compression and transmission of edge-detected signals.
This effort builds upon work published in a 1984 book and tried with real-time hardware in 1993. A simple edge-detection algorithm yields real-time black-and-white video that looks like line drawing (or “toon”, for “cartoon”) and which allows for easy identification of the subject' s face without showing details of clothing. In effect, it solves the problem of wanting to look one's best for a videophone call, while reducing bandwidth requirements.
An interesting phenomenon of the process was that writing and printing could be easily read even through the paper.
Development of video-wall conferencing “portals”.
This will be an exploration of how to gain the most benefit from the least hardware and bandwidth. Rather than static, full-resolution video of people in two (or more) rooms, we may want to use “tooned” video with changing spatial representation both to each other and to presentation materials. Care will also be taken with representing the entrance, exit, advance and withdrawal of meeting participants.
Community Memory
A continuation and updating of work that began in 1972 and went through three generations of development and implementation through 1992. The original “social media” project, it explored ways of using data-based rather than message-based communication to build and support community. Now, with the spread of smartphones, many of the infrastructure problems are solved, and it's time to build a new generation of this tool that will allow users to roam through conversations using index and network database tools, and develop convergent discussions in real time.
Comments (0)
You don't have permission to comment on this page.