DNA Lounge: Wherein it's our birthday, and SF is losing another venue.

Mezzanine just announced that they will be closing in October, 2019:

"I was disappointed that the owners of the building didn't give me an opportunity to renegotiate a new lease. I was further disappointed that my request for a three-month extension, so that we could close out 2019 was rejected." Owner Deborah Jackman said in a statement, "What I find most disturbing is that Mezzanine, like so many other cultural institutions, has fallen victim to corporate greed and commercial development."

The building owners are working with Colton Commercial & Partners Inc who are looking to replace the venue with commercial office space in hopes to maximize rent at a 600% increase. Their decision marks an all too familiar story for venues in the Bay Area that have been forced to close in recent years due to commercial development.

So that is some tragic, predatory bullshit.

It can only be out of pure spite that their landlord won't even let them stick around for two more months to have a final New Years party. That's one of the most profitable nights of the year for any venue, and to not even throw them that bone is just intentionally cruel. That's some Ebenezer Scrooge shit right there.

So that's one more independent venue down, further cementing the stranglehold that Live Nation, AEG and APE have on SF live music, as our city continues its descent into being nothing more than a bedroom community for Mountain View.

Apparently there are people who look at San Francisco and its myriad problems and think, "You know what this place needs? More high-end office space."

In DNA Lounge news -- we're not quite dead yet?

And tomorrow is our birthday! Go us! DNA Lounge opened for business thirty-three years ago, on November 22, 1985! Check out some photos from opening night.

We have also been served an eviction notice... from our ISP. (Heyyyo!) I had to move our web server, mail host and whatnot to a new provider. It was terrible, but it seems to be mostly working now. Let me know if you notice any weirdness.

In particular, since it's a new mail server, you might not be getting our emails. Check your spam folder.

Also, we're considering hiring someone to improve our marketing and social media game. Is that you? Here's the ad.

I hope you'll be joining us tonight at Dark Sparkle to get your pre-turkey goth on. November and December are traditionally under-attended months for us, so please try to drag your butts off the couch: we could really use the business, and you don't want us to turn into office space too, I'm guessing.

Did I mention our Patreon? Because we have a Patreon.

Some recent photo galleries, including Halloween epic-ness.

Halloween Booootie
All Hallow's Eve
Sequence: Monxx
Hubba Hubba: Totally 80s

Clan of Xymox
Dion Timmer & Spock

Turbo Drive: Nina + Parallels

Data erasure method: Longbow

Previously, previously, previously.

Tags: ,

Old Man Yells At Cloud

The time has finally come: I was served an eviction notice from my colo host, so I have moved my server and web sites over to AWS.

Many of you have already begun composing a comment starting with, "Instead of Amazon, you know what you oughta do" and -- thank you but no, please stop. It is done. I solicited your opinions on this a year ago, you had your chance.

You can be helpful in the following ways:

  1. Tell me if you notice anything broken or acting weird on either jwz.org or dnalounge.com. The switch involved upgrading from CentOS 6 to 7, Apache 2.2 to 2.4, and literally every other piece of software, plus sending email from a new IP address, so it's bound to be weird for a while.

  2. I have been led to believe (by this thing) that if I pay for a year up front, my price goes down almost by half. I'd like to do that, but I can't figure out how. Apparently it's not simply a billing option, but somehow tied to an instance? Or scalpers? Please tell me what buttons to press to give them my money but less of it.

  3. If you have suggestions of simple ways to optimize my new setup for price and/or performance, let me know. Emphasis on simple rather than completely re-engineer decades of history.


I have a single instance, r5a.2xlarge (8 CPUs, 64 GB RAM), CentOS 7, us-east-2b, plus a 2TB EBS sc1 encrypted "cold storage" volume. I am running my own httpd, mysqld, postfix and a zillion cron jobs on this instance, and serving my web sites out of EC2 using the EBS volume as just a drive, not serving from its own pseudo-web site. Outbound bandwidth is probably somewhere between 1 and 2TB/month.

Please note that:

  • Any solution that involves any URL changing is unacceptable. "Just leave behind 301 redirects to the new URLs" is unacceptable.

  • If you're going to suggest, "Just run five more layers of proxies and CDNs in front of it", that suggestion needs to come with numbers on how much that's going to cost, and how much that's going to save, before it's a real suggestion. Because I can't tell.

  • I understand that you all think that I should be running 30 different instances that aren't up all the time, instead of one monolithic one pretending to be a real computer. But there is almost nothing that any of my cron jobs do that is sufficiently standalone that that makes any sense to me. I can't wrap my brain around that and I don't have the time or desire to rewrite literally everything.


  1. I have an "Elastic IP" that is the A record of my web sites. Apparently I'm paying $14/month for it. Someone said, "Oh, be aware that they just go and change those on you sometimes". This can't possibly be true, right? If so, what exactly am I paying for?

  2. I'm in us-east-2b because that was cheapest. This seems weird, since all of my customers are in San Francisco. Should I care? I'm guessing I shouldn't care.

  3. Am I correct in assuming that my 2TB EBS volume is never going to "fail"? I don't really have to worry about making AWS "snapshots" of it if I don't want to? (They seem to charge $107 for a 5% change/month snapshot of the 2TB drive! That's a lot of money for a slow-assed Time Machine. It's twice the price of the 2TB drive itself, so that pricing makes no sense.)

Previously, previously.

Tags: , , , , ,

Weird Machines

C Portability Lessons from Weird Machines:

Cray T90: This machine provides another cautionary tale about trying to manipulate pointer values as if they were integers. On this architecture char or void are secretly word pointers with an offset stored in the three unused higher-order bits. Thus incrementing char* as an integer value would move to the next word but keep the same offset.

Prime 50 series: Notable for using a NULL pointer address that is not bitwise zero. In particular it uses segment 07777, offset 0 for the null pointer. (Some Honeywell-Bull mainframes use 06000 for the NULL pointer value, which is another example of non-zero NULL.)

Previously, previously, previously, previously, previously.

Tags: , ,

10,000 Zombies Vs Giant Blender

Previously, previously, previously, previously, previously, previously, previously.

Scene missing! A video in this post has disappeared. If you know of an accessible version of this video (search), please mail me so that I can update this post.
Tags: , , , , ,

The Relentless March of Art History


Apparently this was in the 2018 Kanagawa / Kawasaki Halloween parade.

See also Jane Zhang, Dust My Shoulders Off, as seen on jwz mixtape 176.

Previously, previously, previously, previously, previously, previously, previously, previously, previously, previously.

Tags: , , , , ,

Heck of a resumé you got there

Matthew G. Whitaker, Acting Attorney General:

In November 2014, a Miami Beach-based firm, World Patent Marketing, announced the "marketing launch" of a "MASCULINE TOILET," which boasted a specially designed bowl to help "well-endowed men" avoid unwanted contact with porcelain or water. "The average male genitalia is between 5″ and 6″," the firm's press release said. "However, this invention is designed for those of us who measure longer than that." [...]

The special toilet was not the firm's only notable offering. It marketed a slew of oddball inventions, including a "theoretical time travel commodity tied directly to price of Bitcoin." Called Time Travel X and marketed as "a technology, an investment vehicle and a community of users," the cryptocurrency never materialized.

The firm also pitched Sasquatch dolls, promoting them with a video claiming that "DNA evidence collected in 2013 proves that Bigfoot does exist."

Federal authorities say World Patent Marketing was scam. A federal judge shut down the company last year and fined it $26 million after the Federal Trade Commission found it had "bilked thousands of consumers out of millions of dollars" in fees it charged clients based on phony promises of lucrative patent deals. The company is under investigation by the FBI. [...]

In a December 2014 news release, Whitaker defended the firm. "As a former US Attorney, I would only align myself with a first class organization," he stated. [...]

In an August 2015 email, Whitaker invoked his status as a former US attorney to threaten a man who was planning to file a Better Business Bureau complaint against the company. "There could be serious civil and criminal consequences for you," Whitaker wrote in the email. [...]

The Washington Post reported Friday that Whitaker "played a role in trying to help the company silence critics" penned "a series of letters" threatening legal action while acting as outside counsel for the firm. [...] Whitaker refused to comply with an October 2017 FTC subpoena seeking his records related to the company. [...] The FTC's investigation concluded that World Patent Marketing suppressed complaints about the company through "threats, intimidation and gag clauses."

I rate him ten Scaramuccis out of a possible ten Scaramuccis.

Previously, previously, previously, previously, previously, previously, previously, previously, previously, previously, previously.

Tags: , , , ,

They are Justified, and Ancient.

The People's Pyramid: The Toxteth Day Of The Dead

The Justified Ancients of Mu Mu are building a pyramid.

The pyramid will be constructed of 34592 bricks.

Each brick in the pyramid will contain the ash of a dead person.

This process is called MuMufication.

  • The first MuMufied bricks of The People's Pyramid will be laid on its foundation stone, in Liverpool, on Toxteth Day Of The Dead, 2018.

  • Toxteth Day Of The Dead will take place on Friday 23 November, 2018, and will be marked on the same date, every year thereafter, in a variety of ways.

  • K2 Plant Hire Ltd's directors, Jimmy Cauty and Bill Drummond, will mark the 2018 instalment by revealing an Unexpected Item in Toxteth Town Hall.
  • This Unexpected Item will be available for inspection by the public between the hours of noon and 9pm on Friday 23 November, 2018.

  • In order to gain entrance to Toxteth Town Hall during these hours, members of the public (see T&Cs*) must present security staff with one full sized supermarket shopping trolley. The shopping trolley is non-returnable.

  • November 23, 2018, is, coincidentally, Black Friday. Therefore K2 Plant Hire Ltd have come up with an attractive range of one-time offers for those wishing to obtain MuMufication.

  • Meanwhile, 399 living people will be enlisted on a journey to forge Toxteth Day Of The Dead traditions that will withstand the next thousand years. The 399 may be casual bystanders or they may have taken part in Welcome To The Dark Ages in August 2017.

  • Either way, they will be expected to report to the entrance of Toxteth Town Hall at 15:00 precisely on Friday 23 November.

  • There will be free tea and mince pies served at Toxteth Town Hall, which will last as long as we all shall live or until they run out. Whichever occurs first.

  • There may be other occurrences throughout the day and night.

  • TO AVOID CONFUSION: The Justified Ancients of Mu Mu and The KLF are not the same thing. The Justified Ancients of Mu Mu have many responsibilities. One of those responsibilities is as undertakers.

Previously, previously, previously, previously, previously, previously, previously, previously, previously.

Tags: , , , ,

Tell them to stop listening to my farts

Anna Trupiano:

Today in 1st grade one of my Deaf students farted loudly in class and other students turned to look at them. The following is a snippet of a 15 minute conversation that happened entirely in American Sign Language among the group of Deaf students and I.

Kid 1:

Why are they looking at me?
Because they heard you fart.
Kid 1:
Whhhhat do you mean?!?!
Hearing people can hear farts.
Kid 2:
*Totally horrified* Wait, they can hear all farts?!?!
Well no. Not all farts but some of them yes.
Kid 3:
How do you know which farts they can hear and which farts they can't?
Hmmm....you know how sometimes you can feel your butt move when you fart? A lot of those they can hear. But if your butt doesn't move it's more likely they didn't hear it.
Kid 1:
Hearing kids can't stop hearing farts, it just happens.
Kid 2:
I just will stop farting then.
Everyone farts, it is healthy. You can't stop.
Kid 3:
Wait. Everyone? Even my mom?
Kid 2:
My dad?
Kid 1:
*Laugh hysterically*
Kid 1:
...So you can hear and smell all the farts?
Some of the farts yes. Not all of them.
Kid 2:
Can hearing people see farts?
Kid 3:
Yeah. Green smoke comes out of their butt, I saw it on TV.
That doesn't happen in real life.
Kid 1:
What?! Ugh. I don't understand farts.

......I went to college for 8 years to have these conversations.

Previously, previously, previously, previously.

Tags: ,



  1. When I kill my WebSocket server, I have to wait 2+ minutes to restart it because the kernel (2.6.32 Centos 6.2) says my port is still in use. I've tried trapping the signal and calling disconnect on each client connection to no avail. Also no help: setsockopt($S, SOL_SOCKET, SO_REUSEADDR, 1).

    And this is a hassle because:

  1. Every few days this server code just goes catatonic. The process is alive but no longer accepting connections. I've added log messages to every callback, and there's no obvious triggering event that causes it to break; it just seems to happen... every now and then. At that point there's nothing to do but to kill and restart it, which sucks as per above. Attaching a gdb to it didn't tell me anything. How do you debug something like this?

Update: I think I've solved problem #1, thanks to the suggestions below about how I was using ReuseAddr. Problem #2 persists. And also I am now on kernel 3.10.0 CentOS 7.5, which has not changed the problem #2 behavior.


Tags: , , ,

  • Previously