Red Echo

June 18, 2016

Fractal Fryday psytrance

The Seattle Psy Ops crew invited me to play the opening set at their monthly Fractal Fryday event, and I recorded the mix for your listening pleasure. As much fun as I’ve been having with glitch-hop and downtempo lately, progressive psytrance remains my main squeeze, and getting to kick the night off for a club full of psytrance aficionados was a real treat.

June 13, 2016

I played a Doomtruck glitch-hop/electroswing set for Lesley & Steve’s birthday party this weekend and was delighted by the reception it got. People were in a mood to dance, light-hearted fun the order of the day, so I gave ’em the swingiest, funkiest, bassiest, booty-shakingest glitch in my library, and they loved it. Oh, so satisfying. As usual I recorded the set so you can stream or download.

June 8, 2016

Fury Road vehicle gallery

After production work, before they got all beat up in the desert – a gallery of photos of the Mad Max: Fury Road vehicles. Lovely craftsmanship. Using this as design inspiration for work on the Verhängniswagen, aka Doom Truck.

May 22, 2016

Kinky Salon DJ mix set

Check out the set I recorded last night for Kinky Salon at the Factory Luxe – an hour of dirty, dubby downtempo for a Barbarella-style sexy-sci-fi party. I had fun mixing this up and I hope you’ll enjoy it too.

May 21, 2016

While I can’t say I ever had any particular interest in the idea of an ocean cruise, after reading the David Foster Wallace classic “A Supposedly Fun Thing I’ll Never Do Again” it seemed completely obvious that cruise ships were not a thing I would ever care to do. But I just read a really funny article on hackernews which describes a transatlantic crossing as the perfect environment for writing code – it sounds totally bonkers, but I can see what he’s getting at. Flipping it all around, he turns the isolation into focus and the scripted monotony into intellectual freedom; all he has to do is think and write, while the ship and its crew take care of everything else.

May 19, 2016

When I grow up, I will drive a tank, and this is why.

tankjump

May 18, 2016

Bookslut was born in an era of internet freedom. Today’s web has killed it

I miss the internet. I know that, technically, the internet still exists. It’s the Facebook-, Twitter-filtered series of algorithms designed to put cat videos, think pieces, and advertisements in front of you. But I get nostalgic for the days before money invaded the internet – the early 2000s, in particular, when I created the literary blog and webzine Bookslut.com.

Back then, nothing you did mattered. And that gave you freedom.

May 11, 2016

Never heard of the XDG Base Directory spec before, and I have no idea how widely supported it might be, but it seems like it might be a helpful way to move unix apps more toward a bundle/package architecture than the traditional “splatter everything all over the machine” hopelessness.

May 10, 2016

Saturday night DJ mix set

I posted a two-hour recording and track list from Saturday night over on Mixcrate: May 2016 at the Dungeon. Gritty, dubby, 90-105 bpm downtempo, with an industrial edge and traces of psychedelia.

May 3, 2016

How to Pick Music for People on LSD, From a Scientist Whose Job That Is

I know a fair number of practitioners in this field, but they generally call themselves “DJs” and not “scientists”.

April 23, 2016

This is the kind of detailed, hacker-friendly explanation of ELF for which I really wish I’d had a Mach-O equivalent when I was writing the Mach-O linker for REALbasic.

April 18, 2016

I spent all weekend working on the Doom Truck with AJ. We are upgrading the shop box, making it a bit nicer to camp in, which mostly means cleaning up all the interior surfaces and building in a permanent bed frame with storage underneath. We’re not going to go full RV style with cabinets and fold-outs everywhere, because we like the open feeling it currently has, and we want it to continue being versatile.

First of all we have to stop all the water coming in, which caused a bunch of problems over the winter. One of the window frames leaks – but there are also lots of holes drilled through the walls and floor where previous owners had bolted down various workbenches and storage containers. Our plan was to weld plugs into all these holes, then grind ’em flat. We can always weld tie-down tabs onto the sheet metal if we want to.

Well… it was a long complicated process, and I started to bore myself trying to recount the details, so I’ll just say that it took half a dozen trips to various hardware stores and over $1000 spent on tools and supplies before nonstop labor finally got us to the point that we could start welding around 4 PM on Sunday. Oh, my.

We did end up making a fair bit of progress once we got going: all the floor holes are filled and ground down, so the wheels won’t kick water up into the box anymore, which means we can put down that nice cork flooring without having it rot from underneath… And I patched up the assortment of bolt holes down one side of the truck with big round rivety-looking carriage bolt heads, welded in place. The welds look terrible and it’s going to need a bunch of cleanup, but at least there’s no more daylight leaking in.

I didn’t get to the bolt holes on the other side of the truck; AJ thinks she will try to tackle those during the week. There are also a couple of big square access panels for equipment long since removed, with extremely janky covers… we’re going to weld the covers on, stuff some insulation in the gap, and weld them shut on the inside as well. Finally, we need to cut away and rebuild the threshold, which has leaked enough water in that the wood is a little rotten…

But hey, this is not a bad set of problems to have. The truck works great; we don’t have any mechanical problems to fix right now. It took a long time to get our metalwork process going but now things are moving quickly. And wow is it going to be nice to park our giant clanky apocalypse-proof monster truck at every festival and camping trip we go on this summer, then throw open the doors and have a clean, stylish, convenient, and actually pretty damn swanky home-away-from-home inside. I’m looking forward to it.

Also looking forward to installing a muffler, now that I can weld stuff in my back yard, because *damn* does that thing need one.

Oh yeah! I just discovered the wonder that is turbodiesel propane injection. It’s like nitrous for a gas engine, giving a significant horsepower boost, which will be super useful when climbing up hills – but not only that, it actually improves fuel efficiency, cleans up the exhaust, *and* puts no additional stress on the engine, since it actually *lowers* burn temperature slightly. Way simpler and cheaper than any of the other power-boosting improvements we’d been considering, and we’re already planning to have a propane tank on board to power the stove, heaters, etc. Super cool, it should mean it’s no longer a hassle trying to convoy out to an event with other vehicles.

April 15, 2016

A convenient list of lightweight, embedded-friendly alternatives to common, elaborately developed unix libraries.

April 14, 2016

Copperhead is a new Android-based mobile operating system with an appealing design brief. They’ve implemented an array of sensible-sounding security improvements, and the technical explanations for these changes are reassuringly lucid. They’re also open-source focused and not tied to any proprietary cloud services, which is exactly what I want. I might have to give this thing a try; I might hate my phone less.

While there are hundreds of C compilers in existence – it’s even possible, though highly unlikely, that the terrible C compiler I wrote back in 1997 is still out there somewhere – there are only two (and a half) of them which actually matter. The maintainers of these compilers increasingly subscribe to a pedantic, user-hostile interpretation of the C language which, as a user of the language, has become rather troubling:

Recently we have seen spectacular advances in compiler optimisation. Spectacular in that large swathes of existing previously-working code have been discovered, by diligent compilers, to be contrary to the published C standard, and `optimised’ into non-working machine code.

In fact, it turns out that there is practically no existing C code which is correct according to said standards (including C compilers themselves).

Real existing code does not conform to the rules now being enforced by compilers. Indeed often it can be very hard to write new code which does conform to the rules, even if you know what the rules are and take great care.

It’s an interesting post by Ian Jackson of the Debian project which some additional links that are worth reading if you have an interest in this sort of thing.

April 1, 2016

I CAN’T STOP: it’s a Mackie SWA1801 for $650, JUST WHAT I ALWAYS WANTED (since the last time I got what I always wanted, temporarily(?) sating my PA-equipment lust with a pair of SWA1501s).

No, I’m not going to buy it. I’m not. Where would I PUT it? What about the fact that the gear I’ve collected will already max out a 20-amp circuit? For that matter, would this beast even fit through my basement door? Why do I keep looking at these things?

Well, I guess that one’s obvious: MORE BASS.

March 23, 2016

Why Microservices:

Lately, some of these SCS turned out to be still too large, so we decomposed them by extracting several microservices. Because we are already running a distributed system, cutting applications into smaller pieces is now a rather easy exercise. One of the reasons, why I agree with Stephan Tilkov that you should not start with a monolith, when your goal is a microservices architecture.

This article is not about the pros and cons of microservice architectures. This article is mostly about the pros. Not because they do not have downsides, but because I’m biased and completely convinced that microservices are a great idea.

March 22, 2016

My response to this article is a resounding “well, yeah,” but it’s interesting to see someone saying it, and in a social-science research context, at that:
People Want Power Because They Want Autonomy:

All told, this research indicates that the desire for power may be somewhat misplaced: Generally, when people say they want power, what they really want is autonomy. And when they get that autonomy, they tend to stop wanting power.

March 19, 2016

I don’t hate aggravator any more and may eventually have to change its name. I blamed the hardware, since it’s running the same Ubuntu 14.04 I’ve used successfully on three previous Thinkpads, but installing a different video driver fixed the “crash on resume” issue, which was really a “crash when the machine discovers you’ve plugged in its power cord” issue, and uninstalling whatever the hell “apport” is made the relentless barrage of “the machine has crashed, do you want to send us all your personal data so we can pretend we care” messages stop accosting me at startup.

With a second battery replacing the DVD player, I feel comfortable leaving the power supply at home, now, too.

Yay.

March 15, 2016

Archive of Interesting Code is a long list of clean, readable, well-commented implementations of useful algorithms.

March 12, 2016

I recorded my DJ set last night – dubby, gritty downtempo – and have just finished uploading it for your enjoyment:

March 2016 at the Dungeon

March 8, 2016

Notes about getting better power management out of Linux when running on a Thinkpad X300, like the one I have been so frustrated with recently that I gave it the hostname “aggravator”. I get maybe 90 minutes out of its battery, currently. I was thinking about replacing its DVD player with a second battery, but I’m reluctant to throw even more money at this thing when its reliability has been so underwhelming thus far.

March 6, 2016

KreativeKorp Relay Fonts has a glorious array of retrocomputing typefaces pulled from sources I haven’t thought about in years.

March 5, 2016

The junk removal people have come and gone. With them went all the random objects that have been sitting in the backyard at Rock Star Parking, unclaimed and unloved, since last summer’s Floodland truck unloading. In addition, they departed with an assortment of mysterious objects that had taken up residence under the porch for no apparent reason. Why, exactly, did we have two portable charcoal barbecues? Where did that knit bag of rubber stamps come from? Who put that big black plastic bag next to my motorcycle, and what was inside it? (None of us were brave enough to open it and find out.) And what kind of person brings a goddamn swamp cooler to a party and then forgets to take it home again afterward?

Also gone: the massive slab of seating furniture which would have been the first component of the now-cancelled couch-fortress project, the coffee table I’ve disliked since the day my ex-wife surprised me with it, and some bags of clothing which did not belong to any of this house’s past or present occupants. Alas: the cans of paint, piles of lead-acid batteries, and terrifyingly rusty propane cylinder were problems they were unwilling to solve. I guess it’s time to break out the box of thermite.

March 4, 2016

Resources for Amateur Compiler Writers

March 1, 2016

After sixteen years of membership, I just closed my Metafilter account. End of an era: it was the last piece of the old Web, the one I was excited about and emotionally invested in, the one that felt like a community – or a community of communities, really. No more; Metafilter’s culture has been growing steadily crankier over the years, less fun and more nitpicky, and has finally sunk below the “never read the comments” threshold.

The web is over; it’s basically just television, now, with a few exceptions. Reddit is still fun, though it’s more of a playground than a community. Blogs are over, message boards all seem to have gotten swallowed up by Facebook, and Facebook itself doesn’t have very much going on anymore.

I’m not sure what comes next, but I’m looking forward to finding out about it.

February 29, 2016

I didn’t get any photos, but the verdict was clear after Saturday night’s impromptu gathering: you totally can make delicious grilled-cheese sandwiches with a flamethrower. Use a soft cheese and keep the slices thin (so it’ll melt quickly), don’t butter the outside of the bread (it catches fire), and smash the sandwich between a couple of cast iron skillets (or use a panini press) if you’d rather not char the outside. 15-20 seconds of heat will do it, but you can go longer if you want the bread to get super crunchy.

Also, don’t assume that those propane cylinders you haven’t touched since last summer are still full.

February 16, 2016

A nice solid side-table lamp made of oak and epoxy, with step-by-step photos.

February 8, 2016

Colorization using optimization:

In this paper we present a simple colorization method that requires neither precise image segmentation, nor accurate region tracking. Our method is based on a simple premise: neighboring pixels in space-time that have similar intensities should have similar colors. We formalize this premise using a quadratic cost function and obtain an optimization problem that can be solved efficiently using standard techniques. In our approach an artist only needs to annotate the image with a few color scribbles, and the indicated colors are automatically propagated in both space and time to produce a fully colorized image or sequence. We demonstrate that high quality colorizations of stills and movie clips may be obtained from a relatively modest amount of user input.

O-expressions are a new syntax for Lisp-like languages, with an implementation called Liso which is based on Racket.

I’ve been playing with similar ideas recently, from a slightly more functional-programming perspective. Everyone agrees, for the most part, that delimiter pairs create structure, and that commas have higher precedence than semicolons. The idea that any consecutive sequence of non-delimiter punctuation characters constitutes an “operator” token is useful, and I like the use of INDENT/DEDENT as another form of bracketed delimiters. Is it possible, given the additional constraint of “no reserved identifiers”, to construct a language sufficiently general that a language like Python, Javascript, or (my own) Radian could be constructed on top of it as a macro library?

February 1, 2016

Aluminum extrusion channels for LED strip lighting.

Next Page »