stevesafarik.net
It's not pretty, but the info's all here.

----------
Contact:
ssafarik -at- u.washington.edu
759 31st Ave., Seattle, WA 98122-5021

----------
Programs for Stochastic Concurrent Distributed Robots (research at the UW):

This research involves the problem of how to write programs for distributed robots in a stochastic environment. In particular, assuming that each robot knows the desired state of the system, but does not know the current state of the system, the question is what next action should it take to reach the desired state. The technique we are investigating is to consider the program as a set of commands that may execute in any order, where the command to execute is chosen randomly from the set. In addition to the set of commands, each command has two attributes that give the program its desired behavior: a guard and a rate. The command's guard determines if the command is enabled or disabled in a given state, and it is common for multiple commands to be enabled simultaneously. The command's rate is the rate of execution of that command when it is enabled.

For example, a deterministic program would have just one command enabled at each state, with some non-zero rate, thereby giving only one choice for the next command to execute. As the program runs, at each step there is only one next command and it proceeds methodically through them. A random program might have all commands enabled, all with equal rates, and as the random program runs, at each step it can execute any command from the set.

Consider the guards. If the guards are specified such that we can be sure that we always reach the desired state (in some finite time), and that we never reach an undesired state, we then have a correct program. An additional benefit of writing programs as sets of guarded commands is that it puts them into a form more suited for formal verification, whereby one can prove correctness.

This correct program may be a long way from optimal, however, but once we have correctness we can turn our focus to the rates, and tune the rates for performance. Whichever (nonzero) rates we choose, we can be certain that the program is still correct. By carefully choosing the rates, perhaps even adjusting them online, we can adjust the performance of the program.

In the end, we hope to show that programming with sets separates program correctness from performance tuning, eases the verification work, and that it is easier to add performance to a robust program than it is to add robustness to a well-performing program.

----------
Datasheets:
2N5160 Transistor (obsolete, and the datasheet was hard to find):
2N5160 (pg 1)
2N5160 (pg 2)
2N5160 (pg 3)

AppleDesign Powered Speakers Specs Specifications:
AC Adapter, Apple Computer, Inc., Cupertino California
AC 120V ~ Input, 60 Hz 40W
Output: DC 15V, 1.0A
Class II Power Unit
Neg-(o-Pos, Center Positive
Connector has 6.0mm outer connector, and approx 1mm inner pin (my calipers wouldn't reach inside).
AppleDesign Powered Speakers Power Supply

----------
Gravitational Simulation Code: If you're writing a gravitational simulator, here's some code I wrote that performs the very speedy Barnes-Hut N-Body algorithm; O(NlogN). It hasn't been extensively tested, but should be close. You are free to use it anyway you wish.

----------
Seattle Veterinarians Comparison: Seattle Veterinarians.

----------
Ad blocking file (2007 version): \windows\system32\drivers\etc\hosts.

----------
Visiting Seattle & Surrounding Area: Seattle Activities.

----------
Laser Spacewars:
Spacewars is a one-to-four player space combat game, ready for coin-op arcade installation. It is a "vector" type of display, meaning that there are no pixels - everything is drawn with smooth lines (more like an oscilloscope rather than a computer monitor or tv), and is projected by laser-beam onto a wall or screen (outside wall of a building, indoor ceiling, etc). Each player gets a ship, and flies around trying to kill the other players using thrust, fire, warp, and hyperspace. There's also a Sun to avoid (or hide behind) in the middle of the screen. The last ship living gets a point, and the game ends at a preset score where the winner enters their initials. There is a lot of subtle detail in the game, and it's a lot of fun. The average event installation generally has all four stations filled with players, with more waiting to play. The game can operate in "free" mode, or with a coin-box.

Calendar of upcoming and past events:
• Sat&Sun 5/8 & 5/9/2004 - NWCGE-2K4, The NW Classic Games Enthusiasts Expo 2004 is the largest videogame event in the Pacific NorthWest. All the Classics From PONG to the XBOX, May 8 & 9, 2004. At the SeaTac Holiday Inn, 17338 International Blvd, near SeaTac Aiport.
• Wed 12/03/03 - At the monthly Dorkbot meeting (1st Wed of the each month) at CoCA (on Dexter, one block south of Mercer, in Seattle). The meeting starts at 7:30, and I will be speaking, describing the internals and how one controls a laser with a computer. I'll have Spacewars running before and after the meeting, so come early or stay late to play.
• Fri 8/22/03 - Fremont Outdoor Cinema, before the movie (The Wrath of Khan). Doors open at 7:30, Spacewars about 8:15, movie starts about 9:00.
• Fri 8/8/03 - Fremont Outdoor Cinema, before the movie (Back to the Future). Doors open at 7:30, Spacewars about 8:15, movie starts about 9:00.
• Fri 5/02/03 - An art opening at On The House, 7-11pm, between 12th & 13th on Pike St.
• Sat 3/15/03 - A show at the 2003 NW Classic Gaming Expo as part of the Classic Gaming Weekend.
• Fri 3/14/03 - The first big public show at the Little Theatre's movie screen at 19th & Mercer.
• Fall/02 - Various private showings, indoors and out.

Contact me for details, photos, to book a show, or if you're interested in manufacturing for commercial sale.

----------
Bank Fun:
Here's a fun technique I came up with to double the interest rate you get on your savings account at your bank. By taking advantage of the fact that 1/2 cent rounds up to a full cent, you get a full cent interest when you should just get 1/2 cent. Of course it only works for a little bit of money, but it's fun at least to know you're doing it.

Directions (for accts w/ quarterly interest):
1. Start with your yearly interest rate, (e.g. 0.25%)
2. Divide by 4 (e.g. 0.0025 / 4 = 0.000625)
3. Divide the 1/2 cent desired interest ($0.005) by the number in step 2 (e.g. 0.005 / 0.000625 = $8.00)
4. Keep that amount in your acct for one full quarter.

You'll get a full cent ($0.01) of interest on $8.00, even though you only earned 1/2 cent (because 0.5 rounds up to 1.0). This is a rate of 0.50%, even though the bank only thinks it's paying 0.25%. This will work with any interest rate, i.e. if the yearly rate is 2%, it will only require $1.00 to earn your penny per quarter, giving $0.04 for the year, and an effective rate of 4%. Ta Da! Have fun.

----------
Passwords:
Ok, I know you're really just here for the Default Passwords of various systems & hardware.

----------
News & Politics:
RadicalRadio.org is a well-produced streaming audio station featuring current news, analysis, and commentary.

----------
Infrared Illuminator:
You can use your infrared camera, nightscope, or camcorder with an IR mode (many b/w camcorders have this) to see in the dark at long distances. Check out these Instructions for Building an Infrared Illuminator.

----------
Torture Memo
Here's the March 6, 2003 Torture Memo written by the US Government trying to justify the use of torture.

----------
Low Power FM
Here's the LPFM Third Adjacent Channel Interference Analysis commissioned by the FCC. The airwaves are owned by the public, and if you're only transmitting a couple of watts, then there's room between existing stations. You can buy your transmitter at NRGKits.com. I prefer the PLL Pro III, which is available preassembled or in kit form. You can be on the air for around $200. With the proper antenna, it has a range of about 2 miles.

----------
Photos (no preview thumbnails; just the filenames).
(All Images)