Subscribe: trenchant.org - daily
http://www.trenchant.org/daily/rss.xml
Added By: Feedage Forager Feedage Grade B rated
Language: English
Tags:
animal crossing  command line  didn’t  don’t  fun  game  it’s  line  log  people  rez  things  time  web   
Rate this Feed
Rate this feedRate this feedRate this feedRate this feedRate this feed
Rate this feed 1 starRate this feed 2 starRate this feed 3 starRate this feed 4 starRate this feed 5 star

Comments (0)

Feed Details and Statistics Feed Statistics
Preview: trenchant.org - daily

trenchant.org daily



trenchant.org daily updates by adam mathes



 



Hard To Work With

Thu, 19 Apr 2018 00:00:00 PST

(image)

The Zen Diaries of Garry Shandling Part 2




How To Unfollow Everyone On Twitter, A Practical Guide

Wed, 18 Apr 2018 00:00:00 PST

The social media industrial complex’s products try to make this hard but never forget that you are in control and have autonomy over how you use technology.

Why you might want to unfollow everyone rather than close your account:

  • identity – namespace preservation (don’t want someone else to take your handle)
  • authentication – distributed authentication services (OAUTH) means cancelling your account may lock you out of other services
  • messaging – still make yourself available for direct messages

Three easy steps.

Become Spiritually Ready To Unfollow Everyone

Someone will probably take it personally that you unfollowed them. Even though you unfollowed everyone.

Or, nobody will notice, and you might take it personally.

You will end up missing things. Figure out a way to be OK with that.

(Also, you need to know how to use the command line on your computing platform of choice.)

Note, this is not one of the three easy steps. It may be hard.

Step 1 – Install required software

We’re going to use t, but there are other tools and they will work similarly.

Follow the installation instructions at github.com/sferik/t

Step 2 – Saving a list (optional)

$ t followings > followings.txt

This will save a list of everyone you are following to a “followings.txt” file that you can use later, if you so choose.

Step 3 – Unfollow everyone

$ t followings | xargs t unfollow

Depending on how many people you are following, this may take a while. Or a few tries.

Conclusion

Quitting Twitter is easier if anytime you try to go back you get an empty timeline.




Quest Glitches

Tue, 17 Apr 2018 00:00:00 PST

When I quit twitter at the start of this year I also shut down my bots.

Did anyone notice?

I had been meaning to package up some output from @quest_glitches into some other site or gallery but, whatever. Everything goes here now. It’s fine.

(image)
(image)
(image)
(image)
(image)
(image)
(image)
(image)
(image)
(image)
(image)
(image)
(image)
(image)
(image)
(image)
(image)
(image)
(image)
(image)
(image)
(image)
(image)
(image)

More at @quest_glitches – I have the whole archive saved and may put it up somewhere else. (Eventually.)




Augmenting Human Intelligence with Fish

Mon, 16 Apr 2018 00:00:00 PST

The best designed and most interesting program I’ve used this year is fish, the friendly interactive shell. Finally, a command line shell for the 90s That’s the tagline for fish – which is cheeky, but it makes sense. Despite spending decades doing significant work in Unix and unix-like command line environments, it wasn’t until using fish that I realized I’ve never really liked my shell. And there’s been stagnation in that world for a long time – much of the innovations it introduces would have been just as applicable in the 90s as today. We spend a lot of time as a tech industry figuring out how voice assistants can augment and help us do things – but they often feel like thinly-veiled, limited, command-line-ish parsers behind the magic of voice recognition. (How many times has Siri apologized to you this week?) There’s more to learn from how fish approaches assisting and augmenting human-computer interaction than any desktop or mobile app I’ve used in years. Its treatment of autocompletion is one of those genius insights that is so good it seems obvious in retrospect – why hasn’t it always worked like this? Command Line Interface as Language Part of the challenge and high learning curve of working on the command line is that it is composed of lots and lots of different things that work differently. And once you build a vocabulary of commands in your head and match them to what you want to do, the syntax and options for each command are different. Some take flags, some take positional arguments, some take both, and rarely is there systematic similarity (maybe you can depend on the posix standards, but maybe not) Commands have accrued over decades from different authors, companies, and styles. The command line is a language where the grammar states you always start with a verb, but then almost anything goes. But each verb has its own rules. And also sometimes you don’t start with a verb because you’re piping things together and look, it’s just, complicated. The way to figure out how to use commands is, theoretically, the built-in manual, or man page, or in some cases a help sub-command or option. Manual pages are usually written with a lot of semantic markup that enables them to be displayed in smarter ways. Some shells will help by completing and showing relevant options for the next part of the command (usually this is in the form of showing files or directories that partially match what has been typed.) The genius of fish is to parse man pages, and then use it to provide in-context help during autocomplete in a way that is much richer and more useful than other shells. For example, I don’t compress images every day, so I don’t remember the options to jpegoptim. Typing jpegoptim - followed by tab helpfully shows me all the command line options, in context, without having to leave and read the man page – [adam@mico ~/Desktop]$ jpegoptim - --all-normal (Force all output files to be non-progressive.) --all-progressive (Force all output files to be progressive.) --csv (Print progress info in CSV format.) --dest (Sets alternative destination directory where to save optimized files …) --force (Force optimization, even if the result would be larger than the orig…) --help (Displays short usage information and exits.) --max (Sets the maximum image quality factor (disables lossless optimization …) --noaction (Don't really optimize files, just print results.) --overwrite (Overwrite target file even if it exists (when using -d option).) --preserve (Preserve file modification times.) --preserve-perms (Preserve file permissions (owner/group) by overwriting the …) --quiet (Quiet mode.) --size (Try to optimize file to given size (disables lossless optimization mo…[...]



Video Game Consumption 2018 Q1

Fri, 6 Apr 2018 00:00:00 PST

Video games are supposed to be fun. I played a lot of fun video games the last few months because I needed fun. The trick to playing more fun video games is to stop playing the un-fun ones faster. Steam has a good refund policy. And to play on easy. Life is hard enough as it is. Momodora: Reverie Under The Moonlight I really wanted to play 2D Metroidvanias as this year started. Tight platforming, fun exploration, beautifully detailed pixel art – Momodoro 4 is exactly what I was looking for. Clearly a labor of love, full of exquisitely beautiful, smooth, pixel animation. Also, has an easy difficulty level and I was not in the mood to be annoyed and uh, it was easy, so, I had fun. It was great. ★★★★ Archangel Giant mech VR is a dream come true for me. This is an arcade-style on-rails mech game that is kind of meh but feels closer to a bigger budget AAA title than it has rights to. It’s fun! But also, I love rails shooter, and mechs, and VR. At some point there will be Battletech VR and I’ll never come back to real life. ★★★★ Aviary Attorney My love of Ace Attorney games is well documented. And so the idea of a weird Ace-Attorney-esque visual novel thing starring birds seems like, very much relevant to my interests. And it is? And I mean, it’s OK. I just didn’t enjoy that much, I guess. I mean, I enjoyed it about as much as the Harvey Birdman, Attorney At Law game, which is a bit. I’m glad it exists. It’s charming in its own way. Only moderately fun in my opinion. ★★★ Ori and the Blind Forest: Definitive Edition Keeping on with my theme of getting super into Metroidvanias recently, I finally got around to playing this critically acclaimed game. The gameplay is fine, and it feels and plays well. The selling point is clearly the art – which most people love, but I found to be more distracting over time than anything. There was a lot of misunderstanding of what was what in the environment, and what was just background art. I get why people love this game. Hard to criticize something that is so beautiful – my critique is basically “too cute cut out this art” – but also, has an easy difficulty, so, I’m ok with it all. Fun! ★★★★ Iconoclasts This is an auteur video game – the singular vision (and execution) of Joakim Sandberg. I loved every moment of it. The characters, the art, the music, the story – every tiny animation and attention to detail. Glorious and fun. ★★★★★ Donna: Avenger of Blood This is a free adventure game I played this after reading about it on HG101. Another auteur game – described by the creator as “an interactive metaphysical thriller.” I have a particular love of the 90’s Sierra Adventure game style – when art was just starting to be digitized, but our low-res VGA screens (mode 13h supported 320x200 with 256 colors!) presented these faux photographs as a pixelated style that was uniquely computer. Donna keeps that – and sharpens the constraints to be black and white and grey. It’s unique and terrifying and memorable and weird and amateur and brilliant and bizarrely professional all at once. Loved it. Reminded me why adventure games were so refreshing and thrilling and interesting. I mean, it has vampires and weird pixel nudity, and sometimes the clouds are moving like crazy in the background and you have to argue with a bunch of weird professors on a TV show? It’s crazy. And great. ★★★★ Call of Duty: WWII Even when mediocre and flawed, COD is still fun. I only play the campaigns, and this one was not super memorable – especially when compared to my (hazy and undoubtably overly nostalgic) memories of the original Call of Duty and Call of Duty 2, which seemed to evoke a grandeur and terror of war that this one did not. It felt… kind of empty. ★★★ Fight’N Rage Aesthetically a love letter to 90’s arcade beat-em-ups by Capcom, Taito, [...]



Seventeen

Mon, 19 Feb 2018 00:00:00 PST

I have been continuously updating this site in variations of this format for seventeen years as of today.

🎂

Click the cake to send emoji to me, via Frog2Phone.

Each year that this site has continued is both a surprise and a delight.

Thanks for reading.

· · ·

If you’ve never had your own site on the web consider starting one. Or re-start yours if you’ve let it go dormant.

Don’t just give it all away to ad sponsored corporate communications. You’re better than that. Your words and thoughts and pictures and creativity deserve better.

The independent web still exists and is still worth being a part of.

And let me know so I can read it.




Frog To Phone: Instant Emoji Feedback for the Real Web

Tue, 6 Feb 2018 00:00:00 PST

When I was fixing referrer logs to be fun again I had low expectations – feedback via links is sort of a dying art. Who has time to read web sites and link to them? Seems hard. The genius of social media style “one click to send feedback” buttons is that it not only lowers the friction of sending feedback, but through smartphone push notifications makes that feedback instantaneous. The web doesn’t really work that way by default, but I decided I could fake it. The end result are the little frog, fire and other unicode emoji guys at the bottom of this post. Go ahead and tap/click the one below if you’re impatient – my phone and watch will light up. With a frog. 🐸 Architecture My first instinct was to write a little web server that would in response to some requests send a push notification to my phone. That might have been the right thing to do, but since I had just spent time crunching logs for referrers, I thought it might be faster to use a similar approach – have my web server log requests, and have a log analyzer that parses them and sends to my phone in some cases. Also this would allow me to use NGINX’s existing rate limiting and other bits directly, and not run a new externally available service. NGINX 🚂 Some relevant sections of the nginx.conf to create a new log format for easier parsing for this use case – http { ... log_format tiny '$remote_addr [$time_local] "$request" $status'; map $status $loggable { ~^[54] 0; default 1; } ... } Probably not needed but made things tidier and easier to debug. Then in my server section for this site – location ~* /rxn/ { access_log logs/rxn.log tiny if=$loggable; limit_req zone=rxns; if ( $request_method !~ ^(POST)$ ) { return 405; } try_files $uri =204; } What this does – Log access requests for /rxn/ URLs to the special rxn.log Return a 405 error for non-POST requests For POST requests return a 204 empty response (which should be all of the time, unless there’s a file there) It’s using POSTs instead of GETs to hopefully prevent search engine and bots from pinging me via automated means. I also added some rate limiting to (maybe) prevent some abuse. (Be nice, this does really ping me phone.) This ends up generating logs that look like this – EXAMPLE.IP.ADDRESS [02/Feb/2018:12:04:35 -0800] "POST /daily/2017/3/6/rxn/%F0%9F%94%A5 HTTP/2.0" 204 Web 🕸 You can view source to see what’s going on but the basics are a little plain vanilla Javascript – And the HTML for the emoji bits to call it – 🐸 It’s been a while since I wrote any Javascript or HTML and I know these are not best practices but, it’s Javascript and mostly works so that seems ok for this proof of concept. Log Parsing 📃 I had intended to just use UNIX shell commands to tail the log, parse it with awk and then send it to my phone with Pushover. Pushover is great – you set up an account, for a few dollars buy the app on your phone, and then you have an easy REST API to send push notifications to your phone. I got this to mostly work but awk didn’t play well with tail -f and figuring out how to flush the buffers and do Unicode decoding in awk and shell started to make me feel queasy and seem more trouble than it was worth. I gave up and just wrote a little Go program to parse the log lines as they came in from tail -fing the log and then did the API call to Pushover. (That code is boring but I guess I could post it somewhere if anybody cares.) User Experience That’s me tapping a frog, and having it sent to my phone. That would also include my IP address if I hadn’t blocked it out. Probably users that tap should get some sort of feedback other t[...]



Bringing Fun Back To Referrer Logs

Mon, 5 Feb 2018 00:00:00 PST

Referrer logs used to be one of the fun on the early web, but they have been ruined. I decided to fix them. The Old Ways Quitting Twitter and social media has made my life more pleasant overall, but there are tradeoffs. The feedback from an audience – which has been weaponized into an addictive feedback loop through an over-focus on “engagement” metrics – wasn’t always like this. Feedback used to come from log files created by your web server and then some analysis of the quiet footprints left by readers. (Sure, there were comments and discussion boards and email and AIM, but logs were the common denominator.) While IP addresses and number of accesses (“hits”) are interesting, you can also see referrers – the URLs that people clicked to arrive at your site. This helps you see if anyone was actually discussing what you wrote, which was the web pre-cursor to the at-mentions and similar things. · · · I had turned off logging on my web servers a while ago because I decided that I didn’t care to know how tiny my audience was. Part of that was referrer logs had become useless – instead of being filled with URLs of links to me, it was filled with spammers faking the referrer field. Why were people spamming referring logs? Some web servers and CMS’s are configured to generate lists of referrers and publish them on the web, and if these end up being publicly accessible and crawled by a search engine, then this is a way to generate “free” links back to a spammy site from a legitimate site, boosting their search engine placement potentially, or helping generate traffic in other ways. I decided to turn logging back on as I changed servers a couple weeks ago and the referrer log situation was ever worse than I remembered. Simple Text Filters vs. Complex Machine Learning Filtering Algorithms Looking at this log full of garbage, I felt incredible sadness that something that used to bring me and early web pals joy had been destroyed so thoroughly by unintended effects of search engines and advertising. I looked at some existing block lists and tried them out but they weren’t particularly effective as the spam URLs constantly change. I considered using some sort of self-hosted Javascript and log analysis to try and distinguish legitimate visits with a real referrer vs. spammy bots with fake referrers. And looking at the logs this probably would have worked sometimes but it’s an asymmetric thing – if people filter out “HEAD” requests, spammers just start doing “GET” requests. If you filter out requests that don’t fetch the CSS, they just fetch the CSS. It was clear from the logs that was already happening. It’s a losing game of whack-a-mole. So maybe train a machine learning algorithm on good vs. bad visits and distinguish spam IPs? Sounds needlessly complicated and also susceptible to the same issues. Thinking asymmetrically, of what the spammers can’t do, made the solution seem obvious in retrospect. Spammers can’t include actual links to the million sites they spam. So just fetch the HTML of the referrer on my server, and eliminate any that don’t include a link to me. This sounded like a job for simple UNIX tools pipelined together on top of my logs. A pointless job, probably, here’s how I did it. I use NGINX on OpenBSD but the basics here should probably work on a Linux/*BSD machine and other web servers with a little tweaking. check_ref I created a simple shell script to check if a referrer URL contains a link to me – #!/usr/bin/env ksh # # # USAGE: check_ref TARGET REFEFFER # # fetches HTML at REFERRER, checks that includes TARGET # # if it does, output the REF # if not, no output # # writes checked URLs to BAD_REFS and GOOD_REFS to avoid repeated downloads # TARGET=$1 REF=$2 BAD_REFS=/tmp/badrefs GOOD_REFS=/tmp/goodrefs if [[ -e $BAD_REFS ]]; then if [[ [...]



2018 Is So Absurd My Computer Doesn't Know What Day It Is

Fri, 2 Feb 2018 00:00:00 PST

On Saturday morning my server said it was Friday. Which isn’t that surprising – lots of things don’t make sense in 2018. So much so that we just have to sort of shrug off some of them. But my little server is supposed to be my tranquil Zen Garden of peace, tranquility, order, and coherence. It needed to be fixed. · · · Intel chips have a security flaw so large you could drive a truck through it, requiring changes in system software, infrastructure, and operational workarounds. Meltdown is probably the worse CPU bug ever found. I’ve always assumed the hardware guys know what they’re doing and bad software side is the real mess, because fuck-ups in hardware are rarer and costlier. I assumed wrong. The tech industry didn’t just shrug – we had to fix things and people were pissed – but normal people didn’t seem to worry, and most folks in tech didn’t either, really. They shrugged and move on. In an environment where the current US President had an affair with an adult film actress years ago and paid her hush money a month before the election, and people shrugged at that because it’s not even in the top 10 most absurd things going on, how could I expect a different reaction? (Allegedly had an affair, though despite denying the affair nobody seems to be disputing the payoff.) · · · People think of Siri or Alexa or other digital assistants as a magical digital helper. But having your own personal server has always felt to me more like the sci-fi robot butler. Fetching and processing mail and RSS feeds, running processes and jobs on your behalf while you sleep, serving web and other resources on your behalf, syncing and backing up your valuable data. But all of that requires a precise keeping of time. My server emails me every morning a number of things – so when that failed to arrive I knew something was wrong. My robot butler doesn’t know how to be late. My hosting provider (Linode) had informed me they would be doing upgrades and rebooting servers on Friday, so I naively thought maybe something just went wrong during that and rebooted my OpenBSD server/robot butler/barely used web distribution tool. It seemed like it worked – the clock reset itself properly. But it kept skewing away fast. And simple things like – sleep 1 – which one might think would take a second or so, took 10-12 seconds. So that was worrisome. · · · I run OpenBSD in a virtual machine on Linode, which is far from a supported configuration by Linode or OpenBSD. Some searching indicated QEMU+KVM made some changes that broke OpenBSD on it because, apparently only OpenBSD uses local APIC in “repeated mode.” I filed a support ticket to suggest some KVM kernel flag workarounds – which, given that the world of sysadmins and support people at hosting providers had been working non-stop to fix Meltdown – I didn’t expect a reasonable response on. · · · So I started to think about whether I should even be using a VM – sure the cost is lower, but hasn’t Meltdown shown us that we can’t trust the sharing of software or hardwre? Isn’t the right thing to overspend and colocate a real physical server in a data center, like in the Good Old Days of the internet? Laziness combined with impatience prevailed and I just switched VPS providers. · · · It was a lot faster to change hosting providers and rebuild my server than to try and get a response to a support ticket. Days later I got a not useful response on the support ticket – not unexpected given lack of support for OpenBSD and the craziness of Meltdown. I’ve automated most of the process except for DNS. Which was harder than it should have been because I decided to move name servers instead of just pointing existing ones elsewhere. But by lunch I had a new server up on Vultr, which supports my OS of choice[...]



Video Game Consumption Q4 2017

Fri, 5 Jan 2018 00:00:00 PST

I played a lot more games at the end of 2017. I even liked some of them! Shadowhand From the makers of Regency Solitaire, one of my favorites, I have been looking forward to this game for a while. It did not disappoint. I’m not sure how to explain the pure joy of an RPG-battle solitaire game set in 1800’s England. But it’s good. It’s very good. I love it. (It’s a little too hard by default but the developers listened and added an easier mode. I play on the hardest mode now.) ★★★★★ Valley This game is so beautiful, and the visceral feel of motion and fun in the gameplay and level design was so satisfying and fun. The plot and story mostly works as a way to propel things forward. I really liked this. I love contained, complete, well crafted 5 hour games like this. I want more of that. Most games don’t need more than 5 hours to tell their story and provide a compelling and memorable time. ★★★★ Wolfenstein II: The New Colossus It’s a weird world that we live in that a 2017 over-the-top FPS alt-history of Nazis winning WWII and Americans rebelling agains them in the US is unexpectedly politically poignant. The scariest parts of the game aren’t any of the action sequences, but the quiet bits of seeing Nazis and Klu Klux Klan members in charge on alt-history streets of the US. The New Order was amazing, and The New Colossus suffers for it by trying too hard to do different, crazier, more over the top stuff, while gameplay and level design overall doesn’t feel as solid. Enjoyable and memorable. ★★★★ Cuphead Cuphead looks great but is too hard. I didn’t really have fun with it. I got to the end but didn’t beat all the levels on the “hard” difficulty so don’t get to play the end boss? Lame. It’s a throwback in a lot of ways – it felt like it was substituting difficulty as a way to lengthen an experience (an aspect of 80’s games I’m happy to leave behind.) I’m glad Cuphead exists and is successful because I hope it encourages more games to experiment with visual styles but overall I was kind of like, meh. ★★★ A Golden Wake I pretty much always love Wadjet Eye games, which are basically new “classic” adventure games. Despite a really promising context (the roaring 20’s and the development of Florida!) But the art, story, and puzzles in this one just weren’t that interesting to me. Basically, I wanted this game to be Gold Rush! but it wasn’t. Although I’ve just now found out that the rights reverted to the original authors and Gold Rush was remade in 2014 and there’s a 2017 Gold Rush 2 so maybe if I wanted Gold Rush! I could have just played Gold Rush! (How did I miss that?) Uh, anyway, A Golden Wake – ok-ish. ★★ Tacoma From the creators of Gone Home, I was excited to play this. But where Gone Home enabled storytelling through setting, and exploring items, Tacoma is a sci-fi context where in addition to exploring and looking at items, you “replay” the actions of the inhabitants of a space station via an augmented reality mechanic and read their digital screens. This has the unfortunate effect of making it feel like you’re watching a play (with the actors portrayed as blobs) rather than being an active participant in solving anything. Gone Home evoked a ton of emotion in me as I played it – I felt nothing as I played Tacoma, sadly. Tacoma looks great but the writing, mechanics, and overall game just didn’t work for me. ★★ Obduction The thing is – I don’t like Myst so I should have known this was a mistake. But it looked so cool! Anyway, I don’t have the patience for this. Not just the puzzles, but at one point I got annoyed and looked at a walkthrough and saw how to solve it but literally the load times and constant back and [...]



2018

Wed, 3 Jan 2018 00:00:00 PST

For 2018 I quit Twitter. I guess so I could focus on my craft? Something like that. I mean, you’d understand if you were reading the mailing list. Maybe you wouldn’t understand. I don’t even know if I understand. Look, it’s 2018, and blogs are dead and uncool again so I’m all for them. Let’s do some links. Was that ever a thing I did? I don’t even remember. I think that was in the 90’s before I declared this a “web site” and not a “web log” but, I mean, whatever. It’s fine. Probably. Let’s just throw in links from my reading list every week and see if that’s a thing. Maybe that’s a thing I do now in 2018? We’ll see. · · · small scale tech manifesto But software doesn’t belong exclusively to corporations, and the success–or at least prevalence–of the free software movement means that we have ample building blocks to use for our own ends. We aren’t starting from scratch, and we can choose to build, and use, tools that support our needs and our values. We can’t magically will about the resources of a multi-billion dollar company, but we can make different decisions and choose different trade-offs. · · · Chris Rock’s 1996 SNL monologue transcript I was thinking about this (22 year old!) monologue recently because of how so much of it is both incredibly dated and timely simultaneously. Comedy is weird like that. · · · AI-Assisted Fake Porn Is Here and We’re All Fucked There’s a video of Gal Gadot having sex with her stepbrother on the internet. But it’s not really Gadot’s body, and it’s barely her own face. It’s an approximation, face-swapped to look like she’s performing in an existing incest-themed porn video. The video was created with a machine learning algorithm, using easily accessible materials and open-source code that anyone with a working knowledge of deep learning algorithms could put together. The massive semi-public databases of imagery and video of not just celebrity but normal human beings that is being created and stored now is going to be used in unanticipated ways. (How many years of publicly available photos/videos will be needed to create a believable enough 3D model that can then be manipulated programmatically in real time? Will it be ethical to create synthetic VR versions of celebrities to do as we please with? What about interacting with a programmatic version of a dead loved one?) · · · Some excerpts from recent Alan Kay emails It strikes me that many of the tech billionaires have already gotten their “upside” many times over from people like Engelbart and other researchers who were supported by ARPA, Parc, ONR, etc. Why would they insist on more upside, and that their money should be an “investment”? That isn’t how the great inventions and fundamental technologies were created that eventually gave rise to the wealth that they tapped into after the fact. · · · Why Trump’s War on the Deep State Is Failing—So Far This is banana-republic-type stuff. One year into Trump’s term in office, his character has not changed. The president of the United States—as John Bellinger warned as early as December 2015 and as I elaborated on in March of 2016—remains the principal threat in the world to the national security of the United States. His aspirations are as profoundly undemocratic and hostile to the institutions of democratic governance as they have ever been. He announces as much in interview after interview, in tweet after tweet. The president has not changed, and he will not change. Whether he has grown or will grow is not even an interesting question. The interesting question, one year in, is how the apparatus of democratic government is weathering his onslaught. The answer to this question is complicated [...]



Perpetual Volatility

Tue, 19 Dec 2017 00:00:00 PST

At this point in my adulthood I should probably have an advisor who distributes my assets across a basket of currencies, short term cash equivalents, high risk equities, low risk bonds, cryptocurrency I don’t understand, global real estate trusts, pretentious art, and 1980’s X-Men comics.

I don’t.

Also I don’t know if I believe in the economy because for my adult life it has either been “one step away from massive recession and or great depression” (2002~, 2008~) or “high as a kite via crazy asset bubbles” (199x-2001,2004-2007, 2015–?) and I studied enough history to know that the boom/bust cycle was actually the norm until the great depression brought in major financial reforms, but then the US government repealed Glass-Steagall, enabling further consolidation in the financial system and setting us up for perpetual volatility.

I was thinking about this as I watched the first episodes of Stranger Things with my wife, who does not quite share my appreciation for 1980’s pop culture. (Probably because she was busy doing smarter things as a child, like reading books, while I watched Spider-Man and His Amazing Friends re-runs for the 100th time.

I didn’t really appreciate the 80’s when I was living in them, but in retrospect, they were probably the apex of post-war Pax Americana and the last decade before the exponential growth in computer technology made us all feel perpetually unready for the future now, even though I’m probably as qualified to be a cyberpunk post-apocalyptic hacker hiding in a national library as anyone.

Anyway, my wife prefers 90’s culture over 80’s, which led to me monologuing –

“The 80’s were great. All the 90’s had was the repeal of Glass–Steagall and the commercialization of the internet, both of which are directly leading to the downfall of Western civilization.”

Anyway, I think that’s a good line and I hope everyone uses it in conversations.




Crossed Animals

Mon, 18 Dec 2017 00:00:00 PST

It’s been a tough couple of weeks. I guess it’s been a tough year.

· · ·

“Don’t try to write great stuff, just write actual stuff.”

At least that’s what I’ve been trying to tell myself, because I kept drafting and throwing out things for my mailing list and not posting anything on my site because.

Anyway, maybe some of it is salvageable.

Like that time I got upset about the new Animal Crossing.

· · ·

I tweeted about it but I delete things too quickly via software. Luckily there’s an archive.

An unorganized, text only archive, because, um, Unix philosophy? I don’t know.

$ grep -i "animal crossing" deleted_tweets.txt | less

i dream of doing my version of “the artist is present” where it’s me streaming animal crossing for 30 days non-stop

That’s not it, keep grepping.

animal crossing is esports

Hard to believe that one didn’t go viral. Also not it. Here we go –

Are we as a people spiritually ready to accept Animal Crossing for mobile into our lives?

i am watching this animal crossing pocket camp video and i’m super concerned

IN MY DAY FISHING IN ANIMAL CROSSING WAS MEDITATIVE AND WE LIKED IT

i should not care this much about animal crossing

animal crossing using real currency is some terrifying dystopian shit

couldn’t nintendo have made an animal crossing that wasn’t microtransaction addictionware

you guys think this is a joke but i’m actually pretty serious about microtransactions and real money destroying the feel of animal crossing

Many people then replied to say they know I am deadly serious about Animal Crossing.

If even Nintendo unable to stand against the forces of evil and is going to make microtransaction addictionware for smartphones is there any hope for this dimension.




Q3 2017 Video Game Consumption

Tue, 24 Oct 2017 00:00:00 PST

There was only one game for me the last few months. Rez Infinite Rez Infinite on Steam I originally played Rez on Dreamcast in college. I bootlegged it and burned it to compact disc because it had only been released in Japan or something and I was a college student with a less strict view of intellectual property in 2001. (Also, I had faster internet 16 years ago than today.) The bootleg version crashed when I beat the game. I never saw the ending or unlocked Beyond Mode. I played Rez enough to knew I loved it. But I didn’t really experience Rez. · · · I finally bought a PS2 way late, in 2004, and bought Rez (which was hard to find in the US.) I played it deeply since it didn’t like, crash at the end when you unlock all the new stuff. I experienced Rez. I loved Rez. · · · Rez is a rail shooter – which is a genre that barely even exists anymore. Enemies come at you, and your character moves “on rails” through a 3D environment. But you just focus on shooting things quickly. Rez is a rail shooter that takes place in a computer. You are a hacker trying to purge a system, but the story is, it doesn’t matter. (It does matter, but that’s… we don’t have time for that.) What matters is that unlike normal sound effects and music, Rez invokes a near synesthesia by tightly coupling the sound, electronic music, vibration, and gameplay. It’s the details and the multi sensory interactivity coming together that makes it… unique. · · · *Rez*HD for XBox 360 Live came out in 2008. I experienced Rez again. But I began to practice Rez. I would play Direct Assault mode (which takes about an hour) every day after work for days on end. I unlocked pretty much everything I never got to 100% on the Level 5 to get pink butterflies because I’m not insane or that good, but I did become a Morolian which is its own amazing form of a true happy ending. · · · Almost a decade later, in June of 2017 I decided I needed to play Rez again. I began with a Dreamcast emulator on my PC because I had no way to easily play XBLA games - and it’s funny because 16 years later a bootlegged copy running in a virtual Dreamcast doesn’t crash when I beat it, so I could continue on to Beyond mode. Life is very strange sometimes. Some people meditate when they want to find inner truth and peace in times of need but for me I reached for a game that was designed as a synesthesia art project and eventually shipped a vibrator accessory. But, earnestly, because it was my practice. And I beat it again, many times, because I needed to. · · · Then, out of nowhere, Rez Infinite (which was a PS4 exclusive, thus inaccessible to me) was announced and immediately released for PC, with VR support. There are so few genuine surprises in life anymore, and even fewer that fill me with pure joy. This was one of them. · · · Rez Infinite enables Rez to be played at higher resolutions and on PC, but most importantly, it enables VR support on HTC Vive (which I own.) I’ve written a little about VR but, in some ways, all my experiences with VR weren’t important before **RezInfinite. In VR, Rez isn’t a practice or a thing to even know or love. Rez Infinite is Rez. But I’m in it. It’s everywhere. All around me. I am Rez. You are Rez, when you’re there. We are a way for Rez to know itself. · · · The mechanics within VR made Rez– which at times had been a frustratingly difficult experience that I memorized and wrote into my brain and damaged my thumbs and made my eyes water – easier. Natural. At times almost trivial. By fully immersing myself – by becoming one with Rez – I could do almost anything in the game. (I saw the butterfly[...]



Lost Time On Titlebars

Tue, 5 Sep 2017 00:00:00 PST

Let’s pretend during a weekend of record heat I decided the best use of my time is to create a MacOS desktop of terminals and editors with less chrome and a more consistent color scheme. Well, we don’t have to pretend. Window Management Amethyst is a tiling window manager. It’s great. Alternatives – kwm and its successor chunkwm but I’ve always found the setup and usage too complicated use XQuartz and i3 or dwm or something, but I want to be able to use MacOS apps, not just X stuff Minimal System Chrome Hide the menu and dock by default. System Preferences > Dock > Automatically hide and show the Dock System Preferences > General > Automatically hide and show the menu bar It’s pretty hard to get rid of MacOS system adornments like title bars, or change to square windows. So I just changed the background to a solid image color to fake it. Editor I rely on Aquamacs as my primary editor. I love it. To import and set the theme via .emacs – ; tomorrow night theme (load "~/emacs/color-theme-tomorrow.el") (color-theme-tomorrow-night-blue) Natural Title Bars I adapted the “natural title bars” from these patches – Natural-Title-Bars title-bar-patch – into my fork of the Aquamacs source tree. I didn’t integrate it into Aquamacs UI, because, uhh, I don’t know how to do that. So instead, we drop to a terminal for – defaults write org.gnu.Aquamacs TransparentTitleBar DARK Great! Now we have an Emacs for MacOS that has a transparent title bar, and all we had to do was create a 200mb binary from source code and set NSUserDefaults from the command line. Colored Tab Bar But the tab bar doesn’t match the title bar and it’s like, why even bother if we’re not going to finish this. Luckily it’s customizable, because everything in emacs is. Added to .emacs to change the colors of the tabs to match my theme – (require 'tabbar) ;; Tabbar settings (set-face-attribute 'tabbar-default nil :background "#002451" :foreground "#ffffff" :box '(:line-width 1 :color "#002451" :style nil)) (set-face-attribute 'tabbar-unselected nil :background "#002451" :foreground "#ffffff" :box '(:line-width 5 :color "#002451" :style nil)) (set-face-attribute 'tabbar-selected nil :background "#003f8e" :foreground "#ffffff" :box '(:line-width 5 :color "#002451" :style nil)) (set-face-attribute 'tabbar-highlight nil :background "#002451" :foreground "#ffffff" :underline nil :box '(:line-width 5 :color "#002451" :style nil)) (set-face-attribute 'tabbar-button nil :box '(:line-width 1 :color "#002451" :style nil)) (set-face-attribute 'tabbar-separator nil :background "#ff9da4" :height 0.6) (tabbar-mode 1) A Brief Diversion into iTerm2 I normally use the stock Terminal.app but you can change color of iTerm2 title bars with proprietary escape codes! Like this – #!/bin/sh echo -e "\033]6;1;bg;red;brightness;0\a" echo -e "\033]6;1;bg;green;brightness;36\a" echo -e "\033]6;1;bg;blue;brightness;81\a" clear The problem is iTerm2 is slow. Turns out iTerm2 feels significantly laggier than good old Terminal.app. This is actually not my imagination, you can benchmark it. In fact, pretty much all of the “cool” terminals like Hyper.sh are insanely slow. I don’t know how any of you guys use Hyper. Or any of these weird electron/javascript/frankenstein native/web apps, really. Back to Emacs Anyway those results made me think I should try to embrace eshell in my emacs of choice. Eshell Emacs[...]