Archive for October, 2005

College Searching w/ Google Maps Interface

Thursday, October 27th, 2005

Notes so far:

A few simple use cases:

1) Me
Looking for a masters program:
Search/sort by:
Geographic Region,
Size of the City,
Ranking of the School

2) Ben
Goes to the site because "its cool". Expects:
Get the map
Ranking slider bars
Numbered or lettered according to ranking, if there is one
Search for the city / name, sort based on proximity
Certain sized school
Update dynamically

3) Graham
Looking for a phd program:
Search/sort using:
quality of teaching
how published / cited people are
Specifics: program keyword searches ("computer audio", etc)
Size of the city, culture of the city

4) Titus

Looking for a grad program:
Major Specializations
Admission requirements
Average GRE
Number of students
Religious/Political Affiliations
Number of plublications (Impact factor)
If there are "out of state" benefits
Regional Weather (how cold it is)
Extracurricular activities
USNews rankings
Tiers / Risk Minimization

class size
Average GPA
Internet Connectivity / Most Wired / Restrictions (OS, Firewalls)

A "Good" search result: 20
Search by "course", like "Semiconductors"
Computing Platform
Research groups
vocational vs theory
buildings vs trees
city vs town

Where they go after school:
Grad programs
Companies (colleges that recruiters visit)

Hackfest 1010 Mortem

Thursday, October 27th, 2005

Since Last Week:

    Added interactive invoke main method. Ran up with issues, but it’s usable.
    Still has issues with Settings in JavaBeans. TAs will start using his autograder in mere days.
    Speeding up a pop song seems to work, but my output has glitches.
    The glitches happen even when you speed up by a factor of 1.0, which should in theory do an exact segment-by-segment copy. So the glitches come from an error somewhere in the process, above any errors that may be in the segmentation process.
    Wrote a small GMaps application for finding CS schools.
    Wants your support – workshopping support.
    Has started working on db support with Ruby on Rails.
    What is the most useful feature for you, applying to schools?
    His Article is due Nov 1, it’s on doing PIC microcontroller sims in Linux.

Plan for Today:

    Debug Settings object in JavaBeans.
    Leading discussion map app. Maybe gamey stuff in Commotion.
    Refactor some of my segmentation, try to kill glitches.
    Testing bleeding edge and fixing software GPSim, GPASM, SDCC, all to write an article.
    Doing the school, math and linguistics.
    Nonlinear optimizations.

This Week’s Reality:

    Stole music, chatted with Stephen and Mike, gave Vinny a use case. Suggested Dynamic Queries for CS Map.
    Installed rails, wrote caching scraper for college board. Collected use cases.
    Has compiled a document of several use cases for his systems.
    Danced to the music, over and over and over again.
    Working on his article, came up with examples. How to do interrupts (pushbutton), using the built-in timer. Should finish article this week.

Photos on Flickr

Thursday, October 27th, 2005

My recent digital camera purchase has resulted in a stream of photographs.  If they are good enough, they make it to my flickr account at

Titus asked about saving photos from flicker – I think this was a ploy to get me to allow photo downloads.  The default setting is to allow other flickr members, but I have switched to the Communist setting of Anonymous.  Go forth and pirate my camera!

Hackfest 1010

Wednesday, October 26th, 2005

Come regale and hack and Octane.

Hackfest 1001 Postmortem

Thursday, October 20th, 2005

–  Since Last Hackfest
    –  Luke
        –  found blurb about alpha Firefox UI feature, tabling his
              firefox project
        –  wrote simple CLI for jhymn  on Linux
        –  spent some time hacking a linux bootloader for palm treo
              (like GARUS)
    –  Matt
        –  Idea: chronological scale for google maps
    –  Graham
        –  Went to startup school
            –  Is going to write it about it tomorrow (says vinny, really on the weekend)
    –  Ben
        –  More autograding stuff – added something so that it can
              read in a request for a complete regrade of a test
        –  Made things nice and user friendly
    –  Vinny
        –  been playing with lisp/scheme, made cool drawings in
–  Today’s Plans
    –  Luke
        –  Website cleanup/maintenance
        –  play with Palm bootloader more
    –  Matt
        –  Haning out, might head home to work on PC
        –  Sketch user interfaces
    –  Graham
        –  Music editor is STARVING
            –  fixing "write with speedup"
    –  Ben
        –  Write something to let the TA run a specific method
    –  Vinny
        –  muck around with scheme/logo more
–  Today’s Realities
    –  Matt
        –  on vague timeline-animated-map-idea: babysteps, in the
              form of touching base on java(?) and GIS
        –  Also: brainstorming on a slick name, with approriately
              pretentious allusion
    –  Luke
        –  Got website things done.  TikiWIki updated.
        –  mail organizing and DHCP debugging via packet sniffing
    –  Graham
        –  Defeated the System.EngineExecutionException by
              reorganizing variables… marshalling issue?
            –  still buggy, tho
    –  Ben
        –  Reorganized some code
        –  read a lot of PhD
    –  Vinny
        –  learned the shape of a nautilus shell
        –  wrote some scheme/logo to draw one


Thursday, October 20th, 2005

Here’s an edited for content and length, but not the size of your tv,  log of my talk with Graham, RE: map-time genesis:

(21:19:22) Matt J Alexander: also: I need a hip, pomo name.
(21:19:34) Matt J Alexander: Because a project without a name is nothing.
(21:19:49) Graham: will, you could insert meta into the title
(21:20:07) Graham: mapistry?
(21:21:19) Graham: metamap
(21:21:41) Graham: maplysses
(21:22:09) Matt J Alexander: hrm.
(21:22:25) Matt J Alexander: maplysses is interesting, but syntatically vague on proper pronunciation
(21:22:57) Graham: mapberto eco
(21:23:59) Matt J Alexander: I like the direction this is going in
(21:24:48) Graham: 100 years of map solitude
(21:25:05) Graham: maptavio paz
(21:25:39) Graham: maps joyce
(21:27:29) Matt J Alexander: So the current implementation idea is based on Event atom (or class,or whatever).
(21:27:49) Ravelite: ok, so an event moves a border then?
(21:27:58) Matt J Alexander: A border would be an Event.
(21:28:12) Matt J Alexander: An Event can be one or more Events, or a vector/tuple.
(21:28:19) Matt J Alexander: Vector being:
(21:28:38) Ravelite: ahhhh, so a border event is a vector of border vertices
(21:28:59) Matt J Alexander: {(where: GIS date[lat.,long.elev.]), time, country/tribe, person, short/long descriptions, causes, image/connector images, accuracy}
(21:29:05) Ravelite: so events have a limited time of validity,
(21:29:13) Ravelite: and are replaced by more current ones?
(21:29:27) Matt J Alexander: Yeah. I’m not sure if this is covered by accuracy or would need something like "lifespan"
(21:29:41) Ravelite: Well, probably you don’t need lifespan,
(21:29:46) Ravelite: just chose the most recent.
(21:29:51) Matt J Alexander: I’m also not sure if this ends up with overly large dataset.
(21:29:56) Ravelite: that partitions the timelime well enough
(21:30:07) Matt J Alexander: Since a border would necessitate several events as points just to define all the curves.
(21:30:15) Ravelite: yes
(21:30:42) Matt J Alexander: Is there a more elegant way, or can I just fall back on the mantra of SPACE IS CHEAP, TIME IS EXPENSIVE
(21:31:10) Ravelite: Well, go for simplest to make a prototype.,
(21:31:18) Ravelite: avoid premature optimization
(21:31:28) Ravelite: assume you will throw away this prototype
(21:32:08) Matt J Alexander: Historically, are even the most ardously planned out prototypes thrown out?
(21:32:19) Matt J Alexander: Or do arduously planned prototypes just never get created :p
(21:32:38) Ravelite: well, it’s just one of my design philosophies
(21:32:48) Ravelite: I just think it’s hardest to create something from the start
(21:32:50) Matt J Alexander: One Luke shares
(21:32:59) Ravelite: and you will learn many obvious things once it is build
(21:33:07) Ravelite: that you can’t imagine about right now
(21:33:12) Matt J Alexander: True: certainly I don’t have any domain knowledge about mapping currently
(21:33:25) Matt J Alexander: And only barely so in history
(21:33:39) Ravelite: I agree with your point, the more planning, the harder to do and the greater chance it doesn’t happen
(21:33:59) Ravelite: and most planning will be made irrelevant unless you know a lot about the domain
(21:34:08) Ravelite: and since your app is highly experimental,
(21:34:18) Ravelite: almost no one knows about the domain right now

Hackfest 1001

Wednesday, October 19th, 2005

Again, it’s at Octane.

Hackfest 1000 Mortem

Saturday, October 15th, 2005

Oops, forgot to post this.  =P

 o This past week, put together a working demo for the TAs, got some feedback.
 o todo: want to put together a new test type that allows the TA to run a specified test.

 o This past week, installed frootyloops on his notebook, did homework like a madman.
 o todo: will install emacs.  read swimm sourcecode

 o This past week, started working on developing apps for trio.  Started writing a bootloader for linux.
 o todo: came up with an idea to improve usability for firefox.  (Navigability without a mouse).  A "generate links" button.
   Also, intelligent transparency.

 o This past week, did 3d integration in commotion.
 o todo: want a behavior that puts a terrain in a 3d scene.

Things we learned today:
 o Courtship is the platform of the socially inept.
 o Jesus was a hippie.
 o Graham wants to cruise Nebraska to knock up women.


Hack Fest 1000

Wednesday, October 12th, 2005

It’s at Octane.

HOWTO: From magnitude spectrum to sound

Sunday, October 9th, 2005

Calling all atlhack signal geeks!

Given a real-valued signal it is fairly straightforward to generate the magnitude spectrum. To plot it in matlab it’s

spec = fft( signal, size );
plot( abs( fftshift( spec ) ) );

The purpose of the abs is to get the complex modulus of the transform values. To get the original signal it’s

plot( real( ifft( spec, size ) ) );

Question: if I only knew X where X = abs( fft( signal, size ) ) and signal is real, could I properly reconstruct signal?