A little more Fish

Thanks for all the great suggestions last week for GefilterFish. I decided to throw most of the suggestions onto the site and see what sticks:

  • added voting history and rsvp history pages so you can see if there was any unusual activity involving votes getting maliciously overwritten by others. If this really ends up being a problem, I could always add IP or subnet blocking settable per event. The event Initiator now has the ability to delete votes, too.
  • tinkered with the Calendar UI a little, but this still needs more work when I get the time.
  • Added new Event options settable by the Event Initiator.

    a) An event can now be configured so that things like editing the description, closing the date voting, setting the final date/time are limited to the Initiator or editable by anyone (default).

    b) An Event can also now be set so that anyone can participate(default) or only registered users can play.

    c) The Initator can also set a date at which the date closing will automatically be closed.(but it can be re-opened) This might motivate people to get their votes in earlier rather than procrastinating.

  • Cleaned up the login page and added an even more open option allowing people to participate anonymously if they'd like.
  • Started exploring a new feature listing the most likely date based on current voting. This will likely get flushed out more, but I wanted to lay the groundwork.

    a) added a fourth voting option called "Top Choice". This allows people to express a preference for a date rather than just listing it as available.

    b) I wanted to start this out very simply, but it will likely change. 2 points for a "top choice" vote, 1 pt for "available", 0 pts for "maybe", -1 pts for "Busy".

    I started implementing something where you only had X number of points to allocate, but that became lengthy to explain to first-time users in a small amount of space. Also, I'm concerned that a fixed number of points to allocate encourages people to tamper with the voting, including creating multiple personnas.

    Then I realized that this shouldn't be about gaming the system, it should be about finding an optimum date for a group as a whole. If someone feels that strongly about an event being a certain day, they can just close the voting and declare the event on that day. I'd rather err on the side of leaving things flexible.


    Anyway, here's a sample movie night to see the changes:

    Movie Night - Retrospective and Regression
    http://gefilter.com/3jTyQB

    Let me know what you think of the latest changes or would like anything else changed.

Posted on Tue, 31 May 2005 15:10 by wombat (1926 day(s) old)

Chocolate Bread

We bought a loaf of chocolate bread yesterday from the House of Bread, and I've been eating it non-stop. I don't even like desserts or chocolate, but this stuff is like crack.

Luckily for my waistline, they only bake the chocolate bread on Saturdays. Here's the baking schedule for the Fremont store. Their Garlic Cheddar White and Honey Whole Wheat breads rocks, too.

Posted on Sun, 29 May 2005 17:01 by wombat (1928 day(s) old)

Which approach to take: Web 1.0 or Web 2.0?

Some of you have already heard this from me, but I wanted to open this up to more people and get some additional opinions. So instead of emailing everyone I know I thought it would be easier to reach people by just blogging about this. (and since no one seems to use email anymore :) So far, opinions have been split, so I wanted to get a bigger sampling.

The Background
I've been thinking about how much of a pain it is to get everyone together these days for things like group dinners, LAN parties, movie nights, CafeSFs, local tech talks, etc. We've often had ideas for getting together, but when actually trying to coordinate it, there's often too much inertia and it never happens. Sometimes the problem lies in scheduling difficulties and sometimes the email discussions just lose momentum. So I'm curious as to whether this is something that could be coordinated online and made more efficient beyond the event/meeting tools currently out there?

Here are some of the things I jotted down that might be useful in a tool for this:

  • a collaborative calendar
  • rsvp functionality
  • more power for the group, with less onus on the host/event initiator
  • rss feeds so that those interested can subscribe, instead of spamming everyone
  • event-based, to avoid having to define overlapping or subset groups of friends
  • the ability to decide how public or private the event would be by who receives the event url (emailed to friends or posted on a blog)
  • deploy a site that could be rapidly revised to evolve as we go along

So I cobbled together some prototypes from pieces of apps I've written in the past to convey the concept. I've gotten a lot of great suggestions from a handful of people so far (especially from kwc), and it's now on the 4th iteration, but I'm looking for more input. The latest prototype can be seen at the URLs below. The underlying code needs to be cleaned up, but everything should work, so feel free to play around with it.

Sample Event #1:
http://gefilter.com/6bSWzR
(event in scheduling mode)

Sample Event #2:
http://gefilter.com/9jMnvy
(event in rsvp mode)

I'm almost to the point where I'm happy with the concept and I can start cleaning the code up, but there are a few issues where opinions have been strongly divided and I wanted to get more feedback from a larger audience on a few things:

1. User-accounts vs. open participation - This is probably the biggest issue, and people have taken both sides. The first few prototypes didn't have a user account system, and I wanted to make things really easy and totally open, like commenting on a blog. The idea was that among friends, there would be a wiki-style trust and people wouldn't mess around with impersonation and date vote tampering. The whole Read/Write web thing.

But I also understand the argument for a slightly closed system with user accounts, which allows for more customization, privacy, and nice features like "My Events" and easier ways to create get-togethers with the same people.

On the other hand, it's a pain signing up for yet another account on a website. Years ago, when I wrote the login/membership/subscription section of mcafee.com, I wasn't happy with the decision to make everyone sign up for an account just to see the rest of the site. I got to see on a large scale how many people dropped off when confronted with "please login/register to continue".

Hmm, but there's also the problem of how to keep a gathering small which might hard to restrict without accounts.

Well, as you can see, I'm very torn on this issue and would be interested in any opinions.

2. Pure html vs. AJAX/DHTML - The other issue of contention is the browser experience. The initial concept was for really lightwight, pure-html pages, but many people suggested a more interactive UI with AJAX and DHTML. I've added some DHTML and AJAX XMLHttpRequests to the calendar in places that made sense, but there's a lot more I can do if I decide to go full-on with a beefier client. What do you think? Do you prefer a thin or a thick experience on the browser?

Which direction?
These issues are part of a larger dilemma that I have, which is, would you rather see this tool be built with a Web 1.0 or a Web 2.0 approach. For example, I'd love to make this thing easily integrate with everyone's blogs as well as make it work with iCal and Event RDF, but I don't know if enough people I know would use this to go in that direction. I'm really more interested in what you guys would find useful than trying to cram in as many trends as possible (semantic web, AJAX, read-write web, APIs, etc.)

One of the benefits of a Web 1.0 approach would be fast and familiar development. I can probably recycle code that I've used a dozen times before in different apps. One of the benefits of a Web 2.0 approach would be easy integration with other sites and an evolving online world. A potential downside is a misdirected focus and losing sight of making a tool that truly addresses our needs.

I realize that the two approaches aren't mutually exclusive and things will evolve over time, but I want to make sure I start with the proper focus now, since it might be harder to change down the road.

Oh yeah, the name Gefilter Fish doesn't have any significance. It's just a domain name I had planned to use for a service to filter and translate web sites for small screen devices (filtered Babel Fish), but I never finished developing it, so it was just sitting around.

Holy crap, this was way too long. Sorry about that. I'm done.

So what should be done to make this tool useful? What would you do? Let me know what you think at wombat@wombatmobile.com or leave a comment here.

Posted on Thu, 26 May 2005 10:30 by wombat (1931 day(s) old)

DHTML popups

I've been playing around with a lot of DHTML and client-side javascript recently, which feels a little weird because I swore I'd try to avoid this stuff back in '97. One of the things I hate about this is dealing with browser incompatibilities. Luckily, there are some good libraries out there now so I don't have to waste my time on that.

I downloaded a bunch of these to evaluate and most were ok, but overlibmws really stands out. It's a little confusing to use at first compared to other products, but that's because it's so customizable and gives you control over everything.

It took me a while to find it after trying out many other products, so I thought I'd give it some link love.

Also, there's a popular Yahoo Group dedicated to it where you can get assistance.

Posted on Wed, 25 May 2005 17:46 by wombat (1932 day(s) old)

Bk Revisited

Well, it's been a really long time, but I broke down and ate at Burger King today. I've blogged about my aversion to Burger King previously.

It was a tough call, I was really hungry and my only choices near the BART station were Burger King and Subway. Is it possible that Jared creeps me out more than the new Burger King?

Posted on Tue, 10 May 2005 17:04 by wombat (1947 day(s) old)

My Productive Day

Well, this week was the beginning of my part-time Lab/part-time startup schedule. Tuesdays I plan on going up to the Lab since I have a regularly scheduled meeting. Here's how my day went:

  • 10 minute drive from the house to BART
  • 5 minute wait for the train
  • 1 hour ride up to Berkeley
  • walk to my building in downtown Berkeley and notice that everyone is milling about in the lobby and on the sidewalk in a bizarre way that resembles old video game characters that get stuck in a confined space and just bounce back and forth between walls. It turns out that a generator blew up and they had to evacuate the building
  • My meeting isn't for a while, but it's up the hill with the rest of the lab, so I go wait for a Lab bus for 10 minutes
  • 15 minute bus ride up the hill, including transfer from external(off-site) bus to internal bus
  • 30 minutes working on laptop on picnic bench
  • 1 hour meeting
  • 5 minute wait for bus back down the hill
  • 10 minute bus ride back to office
  • It turns out the power is back on, but they don't seem confident about it, so everyone went home
  • 10 minute wait for BART
  • 1 hr train ride
  • 10 minute drive from station to home

What a waste of time. Granted I had my personal laptop with me, but I'm trying to avoid using it in situations that could aggravate my wrist/shoulder problems.

Posted on Tue, 10 May 2005 16:56 by wombat (1947 day(s) old)

Toiletology 101

Home repair weekend for me.

I've been noticing our master bedroom toilet leaking for a while, and finally got around to checking it out. The tank-to-bowl bolts were seriously corroded, so I ended up replacing one of those, which was a pain to remove, so I had to cut it off. I also decided to replace the gasket and recaulk the base for grins.

I highly recommend Toiletology 101 if you've ever got toilet problems.

Here's another useful site.

Posted on Sun, 1 May 2005 20:15 by wombat (1956 day(s) old)