Some small OnePo improvements and fixes:

  • Making links to other pages the traditional way, via the "link" icon and the dialog box, works again on the iPhone.
  • You can also make links by just pasting a link to any page straight into your post, without clicking the link button. When you do that, a nice automatic preview and link appears. We've had this for ages, but there was a dumb bug that broke it for most cases, except YouTube. All fixed. Here's a nice example (and a cool game):

You'll note I didn't have to create any content for that, I just pasted the address of the page straight into this post. This is based on the "open graph" tags that websites already provide for the benefit of Facebook sharing.

  • Speaking of the automatic link feature: pasting a URL like that in the middle of your text once again splits the text into two sections, with the link preview in the middle.

As I mentioned, you can still make links the old-fashioned way too.

(At this point I don't care that I'll never be able to buy the domain onepo dot com. I'm still going to call it that, because how can you not?)

MORE
7/3 '22 6 Comments
Very nice work sir! Seems like an elegant solution, and makes things both clean AND pretty.
Also, I’m going to have to check out that game.
Many thanks, dear host!
Stinker! I haven’t broken 101.
 

Boo: I have paxlovid rebound. I am “screamingly positive” for COVID, much like in this article. It happens.

Yay: the rebound symptoms are mild, as promised. Think “severe allergies.” No one has yet reported serious symptoms during the rebound, and more importantly paxlovid reduces hospitalizations by 90% during the initial course of COVID.

I have to stay isolated for another five days and retest. I’ll live! (Literally)

If you don’t have any risk factors they say you probably don’t need it. I took it because of my asthma and history of difficult flu. That may well have been a super-great decision. I don’t have a control Tom. 🤪

🌠 for anyone who finds themselves facing the “paxlovid or not?” question.


MORE
6/8 '22 3 Comments
I wonder how many times one can rebound? Let’s hope you don’t have to find out.
The isolation/quarantine is no fun. Maybe an opportunity to catch up on books and movies though.
A few more days, I’ll live.
 

My favorite bit about this story is that the light from this star began its journey 13 billion years ago, but the star is now 28 billion miles away, because the universe kept expanding and we kept on moving apart from one another during those 13 billion years.

Only that's not right, because the star died aeons ago. Stars like our sun live 10 billion years; huge stars like this one are too fast to live, too young to die; they wink out in 10 million years.

So it's more accurate to say the former location of the star is now 28 billion light years away. And no longer part of the "observable universe," because light from where that star is today will never reach us. 28 billion light years = 8584 megaparsecs (yes, I asked google). A galaxy 4,300 megaparsecs away from us is receding from us at the speed of light. Our relative velocity is therefore close to twice the speed of light, which is possible because it's not the velocity of either object relative to a point that isn't moving. And that means light from there will never reach us again.

[Waves goodbye, realizes it's a bit late for that]

MORE
4/1 '22 1 Comment
I thought you were referencing a Decemberists song in your title but it’s not. Maybe this story should be.
 

Hey gang, sat down to write a post today and pictures were busted; sorry about that. Post tomorrow, got us a fix for uploading pictures today. Enjoy.

Work is currently underway on support for adding alternative text to any image, whether in a post or in a comment. For comments this involves a bit of a design overhaul, so it may be a Minute.

MORE
9/13 '21 3 Comments
Alt -text is a feature worth the wait. I like to hide secret messages in the alt-text of images at work.
You Da Best
 

Hi gang,

I saw a couple of friends coping in a DIY way with a possible bug today (tough to say at this point), and it prompted some thoughts about how little attention I've given the platform in a long time. My last push to the server was... cough... two and a half years ago.

In a way this is not such a bad thing. Hey, it works!

But there's a lot that could be improved, and long-running bugs that haven't received attention (notifications for your own replies, anyone?), and believe it or not I'm still interested in the question of whether I did everything I could to make it easy for folks to onboard and, yes, grow the site.

But of course there's very little time.

Meanwhile... recently in another context I was facing pleas to do more in a space that's outside of my more essential responsibilities from day to day. I am very well supported at work. But as in any workplace there are gotta-haves, wanna-haves and really-oughta-haves and it can be tough to juggle them.

So I struggled to organize this really-ought-have stuff as a Project. But a Project implies a Budget and Time and there is no budget or pre-scheduled time for that particular thing right now (darn those pesky gotta-haves). That meant everything I was writing felt like a recipe for stress.

I felt stuck, and anxious.

Then I noticed a kanban board feature in our internal wiki and deliberately created an itty-bitty kanban board to track progress in that particular arena.

When I was asked if I wanted to turn it into a Project instead... I said "nope!" Because the medium is the message. Project = Milestones. Schedule. Release Dates. Time Pressure. All of which are appropriate when resources are available, and needlessly stressful when they are not.

But a kanban board says "hey... this is the art of the possible! Nibble at it. Bash at it. Occasionally really go at it. You'll get there."

My kanban board at work turned out very well and I'm still using it to nibble away at the oughta-have thing I can only work on occasionally.

So in the same spirit, I plan to set up a kanban board for One Post Wonder.

And today, in that kanban spirit, I did three itty bitty things to move the ball forward:

1. The "submit a bug" button just sends me a damn email. It used to post an issue to my github project, which was too clever by half. I didn't get any notifications, I didn't pay attention and you probably felt neglected. I'm sorry about that. This should be better.

2. I fixed an issue that caused gmail to reject some emails from One Post Wonder. There are services you can pay to deliver your emails reliably. Cost aside, I feel it's important that we try to maintain independence in this area. Even though it's a pain in the ass and an ever-moving target.

3. I changed the welcome message you see when you sign up from "each day, post a carefully curated sonnet concerning the state of world affairs or you will be punished with lasers" (*) to this:

"It doesn't matter if it's a cat picture, a duck joke or a column worthy of Alexandra Petri."

I think this is way more welcoming, and I hope it will encourage people to feel like it's OK to just chill here. Lord knows I do. Shitpost away, everyone. You just can't do it more than once a day.

(*) It didn't really say that. It was far more well-intentioned but still kinda intimidating.

MORE
8/28 '21 12 Comments
I hope you know that this will go down on your permanent record.
I don’t feel tardy.
Tom, I'm very grateful for all the work and thought you've put in to creating friendly online spaces over the years. You have such a knack for it, and you do us all a great kindness. Thank you.

Perhaps you could share some of the "work" of it with some of us who code, if you and they are willing? Maybe you've all known each other long enough that it's time to grow into more of a cooperative model? I daresay you needn't shoulder this alone.
I should mention that Sean coded quite a bit for a while in addition to doing a beautiful job on the design. I am only now finally thinking a refresh might be in order. It still looks great.
Tom did canvas for contributors and, mea culpa, I signed up and then kinda got bogged down in even trying to get my development environment off the ground - OPW uses a few things I'm not au fait with and had to read up on. As a result I've had the code sitting on my laptop for several <embarrassed small print>years</embarrassed small print> without me doing any more than poking ineffectually at it.
No big, man. I could see that readability was an issue with that old school callback library, and I started a conversion to async/await style which is much more readable and maintainable, but did not finish. I should try that again in a more incremental way.
I am thinking about moving it to Amazon Lambda and such, which would be good for scalability and good for my skill set.
Ah, Amazon Lambda, or as they called it in the old days, "buying CPU time on the mainframe."
Heh. It’s just that I keep solving things with old school scripting on servers I fail to treat as cattle. Need a shakeup.
tsk, don't diss my employer's cunning dressing up of old tech as new. Now, can I interest you in a punchcard?
I WRITED SOME CODE. I HOPE YOU LIKE IT.

LOVE
WAIDER
https://www.boardgamegeek.com/boardgame/109276/kanban-drivers-edition is a game about optimizing your automotive assembly line, and I'd heard about it but never bothered learning what "kanban" meant.
 

Ingredients

In the pan

2 14 oz bricks extra firm tofu, chopped into 1/2" cubes or so

8 white button mushrooms, quartered

1 medium tomato, cut in eighths

Dressing

2 carrots, peeled and chopped in chunks

1 stalk celery, chopped in chunks

1/4 cup almonds

2 tsp balsamic vinegar

1/4 cup chopped cilantro and basil

1 cup water, or so

1 tablespoon curry powder or paprika


Place the tofu, mushrooms and tomato in a broiling pan. Don't use pyrex. It'll go BOOM. Maybe not the first time, but eventually. Ask me how I know.

Start preheating the oven to 425 degrees fahrenheit.

Puree the dressing in a food processor or vitamix blender. I use the smoothie setting on the vitamix.

Pour the dressing evenly over the contents of the pan, taking care not to spill over the edges. You might wind up setting some dressing aside for salad purposes.

Shake a little more curry powder or paprika on top.

Bake for 30 minutes at 425 degrees, then broil on high for 20 minutes, or until the tops of the tofu have a bit of yummy black char. Be prepared to placate your smoke detector.

MORE
4/6 '21 4 Comments
YOU ARE MY HERO WHO GOES BOOM
Has no one actually instantiated the million-dollar invention of a voice-deactivated smoke detector? Too much liability? "I'M JUST COOKING!"
Brilliant idea! Although the regulatory hurdles might be ... hurdles.
Curry powder and paprika ... have very different flavor profiles.
 

I know, I know. Banh mi literally means "bread" in Vietnamese. But we mostly steer clear of bread as a staple food, and we love banh mi. So I came up with this.

I've read that in Vietnam banh mi sandwiches are stuffed with all kinds of things. Even ice cream. Whereas I'm sure the usual filling, served as a salad, has a name of its own. But I don't know it, so.

Whatever, this is delicious.

Ingredients

  • 2 heads lettuce, chopped
  • 3-4 stalks of green onion, chopped
  • A chopped garlic scape (green stalk) or two, if you have 'em
  • 1 sliced carrot
  • 1 14 oz box firm tofu, cubed
  • Sliced mushrooms
  • Fistful of arugula
  • 1/2 cup chopped cilantro
  • Fresh basil, if you've got it
  • 1 red bell pepper
  • 6 tablespoons rice vinegar (it matters)
  • 2 tablespoons Bragg's liquid aminos (or a smaller amount of soy sauce)
  • 1 date, chopped (to balance the acid; or use hoisin sauce and ditch the Bragg's)
  • A generous shake of paprika
  • Black pepper to taste
  • Toss in some sesame seeds

Combine and serve.

Rice vinegar seems to be the real "I am eating Vietnamese food" taste signal here, along with the cilantro.

Feel free to sub in actual onions, actual garlic, jalapenos, etc. according to your digestive capabilities.

The above would also be bangin' on actual baguette I'm sure, particularly with a little mayo. Also I haven't tried cucumber yet, which is definitely canonical.

    MORE
    3/14 '21 11 Comments
    Also, YES CUCUMBER. Always cucumber.
    For some reason my beloved local produce store only has gigantic English cucumbers, but this dish might be the use for that.
    Rice vinegar is MAGIC, not just for Vietnamese recipes. It's so yummy.
    Thanks, Tom. This was EXACTLY what I wanted to eat today!

    I happened to have cucumber, so in it went.

    Used 2/3 regular rice vinegar and 1/3 seasoned (sweetened) rice vinegar; I have a choking trigger sometimes if things are too acidic, so I was being cautious. It's not actually dangerous, but my epiglottis SLAMS shut if something is too vinegary.

    Oh! And I didn't have any garlic scapes, so I buzzed a small clove of garlic with the date, vinegar, and Bragg's in a food processor. Chopped everything tiny and made a nice blended dressing.
    I’m jazzed about this.
    This sounds deeeeeelish.
    A) This sounds ridiculously good.
    B) I miss Vietnamese food and OMG why do I not just make it?
    C) Fistful of Arugula is the name of my next album. :)
     

    The Kilobyte's Gambit is a lovely mashup of a chess engine in 1K of JavaScript, plus awesome CGA retro pixel art. I love it.

    Kicked my ass immediately, I’m not good at chess. A friend of mine in college used to say, regarding vegetarianism, that he wouldn’t eat anything that could beat him at chess. I found this worrisome.

    It also reminds me of this:

    Atari 2600 Video Chess! This was chess in 4K of 6502 assembly language, on a machine with only 128 bytes of RAM that was only really capable of displaying three, maybe six objects per line on the screen, and that only with tricky programming. If you look closely, you’ll see that the chess pieces are drawn on alternating lines to get around this limitation. Apparently it played decent chess.

    Before we hand the OG Atari developers the tiny-chess-program crown, though, the author of the 1K JavaScript chess engine has also written a 326-byte chess game for DOS, as well as... a 1K chess cartridge for the Atari 2600. Yes, it flickers a lot, but hey.

    So many props given. Two summers ago I wrote an AI checkers game of my own, using the minimax algorithm. It wasn't terribly good at checkers and it sure wasn't 1K of JavaScript. To be fair, it was also readable code.

    MORE
    3/6 '21 2 Comments
    I didn't last long either!

    I love 5K and 1K projects and then I cry when I load a webpage that's 6M and the main purpose is to direct you to a different page.
    I was just going to say, the varying lineweights were making me twitchy until I realized what they meant. Clever clever.
     
     

    I just renewed onepostwonder.com for three more years. 🎂

    Every few years I reach out to the guy who owns onepo.com. He always says no. I have made some credible offers. That's cool, the man likes his domain.

    I should really take "beta" off the site, huh.

    MORE
    6/14 '20 5 Comments
    Happy fifth anniversary!
    why did I say fifth? what's wrong with me?
    Happy Anniversary to you!
    And us!
    It's a great site!
    I do love this neighborhood.

    I wish I could convince friends to move in next door. On the other hand, being a quiet cul-de-sac is a large part of the charm.

    I am ever grateful for your consistent efforts over the long term to create and hold space for community.