So, there have been a few amazing deals recently for various bits of hardware, and I have taken advantage of them, so I now have new toys to play with:
OfficeMax 10-page crosscut shredder, normally $80, on sale for $40.
I have needed a shredder for a while now, especially since the dorms are apparently no longer doing the (paper-only) recycling program they did last year, and I go through a lot of paper waste per week. Shredded paper waste takes up less room and is more secure than non-shredded waste.
APC Back-UPS XS 1300, normally $170, on sale for $110.
I have a UPS already, but it is a small one (around 600VA), yielding less than five minutes' runtime under the load I was putting on it, and furthermore, had no data cable for communications. Plus, the old one will go back home either at Christmas or at the end of the school year to run the server and other devices down there. This new one is much larger (1300VA), giving me 20-35 minutes' runtime, and has a data cable, allowing me to intelligently shutdown my computers if necessary, as opposed to delaying a power-loss halt for x minutes.
450W PSU, guy down the hall selling for $10.
I was formerly running my server (see specs below) on a 135W PSU, which was a little too small. So, I got a bigger one.
CPU, RAM, motherboard combo, guy on Barkboard selling for $145.
One of the difficulties with running a webserver (among other things, but the data draw from my Apache share is the biggest drain of performance) is that every connection made to the box takes memory, and larger files take more memory to transfer. My old motherboard had 384MB of RAM, which was not enough. Trouble was, the board would not support anything more than that, and so I was stuck using a very large (4GB) swap partition to try to cope with the performance load. I have been looking at getting a new motherboard for more memory a while now, and this just kind of fell into my lap. I now have an Asus P4P800SE motherboard with 3GB of RAM across four sticks, and a 3.0GHz P4 with Hyperthreading, and a really nice aftermarket CPU cooler to boot. Granted, the processor is overkill for what my server does, but the RAM is very, very nice to have. Also, this extra power allows me to start thinking about projects to automate my room (see below).
I am done buying things now for quite a while, as that totaled to roughly a week's paycheck, and that is about as much as I budgeted for this semester's discretionary spending. However, with my new motherboard, SATA drives can be added to my wish list.
Also, I have been learning LaTeX, which is an awesome typesetting language, producing wonderfully-formatted documents for my Discrete Structures homework assignments. It is marginally faster than doing the homework and scanning it in to be submitted electronically, it looks much more professional, and is considerably more enjoyable.
3GB physical, 768MB swap (formerly 384MB physical, 4GB swap)
|WD||WD200BB||20GB||IDE||OS disk, swap|
|WD||WD400BB||40GB||IDE||future OS disk, swap (not had a chance to switch over yet)|
|Seagate||ST3500830A||500GB||IDE||BackupPC data directory|
|Seagate||ST3500830A||500GB||IDE||currently hot standby for previous|
450W RaidMax (formerly 135W unbranded)
3.5" floppy, 4X 3-disc optical changer, 52X/24X/52X CD-RW
Room Automation Ideas
The thought is that I have my fan (or multiple fans about the room) connected to a few relays, controlled by temperature sensors, such that an overall room temperature can be selected.
The thought here is similar to that of ventilation, such that my desk light is controlled by both time (or possibly computer activity) and local light level.
At its simplest, this would be a microphone near the door which would listen for knocking and, if no one was in the room, would ask (via Festival or other program) for a message to be left, either as audio recording or on the whiteboard. At the other end of the spectrum, all of that plus a webcam looking through the peephole to take a snapshot of inquirers, and possibly face recognition paired with an automatic door opener for hands-free passage.
I have a nice little plant sitting on top of my computers. It is a happy little plant, and it keeps my air clean. However, plants like water once in a while, and I would like to have a couple moisture sensors in the pot controlling an automatic pump, so all I have to do is refill a two-liter bottle of water every few weeks or so.
The thought here is that, I have a laptop. However, sometimes I want to print something out during class, so I can have a hard copy of it by the time I get back to my room. I could use a flash drive and the labs...but what fun would that be? Instead, I have set up scripts that allow me to print a document to my HP LaserJet II printer by way of my server from my laptop and my laptop only. However, the printer mixes toner or cools the fuser or something that generates noise every five or ten minutes, and it draws a lot of power. Thus, I want to add a little bit into the script that will turn on the printer (again using relays and my Serial Wombat interface device), wait a bit, print, wait until the job is completed, and then turn the printer off again.
Voice Recognition/Voice Output
OK, come on. What computer person has not ever wanted a computer that they could talk to and be responded to in kind? Well, using Festival and Sphinx, or other text-to-speech and speech-to-text engines, I am going to try to get that to work. If successful, I would like to tie it in with some chatbot like A.L.I.C.E., and eventually command much of the above devices via voice, as well as get information and control software in kind:
Me: "Mariko, please turn on the fan in the window and turn off the desk lamp."
Mariko: "Will do, 'lego. Desk lamp off, window fan on."
Me: "Mariko, please play my 'Mood Music' playlist at 25% volume."
Mariko: "Aye. Playing track one, 'Hotel California', by The Eagles, at 25% volume."
Me: "Thank you. Mariko, what will the weather be tomorrow?"
Mariko: "You are welcome. According to the METAR forecast for KCMX for tomorrow, Sunday the 14th of September, 2008, it will be cooler than today, and cloudy with a 70% chance of showers in the afternoon. High around 15 Celsius. Winds will be 4 to 13 knots from the northwest in the morning swinging to the north and increasing to 8 to 15 knots in the afternoon."
Me: "Good night, Mariko."
Mariko: "Good night, 'lego."
Cory Doctorow, despite his many interesting and odd habits, is a fantastic writer. His latest work, Little Brother, takes place in San Francisco in the near future, following a terrorist attack on the city. It follows the story of several young teens who are imprisoned by DHS, and is, in my mind, one of the more interesting and thought-provoking books I have read in a while. It appeals to me on a number of levels, ranging from my love of hacking in various ways, to my interest in security, to my political stance on the bullshit that is our current security policy. Best of all, the book is available for free under the Creative Commons license here in a variety of electronic forms.
What is of even more interest to me is that all (or almost all) tech in the book is already available, and the folks over at Instructables have made tutorials to build or acquire all of the interesting devices that the main character makes use of through the book, here. The bibliography to the book has a large list of books and media that I will be looking at, adding to my list of things to read and absorb into my knowledge base.
Also of note--there is an afterword by Bruce Schneier, one of the leading experts on security and crypto in the world right now, and one by Andrew "Bunnie" Huang, the MIT grad student who first hacked the original XBox.
I have been called paranoid before, and I likely will be again. I guess it is a label that applies somewhat, because I have a higher awareness of security, both real and perceived, than the average person does. As a result of this awareness, I tend to act in ways that do not always make sense to someone who is less aware, or at least, does not see the value in those actions. I do not see myself as paranoid, but rather as the man who knows that the water under him as he walks along a dock has several sharks in it. He is not worried about the sharks where he is, but he also refrains from dipping toes in the water and smearing himself with raw meat. He takes certain basic precautions to prevent injury to himself, and by doing so, indirectly helps others by not drawing the sharks closer to the dock than they usually are.
Cory Doctorow is considerably more aware of security than I am, and I might even label him as paranoid. The book represents something that could potentially happen, but I have enough optimism that I think it unlikely that it will occur. However, the paranoia does not ruin the book, any more than Orwell's paranoia ruined 1984.
In other, completely unrelated news, I have determined a link between slow dancing and a math/science/computer brain, in that I can slow dance. I can think through the steps and moves and figure out where I need to be at every stage of the move, a welcome contrast to swing, where I was pretty much fumbling about until the song was over. It helps that slow dance steps are primarily comprised of binary numbers of beats (4, 2, etc.), each beat corresponds to a change in position, and there is less frenetic activity. Compared against swing's six-beat steps, with only four changes in position over those six, and much faster, choppier beats and moves, slow dancing is something that just clicks in my mind. I can do this! Seriously, by the end of class yesterday, I was as pumped up on endorphins as I was the first time I wrote a 500-line piece of code that, when compiled and run the first time in the code's life, threw no errors and had no bugs. It was a good feeling.
A less-good feeling is the one I get when I realize that I have not had any communications with Brittany since mid-August. She should be back to school by now, but there has been nothing at all... ::worry::
However, I have plenty of things to distract myself with here, so i will not dwell on it too long.
Well, OK, just one page, but I feel rather accomplished thus far. This first page of three took me roughly an hour to do the ink overlay in The GIMP, so I figure it took around ninety minutes from blank page to upload on deviantART. This means that, if I end up doing what I would like to and make each page of the webcomic a full 8.5" X 11" page, it should take around two hours per page, figuring in time to color it. Hmm...maybe should estimate that up to three hours a page--these sketches are pretty sparse. This may very well be a time commitment I can handle, especially as several of the groups I was part of last year are either foundering or disappearing altogether, giving me a little extra time that I can fill.
By the way, I apparently cannot see my own newest deviation in my gallery...I had to do a search on dA to find it for the link above...I hope that gets resolved soon.
So, life here at college is starting to settle down to some level that may approach normal, for some value of normal.
I have a few sketches (done on paper, sadly, so I will be spending time cleaning them up and digitally inking them) to see if I can make a webcomic project feasible. I think I have enough of an idea of what the characters will look like and how they will interact that I can start drawing some basic scenes.
I now have a Freenet node and a Tor relay running on my server, and hopefully will have both up on LUG soon as well. This makes me happy, because those two things, I feel, help out the computing community as a whole, and especially people interested in anonymity.
I have finally updated my iPod with all the new music I got over the summer, so I have been rocking out to Nightwish, Within Temptation, Coldplay, Bon Jovi, and Basshunter, as well as others while riding about campus and Houghton.
Urban Terror is the official game of the CSLC this year, and I am not half bad at it, it would seem. It is also kind of cool to realize I can run it on my laptop at ~90fps...makes me realize that I really do not have all that bad a system.
Yay! So, I had Digital Logic this morning at 08:05 with Dr. Martha Sloan, who was apparently teaching in the days when my dad went here...I was expecting her to be considerably closer to the crypt than she is, but the course will be tedious anyway, as it pretty much covers the basics of Boolean algebra and logic that I learned in my senior-year computer science class in high school. This is mitigated by the sheer number of people I know in the class, so it should be OK.
Then I had Beginning Social Dance at 12:35, which will be an...interesting...class. Throughout high school, I took Spanish as my foreign language, and, as part of those classes, would frequently be taught basic Latin steps... However, we are starting the course with swing. Apparently, my muscle memory, such that it is, keeps wanting to finish the swing steps we learned today with the Latin steps I have from high school. Also, apparently I do not lead hard^H^H^H^Hfirmly enough, as my partners both mentioned to me...
The past couple of days have been pretty bad, weatherwise. Example given being my server crashing two days ago due to its Pentium III 450MHz processor (with heatsink and dedicated cooling fan) reaching (according to the last log entry) 150C. According to my laptop logs, ambient room temperatures peaked around 40C. The problems with my room that cause such issues are that 1) I have a corner room and, as such, can pick either airflow OR blocking of the sun, due to room construction, 2) I have a south-facing window, and 3) our door has a little hallway between it and the room, which is not conducive to air movement. I am not sure my server will come back up, actually, but I have not tried yet because it has not gone below 30C ambient in the room since the crash...
However, the forecast for the next bunch of days (where bunch ≈ 15) states an overall maximum high of 68F, starting tomorrow, so Frondeur (hopefully) will be back online soon.
(Dancing = Fun) = _?
Also correction, Par. 2 Line 5: Latin.
Oh you poor toasted server, woe is you. May I suggest purchasing an in-window A/C unit?
Dancing is sort of fun, I guess...the professor is a little...into it, I guess, but that is life.
Heh, watching too much Serial Experiments: Lain, apparently.
It is back online, no apparent damage done. As to AC...I am not supposed to remove the screen from my window ($20 EOY fine), nor is the window the right size for one (it is around 48" X 60", for the screened part). I did look at the portable, floor-mounted ones which have a little exhaust duct that hangs on a windowsill, but 1) most are in excess of $150, 2) it is the UP--I will only need it for maybe a week total per year, and 3) I would have to tape up/seal the whole window to prevent the hot air from reentering.
...to New Orleans. It would seem that Gustav (Category Two hurricane) is hitting New Orleans in the worst possible way, making the storm surge just about as bad as it could be, shown here. My hopes and thoughts are with New Orleans today.
Turns out Gustav missed New Orleans almost completely, last I heard was going he was going to land farther west, eastern Texas probably. I guess our hope (and for some people, prayers) worked after all.
Apparently, today I had difficulties making intelligent choices. Today, I:
Decided it would be a good idea to remove a machine from a rack before clearing the multitude of cables--both data and power--from the back of it...(no damage thanks to Steve and Dark-Fx.)
Decided it would be a good idea to put a different machine back into the rack without putting the cover back on...(no damage thanks to Steve and the fact that that is an inactive box)
Missed my ride to the Breakers, decided to meet the group there--by bike...(I am in pain from 12.4 miles along Canal Road against an 8-knot headwind in 58 minutes...and deeply indebted to Luke, his Grand Cherokee, and the ride he offered my bike and I back to Lot 21)
Tomorrow will be better.
I've done the ride to breakers before with a headwind.. i dunno, I found it pleasant. It's gorgeous and then some nice rolling hills, especially on the way there.
It was a nice ride, but not when I was under the mistaken impression that the Breakers were roughly as far away from Chutes and Ladders as campus is...
OK, so, I recently acquired (for the nice price of $80, no less) a shiny new toy: a Bamboo Pen Tablet Small Wacom drawing tablet. It has been a great thing--handwriting recognition by CellWriter and the sheer awesome that is non-RSI-prone tablet navigation have been amazing.
I have had thoughts of starting a low-frequency webcomic for quite a while now. However, I dislike the idea of having any physical copies of the updates to that, and thus have held off on following the thought-path that would end in an actual webcomic, due to my lack of ability to draw with a mouse.
The graphics tablet changes that, however, as I now can sketch directly into my computer. (Interesting aside: I suspect that the reason I have no difficulties drawing naturally with the tablet--as many bloggers have stated as a primary issue with tablets, for one reason or another--is that I am not a trained artist. Also, I am used to disconnecting the usual source of feedback [in this case, the image located at tool's tip] from the source of input [the tool's tip] in exchange for a new source of feedback [the image on the screen])
I have, in the past, demonstrated an ability (however limited, and, admittedly, my drawing strength lies mainly in rigid objects and engineering sketches) to draw faces and bodies with relative ease, likely due to my freshman-year high-school art teacher's lecture on the mathematics underlying those parts of a figure. I have even drawn one character I see playing a lead role in the as-yet hypothetical webcomic and posted her image on my deviantART account here.
However, I--as is likely clear--fail at drawing hands. I blame my lack of mathematical model for the proportions of the human hand combined with both my inevitable self-analysis and perfectionism as well as our (humanity's) innate familiarity with (and subsequent resistance to illusions of) our hands--our primary effectors of the world, through which we loose our creative energies upon our environs.
At this point, I have turned to praying to Google (ref. Church of Google) for aides, as well as modeling my own hands and drawing hands in The GIMP (which is more than tolerable with a tablet) ad nauseum for practice, because my characters must have hands...
Suggestions are welcome, either here or over at dA.
All hail eris.
So, $coworker_who_thinks_I_am_part_ninja and I think in different ways. I try to make my profiles as widely-applicable as possible, so they are robust enough to withstand insane changes. He makes his profiles as quickly as possible, so dev time is short.
Now, both are fine ways to go about our work. Lower dev time costs the customer a little less, while a robust profile will survive whatever the customer throws at it (and I have seen some Crazy Shit™).
However, the result of this is that I tend to analyze the system and account for variations, while he goes for the quick fix. My profiles take twice the dev time as his, but they have never failed in the field.
I am currently working on a 3D box-volume project, using two cameras to measure the three dimensions of a regular cardboard box. I have a small desk, so I am using a small (5" X 2" X 3") box as my initial test article, but the system may or may not be used by a large package-moving company to pack their trucks as tightly as possible, so it will eventually have to deal with a wide range of boxes. I am currently having trouble finding one edge, because there is not enough contrast there. I asked $coworker for ideas, and his suggestion was to have an array of tools, each triggering on a different type of box.
This is a problem for me for several reasons:
I like the product to be apathy-proof, because the people who run it are not paid enough to care, so the less I ask the operator to do, the less chance there is that they will fuck with something, break it, and cost the customer both a service call from us and production.
I have a weakness for elegant solutions. I could use a bunch of similar tools, but I would rather come up with a clever way to do it all (and change the baby) with one set of tools. (See my post about J. Random Hacker for the rationale behind this)
His solution would break my intricately-interleaved tools, with one tool positioning another two, which combine in a fourth tool to give a fifth the necessary position and Region Of Interest to get the accuracy I want.
His solution, because it would break my dynamic one, will only work on boxes close to the size of my test article, and will fail outside that narrow range.
The issue comes down to the fact that he is a detail-oriented person who focuses on finishing projects for the sake of them being done, while I am a big-picture hacker who focuses on beautiful, orderly, flexible, robust products for the sake of elegance and much less so on just getting the project out the door.
PS: I handwrote this post, so if you see weird characters, let me know. I am still working out which character sets I need to have trained, and some characters still overlap.
Hi, I used to work at a VGR company, so here's a quick idea that we used for situations like this - it may or may not apply to your particular application, though:
Depending on the edge that's causing issues, simply mount a bright area-light (or wide-angle spotlight) off to the side to create a stronger contrast for the cameras. I've seen applications with lights mounted in 3 or 4 different places, triggered sequentially (with camera captures for each light) - this is incredibly robust, will handle all kinds of box rotations and box dimensions, but requires that there's enough space for all the equipment, enough budget, enough time for all the imaging, and a way to control an I/O port for the lights (RS232 works wonders).
Ah, thanks! Will make the suggestion to the guy who is taking the project from me (tomorrow is my last day for this year).
So, some thoughts, in no particular order:
- Large trucks are fun, especially when they are:
- Going the same way you are.
- Going as fast or slightly faster than the other traffic.
- I scare one of my coworkers, apparently, because:
- I am too quiet, having been compared alternately to a ninja and a cat (/me prefers the cat designation).
- I am too innovative, having come up with a few improvements on how we create vision profiles, including, but not limited to:
- A little, fast contrast-adjusting script which increases or decreases the contrast in an image and limits the range of values in the image based on arguments tot he script, and does so in an average of 2ms/(1600px X 1200px).
- One or two ideas I have had regarding:
- Studies to be done to increase our knowledge of the limits of our software and hardware, enabling us to correct for it or at least acknowledge that there are hard limits.
- Process analysis on a few items, leading to faster project turnover and a marginally better bottom line on certain projects.
- Miscellaneous things throughout the shop, organization and layout mostly, making us more effective in what we do.
- A few methods which replace "magic numbers" in scripts and tools with dynamic, program-accessible means so that, for instance, I can move a tool that has a script that draws something on the image, and the drawings will move to the new position as well.
- EVE has a few weird design issues which I may very well make an entire post on at some point--it has been bugging me.
- Graphics tablets are way too fun and will likely become a controlled substance by the federal government.
That would be all for now, though I am sure I will have more later. C'est la vie, no?