Profile cover photo
Profile photo
Melina M
Be happy. It's simpler than you think.
Be happy. It's simpler than you think.

Melina's posts

Post has attachment
What are some of the funny ways people misspell your name? I have to laugh at the emails I get sometimes. The usual variants include Melinda, Melissa, and Melanie, but I've also gotten ones as odd as Melanuo, and just this afternoon I got Meliss ia (bonus fact: the author of the email misspelled his own name in the subject line!).

Post has attachment
This stone staircase looks so light and ethereal I wouldn't even want to step on it. What a fabulous mashup of ancient materials and modern engineering and design!

Post has shared content
"Compliance" is more fluid than one might think at first. Thank you, +Trey Harris, for your amazing creativity in protecting people and their privacy.
How can the civil service resist? Here's how I did it.¹

I ran the campus-wide (non-departmental) email and login system for UNC Chapel Hill in the mid-to-late nineties. At one point, to settle a lawsuit, the governor's office (not a court) ordered us to release the list of all 21K+ email addresses to an entity that I won't name, but will just say was well-known for mass harassment of individuals on the early Internet.

I knew I had to comply, but I also knew I didn't want to just hand over those email addresses to be spammed and harassed. (Anti-spam technology at the time was very primitive and fairly ineffective.)

So i read the order carefully: it said I had to provide all the email addresses on our system, in a "single document", with all email addresses "in the same format". It also specified that I had to have a "consistent delimiter" between the addresses (preventing me from, for example, giving them a dump of all the usernames without spaces between them, leaving them to figure out what to do with alexjanehhardy8frigglejreed3htreysfeinstein...)

If I'd wanted to be coöperative, I'd have just pulled the list, put it in a plain text file, one email address per line, and emailed the plaintiffs the file. But I did not want to be coöperative. Yet, I did have to follow the law and my orders. So, what to do?

Some background on the data: our addresses were in the form of <username>, where <username> could be up to 8 characters; the mean username length was ~6 characters. So a file containing all those 21K addresses plus a delimiter would be around 441,000 characters, or about 430 kilobytes. That was a reasonably large file to send in an email attachment back then, but not an absurdly large one. We weren't using floppies anymore (and that file would even have fit on a 3.5 inch floppy with space to spare).

But my machines were in the old central-computing machine room, containing the machines where statisticians from almost every department at the university had, for decades, run statistical analyses and other batch jobs on datasets on the mainframe. Back then, most "time-sharing" multi-user systems weren't interactive for the bulk-computing portion of jobs; people would login to the system via hard-wired or networked remote terminals, input their data and programs, submit the "job" (a command to run their program on the dataset), and logout. The jobs would then be run—mostly overnight when the interactive users weren't taking up computing cycles—in "batch", hence "batch jobs".

When you submitted a job, you could specify how you wanted the output: in a new dataset, in a report, in a plain file, as an email, etc. But there was another option, too: you could get your output as a printout. This was leftover from the days when there wasn't a campus internet, and most people had no access to a computer screen they could use to spend many minutes or hours reading output from the mainframe. It was a less and less-frequently used option, but some of the older professors still used it because they were used to it or liked to markup the output with pencil.

If a print job was requested, the printers that would handle the job weren't laser printers, or even ink jets. They were either daisy wheel (meaning, essentially, a very fast computer-controlled typewriter, which would press typewriter-like stamps against ribbon onto the page to print out text) or dot-matrix (similar, but instead of a typewriter-like set of characters, a printhead with an array of plungers that could be quickly reconfigured would press dots of ribbon onto the page). Usually, daisy wheel was used for text-only output (because it was faster and prettier), dot-matrix for output that included graphics (which daisy wheel was mostly incapable of handling).

Both printers were huge, noisy things, working on paper that was about 15 inches wide. This paper was "fanfold" (meaning, a continuous sheet of paper, printed on only one side, that had been perforated every 11 inches for tearing into pages) "tractor feed" (meaning the paper had, on either side, holes along the entire length the printer could use to pull the paper along; the strips with the holes were perforated too so they could be removed for aesthetic reasons), "green bar" (meaning that every 1/2 inch alternated green or white; three lines of daisy wheel text fit in each bar. This was to help readers keep their place given the very wide paper that allowed 132 columns per line).

Once the job had been output, a bell would ring and a light would flash and the machine room operators (who worked 24×7) would (literally!) rip the last page of paper out of the printer. They'd then see who the job was for, put a cover page on it (that another printer—by the time I was there it was a laser printer—had printed at the same time), and put the entire stack (still fan-folded, meaning it was a continuous strip of paper not torn into pages) onto a shelf in the machine room that was accessible to the public hallway via rows of cabinets in the corridor wall, each marked with the first digit of job numbers or letter of usernames so the person requesting the print job could retrieve it themselves.

The point is: with 11 inch long pages at six lines per inch (three lines per 1/2 inch bar), or 66 lines per page, we had printers that would quickly and inexpensively print out a document that was, say, about 21,000 lines long. That would be about 320 pages, which was well under what came in a box, so it would even be a single continuous sheet (a "document"!).

That seemed perfectly responsive to my order, but it would be difficult for the plaintiff to use to create a database of email addresses to harass. Still... OCR (optical character recognition) scanners existed even then, and they were pretty good at recognizing daisy-wheel output. There were even tractor-feed scanners available—while I didn't expect the plaintiff to have one, it might be worth it to them to send the paper to a service bureau that would scan it for a fee. So I thought about how to make it more difficult.

First, I'd use the dot-matrix printer, even though the output was all text. OCR wasn't as good with dot-matrix output. The green-bar paper was designed so that 66 or 88 lines would nicely align with the bars—but by using the dot-matrix, I could use whatever type size I liked. I found a number of lines (I think it was 65 or 67) that meant every green-white transition would have a line going right across it. Better, and what's more, using an unusual type size like that meant that most lines were printed between two passes of the printhead, and they never perfectly lined up. (But they were still readable by a human being, which was all that mattered.)

At 132×66, the paper could hold up to 8,712 characters. If instead of printing the addresses one to a line, or "newline-delimited" I printed them continuously with a single space between them ("space-delimited"), I could fit on average 415 addresses per page. That would bring the total number of pages way down from ~350 to just around 50 pages, but on the plus side "a 50 page document" didn't sound at all ridiculous as a response. So I did that—and I didn't word-wrap; if the 132nd column was reached in the middle of an email address, it would just immediately continue on the next line. (The fact that every address ended with "" meant there'd be no ambiguity to a human reader.)

Then I just added a few little touches. Changing the space delimiter to a comma (with no space after) made the entire page a mass of ink. Shuffling the alphabetized list before printing it made it impossible to use to find specific addresses and would increase the chances that a data-entry typist would get first characters wrong.

The final touch: I went into the old-ribbon bin and printed the 50 pages out with a previously-used ribbon, which made the characters grey and faint—so long as I could read the addresses on the last page myself, it was still "responsive" as far as I was concerned.

I took the fifty pages, tore off the tractor feed strips (just to make OCR'ing a little harder), stuck them in a big pouch envelope, and mailed them off, reporting up that I'd complied as ordered. No one ever mentioned the matter again, and the entity I'd sent the "document" to never spammed my users en-masse.

I bring this up today because I hope if you're a civil servant reading this, it might inspire you to think up your own creative ways of "complying" with immoral or illegal orders. Resistance takes many forms—even, sometimes, the form of a mass of faint text on fifty pages of green bar paper.

¹ Note: I'm eliding some detail here and taking full responsibility even though others may have known what I was doing, because I don't want to rope them into criticism, particularly since many are still on the government payroll. Still, I don't want to take credit for actions of others either, so if you worked with me back then and you'd like me to credit you, just send me a direct message or reply here.

Post has attachment
I may give SoCal crap from time to time, but boy do they have some amazing car people. Where else are you going to find houses with vintage Porsches in the living room?

Post has attachment
Huh. Apparently I'm from three years in the future. Nice to know I'll still be on Android.

Post has attachment
"Hey, I feel like there's a big lump developing at the back of my head... can you look to see if there's anything there?"
3 Photos - View album

Post has attachment
How does your emotional well-being rate when you're driving? Hyundai thinks they have a test that can answer that!

Interestingly, the report from the initial study seems to indicate that women have more anger behind the wheel than men (from a study of 1000 British men and women as self reported). My score was 118, but I wonder how scores would change if everybody asked their partners to respond on their behalf. Do you think your score would go up or down?

For those of you in the United States who plan on voting for one of the two major party candidates, what would the other candidate have to do to earn your vote? And if you're voting for a third party candidate, which of the main two would be your backup and how could they get your support?

Please refrain from responding if your answer is some variant of "nothing", as I don't feel that is very productive to this discussion. Thank you!

Post has attachment
Like I haven't already spent enough money today (thanks, Google). If you're into minimalism and cars, you can probably find something you want here.

Post has attachment
I know I've been complaining quite a bit about Google lately, but they're still doing some pretty amazing things. My favorite new toy is Android apps on Chromebooks. I just installed The Room 3 on my 2015 Pixel, and it's the most natural and intuitive experience I've ever had playing any of The Room games. Seriously, if you have access to a Pixel or Flip, give it a shot because it feels like this is the way it's supposed to be.
Wait while more posts are being loaded