Category Archives: Entertainment

When the Internet is Stupid

This would have been a few-line comment on G+, but I’m noting some things that I’m not comfortable saying without sourcing, and google plus’ stupid one-link-per-post system makes it impossible to do that. This is all, at the very least, uncomfortable to think about.

I’ve been watching the reddit/kiddie porn kerfuffle today, and it is a nice framework to think about some recurring social issues. Just to put a summary and disclaimer up front exploiting children is unequivocally bad but that is never what the discussion ends up being about.

It makes a fabulous internet microcosm example of the usual course of pedophilia accusations: There are some distasteful (but, apparently, for the most part not illegal) things posted, someone notices, and it immediately turns into axe-grinding, bandwagoning, and trying to shut down an entire site because OMG think of the children irreparably harmed by possibly sexualized images of possibly minors. I’ll go ahead and note that there was some genuinely bad shit showing up, but the standard “take down anything that is illegal in the jurisdiction our servers are in” mechanism that has to be handled anywhere there is user submitted content should have been catching that – and justly needs to be fixed anywhere it wasn’t.
The fact that SomethingAwful is leading the charge, and is a for-pay internet community (notably, one that used to be a big hub of ‘net culture and …isn’t very relevant lately) even gets the ubiquitous “using accusations for ulterior purposes” aspect in.

The related discussions are rolling into the various corners of
Legalizing child pornography is linked to lower rates of child sex abuse and Australia banning pornography featuring small-breasted women as CP messes (both from 2010), and the whole “why the fuck is Toddlers in Tiaras OK” issue that remind us how stupid the whole area has become.

It also makes an interesting study about legality and the Internet. Pretty much every part of the Internet condones things that are regionally illegal, be it political speech, prohibited drugs, copyright infringement, various flavors of hate speech, or pornography. Different sections of our global society feel differently about all those things, and calls for selective condemnation tend to lack the self-awareness to note that the same moralizing applied to the parts they approve of would be reprehensible. To pick the easiest example: the United States cheering online political speech and social modernization/liberalization in the middle east during the “Arab Spring” while advancing Internet censorship in most other circles.
The fact that international law still can’t handle telecommunications too often makes concerns about legality of publicly visible content into a race to the most restrictive – or at least race to the biggest bully – situation. I have no idea what the solution to that is, but I’m becoming increasingly convinced that it will have to be a technical solution with resignment to a certain acceptable level of transgression by all parties.

Once again, I hate how Richard Stallman keeps being right (I’ve seen better versions of the point, but can’t find a link) about horrible things.

Posted in Computers, Entertainment, General | Tagged , , | Leave a comment

Dear web designers: Stop breaking my browser.

I’ve been running in to more and more sites which attempt to override browser features for no apparent reason. We know you can do all kinds of fancy things with CSS and EMCAScript, but that doesn’t mean you should. To pick out two examples I’ve hit in the last few minutes:

The Verge: Uses some sort of dynamic scrolling mechanism, so my scrollbars (and hence indication of length and position) disappear. There is no reason to do that, and it removes features you would otherwise get for free from the browser.

Gmail: For some reason, searches are done with a dynamic page, so the browser’s back button doesn’t take you back to where you were before the search, and even worse, hitting back from a message in the search results doesn’t take you back to the search results. They even replicated the back button in the interface bar because this is obviously how it should work. I leave a persistent Gmail tab up, and probably 1/3 of its reloads are because of this misfeature.

As my adviser is fond of reminding us, you could build a car with a tiller and throttle as easily as a wheel and pedals, and in the early days people did, but we (as a society) picked some acceptable standard interface elements to ease adoption and transitioning between vehicles. Until recently, browsers were one of the few places in computing like that: it didn’t matter what (GUI) platform you were on: the scroll bar moved you around in the page content, and the forward and back buttons moved you between pages you visited in chronological order. Now, the net is full of pages that break that paradigm, and I can’t find any compelling reason to do so beyond “Because we can.” Please stop.

Posted in Computers, Entertainment, General | Tagged , , , | 2 Comments

Touchpad Cyanogenmod 9

My Touchpad (AKA “The Mobile Platform Test Device”) has had both its OSes updated in the last couple days. WebOS bumped from 3.0.4 to 3.0.5, and I updated the Android install from Cyanogenmod 7 Alpha 3.5 (Gingerbread based) to Cyanogenmod9 Alpha0 (Ice Cream Sandwich based).
tl;dr version: Cyanogenmod9 is, by virtue of speed and features, at rough pairty with WebOS, even though its interactions are uniformly worse.
Details below.
Continue reading

Posted in Computers, DIY, Electronics, Entertainment, General, Objects | Tagged , , | Leave a comment

The best of 28C3

I already posted deeper thoughts about some particular talks, but I’ve been watching talks from 28C3 all week, and now that the high-quality permlink videos are up, I want to share some of my favoites. If you would like several hours of background video that will make you a smarter, and possibly better, person, these are excellent.

Roger Dingledine, Jacob Applebaum – How governments have tried to block Tor (Video)
This is the real hacking to change the world for the better situation. These are the hackers who are protecting the people who will get chopped up and mailed to their families for what they say. They deserve all the respect and support in the world. I’m not intellectually equipped to help with Tor, but it is always good to keep humanitarian aspects of engineering in mind – both what you can do to help, and when you may, even inadvertanly, do harm.

Bunnie Huang – Implementation of MITM Attack on HDCP-Secured Links (Video)
I hadn’t really considered the collection of non-infringing desirable things that HDCP ruins (Ever wonderd why Picture-in-Picture stopped being so common? Blame the copyright industry and HDCP.) Bunnie thought about it, and made a consumer-grade product that fixes it. The FPGA crypto+signal work is badass, the hardware platform is awesome, and seeing how it went together as a consumer product is inspiring.

Meredith Patterson – The Science of Insecurity (Video)
Thoughts in a previous post here.

Cory Doctorow – The Coming War on General Compution (Video)
This is why you invite SciFi authors to technical conferences. It lacks the technical depth of most of the other talks I bumped, but it’s insightful and far looking and right.

Evgeny Morozov – Marriage from Hell (video)
This was the keynote, and, unlike most keynotes, really did set the tone for much the conference. The basis of the talk was discussing the issues of large scale surveillance technology, and the role of western companies and governments in creating and perpetuating the industry. A big part of the message is that the technology being paid for for monitoring employees in commercial settings and “lawful intercept” is being sold to authoritarian governments for whom such technologies would otherwise be out of reach, to hunt their citizens.
I thought the Tor talk above actually made a more forceful argument, but this is a better starting point. The hackers have been harping about this for far longer than the rest of the world: these are the people who have been handling the forbidden knowledge computing opens up, and they saw the disaster coming. The freakout isn’t about what large scale surveillance is going to do to hackers – we have the tools to protect ourselves – it’s what it will do to everyone else.

Ang Cui, Jonathan Voris – Print Me If You Dare (Video)
There was some stupid news responses to this (of the “OMG T3H H4XORS WILL BLOW UP YOUR PRINTER” variety) when it was first disclosed, but the hack itself is terribly clever. The reverse engineering foo is tight, the hole they exploit is a classic “I would have done that but … facepalm” kind of hole, and the attacks it enables are a massive evolution of a known mechanism.

Geeks and depression panel(video)
The geek community tends to have depression issues – this isn’t news. The hacker community is an amazing, close, supportive community – this won’t surprise many geeks, but it might surprise others. They talk about this reality. The session is, by the way, really hard to watch. I’m not ashamed to say it made me tear up.

I haven’t seen every session, or even every English session, so I’m no doubt missing some good stuff. There were definitely some other awesome talks; the GSM and USB Reverse Engineering ones were awesome but don’t have quite the same “YOU MUST WATCH THIS” pull to them. I welcome suggestions for other amazing things I may have missed.

Posted in Computers, DIY, Electronics, Entertainment, General | Tagged , | 1 Comment

Touchpad Dual-Boot

I dual booted my Touchpad with CyanogenMod last week, and it has made me notice a lot of things about the Touchpad, WebOS, and Android that I hadn’t fully appreciated before. I wish I had thought to post these as snippets instead of a wall of text, but I foolishly gathered them up and am posting as a set.

Details about putting CM7 on the Toucpad are here in this RootzWiki forum thread. Yes, their page and documentation are a forum thread with 100+ pages of screeching morons obscuring the content – that’s how the Android community tends to be.
The whole CM7 install process is pretty graceful – I had a minor hiccup in that it claimed the gapps would be installed on the first ACME run if I put them in the cyanogeninstall directory, but I had to go in with ClockWork and flash them later – then it hung on the setup autorun on the next boot. Fine after that. During the initial install, I found myself using the phrase “Oh jeez, there is some Linux shit going on”  — it looks like the ACMEInstaller is just a fancy initrd image with some utilities and scripts baked in that does some FS manipulation and archive decompression.  I appreciate it when Linux is Linux. 
Onward to notes:
Continue reading

Posted in Computers, DIY, Electronics, Entertainment, General, Objects | Tagged , , | 1 Comment


I picked up one of the $150 refurbished 32GB Touchpads in the last firesale on Sunday. It seems like HP has done their very best to get as many Touchpads into the hands of hackers as possible, so whether or not it is well supported by HP, the community will do something fun with it. Besides, a $150 ARM developement platform that will boot Android, various Linux chroots, AND let me play with WebOS was too appealing to pass up.
Continue reading

Posted in Announcements, Computers, DIY, Electronics, Entertainment, General, Objects | Leave a comment

SC11: A Review in Schwag

This is the less serious bit of review from SC’11, but there is fun to be had and a certain amount to be learned from the pile of schwag that comes back. The schwag pile is comparable to last year’s, but I was actively aimed toward useful or at least interesting junk this year, since I have > three cubic feet of this crap packed away now. Part of the point of this post is just to give credit (and links) to places that gave me cool stuff.

I find I actually use the various random bags I get, so I always end up with quite a few. Several were particularly nice: For the second year in a row, I would actually USE the conference bag (Back left corner) on it’s own, and I got another one of the ridiculously tough Tyan/Intel bags (far back, standing) which are handy for groceries and toting stuff around campus. Indiana University had a nifty little sling bag that I could contrive uses for (next to conference bag), and the giant blue CSC bag can consolidate a remarkably large pile of crap.

With regard to apparel, Silicon Mechanics again had the nice florescent green on black logo tee that I wear all the time, although this year’s has some text on the back that makes it a little less cool. We hung out for a while talking to the Pogo Linux folks and were handed a pile of their shirts (logo on front, gold circle around Tux on back, back visible in picture), which are pretty nice. The Adaptive Computing/MOAB “Lifes a Batch” shirt is clever in the same way the Platform Computing “Whatever” shirt from a few years ago – I don’t know that it will get worn much, but it’s a memorable marketing effort (and, by the way, Moab has become really impressive – it can do PVM type tricks that PVM can’t, and look good doing it). NIMS (I’m slightly embarrassed to say I don’t remember which relevant organization with that acronym it was) had nice Beanies which may see some use this winter. I have some fuschia compact umbrellas from the conference daily giveaway (I think IBM payed for/logo’d them) to be given as gifts – we brought back one or two each… plus a box of a dozen after they stuck the remainders out.

Going through the gallery of other neat stuff in order of a appearance:

  • Huge props to Samtec. I don’t recall seeing them at SC in previous years, but as an interconnect hardware vendor, it’s an entirely reasonable place for them to be. In addition to the fairly nice hat/pen/screwdriver schwag items and interesting to chat with booth staff, they were giving out trays of sample parts. I picked up the “Sample Solution” and “Rugged Power” kits, since those are the kinds of connector I use most, but the adviser picked up a full set to keep on file for helping students doing projects pick parts. Looking through them I wish I had picked up one of the R/F component boxes, because it had a gorgeous assortment of $Random_antenna_connector to SMC pigtails in it. I think I’ll be preferentially ordering/recommending connectors from them for a while.
  • Penguin Computing was dispensing nice umbrellas in addition to their standard “Sit through our talk for a 6″ Stuffed penguin” routine. I talked management tools with a rep for a while, but didn’t attend the talk this year.
  • Several places had nice small papergoods. I consume little notebooks and packs of post-its and tape flags pretty regularly, and can’t remember the last time I paid for them.
  • Isilon had a nice little screwdriver pod thing. There can never be enough multitools.
  • HP was handing out a … dorky green thing. It’s cute, and charming, and its belly is a lint-free screen cleaner, but I can’t figure out what the hell it is (alligator?). I think the confusing object is representative of their confusing business decisions of late – they had a carnival tricks theme going in their booth which also fits circus grade management.
  • AMAX and Extreme Networks gave me flash drives, in addition to the proceedings drive (which is 2Gb and looks like a Kingston like the last two years, but the USBID says knockoff). Apparenlty I missed some even nicer flash drives from other places that group mates found. Flash drives are always useful and appreciated.
  • The NNSA ASC booth was shoveling Flexible USB Lights out of their booth the last day, and I took a couple. I’m not sure what I’d use them for, but they appear to be identical to this $10 thing at Thinkgeek, so there’s that.
  • The Arctic Region Supercomputing Center booth was not very well staffed, but they had their usual reusable chemical hand warmers, which is a great gimmick.

The “trick-or-treating for grownups” vibe of going schwagging on the floor is a bizarre joy of supercomputing, and, in addition to the standard “memorable schwag makes you memorable” marketing function, actually provides an important mechanism for striking up conversations and encouraging attendees to make good coverage of the exhibit floor. I have a not inconsiderable list of organizations who have bought good vibes with a few cent trinket, and I am the sort of person who gets solicited for tech and academia advice, so the trinkets are doing their job.

Posted in Electronics, Entertainment, General, Objects | Tagged , | 1 Comment

A Day in the Life of the KAOS Lab Thought Process

In which a simple “Do you know an easy way to convert an integer into a string of (character) digits?” turned into an expedition into ancient UNIX codebases. The process went something like this:

Labmate: Do you know an easy way to convert an integer into a string of digits?
< both of us type it in to google>
Looks like sprintf() is best, there must be a simple efficent algorithm.
How does printf() do it?
Let’s look in libc!
< grep through the various toolchain sources on my system >
Well, here’s the uClibc implementation… which is a terrifying mess of ambigously named function calls and preprocessor directives.
I wish I had some old UNIX sources to look at, that would be simple.
< a bit of googling later>
Holy crap, this is amazing! Full root images for a bunch of early UNIXes, many of them from dmr himself!
< download v5, grep /usr/source judiciously to find /usr/source/s4/printf.s>
Well crap, it’s in PDP-11 assembly, maybe a later version.
< download v7, grep /usr/src judiciously to find /usr/src/libc/stdio/doprnt.s>
Damn, still in PDP-11 assembly, but this is a fancier algorithm.
Hmm… the most understandable UNIX I’ve ever looked at was old MINIX
< spin up BasiliskII, in ‘030 mode, use this workaround to make MacMinix run>
< more grepping for justice>
Eventually, we found the printk() from MacMinix 1.5, in all its awful K&R/ANSI transitional C glory

#define NO_FLOAT

#ifdef NO_FLOAT
#define MAXDIG 11 /*32 bits in radix 8*/
#define MAXDIG 128 /* this must be enough */

_PROTOTYPE(void putc, (int ch)); /*user-supplied, should be putk */

PRIVATE _PROTOTYPE( char *_itoa, (char *p, unsigned num, int radix));
#ifndef NO_LONGD
PRIVATE _PROTOTYPE( char *_itoa, (char *p, unsigned long num, int radix));

PRIVATE char *_iota(p, num, radix)
register char *p;
register unsigned num;
register radix;
register i;
register char *q;
q = p + MAXDIG;
do {
i = (int) (num % radix);
i += '0';
if (i > '9') i += 'A' - '0' - 10;
*--q = i;
} while (num = num / radix);
i = p + MAXDIG - q;
*p++ = *q++;

Which is, of course, a digit at a time in one of the most straightforward ways imaginable. Minix’s kernel is designed for systems so resource constrained it has a separate prints() that can only handle char and char* to save overhead, so I can’t imagine it uses a sub-optimal technique.
This kind of thing really makes me wish I had learned OSes in the old death-march through the UNIX sources (or at least the old Tenenbaum book with MINIX) way; things are too complicated and opaque now. There always seems to me to be a golden age from around 1970 into the early 1990s where the modern computing abstractions were in place, but the complexity of production hardware and software hadn’t yet grown out of control.
In a related note, as a tool writer, looking at the earliest versions of cc is AMAZING. Most decent programmers should be able to work through the cc from v5 UNIX (574 lines of C for cc proper, 6454 more lines of C and 1606 of PDP-11 assembly in called parts) in a couple hours, and fairly fully understand how it all works. Sadly, (pre-3) MINIX came with a (binary only) CC made with ACK, which is fancy and portable and way, way, way harder to understand. dmr’s simple genius was just that.

Posted in Computers, Entertainment, General, School | Tagged , , | Leave a comment

Gendered Costumes

I was eyeballing my bookshelf for a quick-n-dirty costume, because I putzed on doing anything interesting for Halloween, and might find myself in need of one. I came to a disturbing realization about the relative distinctiveness of male and female major characters in media I’m fond of.

Some examples:

Millennium Trilogy:
Lisbeth Salander: Black clothes, black wig/temp dye, and some costume punk jewelry. Best with a couple sheets of inkjet temporary tatoo stock for wasp and dragon. Recognizable to anyone who knows the character.
Mikael Blomkvist: No matter how hard you try, just a dude in a suit.

Dolores Haze: White top, white skirt, $2 heart-shaped sunglasses. Done. Plaid skirt and white button down with said glasses would work too. (Fun fact: those glasses are from the Kubrick movie, not the book.)
Humbert Humbert: Dude in a suit. (Unless you do something creative and likely to end in a public indecency charge)

Various William Gibson Pieces:
Cayce Pollard (Pattern Recognition): Black tube skirt, black bomber jacket, clunky boots. Recognizable to anyone who knows the character – Hell, major plots are based on her taste. (sidenote: you can now get a black MA-1 lookalike for less than $50, instead of $600 for the Buzz Rickson’s in the book. Rothco even makes them in long to get around the “bomber jackets look like halter tops on my frame” issue.)
Molly Millions (Neuromancer) – Silvered dollar-store sunglass lenses adhered to your eye-sockets, unpainted aluminum-can nail extensions. Done.
Henry Dorsett Case (Neuromancer): Not even a memorable physical description.
Hubertus Bigend (most recent three novels): Granted, he’s recognizable, but an International Klein Blue suit isn’t exactly easy to come by, even as fabric stock.

Ready Player One:
[Redacted for thpoilerth]

Note that this isn’t total lack of ideas: there are some excellent costumes I can think of, especially from old video games, but not many fall into the “Less than $20 in readily available parts” range that my level of give a fuck supports. It doesn’t help that Female-As-Male-Character costumes are, as a rule, cute, and Male-As-Female-Character costumes are, as a rule, creepy. When we were kids we made jokes about Halloween parties always degenerating to girls in costumes and guys in indistinct black outfits. It’s true because it’s our culture.

Pretty sure if I end up needing a costume, my laser printer, a piece of elastic, and some poster stock will be making a rage comics face happen at the last moment.

Posted in Entertainment, General | 1 Comment


Dear AMD,
Randall Munroe has correctly pointed out that you are adversely affecting my quality of life. Please fix your shit.

Posted in Computers, DIY, Entertainment, General | Leave a comment