Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?
DEAL: For $25 - Add A Second Phone Number To Your Smartphone for life! Use promo code SLASHDOT25. Also, Slashdot's Facebook page has a chat bot now. Message it for stories and more. Check out the new SourceForge HTML5 Internet speed test! ×
User Journal

Journal Journal: Gmail invite giveaway

I have 2 gmail invites and I'm giving them away to the people who post the most amusing stories over at my site ( http://overcaffeinated.net ), in this entry. If you're interested, head over there and post something funny. Please do not post stories in this journal entry. Comments are enabled for whatever commentary you may want to make on this.

User Journal

Journal Journal: Breakfast is in the fridge

I woke up this morning in Ajijic, crashed on a sofa of a hotel room I barely recognized. The buzz in my head gave me a pretty accurate idea of how much I drank yesterday: about 5 metric tons (awesome wedding, Luis!). The other Luis got out of one of the rooms and grunted a hello. Pancho had woken up earlier and left for a swim. Pedro and his wife were still asleep in the other room. I dislodged a hairpin that had gotten stuck to my back (a remnant of a veritable army, which had valiantly held Erika's hairdo upright the whole evening). There was a note affixed to the kitchen wall:

"Breakfast is in the fridge"

We opened the fridge door and -- to no one's surprise -- found a six-pack and a lemon.

User Journal

Journal Journal: /me won Bloggie! w00t! 2

Soo... Bloggies took place this morning. Apparently Cory Doctorow won lots of shit, is into Wackypacks and, if the IRC discussion is to be trusted, sniffs other people's Bicycle seats (but he says it's all innocent and stuff).

We all had a great time. My connection was crap so I kept playing nickname ping pong as the server reassigned me "Overcaffeinated" with extra "_'s" at the end. Word has it that the conversation was being projected on a wall at the SXSW hall, which got us outcasts all riled up (I shouted "titties!").

Everyone who's everyone was there. Everyone who's no one was there. No one who's everyone was there. There was Kitta, Scrivs, Cory, Tom Coates (who took the best essay thing and apparently is rooting for "poof blog of the year" next time) and lots of other incredibly cool people (someone said they saw Dave Shea somewhere, which sent me bursting into fits of fanboyishness).

A merry time was had by all. I won the "Best Latin American blog" thing, which was really cool, and I hope I can make it to SXSW next year. Reputable sources assure me that it is teh shiznit.

User Journal

Journal Journal: I've been published in A List Apart

The online Web Design Magazine A List Apart recently published CSS Drop Shadows, an article by yours truly.

Zeldman turned out to be a pretty cool guy. Answers his email really fast and the editorial feedback is very good. This was a fun experience.

I'm now thinking about the possibility of a followup article.

It's funny.  Laugh.

Journal Journal: The perfect compile

It somehow feels right; sitting here at work late into the night, long after lights-off. Having the whole place to myself provides an excellent opportunity to put on the headphones and indulge in energetic ghost Orchestra direction -- which the guards on the other side of the security cameras most likely find a welcome respite from nasal exploration watch.

I finish the code, take a good, tentatively proud look at the subroutines and upload the whole thing. As I submit the program and keep hitting <enter> to refresh the screen, I wonder if this will be the magic one. The compiler coughs up, sputters and throws a veritable barrage of warnings and two or three severe errors. The perfect compile is still somewhere in the future. Lurking. Awaiting me. Mocking me.

As I recode -- pausing momentarily to break into full-on Director mode or coordinate a particularly difficult tenor clef Solo by the cellist -- I wonder if it will come tomorrow.

I start planning meetings and setting personal deadlines. The calendar sheepishly points out that it's only five days to Valentine's. Automatically, the mind slips into generic-ex-girlfriend mode (all of which have had trouble with her -- the machine -- at some point or another).

- "You can't honestly be serious."

- "Oh, but I am. Just imagine: No warnings. No errors. No weird return codes. Just the goods. Very very clean. And of course, it would run perfectly after that."

- "So it's... what? orgasmic?"

- "I think it would be more like very, very good foreplay."

- "There's no way in hell compiler output can be likened to sexual intercourse."

- "Ahh... Then, honey, you're not doing it right."

User Journal

Journal Journal: I've been nominated for the Bloggies 2004! 1

From my original entry at Overcaffeinated:

I am flabbergasted, exhilarated and positively flolloppy!! Overcaffeinated has been nominated for a bloggie, people!! This is so amazingly cool! I had no idea I'd been nominated! (ok, 'fess up. who did it? Frank? Gabo? Bianca? I'll buy you beer and candy!).

I'm in the Best Latin American Weblog category, a fact that has sparked some controversy because I write in English. Admittedly, I see the point, and it is an odd thing. I'd just like to make it clear that I write in English because my target audience consists mainly of technical minded people of all backgrounds and nationalities. There are people coming over from Germany, Portugal and Italy, to name a few. Since Ich spreche nicht Deutsches, eu não falo o português, and most certainly, io parlo soltanto un piccolo italiano, I'm trusting that these people speak English as their second language, just like me (if they don't, I'd venture a guess that this all must be incredibly boring to them). I love my language and my country. Using English for this site is a decision based on convenience. Ya terminó la diátriba. Gracias por su atención.

The other nominees: eejit (Panamá), alt1040 (Ecuador), 3 demonios enjaulados (fellow Mexican!! sweet!!!) and Por um Punhado de Pixels (Brasil?). Needless to say, I'm flattered to be in such great company. I didn't know their blogs before, but I'm browsing them right now, and they all seem excellent.

As if that wasn't enough, I'm also getting some Zeldman love, baby! (that didn't come off very well, did it?).

I want to give all of you my sincerest thanks. You are all wonderful people (even when you pester me about the lack of comics/updates). Through emails and messages in this site, I've gotten to know some of you a little better. This past year, you've shared opinions and insights with me, recommended movies, made suggestions for this site, and in general, made the Internet a better, cooler place to be in. Thanks. A lot.

No get with the voting. My money's on the 3 demonios site ('cause, you know... you just can't go wrong with a name like Du Veth and a demon stare like this).


User Journal

Journal Journal: Working the factory

Working the factory always seemed to be more about keeping yourself from stapling your fingers than producing goods for general consumption. The first one was an immediate concern, whereas the latter was somebody else's problem.

We made seats. If you ever rode the Greyhound up in the Tri-State Area, chances are you've sat on my workmanship. We covered the whole process, from making the metal into pipes and bending them to build frames, up to upholstering the cushioned frames.

There were no gringos working Upholstery. When you can make 10 dollars an hour flipping burgers you don't care much for minimum-wage jobs that involve heavy machinery. My team leader and I were the only ones who spoke enough English to communicate with the Floor Manager. The task, however, was further impeded by his strong Missouri accent and the ever-present stink of bourbon (right around the corner stood The blue oyster -- "Best Louisville Cooler this side of the '24!"), so Gerardo would make me come over whenever he had to talk to Jake. We'd compare notes later until we worked out some common ground. This fact undeservedly improved my status among the rest of the workers.

I started work at the factory after dropping out of Engineering School. One too many F's in math made a pretty convincing argument that my path in life lay elsewhere. I promptly decided to become a journalist. As it turned out, I would be proven wrong once again. And again. Many, many times. Consistently. Back then, though, there were matters of importance to be taken care of. Like the School Loan money.

Prudence is something you develop with age and patience. I had neither, so I spent most of the day asking people personal questions. The guys eventually took a liking to it, and adopted a fatherly attitude towards me.

Lalo was from Michoacán. He had a huge family back home (no one ever spoke of "México" -- it was always "home" or "mi tierra"). Of all the people working the production line, Lalo was the only one who ever expressed the desire to come back. It was always the same: Sigh. Inhale. Eyes up. Now...close them! -- "I tell you kid, one of these days I'll just up and take all the money I've saved, tell my wife to pack her tiliches and we'll go back there and put a convenience store right around the corner of my parents' house. Now that's good business, you know? people always need the kind of stuff those stores sell. You just can't go wrong with a convenience store. Nooo sir..." -- then he'd go back to stapling cheap leather to square wooden boards (I never did find out what kind of seats those were -- my best guess would be they were those little stools drivers place at the front of the bus).

- "If La Migra ever comes knocking, you just go over to the güeros' side and pretend you're working, kid. You look like them. They should leave you alone".
- "Well, I wouldn't know about that. But you should definitely give it a try, Lalo"
- "Hahaahaaha!! yeah, I reckon I'll do that, kid". Lalo had the nopal painted on his face. He was as mexican as the tortilla and looked the part, too.

Javier was from Jalisco. When he was not being deported he was busy getting back into the country. He spoke of the border as his own personal revolving door. Javier worked the metal cutter with Leonardo, who was something of a phenomenon: the only mexican on the Floor who actually had a greencard.

Leonardo showed up badly beaten one morning. When we asked him about it he just stared at the ground and mumbled "The police. They didn't care for my documents. Just beat the shit out of me. Said if I spoke they'd send me the fuck away. Fucking cops...". No one asked again.

Back then, Bill Clinton was "not having sex" on the big chair at the White House, Desert Fox was a furry quadruped, Ally McBeal was singing to Barry White and the Teletubbies were shooting up the charts. I guess folk would call those "pre 9/11, more innocent times". Truth is, I don't know that anyone was innocent at the time. Most people seemed to me like they had a hidden agenda which usually clashed with mine. Therefore I saw everyone as something of a bunch of jackasses.

I never did know if the police really did that to Leonardo. I don't think it matters. I only know it made sense at the time. In a country that didn't want us there, every figure of authority was suspect, every social role distorted. You didn't ask questions because there was no point in getting any answers.

We just tried to go on.

Internet Explorer

Journal Journal: Run multiple versions of IE in one machine 1

Submitted this but it got rejected. Posted here for your enjoyment:

For years, Web Developers the world over have wanted the ability to run multiple versions of Internet Explorer in one machine for testing purposes. Now, Joe Maddalone has found a way to do just that. The kicker? The only thing preventing the versions from coexisting is a specially named, blank text file. So much for browser inextricably linked to the OS, huh? The method was discovered after analysis of a IE update Microsoft released so developers could test the planned changes due to the Eolas lawsuit.

UPDATE: Conveniently pre-packaged files available here

The Internet

Journal Journal: Method for Improving anchor functionality

Anchors are sweet. But they can be troublesome. After taking a look at modulo 26's current Daily Flight, and recognizing the topic as one of my pet peeves, I was extremely pleased to see their suggestion for improving the anchor functionality. It's elegant and well thought out. However , I think the javascript that they provide could use some improvement.

Andy's code seems straighforward enough, but it has a big problem: It requires the use of two different id's for each anchor. One for the anchor itself (the one that will be used in the href) and one for the visual cue element (the one that contains the arrow / pointing device). This could rapidly become a hassle in a large document that includes links to multiple sections. We'll try to provide a simpler solution.

Our main intent is to make life easier for the designer, not necessarily for the developer (that's what geeks are there for after all, right?). Thus, we won't mind if we make a mess of Andy's nicely simple code. Also, we'll toggle a class attribute instead of an inline style. Because we can (and it scales better).

First off, we eliminate the need for a separate id to identify the visual cue. This allows us to have a standard cue element that we can add to all anchors. It will look like this:

<span class="alt">&#8658;&nbsp;</span>

The "alt" class is my css class for "alternative" elements. It has display:none; set, so it's not rendered by the browser. The ugly number is the right-pointing arrow character "" (you may see a square if your browser is not using Unicode). The other thing is a non-breaking space.

The lack of id introduces a new problem: what if there's more than one <span> inside the element we want to go to?. To solve this, we'll use extra functions provided by the DOM spec to fetch our visual cue element. Instead of trying to get to it directly, we'll get our anchor (for which we already have an id) and ask it for its inner <span> elements. Thus, instead of

cue = document.getElementById(cueId);

we'll have

anchor=document.getElementById(anchorId); spans=anchor.getElementsByTagName("span");

This returns a list of nodes [?] that we can go through. When we reach the one we want (we recognize it by its class attribute) we'll toggle its class by changing the className value. To be honest, I'd rather use


for consistency, but that call is not compatible with ie5.0/ie5.5 for the class attribute in particular.

The finished (and heavily commented) code can be seen here . The end result is that we need only specify an id for the element we're referencing with our anchor. The visual cue is placed in a <span> inside said element, regardless of what it is (it may be a <div>, <h1> or another <span> for all we care) and our call looks like this

<a href="#anchor" onclick="toggleAnchor(this);">...</a>

Notice that we pass the this keyword as parameter. That gives the script a reference to its caller, allowing it to read the href attribute of the caller to get the id of our anchor.

To see the script in action, go to the permanent original location of this rant here (because Slashdot does not allow this sort of thing going on in its pages).

Thanks galore to Andy Arikawa for his fine method. Hopefully you'll find this addition to it useful.

--- permalink for this entry at Overcaffeinated


Journal Journal: The Software Developer Responsibility

From my latest entry at the Overcaffeinated Site (not technical):

Securing Code is hard. Despite the image of coolness and glamour that Hollywood has presented to us for quite some time, the actual task of programming decent, secure code (or breaking half-assed, insecure code, for that matter), involves a lot of late night-coding, documenting and is generally seen as a low priority in project planning. Recently, this field got a lot of attention through a major shakedown: The Blaster worm propagated wildly and hit a rather large bunch of computer systems Worldwide.

Now, Computer Security is a touchy area. Although not everyone is expected to keep up to date with the latest news in bugtraq or closely monitor all security patches released by Redmond, we techno-geeks were able, up until now, to attribute most of the security related problems to the interface between the chair and the computer. That is, The User. Most virii (the Kournikova virus comes to mind) require some sort of action by the dim witted user in order to spread. We all know how that works: You receive an attachment promising to show you the boobs of * insert hot actress here * in full, glorious detail. You just have to double click on the harmlessFileNotAVirus.exe file, and you're set!

Well, not this time. Connected to the interweb? -- you're vulnerable. Running any version of Windows? -- you're vulnerable (although the worm only attacked win2000 and XP, all versions have the vulnerability). Using the default color scheme in Windows XP? -- you're vulnerable (well, not really, but it's so fucking ugly you should change it just to be on the safe side). As computers all over the world scanned port 135 in a colossal game of tag, we could just patch and watch in disbelief as coworkers running unpatched machines started screaming that the freaking thing had hit them. Before I knew what the payload was, I called home and warned my family not to connect to the internet (yes, my home computer was unpatched -- I'll live in shame until I commit seppuku to cleanse my honor).

While technically the damned Blaster thing was a worm and not a virus, it did have the ability to install arbitrary software on a home user's computer. THAT IS BAD.

Without getting into the technical details of this, I think this event should mark a change in the perception software developers must have about our own work. It's about time we stopped making half-assed excuses and blaming the users for our lack of foresight. It's about time we started demanding security checks to be accounted for in the planning stages of our projects. The cries of But there will always be insecure software! should be met with Only if we keep writing it!. You hear me, fellow developers! Take the reins of your destiny and bitchslap the damn thing! Cleanse the Bugs! Tame the Gotos! Free the Mallocs! Get fucking jiggy with it!!!

Out now.

User Journal

Journal Journal: How the comic is coming along 2

The comic has been keeping me awfully busy lately, so I haven't been very active in Slashdot. Quick update for those who may have been wondering:

It's been growing steadily, and things are working out ok. Currently there are about 350 visitors a day (I keep my detailed statistics apart from the awfully inaccurate Xtreme tracker thing I have on the comic page). I've been doing this for 6 and a half solid months now, and the response has been very good. Considering I haven't actually done any advertising, it's nice to see the numbers grow. Just today the first Gb of the month was spent in 4 days, which fills me with a certain pride of sorts (last month 4 Gb were spent, the previous one 3 Gb, you get the idea).

The comic and site have proven to be a great hobbie that allows me to do stuff that involves more creativity than assembler debugging (which I do a lot of at work), although it can also become a burden at times. I'm really happy with how it's working and I'd love to be able to make this into an extra income thing. I'll have to see where it goes. I plan on updating my journal here a bit more. I've reviewed a few more movies and ranted quite a bit, but I've been keeping it in my site. Thanks for reading.


Journal Journal: Movie Review: Donnie Darko

- I made a new friend.
- Real or imaginary?
- Imaginary


Me and some friends at work are starting to make a point of getting together to watch movies on Thursdays. Movie Thursdays is what we call them. We're so clever.

Donnie Darko is a weird flick, make no mistake. Here we have this fucked up kid who happens to be a paranoid schizophrenic whose room gets squashed by a falling airplane turbine while he's outside listening to an evil giant rabbit who's predicting the end of the world. And that's where it starts.

This movie could very easily fall into being a big budget episode of The Twilight Zone were it not for the little things. The nicely balanced camera panning/corny 80's soundtrack sequences that are not done anymore just when you expect them again, the weird spiral paint on the jet turbine, the big, loud, desperate FUCK by Drew Barrymore and the little details that don't quite fit and leave you wondering. These small things add to the whole experience. The One-Eyed Evil Giant Rabbit helps too. Overall, this is a nice, slightly upsetting movie.


Journal Journal: It seems I'm becoming a permanent moderator 3

It's been quite a while now that I've had access to moderator points. Lately, though, it seems I'm getting mod points every week. I spend them, and sometimes two days later, I get them again. I find this interesting.

My moderation habits are good, I guess. I do try to stay away from highly modded posts and mod up the ones that stand at 1 or 2, so I read most threads in a discussion. I also have never had an "unfair" metamod, although I have upmodded a lot of very controversial comments. I also focus more on the positive modding. Not because of the "rules" but because they're much more worthy of mod points I think. The question here is: Is anyone else experiencing something like this? I haven't seen anything in Taco's journal about this, but it does seem weird.

User Journal

Journal Journal: Cold black coffee.

This morning at work I was drinking coffee and enjoying it immensely, but then something came along that distracted me long enough for the coffee to get cold. When I turned my attention to the cup again, it still had some coffee in it. Cold coffee. You know that feeling of dread you get when you just know that the next sip won't taste good at all, and yet you just want to go ahead and taste it one more time, thus ruining the whole experience of that particular cup of coffee? I felt that.

Black coffee should be strong. bitter and threaten your tongue with permanent damage. It should fume and when you get close to it, inspire respect. Throwing it on your lap should spell doom and second degree burns at the very least. Cold black coffee is none of these things. It is harmless, tastes like watery sand and doesn't inspire respect. It is but a memory of what it once was. You know it won't live up to your mental image of how it should taste in your mouth. You know it was great at some point, but that point has come and gone. Yet, you're strangely tempted to give it one more try. I've felt this way about some relationships in the past.

I didn't take another sip of that cup of coffee. I just dumped it and let it go. The taste in my mouth was much better than anything it could have offered me.


I think I'm learning.
User Journal

Journal Journal: Doctors in Mexico and webComic listings.

Brother's visiting from Tabasco (Southeast México). He's a Medical Doctor, you see, so the government rewards him for all that studying by sending him to a dinky little town in the middle of nowhere to be the town Doctor and receive a paycheck big enough to cover his costs of travelling back home from time to time, provided he does it by foot and stops eating for a week. He has to stay there for a year. I guess the upshot is that when you meet an MD in México (and we have some of the best) there's a good chance that he not only knows how to mend an artery, but also has gone through a good deal of jungle with a machete. Tough guys, doctors.

For the ones following the comic, the Top Web Comics list has been reset, and we're getting nice ratings, so keep voting. I'm working on a bunch of extras to offer this month, including three really twisted guest comics by friends who are not webcomic artists. I'm also working on the wallpaper I promised and on translating some of my short stories. Social life's been picking up lately, so I haven't really had a lot of time to work on this stuff, but I plan on fixing that this week. See you.

Slashdot Top Deals

It is much harder to find a job than to keep one.