What is this?
This is a website. Specifically, it's a website where you can turn lights on and off, and watch it happen via a webcam. Over time, it has evolved such that other people, even those without controllable stuff, have added cams as well. You can also control other things that are
available on some cams, like controllable vehicles, music, as well as being able to listen live to several cams. Most of the regulars are available to chat, either via the website or the chatroom. Other than being an amusing hobby, the site serves no real purpose, financial or otherwise.
Is this for real?
Yes, it's all real. All the cams on the page are real cams updating in realtime. All the controllable lights and other devices are really being controlled from the webpage, and you should be able to observe the change in realtime from one or more of the cams. Occasionally a prerecorded slideshow is put up as a cam, but it will be clearly labeled as such.
How long has the site been running
The site, although far more primitive than it now is, began in August, 1997
Why is the site called DriveMeInsane.com
Originally the site was called Spy on Paul Mathis. In June 2002, CFOX Radio featured my site on their weekly Geek of the Week segment. While discussing the site and the various features, one of the DJs sarcastically commented "What is this? Drive Me Insane dot com?" Since I didn't have a working domain at the time (the site was accessed only via ip address), it sounded like as good a name as any and it happened to be available, so I obtained the name and themed the site after it.
What are the specs on the server
The server is a linux machine running CentOS. The processor is an 8 core Intel Xeon X3470 running at 2.93ghz. It has 2 gigs of ram and a 250 gig HD. It is connected to the Internet with a 100mbps connection and has a monthly 5TB data transfer limit.
How much bandwidth does this need/use?
The server has a 100mbps pipe to the Internet although it typically uses about 1-2mbps on average at any one time. The individual cams are hosted off the network of the cam owner and available bandwidth varies depending on the owner's individual internet connections.
How do the lamps work?
Historically the lamps have been controlled in one of several ways. They are controlled either via a PC parallel port relay, X10 module, or Raspberry pi controlled relay.
How many visitors does the site get?
The statistics page will answer this question with more detail, however, on average, the site gets from 2000-10000 visitors a day.
How much would this cost to duplicate?
The startup costs vary depending on what you want online. At the minimum, you'd need a computer, a camera, and an internet connection, two of which you probably already have. Cams cost as little as $10 for something simple and cheap and can cost over $100 for something of better quality with pan/tilt/zoom functions built in. You can build a relay controllable lamp for about $10 or buy a X10 startup kit for $40 which includes two modules. How much you spend on hosting ultimately depends on the traffic requirements. I spend $100 a month on the main server, but I also use it for other things besides just the site.
How much time did this take to set up?
While the site has been in service for more than 17 years now, the amount of time spent getting it functional has been relatively minimal. As far as the actual tech goes, I have probably spent less than 200 hours
over that period of time on the actual development, assembly, and functional software to make all of the various devices interact with the internet. A much larger timesink has been the effort required to implement abuse prevention and to ensure the site remains functional with a large number of users. I figure I might have spent 2500 hours on those pursuits over that time period. However, that does not mean that the end result has been an efficient development process. I have re-coded the back-end (and front end) of the site on several occasions as the site has evolved, and had I had the gift of foresight, many of those repeat efforts could have been avoided, and the time to create would have been perhps 20% of the actual time, if not less. HOWEVER, dedicating 500 hours to a project to turn a few lamps on and off and let the world see it, back when the expected audience would be less than 50 a day, and for the most part all people you already knew, there just wasn't the motivation or necessity. During the latest rewrite, I have programmed it with the capability to scale to handle up to 4000 users at one time, or about a million visitors per day. Obviously, this would be too much for a single server, but the software is meant to scale and load balance over a large number of servers, if necessary. I've done this not because in my wildest delusional dreams I would ever expect that this would be possible, but to CYA just in case it ever does, and to not have to scramble at the last minute to make some pointless changes just to watch the whole thing melt down anyway.
Are all the cams in one house?
No. Originally all the cams were located in my house. But when I moved the first time, I started letting other people put cams on the site as a means of spreading the bandwidth out a bit more. Bandwidth is no longer an issue, but now the site has evolved into a cam portal more than just a personal cam site.
Can we upload music?
Although it was allowed in the past, at present, that option is currently unavailable. There are a few reasons. First off, back when that option was available, the webserver was located at my home, on the same network that my music player accessed locally. Now the server is located offsite, making access to the files by the player a combersome one at best. In
order to facilitate this, it will be required to first upload the files to the server, then transfer them to my home network. More importantly, I no longer live alone. With kids in the house all the time now, the selection of music that I can allow to be played has to conform to something reasonably family friendly. Certain choice songs by Johnny Rebel, David Allen Coe, and the Southpark movie soundtrack are no longer acceptable. This means I will have to pre-screen everything uploaded to be sure it's not going to be a problem, and this will have to take place before you're able to add it to the playlist. Obviously, this delay will be annoying at best. So will I ever allow music uploads
again? Perhaps, but there's no estimated timetable for it, and it's not something I'm working on, nor do I plan to anytime in the near future.
Anything related to Big Bang Theory
Yes, I know about the Big Bang Theory episode in question. No, I did not get this idea from the episode,
as this site and all of its features predate the show by many years. Yes, I realize the strong resemblance to features on this site. The starting
segment managed to reference X10, internet and public control of the various features, music control, and RC Cars. I suspect that my site MIGHT have
inspired that segment, but I have no proof of that. Also, they weren't actually using X10 modules, and the control of the RC Cars was much smoother than would be likely over any type of internet connection. The BEST latency that my research has shown would likely be possible with a decent video feed would be
250ms, from action to visible response. That assumes a very high speed connection at both ends, using UDP and no buffering. A mouse or joystick based
interface would be required as well. Possible, certainly, but not likely. On the other hand, they're supposed to be geniouses with lots of free time on their hands, so who knows.
How is the insanity level calculated?
The insanity level is a function of lamp activity. It goes up slightly whenever someone clicks ON a lamp. As time passes, it slowly goes down. It should normally hover around 0 unless several people play with the lights for a few minutes or longer. Getting it to 100% will be a timeconsuming challenge.
And no, it has no actual basis on my current sanity, or lack there of.
How did you change my webpage?
to the webserver every 10 seconds asking for updates. On the server side, I or other admins are able to queue
requests for your client, which will be grabbed by the next update and relayed to your browser. Your browser
will then execute that command. There are several different commands. Some will make text on the page change,
like when I make the text grow to point size 60 or the number of viewers updates. Others will make physical
changes to the page such as reloading it with another url or opening a iframe on the page to display something.
Did you know that you were linked to from [INSERT SITE HERE]?
I am well aware of every site that links to me, from the large sites and services like slashdot, reddit, stumbleupon, etc, to the individual forum, myspace, and facebook links. I have a realtime,
updated listing of everyone who is currently on the site, and what site they came from to get here. Anytime I spot a referer link I haven't seen before, I typically check it out (if possible), and in the case of forums or personal
links, I'll usually include a brief "Thanks for the plug" message, along with answering any simple questions that have been asked about the site in those forums. Rest assured, if you followed a link to get here, I'm well aware of it
and the potential impact it's going to have. HOWEVER... if you didn't follow a link here and instead got here because you read it in a newspaper/magazine article, or heard it on the radio or saw it on TV, I'm interested in hearing
Are you planning to install any more devices/cams/features/etc?
I am constantly adding new stuff. I am also constantly removing stuff, either because it's broken, no longer compatible, or no longer viable. Some things also are only available certain times of the day,
certain times of the year, and/or when certain people host them. Often many of the features are still possible, but some relatively major change in either my life (like a residential move) or a rewrite of the site software precludes older features from functioning currently without first investing a significant amount of time restoring them.
What's up with the screams?
That is what I call the "scream machine". One of the computers reads messages out loud and emits a couple dozen different sound effects based on various actions by users on the site. The scream is a notification that someone sent a message. I don't make this feature obvious because some obnoxious individuals decide to spam messages to make it scream more often, and after several screams in a short period of time, it gets disabled for that user, and I therefore don't realize there are incoming messages, fail to answer, and people think I'm ignoring them. So to combat this, the site will automatically block users that spam many short (or long) messages in a short period of time.