Saturday, July 30, 2005 posted by Michael Lehenbauer
We've been watching people use Copilot all day. It's been very interesting and insightful but also a bit painful. It's really frustrating to see all the different ways people can fail to successfully use Copilot. We've seen people who can't find Internet Explorer, people who type www.copilot.com into MSN instead of the address bar, people who successfully get connected but then don't realize that they're controlling the other person's computer instead of their own... We've seen just about everything. We're learning a ton though! We've filed at least a dozen usablitiy bugs already...
In addition to the frustrations, there have also been a few moments of great triumph. We just had one such moment when a user entered www.copolit.com instead of www.copilot.com. Fortunately, Joel had the foresight to register a number of misspellings of copilot.com... As we watched, I held my breath, wondering if that one had made the list... Fortunately it had, and the session went on without a hitch! Yay!
Saturday, July 30, 2005 posted by Joel Spolsky
Today we're doing some usability testing in the office. I wrote up a full report on my own blog.
Friday, July 29, 2005 posted by Tyler Griffin Hicks-Wright
So, we haven't been updating much lately, mostly because we've all been quite busy rolling out the Fog Creek Copilot private beta. Tomorrow we are having usability testing to see if there are any other interface issues that we need to address in order to make it as easy to use as possible. Thanks to everyone who has participated in the private beta, you have given us extremely useful feedback!
Monday, July 25, 2005 posted by Yaron Guez
Do you live anywhere near Manhattan? Do you want to meet Joel, check out the Fog Creek Office, try out Fog Creek Copilot, and get paid $30 for the "trouble"? Well, you're in luck because we're doing a usability test this Saturday and we need, *gasp*, usability testers!
TechSmith is flying out here to run the test for us, and they're bringing swag, refreshments, and $420 for 14 testers for an hour of your time this Saturday, July 30.
Here's what we're looking for:
Helper-Group (7 people)
- Intermediate to good computer expertise
- Possible experience with PC-Sharing-Systems
- Feel comfortable helping other people
Victim-Group (7 people)
- Novice to intermediate computer experience
- Some Web-Experience
It's going to be easier to find testers for the Helper-Group than for the Victim-Group so preference will be given to those that apply in pairs. So round up a friend and plan on coming on down this Saturday.
Betsy Weber at TechSmith is coordinating the scheduling so contact her at firstname.lastname@example.org to sign up.
Monday, July 25, 2005 posted by Yaron Guez
I opened the private beta to a third wave of beta testers last week. We're now up to 250 users. If you haven't been chosen yet, don't worry, we're planning on going through the entire lot little by little. In the meantime the guys are busy making the service even better. In fact, it’s 9pm right now and everybody's talking about various ways to speed up the performance.
After nearly a summer of focusing on everything that’s not code, I have to say that a part of me misses coding. When I chose to major in computer science I knew I wasn't going to be a programmer. I've always been more interested in the business end of technology than in the actual coding. I chose the CS major because I wanted to be able to understand the field, but also because programming holds my attention more than any other academic activity. Having taken CS 323, the infamous programming course mentioned in Joel's latest article, I found that programming is the one thing I can do for twelve hours straight, and not even notice (nor necessarily mind for that matter). I see the other interns spending their free time coding (I caught Tyler working remotely from his bedroom Saturday afternoon!) and I can’t help but miss that drive you get when writing a great program to keep at it until it's perfect.
Though, I’m certainly busy myself. I’m learning more and more every day. Considering I want to start my own technology related company one day, I couldn’t imagine a better way to spend my summer than by launching a full product for a startup company. It’s such an open ended situation to be in, in the sense that there’s no set list of things for me to do or ways to do them. It’s an exciting opportunity, but it’s also stressful.
I find that I’ve been learning the most from all the little things. The choices I have to make every day that, when run by Joel, get, “you decide; it’s your call,” as a response, teach the most in the end. In more ways than one these choices are just as, if not more, important than the huge decisions that come up only a few times during a project. A big decision is of course crucial, but you can stress over it, get a lot of outside advice, and even sleep on it before settling on what to do. The small ones come up all the time, every day, and collectively steer the entire product over the course of the launch. Since I don’t have time to dwell much over these choices, I have to rely on instinct a lot.
Whether an instinct is right or wrong, or, at the very least, right more times than it’s not, is dependant on base intelligence/business-smarts and experience. You also have to be smart enough to learn from your experiences. Well, I’m confident in my base ability, but for all the marketing experience I’ve had (three past marketing positions) I can’t say I’ve ever launched a product before. So, I’m gaining great experience that will fine tune my instincts for the future but at the same time I can’t be 100 percent sure of those instincts along the way. That’s what makes this job so great but so terrifying at the same time! Meanwhile the whole damn thing is being caught on camera.
So, I’m using my best judgment, doing the best I can, and keeping my eyes open. I just hope that I’m making enough right choices to counteract any bad ones. We shall see.
Wednesday, July 20, 2005 posted by Yaron Guez
<update 7/21> Lerone's response...
BoondoggleFilms: it seems a man cant even casually pose for tiger woods photos these days, without it ending up on the internet
Tiger Woods stopped by the office today to try out Fog Creek Copilot.
He really liked it.
Sunday, July 17, 2005 posted by Michael Pryor
There is a show on Fox called Hell's Kitchen where ten wannabe chefs compete for a chance to run their own restaurant. The host of the show, Chef Gordon Ramsay is a renowned chef and also the biggest jerk with an even bigger mouth you've ever met. If the food is not perfect, he will either throw it at the faux-chefs, tell them they are fat, stupid, and ugly, or close the restaurant early. Half the time, the dish they just spent 30 minutes preparing is dumped in the trash because of a minor imperfection. Then they have to make the filet mignon all over from scratch simply because the score marks from the grill weren't perfectly perpendicular. If a customer comes to the counter to complain that the food hasn't arrived quickly enough, they'll be lucky if they get away without being called a fat pig with bleached blonde hair and a bad silicone implant job. He is not easily pleased.
After a few weeks of being told their food looks like a dog's dinner, and tastes like crap, one of the chefs is told that his preparation is "not bad". The chef is overwhelmed with joy and dances around, gloating over his 'excellent' performance. I wonder if the satisfaction he got from that compliment was a direct result of being told that all of his earlier submissions were inferior. Is it better to demand perfection by rejecting all inferior submissions, and then begrudgingly acknowledge a decent effort, or to encourage the team constantly and try to keep morale high?
The other night at dinner, Joel and I were wondering if we should tell the interns that their modest effort at a real piece of software is actually turning out to be "not necessarily horrible", in hopes of keeping their egos in check. There is still a lot of work to do, but the beta that they have currently put out seems to work "satisfactorily". I'm impressed and amazed at the speed and quality of what they have put together, and my only hesitation is that there is so much work left to do that I'm withholding my enthusiasm so they don't think the hard part is over already. The summer is over halfway finished; hopefully the same holds true for Fog Creek Copilot. If not, we'll erase their subversion repository and make them start over from scratch.
Friday, July 15, 2005 posted by Yaron Guez
I just e-mailed the second wave of beta testers for the private beta release of Fog Creek Copilot. 50 were selected for the first wave, and 100 for the second wave.
The feedback e-mails have been steadily coming in. I've been dealing with most of them while Tyler's been dealing with issues raised in the discussion group. I've also been making adjustments to the website as different problems are found and am in the process of finalizing the last web artwork needed from our graphic designer. Next week I'm working with him to make the user interface for the software look nicer. The press kit is coming along as well. I need to write up a set of press question and answers as well as a press release and a ready-to-use article. I'm also in the process of making a graphical tour using SnagIt and Camtasia Studio from TechSmith. They're both pretty impressive programs and it sure beats the alternative alt-ctrl-PrintScreen.
Things are really rolling along nicely. It's pretty exciting.
Thursday, July 14, 2005 posted by Joel Spolsky
If you're in or around New York City today, you won't want to miss Fog Creek's Open House today!
- Meet our summer interns, the Aardvarks, and see a demo of that copilot thing they've been cooking up.
- Celebrate the first beta of Fog Creek Copilot with wine, cheese, and even rumored chocolate-covered strawberries
- Check out the bionic office in living color before all the expansion-construction chaos begins
- Meet the filmmaker, working on a documentary on software development. You might even be in the movie!
- See the fish, the new server rack, the polarizing film, the treasure chest, etc.
No rsvp necessary.
THURSDAY, July 14, 5:30 pm - 7:00 pm.
Fog Creek Software, 535 8th Ave. (near 37th St.), 18th Floor
A, C, E to 34th Street
Wednesday, July 13, 2005 posted by Benjamin Pollack
After days of frantic debugging, an empty web page never looked so good:
Tuesday, July 12, 2005 posted by Yaron Guez
I selected and contacted the first wave of beta testers. I picked 50 people covering ages 18 to 65 in different industries giving preference to students and those overseas. The beta begins tomorrow at noon and lasts for a week. There will be a second wave selected and contacted tomorrow to most likely begin on Thursday, but we'll play that by ear. A discussion group is set up, as is a support e-mail address.
Monday, July 11, 2005 posted by Benjamin Pollack
Jill, our blackbox tester, is currently in the office pounding Aardvark in preparation for our private beta, and man is she finding a lot of bugs. The overwhelming majority of them are trivial or quick (“Fog Creek Copilot needs a service mark,” “Message text clipped in Windows 98,” “‘Oy gevalt’ is not an acceptable window title,” etc.), but a few of them are proving to be annoyingly massive (“Helper cannot be quit if you disconnect, begin reconnect, and then attempt to quit, but it does quit at any other point” being the one to earn the title “Least Favorite Bug of All Time” (LFBOAT)).
So of course this is a great time to take an hour out of my day and tell you about the Saga of Doug.
When I was in high school, my physics teacher was Mr. Mervis. Physics in high school was really fun, not only because we got to hear one of the senior football players shriek like a little girl when he touched a fully charged Van de Graaff generator, and not only because my best friend John and I made a Rube Goldberg contraption that helped Scooby Doo capture Osama bin Laden (scale models only, sadly), but also because Mr. Mervis would frequently share random stories that, technically speaking, had nothing to do with physics.
One such story involved the girlfriends of a friend of his whom I’ll call Bob, more because I don’t remember Bob’s actual name than to protect his identity. (I could call him Darth Vader, I suppose, but that’s trademarked, and calling him Ishmael would make this story sound fishy.) Anyway, Bob had a girlfriend whom I’ll call Susan, because I don’t remember her name, either. To cut a long story short, Bob and Susan eventually broke up, though Susan continued being friends with Bob and Mr. Mervis. The problem was that Bob dumped Susan for another girl named Susan. This threatened to lead to extremely confusing conversations, such as, “I saw Susan and Susan last night, and you’d never believe, Susan was with George! It’s a good thing Susan was there to keep her in line, or Susan really might have done something rash.”
So Mr. Mervis decided that Susan 2 would henceforth be named Doug.
Susan protested at first, of course, but you know how social pressure works. Soon, everyone was calling her Doug. Short, sweet, and clear. No one would ever confuse Doug and Susan. Not unless he were on heavy drugs, anyway. Problem solved!
Thus was born the Saga of Doug.
Ever since then, whenever I have more than one person named the same thing and it starts getting confusing, one of them gets renamed Doug. I usually dodge this with my own name by jumping from Ben to Benjamin and back again as needed, but for everything else, I can use those four magical letters that trumpet out with all the grace and charm of a crate of sardines landing on a wooden pier in the fog of night. Doug is the ultimate renaming tool.
Why did I tell you all that, you ask? Because I need to you to understand how Lerone, our dedicated filmmaker who would never, under any circumstance, make me look like an idiot on camera unless he happened to have film at the time, came to be named Doug. Basically, he and Yaron forced my hand. You might think that Lerone and Yaron are really distinct, but they both get pronounced basically as “erOWN,” leading to quite a bit of confusion. So several weeks ago, frustrated for the last time about calling out “Lerone” and getting two “What?”s (grammarians, shut up; you punctuate that right), I decided that Yaron would henceforth be named Doug. Lerone, however, in a fit of irony with a side dish of masochism, misheard “Yaron” as “Lerone,” and therefore accepted the title of Doug himself.
There’s been some resistance, of course, such as that I occasionally get called Bert, but overall, I think the change has gone over swimmingly. It’s a rare day when someone calls out, “Hey, Doug, need some more X-rated footage?” and Yaron thinks someone’s talking to him. I’d really have to call the program a smashing success.
So, Doug, I just want to thank you so much for being the source of inspiration for me to call Doug Doug, and I’m sure Doug appreciates your contribution, too. He may may not yet realize it, but we will forever be in your debt.
Monday, July 11, 2005 posted by Yaron GuezI'm no longer accepting applications for the Fog Creek Copilot private beta. I'll contact the first wave of beta testers tomorrow morning via e-mail. Thanks to everybody who's expressed interest, and sorry to those who didn't get the chance to apply.
Saturday, July 9, 2005 posted by Tyler Griffin Hicks-Wright
...it's Saturday night! I'm at work. So is Ben. We're both working away on getting things ready for the upcoming beta. I am personally getting all the CSS work done so that we have a professional looking site. We just got the home page design yesterday, and seeing as we need it up soon, working on the weekend was really the only option. Fortunately, it has come together pretty easily and I have not had to use too many browser hacks to make it work. The design looks really good, better than any of us could have ever come up with. I think I've replicated it in HTML/CSS pretty well, but I will let you all be the judge of that when the public beta comes out. For reference, you can always send me feedback at Tyler (AT) fogcreek (DOT) com.
Because I haven't posted in a while, I thought it would also be good to update my progess on the security features. SSL has been implemented in the VNC protocol, and is almost completely transparent. There seems to be some minor buffering issues that I need to address to make respond just a little quicker, but it's barely noticible. Next, I need to write a small program to create SSL certificates so everything is truly secure, but that won't make it into the private beta due to time.
Have a good evening!
Saturday, July 9, 2005 posted by Yaron Guez
Today was quite a busy day for everybody getting ready for the private beta launch next week. The beta applications have been flooding in. Well, not quite flooding, but there are certainly far more than I expected, and the number continues to rise. In retrospect I should’ve used a form to gather the information. I wrote a perl script to parse all the data (age, target, etc) into an excel sheet, but there was too much inconsistencies in all the different e-mail formatting for it to work right. After dealing with a fourth type of divider (Name:, Name –, Name*, Name\n) I finally just threw up my hands and did all the data entry by hand. I’ll be selecting and contacting the first wave of testers soon, most likely on Monday.
The initial concept art for the website looks great. I worked with Mike Lok last summer when I was a marketing intern for Aileron Group LLC, a technology consulting firm in
So that’s what’s going on around here. It’s pretty exciting, though pretty stressful at the same time.
Thursday, July 7, 2005 posted by Joel Spolsky
“This is when you give up and realize that something that could take you 10 seconds to fix in person is about to become a two hour nightmare during which you'll alienate your family, lose sleep, tie up the phone line while your Auntie Marge is stuck on the turnpike with no gas and can't get through to your uncle to come rescue her, and curse your lot in life. Just because you're a programmer doesn't mean you have to be the help desk for a dozen friends, relatives, and the people in the apartment next door. Does it?”
Wednesday, July 6, 2005 posted by Michael Lehenbauer
Today I added a feature to the website that allows you to email instructions to the person you're trying to help. Because I fear spam filters, I tested the email against gmail, hotmail, and yahoo. gmail and hotmail were no problem, but yahoo filed it away as spam. After looking at the email carefully and failing to figure out what was spammy about it, I ran it through SpamAssassin. It got a perfect score of 0. So I just started tinkering with the email, sending variation after variation until finally yahoo delivered it to my inbox. The problem ended up being that the email contained links to http://localhost/aardvark/ (since I was testing it on my local development machine). Changing the links to http://www.copilot.com/ made yahoo happy.
So basically I spent around 90 minutes tracking down a problem that doesn't even matter because the production site will obviously send emails that link to copilot.com, not localhost... Therefore, I am now blogging about the experience to make it seem less like a waste of time. Enjoy. =]
Wednesday, July 6, 2005 posted by Yaron Guez
UPDATED (7/11/05): The private beta is closed. No more applications will be accepted.
Attention Project Aardvark readers, I’m currently planning a private beta launch of Fog Creek Copilot and over the next few days will be accepting a limited number of beta testers. If you’re interested in using Fog Creek Copilot to help friends, relatives, or even customers, for free, before anybody else then e-mail yaron[dot]guez[at]fogcreek[dot]com with “Private Beta” in the subject line and the following body:
Job Title (or “Student”)
Industry (or University)
Who you think you’ll use Fog Creek Copilot with (friends, relatives, coworkers, customers, etc)
Anything else you’d like to add (optional)
I’ll choose a good cross section and will set up a discussion group, and a feedback e-mail address into FogBUGZ.
Wednesday, July 6, 2005 posted by Benjamin Pollack
Today, the topic is the law of unintended consequences as it applies to modifying software.
Since we’ve now revealed what Fog Creek Copilot is, I can talk in a lot more detail about exactly what I’m up to. At the moment, I’m wrapping up some GUI improvements that have been the source of two weeks of misery for me. As you all know by now, we’re using TightVNC as our code base. We’re diverging more and more from that starting point (we stopped complying with VNC’s protocol weeks ago and will break a lot more in about a week when I change the compression mechanism), but the fact it’s our base means that certain design decisions made for TightVNC affect the design of Aardvark.
One of the design decisions that vncviewer (the TightVNC client) made was an extreme usability headache. Specifically, there is no way to quit vncviewer until the connection has fully succeeded or fully failed—i.e., you cannot abort the connection during handshaking. This manifests itself in the UI by giving you a tiny window that pops up that says “Connecting…” and has a button marked “Hide.” The “Hide” button does exactly that: it hides the window. You may think that vncviewer has quit, since it no longer has any open windows or taskbar icons, but it’ll actually still continue trying to make the connection. This results either in a window popping up unexpectedly several seconds later or in a seemingly random message box telling you that a connection couldn’t be established. Either one is surprising and confusing if you thought that vncviewer had been closed for several minutes. We found this behavior totally unacceptable, so the spec called for displaying a normal window immediately and allowing the user to quit at any time.
Unfortunately, vncviewer had some design decisions that made fixing this extremely difficult. All of the negotiations occurred in an independent thread that could not be stopped once it was launched. No useful feedback came out of the thread (it updated some text, but didn't pass any messages). The viewing window assumed that, if it were displayed, it had a valid connection, which meant that it would complain when it tried to send data to a nonexistent socket.
Just under two weeks ago, I started the process of tackling these issues. I broke up most of the worker thread into chunks handled by Windows messages, and I modified what was left of the negotiation thread to use message passing and flags to let the user quit cleanly. That solved about 50% of the problem. There were a tremendous number of bugs, but I was able to fix the overwhelming majority of them over the next few days without any major problems.
Except one. This heavily modified program, which was for the first time called Aardvark Helper in our internal emails instead of vncviewer, had a tendency of closing the connection during the negotiation cycle. A lot. The problem was that it wasn't easily reproducible. It was certainly pervasive—it happened constantly—but there were no replicatable sequences that would cause the bug to surface. Usually, launching Aardvark Helper and then WinVNC caused a crash, but sometimes it didn’t, and occasionally launching WinVNC and then Aardvark Helper also crashed. Frequently both orders would be fine several tries in a row. Most frustratingly, stepping through handshaking in the debugger fixed the problem. Doing that was the one surefire way to guarantee that everything would work just peachy.
I scoured the way I’d broken up handshaking looking for any clue of what was going wrong. Inconsistent crashing during code that you know is threaded is usually a sign of a threading issue, so at first I thought that the handshaking wasn’t proceeding linearly or was restarting itself at some point. Yet a collection of printfs quickly assured me that my refactored negotiation code was running just fine, even when the program was crashing, which removed that possibility from the table. Unfortunately, this happened running up to CFUNITED, so I couldn't stay focused on just this one bug. In fact, I couldn't even focus on just this one code base: we had forked everything a few days earlier for the show and had a policy of fixing bugs in those builds by any means necessary (which at one point meant adding a line in code that basically read "if you can't open the file, pretend you could and wing it"). So I had a very hard time actually focusing on any individual bug for very long.
Literally the day before CFUNITED, I discovered yet another bug: Aardvark Helper wouldn’t send mouse movements unless the window lost focus and then got it back. I was too busy to deal with this quirk at that point, so I simply filed it in FogBUGZ and figured I’d attack it later.
Yesterday, I got back to attacking the crash-during-negotiation bug. As I toyed for the umpteenth time to see whether I could reproduce it reliably, I was also scanning open issues in FogBUGZ, and suddenly, I realized something. Aardvark Helper wasn’t sending messages unless the window lost and regained focus. The crash normally happened if I launched Aardvark Helper, then WinVNC. When I did that, I usually, but not always, then reselected Aardvark Helper, which meant…
Which meant that reselecting the Aardvark Helper window and then moving the mouse would cause the program to send VNC data during handshaking. Which causes the programs to quit because they get corrupt data during the handshake.
I’d thought to ensure that Aardvark Helper’s window wouldn’t send data when the socket was invalid, but I’d neglected to make a distinction between a valid VNC-like connection and a simple socket connection in the middle of handshaking. Oops.
A mere 25 lines of code later, the bleeding-edge version of Aardvark Helper now has the stability of the CFUNITED build, in single-window form. So now the applications run smoothly and stably, and for the first time in weeks, I can honestly say that neither Aardvark Helper nor Aardvark Host have any known operational bugs. It was a headache getting here, but at least I’m pretty confident now that when we start the private beta in a few days, the clients will be ready.
Tuesday, July 5, 2005 posted by Yaron Guez
Friday, July 1, 2005 posted by Yaron Guez
Project Aardvark presents…
coming soon from Fog Creek Software
Fog Creek Copilot is a service that lets you help your friends, relatives, and customers fix their computer problems over the Internet. Built on a VNC core, Fog Creek Copilot sets itself apart from other remote assistance software and services in its simplicity and ability to work through any home or office firewall without having anything to install or configure. Fog Creek Copilot uses invitation codes to connect a helper to a user in need of assistance in order to fix any problems remotely by “copiloting” his or her computer. Invitation codes are sold as Day Passes that are active for 24 hours from their first use, during which time they can be used as many times to help as many users as needed.
The Fog Creek Copilot service is initiated by the helper copilot, who enters his or her name into the copilot.com website and can then choose to either pay for the
While connected, the helper copilot sees what the pilot sees. Both parties can control the mouse and keyboard as if the copilot is physically at the pilot’s computer. The helper copilot can fix simple to complicated computer problems remotely without having to worry about walking the pilot through any complicated installs or software and port configurations. Once the connection is closed, the download automatically deletes itself. The program can be redownloaded as many times as needed to connect to any other computers so long as the
Fog Creek Copilot is designed to be as simple as possible and will revolutionize the way users help their friends and relatives with computer problems. Connecting remotely to another computer in order to provide assistance has never been easier.
A private Beta is scheduled for mid July, and a public Beta a week later. Version 1 of Fog Creek Copilot should launch sometime in early August.
Friday, July 1, 2005 posted by Benjamin Pollack
I would like to talk a little bit about the Marymount Apartments where we have been staying for the past month.
You know, Duke is not in the best place in the world. Oh, don't get me wrong. I love the campus. The buildings are beautiful, the gardens are serene, the young ladies are gorgeous and charming, and the classrooms are very well wired. Durham, though, is not what most people would think of when challenged to envision the phrase "picturesque city." We're certainly in competition with New Haven and Hyde Park for ugliest fricking neighborhood for a major university.
So you'd sure think that Duke's regulations for student housing would be a heck of a lot more stringent than the Marymount apartment where we live, on the grounds that the Marymount is in a rather posh section of New York City where your biggest threat is a person having a deeply moving philosophical conversation with deaf-mute invisible people in another dimension, rather than getting mugged at gunpoint. But noooooo.
At Duke, I can have as many people in my room as I want, so long as I'm not breaking the fire code. As long as everyone's 21 or over, I can have copious amount of liquor. If I want to let people stay over, I can buy some futons and set them up. So far as I know, the basic rule at Duke, both de facto and de juris, is that as long as you're not breaking the law, damaging property that doesn't belong to you, or disturbing the neighbors, Duke couldn't care less.
But the Marymount is an entirely different matter.
If you want an apartment that does not trust its tenants to bring more than two people to their room at the same time, then I recommend the Marymount.
If you are concerned that having someone over past midnight is a surefire path to sin, the Marymount can protect you.
If you are afraid that having more than six beers (or one bottle of wine) in an apartment shared by four people is a recipe for trouble, then the Marymount deserves your attention.
But wait! There's more!
Worried about people organizing events? The Marymount will ensure you lead a boring life by forbidding you from posting fliers!
Concerned about malicious hackers? The Marymount blocks everything except plain old web and chat, ensuring that you don't have to worry about pesky things like the iTunes, IRC, or even email!
Can't stand foot odors? The Marymount will even protect you from people who are not wearing footwear in the laundry room!!!
A week ago, my roommates and I got busted for considering having a party on the weekend. Not for having the party; for considering having the party. We were hauled down to the office and given cute little xerox copies of pages that are in our handbook that tell us parties and nonstandard religious practices are illegal and punishable by castration. The pages even had our names written on top in bright red marker like when your kindergarten teacher scribbled "Needs work" on a drawing you made by sucking paint out of a bottle and spitting it systematically on newsprint.
Well, I've had it. So you know what? In violation of the handbook, my roommate and I have purchased A CARPET-LIKE OBJECT (a bath mat) and TWO PIECES OF FURNITURE (trash cans), and WE ARE NOT AFRAID TO USE THEM. Moreover, left unchecked, we may buy light bulbs, pencil holders, and (gasp!) FUZZY DICE.
Should we be allowed to continue unchecked? Do we pose a danger to society? Only time will tell. For now, though, we remain the bold rebels in the night, skirting the oppressive fingernail of authority wherever it may scratch.
George Washington would be proud.