Digital Sidhe's Random Scribblings.


View:User Info.
View:Friends (actual people) | Communities | All of Them.
View:Calendar.
View:Memories.
You're looking at the latest 25 entries. Missed some entries? Then simply jump back 25 entries.


This Journal is Mostly Friends-Locked

Hello and welcome to my journal. If you're new here, you should be aware that nearly everything in this journal is locked so that it can be viewed only by people on my friends list. The stuff that's publicly available is almost entirely "my professional face"; it generally has to do with computer issues ranging from security alerts to writing about web development, coding, and anecdotes from my consulting work. (Those latter are all carefully anonymized.)

If you're not on my friends list and wish to be, please email me and let me know: what your LJ username is (so I know who to add), and where I know you from (face-to-face meeting, that mailing list we were both on back in 1994, whatever). If I don't already know you, the chance that I will add you is very small. No offense is intended, but the private parts of this journal are private for a reason.


Monday, June 16th, 2008

Subject:Calling All Flash Gordon Fans! The Internet Needs You!
Time:9:35 am (16/Jun/2008 - Mon)
Mood: hopeful
 
On our way home from Nihonmachi yesterday, [info]feyandstrange and I passed through Civic Center Plaza, where we saw the Asian Art Museum. I don't mean that we stopped in to look at any of the art inside the museum; I just mean, "We noticed the museum itself, from the outside."

This is what we saw:

MING!

This needs to have some kind of Flash Gordon thing happen in front of it. This seriously needs to be the backdrop for some kind of absolutely mind-blowing photo shoot or YouTube video or something like that. Due to lack of sufficient time, costumes, and insanity, I don't think Fey and I are the right people to make this happen.

Internet and Lazyweb, help! The right people for this are out there somewhere. Can you find them?
Curious? There's 6 commentses on this. Wanna sound off? Say something!.

Tuesday, June 3rd, 2008

Subject:Californians: Remember to Vote Today!
Time:9:14 am (03/Jun/2008 - Tue)
Mood: helpful
 
"Didn't we already have our primary, back in February?" Yeah, we did our presidential primary back then. Now we get to do the primary voting for things like... House of Representatives and a pile of state and local initiatives.

If you rent, or know anyone who does, you probably want to get your ass to the polling place and vote No on 98; Yes on 99. (The easy mnemonic: "We hate ninety-eight! Ninety-nine is fine!")

Personally, I think this is also a great time to vote for someone like Cindy Sheehan or Shirley Golub in the Democratic primary race for the 8th Congressional District. We all know Nancy Pelosi will retain her seat, but a decent amount of support for more liberal, progressive candidates might remind her what city she's representing, and get her to shift her position a little further leftward.

If you usually vote progressive, and want the SF Bay Guardian's clip-out guide, you can grab just the data you really want — this will fit on a single piece of paper when you print it out, instead of wasting one page on the Guardian's logo and a page header.

There's also some scary stuff happening with redevelopment in Bayview-Hunter's Point, and an opportunity to require that appointees to the SF Public Utilities Commission actually have some expertise or experience in the field instead of just being political hacks. I know this election seems like a surprise, but if you can make it to the polls today, please do!

I'm leaving this post unlocked, just so people can easily refer their friends (and even friends' friends) to that hyperlink.
Curious? There's 2 commentses on this. Wanna sound off? Say something!.

Friday, April 11th, 2008

Subject:50 Algorithms, #6: The Fibonacci Numbers
Time:9:00 am (11/Apr/2008 - Fri)
Mood: geeky


This exercise will show some of the differences between doing something using iteration (a standard "for" loop) and doing it recursively (using a function that calls itself).

Background

The Fibonacci numbers are a series made popular in the 1200s by Italian mathematician Leonardo Fibonacci. To form this sequence, you start with 0 and 1. Each successive number is selected by adding the last two together. So the sequence looks like:

0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55...

(For example, 3 + 5 = 8. Then 5 + 8 = 13, then 8 + 13 makes 21, and so on.)

The starting zero is considered the "zeroth" Fibonacci number; the 3rd Fibonacci number is 2.

Problem

Write a function that takes a single integer as its argument, and returns the corresponding Fibonacci number. For example, fibonacci(4) should return 3; fibonacci(6) should return 8.

We solve this problem two different ways: First by using recursion, then by using simple iteration. Along the way, we take a long, hard look at how a recursive algorithm works. We compare the time and resources required by each version, and come to some conclusions about the value of recursive Fibonacci-number generators as a teaching tool in college classrooms. )

Curious? There's 5 commentses on this. Wanna sound off? Say something!.

Thursday, April 10th, 2008

Subject:50 Algorithms, #5: Luhn Algorithm
Time:9:03 am (10/Apr/2008 - Thu)
Mood: geeky
 
Problem

Implement a Luhn checking algorithm. First, provide a function that takes a number as its input, and determines whether or not the number passes a Luhn check. Next, write a function that takes a number as input, and returns the proper "check digit" for that number.

Discussion

The Luhn algorithm is used to ensure that a number has been entered correctly, without accidentally dropping or doubling a digit, or transposing two digits. It's an easy way of making sure that you didn't accidentally make a typo in your credit card number when filling out a web form.

The Luhn algorithm is described pretty thoroughly on Wikipedia, so I'm not going to waste my time replicating their work.

We implement a Luhn checker in JavaScript, then run into a cute and subtle bug when we try to do the Luhn check-digit generator. We admire the bug's cuteness, then squish it dead. )
Curious? There's 1 comment on this. Wanna sound off? Say something!.

Saturday, March 15th, 2008

Subject:Finrod Back In Operation
Time:11:25 am (15/Mar/2008 - Sat)
Mood: accomplished
 
Finrod is now back in operation. The GothPunk.com(Munity) and Freak Nation Web sites should be back in service, along with all email accounts and mailing lists. As proof that these things are true, this post should have a little blond elf with a blue ribbon as its mood theme icon, rather than a "broken image" icon.

If you still don't see a very accomplished-looking elf even after reloading this page, or if you notice any other problems with any Internet services in the gothpunk.com, freaknation.com, or silmemar.org domains, please let me know immediately. Thank you.
Wanna sound off? Say something!.

Subject:Finrod Having Trouble
Time:11:01 am (15/Mar/2008 - Sat)
Mood: annoyed
 
Finrod is here and mostly running, but his network card keeps dropping packets. I'm going to try replacing it. Finrod will be up and down intermittently until further notice.
Wanna sound off? Say something!.

Subject:Finrod Is Down Until Further Notice
Time:9:29 am (15/Mar/2008 - Sat)
Mood: geeky
Music:"Spybreak!", by Propellorheads
 
Finrod, the server that handles Freak Nation, the GothPunk.com(Munity), and other major Silmemar Web and email operations, is now down. I am in the process of moving Finrod to his temporary hosting facility, where he will continue operating while the Silmemar phone line and DSL connection get migrated from our old apartment to our new condo.

While Finrod is down, all web pages, email accounts, and mailing lists in the gothpunk.com, freaknation.com and silmemar.org domains will be unavailable. Since my "little blond elf" mood icon images are hosted on gothpunk.com, they will be "broken image" icons until Finrod is back up.

During this service outage, email sent to accounts on Finrod will be queued for later delivery on our secondary mail server.

I expect to have Finrod back online and fully functional at his new location no later than noon, Pacific time. I will post further updates here if time permits.
Wanna sound off? Say something!.

Monday, March 10th, 2008

Subject:Network Outage at Silmemar; Finrod, Galadriel Unavailable
Time:2:33 pm (10/Mar/2008 - Mon)
Mood: geeky
 
Speakeasy, the broadband provider that serves Silmemar, is currently having a network service problem in San Francisco. As a result, all Finrod and Galadriel services are currently down. This includes all email and Web pages hosted at the GothPunk.com(Munity) and at Freak Nation.

You can tell that these sites are down, because my mood icon looks like a little "broken image" link instead of a little blond elf with mirrorshades that have green digits scrolling through them. You'll be able to tell that we're back online when the mood icon image comes back.

Unfortunately, Speakeasy has no ETR at the moment. I'll post more when/if I get any information.

Edited to Add: Apparently the connection came back up around 4:30, then went back down at 5:00. It is now back up again as of 5:46; we'll see if that remains the case.
Curious? There's 3 commentses on this. Wanna sound off? Say something!.

Sunday, March 9th, 2008

Subject:Alert: G-Archiver Is A Trojan; Do Not Use!
Time:2:37 pm (09/Mar/2008 - Sun)
Mood: annoyed
 
There is a program out there called G-Archiver. (I am not linking to it for reasons which will shortly become clear.) this program claims that you can use it to back up all the mail in your Gmail account onto your own computer.

Indeed, making backups is a laudable goal. However...

I'm not sure if G-Archiver will successfully back up your Gmail or not. That's not important. It will email your Gmail username and password to the author of G-Archiver. The whole sordid tale of how one programmer discovered G-Archiver's hidden secret (and the juicy things he did to monkey-wrench it) are told in a recent post at Coding Horror, a blog about programming that I read and trust.

One commenter at Coding Horror points out that if you want to back up your Gmail account, you can use Thunderbird in IMAP mode to do it. There's no need to muck around with some really sketchy-looking software. (Search for "Thunderbird" to find the comment.)
Curious? There's 2 commentses on this. Wanna sound off? Say something!.

Tuesday, March 4th, 2008

Subject:50 Algorithms, #4: Convert Rectangular/Polar Coordinates
Time:2:27 pm (04/Mar/2008 - Tue)
Mood: geeky
Music:"Darker (MCd)", by Assemblage 23
 
Despite being a coding ninja, I can still use pirates in my examples. And as a result, my example has enough cool points that I don't need to LJ-cut it. Everyone likes reading about pirates!

Problem:

Write a pair of functions: one that converts rectangular coordinates to polar ones, and a second that converts polar coordinates to rectangular.

Discussion:

Rectangular coordinates are the standard "x, y" coordinates you probably remember from high school math classes. (The phrase "Cartesian coordinate grid" or "Cartesian plane" might also come to mind.) Things like longitude and latitude are another form of rectangular coordinates. Saying that San Francisco is at "37° north, 122° west" is just saying it's at x = -122, y = 37.

But for some things, it's better to use polar coordinates, which are expressed in an angle and a distance. For example, when following directions on a pirate map, you don't see stuff like "Go three fathoms east and then four fathoms north." Instead, you'll get "Go five fathoms northeast, then turn hard aport and walk another ten paces." For this sort of navigation, you need to be able to handle "5 units at 45 degrees plus 10 units at 135 degrees".

In fact, it turns out to be easier to just convert rectangular coordinates into polar ones, manipulate those as needed, and then convert back, than to find a way to do that addition purely on a Cartesian grid. Hence the usefulness of the following functions. (People who work with polar coordinates generally use the Greek letter theta: θ to represent "angle". Instead of x and y, the coordinates are given in θ and r for "radius".)

Solution:

function rect2polar(x, y) {
     // Use Pythagorean Theorem to get radius.
     var rad = Math.sqrt((x * x) + (y * y));
     var theta = atan2(y, x);
     // theta is now in radians; convert to degrees.
     theta = theta * 180 / Math.PI;
     return [ theta, rad ];
}

function polar2rect(theta, r) {
     // theta is in degrees, but Math methods want radians. Convert it.
     theta = theta * Math.PI / 180;
     var x = r * Math.cos(theta);
     var y = r * Math.sin(theta);
     return [ x, y ];
}


Analysis:

Each function returns a two-element array, which the calling code will have to unpack on its own. The square-bracket syntax in JavaScript allows us to construct anonymous arrays without bothering to give them names. (You could do the same thing in Perl using parentheses; in PHP, you'd have to do return array(x, y).)

Sample Code:

Here's how we could use these functions to actually find Captain Trigg's buried treasure:

// start from zero
var point_x = 0;
var point_y = 0;

// go five fathoms northeast
var moved = polar2rect(45, 5);
point_x += moved[0];
point_y += moved[1];

// now ten fathoms northwest
moved = polar2rect(135, 10);
point_x += moved[0];
point_y += moved[1];

// so, where are we?
alert("You're at " + point_x + ", " + point_y + "!");

// Quickest way to have gone there was...
var dirs = rect2polar(point_x, point_y);
alert("You should have walked " + dirs[1] + " units at angle " + dirs[0] + ".");


So, who says trigonometry is boring and useless, when it can tell you that you just need to turn 108.4 degrees (counter-clockwise from east, or basically, 8 degrees west-northwest) and go 11.18 fathoms? Why follow that dead-and-buried salty dog's convoluted directions, when you could just take the shortcut to the doubloons? Yarr, matey!
Curious? There's 3 commentses on this. Wanna sound off? Say something!.

Monday, March 3rd, 2008

Subject:50 Algorithms, #3: Minimum Value in a List
Time:12:01 pm (03/Mar/2008 - Mon)
Mood: geeky
 
This one is short enough that I don't think it needs an LJ-cut. Hey, everyone, look: Some PHP code! See, it isn't really that scary, is it?

Problem:

Write a function that takes an array as its argument, and returns the smallest (or largest) number in the array.

Naïve Solution:

function min($arr) {
     $ret = NULL;
     foreach ($arr as $val) {
          if ($val < $ret || ! isset($ret)) {
               $ret = $val;
          }
     }
     return $ret;
}


Demonstration of Bug:

Note that this function is written in PHP. Because of the way PHP handles automatic type conversion, this code has a subtle bug in it...

$data = array( 10, 20, 30, 'fred', 40);
print min($data);


This will print zero, not 10. This is because 'fred' contains the letter 'e', which means it gets evaluated as a floating-point number, and then gets determined to be zero because it doesn't have any digits.

(Nor should this be taken as a condemnation of PHP; you can cause similar type-conversion bugs in pretty much any language that does automatic type inference for you. There are many valid reasons to condemn PHP, but I chose it for this example because I could easily hyperlink to the documentation of exactly how it turns strings into numbers — and that documentation is a point in PHP's favor.)

Corrected Version:

function min($arr) {
     $ret = NULL;
     foreach ($arr as $val) {
          if (is_numeric($val) && $val < $ret || ! isset($ret)) {
               $ret = $val;
          }
     }
     return $ret;
}


There. Now the function only considers array values that are numbers (or that make sense when considered as numbers). This means that if you pass in an array like ('fred', 'barney', 'wilma', 'betty'), you'll get back null instead of zero. On the other hand, if you pass in (10, 30, 0, 7, 13), you actually will get back zero, and it will be the correct answer.

Conclusion:

Note that PHP has its own built-in min() function (as well as max(), its logical opposite). In my informal tests, the built-in function ran nearly twice as fast as the custom version.

When working in an interpreted scripting language (like PHP, Perl, or JavaScript), the built-in functions will naturally be faster than the stuff you write yourself. Therefore, you should use them, unless they don't do what you want... PHP's built-in min() has the same bug as my first version. (Of course, since they documented it, they might claim "it's not a bug".)

Also, neither JavaScript nor Perl has this sort of function already built in, so it'd make sense to write equivalent code in either of those languages. (Doing so is left as an exercise for the student.)
Curious? There's 6 commentses on this. Wanna sound off? Say something!.

Saturday, March 1st, 2008

Subject:50 Algorithms, #2: Binary Search
Time:12:11 am (01/Mar/2008 - Sat)
Mood: geeky


Here's an explanation of one of the simplest types of optimizations you can perform. It makes a great introduction to issues of performance, and to the way programmers talk about efficiency.

Problem:

You have a list, or array, of sorted values. (For example, a directory listing, alphabetized by last name, or a dictionary of words.) Write a function that takes one argument, and searches the array. If the argument is found in the array, your function should return the item's index; otherwise, return -1.

Make your function perform as fast as possible, even if the array is thousands of items long.

Assume that the values are in $haystack.

This gets us into a fun excursion through a "Really Naive Implementation" (also known as "How not to do it!"), and then into Big O Notation. We eventually find that splitting a list in half — repeatedly — allows us to search it *wayyy* faster. We also compare armadillos to coyotes, and find that logarithms are cool. )
Curious? There's 14 commentses on this. Wanna sound off? Say something!.

Monday, February 18th, 2008

Subject:50 Algorithms, #1: Is It A Palindrome?
Time:8:10 pm (18/Feb/2008 - Mon)
Mood: geeky
Music:"Coma White", by Apoptygma Berzerk


Now that I'm all nice and lubricated from my previous two posts, it's time to start up my other "50 Things" project. Since [info]straytenebrae was the one that suggested this to me, I just have to start off with...

Is It a Palindrome?

(This was a question he asked me when I interviewed at his workplace a few yonks ago. He and I and [info]holyhippie all had some fun with it.) Tooltips are for those who aren't geeky, but are interested anyway; they define common computing terms for those who are wondering "What does 'string' mean to programmers, anyway?"

Problem

Write a function that takes a single string as input, and returns a Boolean value depending on whether the string is a palindrome.

Discussion

A couple of commonly mentioned palindromes in English are "A man, a plan, a canal, Panama!" and "Madam, I'm Adam." These two alone are enough to make it clear that the standard "is it or ain't it a palindrome?" rule(s) in English don't really care about punctuation. Or capitals, or any of that crud. It's just a strict "letters only, case-insensitive" thing.

Since Captain Holy Hippie and I already beat this one to death in Perl in my previous entry, I'll reiterate the Perl solution, then also solve it in PHP and JavaScript so that I'll have done enough work to count.

I'm putting the actual code behind a cut, because I know that only a few of you care, and with three different solutions, this gets kind of long. Future posts, with only one code chunk, may not get cuts. Just so you know. )

Curious? There's 12 commentses on this. Wanna sound off? Say something!.

Monday, February 4th, 2008

Subject:Finrod SpamAssassin Upgraded
Time:8:31 pm (04/Feb/2008 - Mon)
Mood: geeky
 
Users of Finrod, I am pleased to announce that I've just upgraded our copy of SpamAssassin from version 3.1.0 to 3.2.4. The new version comes with updated spam-detection rules, better adapted to find the spam of 2008 (instead of the spam of 2006).

I've already run a few tests and verified that mail is still being received just fine. You shouldn't notice any changes, except for less spam in your inbox. However, if you do notice any troubles at all, don't hesitate to contact me immediately and let me know.
Wanna sound off? Say something!.

Friday, February 1st, 2008

Subject:Front-End Web Engineer Wanted
Time:10:03 am (01/Feb/2008 - Fri)
Mood: hopeful


Since one of our front-end web engineers will be leaving the company shortly, we have an opening that we'd like to fill if we can. If anyone is interested, I will try to shake loose an official job description or wanted ad. What follows is my own, very unofficial take. If you can fill this job, or you know someone who can, please let me know.

We need someone skilled at front-end layout and page coding. This person doesn't need to come up with the designs and layouts (that's the Art Department's job), but does need to implement what they come up with — take it from mockup or comp to finished product. It needs to work in Firefox and IE (versions 6 and 7), pull data from the back-end as needed, and be maintainable and extensible.

Critical skills, roughly in order of importance:

  • HTML and CSS
  • JSP and JSTL
  • browser differences and bugs
  • JavaScript
  • image manipulation (presumably in Photoshop, but if you can slice, dice, and tweak images in some other program, I don't think we care what you use)

This person needs to be able to work with source control (we're converting from CVS to Subversion; using a GUI front end such as TortoiseCVS is fine), and work with remote developers in Eastern Europe (don't worry, they speak English; knowing Ukrainian is not a job requirement for US employees!).

Now, since I've recently posted things about how dissatisfied I am, I need to say a little bit more about my employer.

On an objective level, iWin is not a bad place to work. My recent gripes and grumbles are subjective; I've basically hit the point where I don't want to work here any more. A few important points:

  • I've been here for a little over 18 months now. That's a long time, in the web development industry.
  • Their back end is Java, and I don't like Java.
  • I actually might be able to advance my career here, if I moved more into a back-end role, or possibly even if I just stuck at it longer on the front end. But I don't want to do it that way.
  • The company is solvent, is over 5 years old, and is now coming out of a slump. They've been profitable before, and they're about to be profitable again.
  • A person in the position I'm describing will not be able to put their creative stamp on the iWin web site. But they will have at least some input into the design, and have some opportunities to add their ideas to the mix.

So, that's the down-side. The up-side is considerable:

  • iWin understands work-life balance. They do not encourage us to work overtime, come in on weekends, or any of that nonsense. At the end of the day, what we do is make games. Not even intense, high-energy games; we do casual games. We don't feel that the job should be full of stress.
  • The pay is good. There are also full benefits: medical, dental, retirement, etc. (No profit-sharing. Bonus plan not guaranteed, but often happens anyway. I forget if we get vision coverage, because I have no use for it.) The deductible on medical is something like $15 per office visit, and a pittance on prescription drugs.
  • The company provides lunch every Friday afternoon, and generally throws a party about every three months or so.
  • The people are pretty fun to work with. This is the first job I've had in quite some time where I actually wanted to invite some of my co-workers to my parties.
  • You'd be working under the man I call "General Wāro" in my "Tales of the Ninja Coder". This man is a very good manager, and one of the best bosses I've ever had. In fact, trying not to leave him short-handed is one of the main reasons why I'm taking the risk of leaving this post unlocked — if one of my friends' friends might work out, I want them to be able to see this.

All in all, iWin is a great place to work. It's just not the right place for me any more.

Note that this is not attempting to fill my own position; this is the other front-end person, who's worked here for over three years. Her last day is fast approaching.

If you can do this, or you know someone who can, please let me know or direct them here. Thanks.

Curious? There's 2 commentses on this. Wanna sound off? Say something!.

Tuesday, January 29th, 2008

Subject:Recent Finrod Email Downtime
Time:3:53 pm (29/Jan/2008 - Tue)
Mood: annoyed and geeky
 
It appears that, starting just after 9:30 this morning, someone started running a dictionary attack against Finrod (the GothPunk/Freak Nation mail server). (I have no reason to believe that we were targeted deliberately. The attack appears to originate from a cable-modem user in central Oregon, most likely someone whose machine has been "zombied" and used to launch automated attacks in the hope of finding open relays to send spam through.)

At about 9:45, the volume of attacks became so high that the POP subsystem — the part that allows people to check their email — stopped responding. Since my own email program was set up to use one of the new services that I've recently been testing, I didn't initially notice the failure.

As a result, Finrod users were unable to check their email from about 9:45 until about 2:15 p.m. We were still receiving email throughout this interruption, it's just that users were unable to check for their email until I got things working again. All your mail is safe and sound, in your inbox where it belongs.

I'm sorry for the inconvenience, and for the excessively long downtime.

In case you were wondering why my "new dictionary attack blocker" didn't stop this one, that's simple: My new blocker was designed to stop dictionary attacks using SSH (a way of logging in on the command line, for geeks); this is the first time we've gotten hit by a POP dictionary attack (which attempts to check for email as every possible user). System administration is a never-ending battle, eh?
Curious? There's 8 commentses on this. Wanna sound off? Say something!.

Wednesday, December 19th, 2007

Subject:Soliciting Personal Reviews of Sonic.Net
Time:3:59 pm (19/Dec/2007 - Wed)
Mood: geeky
Music:"Candle", by Skinny Puppy
 
Soon, [info]feyandstrange and I will be moving. At the same time, I think I may as well migrate away from Speakeasy to some other provider. I've been quite happy with Speakeasy, but since their sale to Best Buy becomes effective before the end of January, I think I'd better get out while the getting's good. (We all saw what happened to LJ's service after they got sold to Six Apart, right? The same principles apply.)

I'm strongly considering Sonic.Net. But before I make the leap and start asking them to hook me up at my new abode, I'd like to find out if any other Bay Area geeks have experience with them. So: Anyone who's tried a Sonic connection, please let me know how it went! In case you want to know about my skills and needs:

I run my own servers (Web, email, DNS, FTP, etc.), and these servers include my primary email account and my professional résumé/portfolio website. I absolutely require at least two static IP addresses and a ToS that allows me to run my own servers. I also need at least 99.9% uptime, and 99.99% would be much better. (Five nines, I do not demand. If I'm down for an hour or two per year, I can live with that.) I need outbound bandwidth almost as much as inbound, so the usual "6 gazillion yottabits down, piddly 128 Kbps up" connection will not work for me.

On the other hand, I don't need any technical hand-holding. I basically call tech support when the connection goes down, to report that it's done so. That's all. Nor will I use up any email addresses or hosting space on my broadband provider's machines. All I need is the bandwidth.

I'm leaving this entry public, so if you know a Bay Area broadband user with useful information, feel free to refer them to this post. Thanks!
Curious? There's 8 commentses on this. Wanna sound off? Say something!.

Tuesday, December 18th, 2007

Subject:Happy Birthday to the Roadknight
Time:11:22 am (18/Dec/2007 - Tue)
 
Here's wishing [info]roadknight a very happy birthday, and many, many more.
Wanna sound off? Say something!.

Saturday, November 24th, 2007

Subject:Ready for the Postfix Migration...
Time:6:23 pm (24/Nov/2007 - Sat)
Mood: geeky
Music:Tin Omen (Skinny Puppy)
 
Very soon — possibly some time tonight; definitely by Monday morning — I will be switching Finrod over from Qmail to Postfix. I've taken every possible precaution to ensure that this will go smoothly and without a hitch. But there are always unforeseen problems.

If you notice any problems having to do with sending email to, or receiving email at, accounts hosted on Finrod (basically, any gothpunk.com or freaknation.com accounts or mailing lists) please let me know as soon as you can. If it seems like emailing me might not work, try phoning me. Or just post a comment here; you don't even have to be a Livejournal user to do so. (If you post as "Anonymous", please sign your name in the body of the comment so I know who the heck you are.)

Here's hoping everything goes smoothly.
Curious? There's 1 comment on this. Wanna sound off? Say something!.

Monday, November 19th, 2007

Subject:Note About the Sore Throat
Time:2:26 pm (19/Nov/2007 - Mon)
Mood: sick but helpful


This is a general message for anyone who has (or might contract) the sore throat that's been going around lately. Quoting from the journal of someone who got it a couple of days ahead of me:

Phase 2 is apparently nausea.... Warning! If you have a sore throat now, be very very careful with yourself to try to avoid the nausea phase.... Also, I hear this comes back with a vengeance if you relapse.

Take care of yourselves, people. I now feel much better about my decision to skip work today. Also, I note that this thing seems to be awfully infectious. If you have it, do your friends and co-workers a favor, and stay home.

Curious? There's 6 commentses on this. Wanna sound off? Say something!.

Thursday, September 20th, 2007

Subject:Leaving Livejournal
Time:8:33 am (20/Sep/2007 - Thu)
Mood: sad

First of all, I'd like to apologize for the great length of this post. However, I think it's significant enough material that I don't feel like LJ-cutting it. I hope you'll read it all, and consider it deeply.

We're Leaving Livejournal. Soon.

It seems Livejournal and Six Apart are slowly self-destructing under the weight of their own incompetence and inconsistency. [info]feyandstrange and I have decided that we will no longer be supporting Livejournal; we cannot, in good conscience, give them our money any longer. Nor will we support them by creating any new accounts (such as the ninja coder account I'd been planning on starting up, once I get the flaws worked out of the metaphor that it rests on).

My account is currently paid up until January 12th; Fey's is only paid until October 2nd. Once our current paid accounts revert to free accounts, we'll probably be using other services instead. To the extent possible, we'll try to make sure that either people can find our new blogs, or the posts from the new blogs are automatically sent back to LJ, or both. Fey is looking strongly at GreatestJournal; I'm likely to set up three different blogs: a "professional" (i.e., technical) one on my professional site; a separate blog on its own domain for the ninja coder; and maybe a third, personal, blog on GJ or some similar place.

Our Reasons for Leaving:

Over the past year or so, Livejournal has committed a number of basic blunders in relating to its own user base, and the frequency of these blunders is increasing. At the same time, they've now started doing things that make it very difficult to see them as "well-meaning but incompetent"; instead, they now appear to be actually duplicitous. Specifically:

The Strikeout
Presumably, you already know about the Great LJ Strikeout of 2007. 'Nuff said there, right? If you don't know about that issue, none of the rest of this will make much sense.
Removing Strikeouts
This one hasn't been particularly noticed: In the aftermath of The Strikeout, LJ made a change to the way it displays deactivated user accounts: they no longer appear with strikeout lines through them. Instead, they simply fail to have a little "head and shoulders" icon next to them.

To make this even more confusing, this new style takes effect in posts and comments, but not on userinfo pages. Since the lists of friends on one's userinfo page already lack icons, those names still get strikethroughs.

Huh? This seems like nothing so much as a rapidly-deployed and poorly-tested hack, the sole intent of which is (apparently) to make it harder to tell at a glance whose account has been deleted.
Later Suspensions of Users for Fan-Art
In August, Livejournal had another apparent panic attack, and deleted the journals of a user who had posted a drawing of Severus Snape giving Harry Potter a blow job, and another user who re-posted the same image. This touched off a new round of explanations in [info]lj_biz (and also spawned the "How will you be suspended from LJ?" meme on Memegen). However, it didn't actually clarify things at all; some users took to writing open letters to LJ/SA, just to ask for clarifications about the various vaguenesses and inconsistencies in their policy statements.
Bad Attitude by LJ/SA Employees
Apparently Livejournal employee [info]burr86 managed to really, seriously piss off a lot of people with a poor attempt at a joke in [info]efw at about the same time. The post containing the attempted joke has since been deleted (and I'm not sure by whom). According to other rumors, there were two other LJ employees treating users cavalierly in the same thread — or maybe some other thread.

It's hard to be certain about any of this, partly because the thread's been deleted, and partly because LJ has been pretty bad about keeping anyone informed. (Not that we'd necessarily believe them anyway.) Which just leads into another problem...
Failure to Talk to Users; Inconsistency When They Do
This one works on two different levels: First, users whose accounts are deleted are apparently not contacted or given any warning first. They're given no opportunity to remove the offending material; instead, many of them find out that their account has been deleted when they attempt to login and can't.

Second, Livejournal and Six Apart also fail to communicate in any useful way with the rest of their users. After the first Strikeout, we had to wait five full days before we got any acknowledgement from LJ that anything had happened. In the weeks since then, we've gotten various muddled and incoherent "clarifications", none of which seem to clarify things enough.

"Enough" can even be defined pretty easily: things would be "clear enough" if the average LJ user had a reasonably firm idea of what they could post and what they couldn't. Yes, you could say that the users who got banned most recently were not quite "innocent", because they were testing the boundaries of what was and was not acceptable. But that's just the point: someone had to go and test those boundaries, because we can't figure it out from all the conflicting things LJ keeps saying. Even when they claim to be clarifying, they state that they will not change or update the Terms of Service to reflect the new policy, so now we know that the ToS isn't worth the electrons it's written on.

Indeed, it seems they're now actively claiming that they will be following policies that are in direct contradiction to statements in the Terms of Service.
"Child Pornography" Account Deletions
I've put "child pornography" in scare quotes because the image that started the fan-art suspension dust-up was a drawing of Severus Snape going down on Harry Potter. So, not only was it a drawing, it also depicted a pair of fictional characters. No actual people were harmed in the creation of this work.

Livejournal employees have repeatedly claimed that the work was child pornography, and that the law specifies that even drawings are included. The legalese they've quoted appears to be from the 1996 Child Pornography Prevention Act, which was very definitively struck down by the Supreme Court in Ashcroft v. Free Speech Coalition, 2002.

So LJ's legal reasoning is incredibly suspect, at best.

This doesn't mean that they aren't allowed to remove whatever they want. They're perfectly at liberty to decline to get into a nasty First Amendment lawsuit, and they're also at liberty to decide that, "Well, maybe we might get into such a suit, but not over a picture of Snape blowing Harry. I mean, come on, if we're going to spend that much effort, can't it be for something with literary or artistic merit, like Baz Luhrmann's Romeo + Juliet?"

But they aren't saying that. They're saying "this stuff is kiddie porn, we're legally obligated to remove it". They either don't understand the law even as well as I do (i.e., they're painfully ignorant), or they're just plain lying.
Lack of Deletions for Other Causes
While LJ/SA carry on about supposed "kiddie porn", a large number of users say they've made reports about harassing behavior, hate speech, incitement to violence, threats of violence, and other such problems. These reports have apparently gone completely unaddressed. (One commonly-mentioned addition to the list I just gave is "pro-ana communities", which are also allowed to flourish. I'm leaving them out, because it's not at all clear that those would involve any legal problems. Incitements to kill all homosexuals, however, are another story.)
Possible Reports to the Government
This one is open to interpretation, but: according to one thread in LJ's attempt at policy clarifications, "We report child pornography to the NCMEC, as required by law." Since LJ appears unable to tell the difference between fan art and actual child pornography, it seems reasonable to assume that users whose accounts were deleted for Harry Potter fan art may well have been reported to the authorities.

This is completely intolerable. Fey and I will not be a party to such behavior. Indeed, this is one of the reasons why I'm strongly considering removing my LJ account completely after giving people some time to get used to where my new blogs are.
Brad Fitzgerald Is Leaving
Now, it's not like [info]bradfitz is a major reason for anyone to stick around. And it's really just coincidence that his stock options (aka "Golden Handcuffs") vested at just the right time to drop a cherry on top of the sundae that Six Apart has been scooping up lately. But, still... if Brad thought the place was worth staying at, he'd stay. The fact that he's leaving doesn't necessarily "speak volumes", but it does make a statement.

All that was as of a few weeks ago. While I've been writing, editing, and polishing this essay, new developments have suddenly taken place that simply add to the overall "sinking ship" feeling.

Much More Recent Developments:

Had you heard that they've canned Barak Berkowitz? Okay, maybe they'd never actually put it in quite those terms (and certainly not in a press release). But we've come to realize that we have to read between the lines in everything Livejournal and Six Apart say, so here are the most noticeable things:

  • They recently posted in [info]lj_biz to mention it. Not directly, of course; just a two-line blurb mentioning "some news about the leadership at Six Apart", and providing a couple of links to Mena Trott's blog and to the press release.
  • As you can see if you followed the "posted in lj_biz" link above, the LJ staff turned off comments on that particular [info]lj_biz entry. Or at least, it looks that way... but it turns out, they didn't initially post it with comments disabled: first it garnered a few (very snarky!) comments, and then LJ staff locked the post and deleted the comments. I do not have words to express the lameness involved in that. Thankfully, someone had the presence of mind to grab a screen capture...
  • The LJ staff also didn't bother to mention Mr. Berkowitz' departure in [info]news. In fact, they more recently posted another piece of news in [info]lj_biz, namely the fact that they're adjusting their Omniture site-metric system to start observing roughly 5% of pages on the site, including people's (public only) journal entries, friends pages, comments, and so on. As far as I can see (as a somewhat privacy-conscious web geek), what they're doing really isn't heinous at all. But then, why not post openly about it in [info]news?
  • In fact, what they have posted in [info]news lately is pretty much fluff, when there are real issues going on. Quite a few commenters on that post have pointed out exactly that.
  • Some of them also tried to point out other things, but couldn't, because some of their comments were screened for unclear reasons.

Enough is enough. We were prepared for things to be a little rocky, for a little while, after the acquisition by Six Apart. And we waited, to see if things would get better.

They're not. They're getting worse.

And they've gotten bad enough that, for Fey and I, leaving is not simply a matter of convenience, or of "I suppose we could find better/cheaper service somewhere else". It's a matter of conscience. We cannot, in good conscience, support Six Apart's policies any longer. We certainly can't give them any more money, but even having an active Livejournal account boosts their usage numbers, and so gives them some measure of support. So don't assume that our journals will continue to be here for much longer.

So, Where Will We Be?

My guess is, some combination of GreatestJournal, InsaneJournal, and our own personal domain(s). I'm currently investigating blogging packages that I can host on Finrod.

We will keep you all posted on wherever we decide to go.

Curious? There's 28 commentses on this. Wanna sound off? Say something!.

Monday, August 27th, 2007

Subject:Warning About Bad Restaurant
Time:1:33 pm (27/Aug/2007 - Mon)
Mood: bitchy
I've heard a saying about customer satisfaction: "If a customer's happy, they'll tell two friends. If they're unhappy, they'll tell seven." Well, that was the old days. Now, if a customer's unhappy, they'll post about you in their blog.

So, let's talk about Tempura House, on 2nd Street at Natoma. I went in and ordered a salad and some sashimi. This should be an order that takes about 30 seconds to prepare, especially since the salads are pre-mixed and sitting in little Styrofoam cups. But, no... First, they lost my order. Then they appear to have lost my order a second time (and it sounded like some other customer's order was missing, too.)

Finally, they got me my food and I brought it back here to my desk to eat.

The salad, of course, is a little pre-mixed green salad. It's exactly what you'd expect; nothing to write home about, but nothing wrong with it.

The sashimi, on the other hand, is flat-out, without a doubt the worst sashimi I have ever had. It is cut into chunks rather than slices, and I'm not sure the meat is really sashimi-grade. Ugh.

Prior to this, the worst sashimi I had ever had was the time I tried making the stuff myself. I cut the meat too thick, and didn't really have it chilled quite enough. This sashimi has basically the same problems, except much worse — and without the excuse I had. (And I wasn't charging anyone fifteen bucks for it.) And my second try was much better. And even my first try was very noticeably better than what I was just served at Tempura House.
Curious? There's 2 commentses on this. Wanna sound off? Say something!.

Saturday, August 18th, 2007

Subject:Silmemar Downtime: Roughly 4 Hours
Time:9:05 am (18/Aug/2007 - Sat)
Mood: geeky
Last night, at about 4:45 am PDT, Silmemar's DSL modem lost its connection with our broadband provider. I woke up shortly before 9:00 am this morning, discovered the problem, rebooted the modem, and all is now well.

If you attempted to access any of our web sites during that time, you would have gotten an error message of some sort. If someone tried to send email to your account hosted on Finrod (i.e., any @gothpunk.com or @freaknation.com email address), the mail would have been queued on our secondary mail server (generously hosted by [info]holyhippie — thank you!). That mail should even now be on its way to your inbox, and will likely arrive before 10:00 am.

I apologize for any inconvenience.
Curious? There's 4 commentses on this. Wanna sound off? Say something!.

Friday, August 10th, 2007

Subject:The Pros and Cons of Tazo Green Ginger Tea
Time:10:39 pm (10/Aug/2007 - Fri)
Mood: devious

Since I was out at the Lucky 13 tonight, my throat is pretty badly ripped up. (Shouting over huge amounts of ambient noise is simply not my friend.) So I'm having a nice, piping hot cup of Tazo Green Ginger tea, with copious amounts of lemon juice and honey.

And, having had lots of this tea back when I had a sore throat, I feel compelled to post about the pros and cons of this tea...

Pro:
Green tea, with ginger infused right in the tea bag! Yum!

Con:
Every single f***in' bag comes in an envelope that says on it:

"There is a garden overlooking the Yangtze River gorge where an elderly man contemplates his life while sipping a cup of Green Ginger. Perhaps you would like to join him."

I cannot possibly express how incredibly tired I am of the image of this old geezer sitting there watching the water go by, sipping his tea, and thinking: "My life. Hmmmm... there's not a whole lot to contemplate there. You know, maybe I'd have more to think about when I look back on my life if I hadn't spent so goddamn much of it just sitting here, sipping my fuckin' tea! Hey, you know what? Maybe I should have, at the very least, tried visiting the Huang He River or the Xijiang River. Or, you know what? Maybe I could have spent some of my life sipping some other beverage, like oolong tea... or even something completely other than tea, if I'd been feeling really adventurous."

Do you suppose Tazo could have coughed up the extra dough to maybe put a variety of different stupid scene descriptions on their tea-bag envelopes? Then at least I wouldn't have to be bored to tears by the wasted life of this poor Chinese man every time I wanted to drink a cup of tea. Instead, there could be a whole cast of characters:

  • There is a Zen garden in Kyoto where a wise monk sips some Green Ginger as he meditates on the nature of enlightenment.
  • In Beijing, a businesswoman starts her day with a refreshing cup of Green Ginger tea. You can drink the same tasty, invigorating blend.
  • Just one whiff of our Green Ginger tea will set your spirit at ease and your mind at peace.

There's all kinds of places they could have gone with this, including to the friggin' teahouse of the August Moon. Instead, all we get is one lousy description about an old guy on the Yangtze River gorge. Puh-leeze.

And let's not even get me started on the really annoying question that constantly bedevils my copyeditor-brain: That final sentence, about "Perhaps you would like to join him." Should that be a statement, or should it be a question? I think, if I really had to make a decision, I'd go with the option Tazo chose: it's a statement. "Perhaps it will rain." "Perhaps you would like to join him." "I don't know why she swallowed the fly. Perhaps she'll die."

But every so often, especially late at night, I wonder: Wouldn't it work at least as well if phrased as a question? "Perhaps you would like to join him?" No, that doesn't work. But maybe they should have just rephrased it entirely: "Wouldn't you like to join him?" As marketing-speak goes, I think that would actually be stronger — it includes a "call to action", rather than simply being a statement.

I am obviously spending far too much mental effort on this. And that just adds to the con.

Pro:
<sips some tea> Okay, that's some yummy stuff, right there.

Curious? There's 10 commentses on this. Wanna sound off? Say something!.

Tuesday, August 7th, 2007

Subject:Finrod Users: Possible Downtime Alert
Time:8:30 am (07/Aug/2007 - Tue)
Mood: geeky
Although all systems are currently operational, I have noticed a brief problem with one of the Ethernet switches at Silmemar. I plan to replace that switch when I get home from work this evening, but in the meantime, there is a chance that it could fail unexpectedly.

If this happens, all connections to Freak Nation and the GothPunk.com(Munity) will become unavailable, and my little elfy mood icons will all become "broken image" icons instead. If you receive email with an @freaknation.com or @gothpunk.com account, the incoming mail will be stored on our secondary, backup mail server, and will eventually be delivered to your inbox once I get the switch replaced.

Once again: right now, all is working properly. This is simply a warning in case it fails during the day.
Wanna sound off? Say something!.



You've been reading Digital Sidhe's Random Scribblings.

Digital Sidhe's User Info. Digital Sidhe's Friends. Digital Sidhe's Calendar. Digital Sidhe's Memories.
You're looking at the latest 25 entries. Missed some entries? Then simply jump back 25 entries.