We went to Thailand!

filed under: ,

665 days ago

Learn all about it in these slides

Add a comment

We built a deck!

filed under:

951 days ago

Learn all about it in these slides

Add a comment

Cub Scout popcorn

filed under: , , , ,

2432 days ago

Picture this…

It’s 6am on a Saturday in September, somewhere in Kansas. The sun is coming up, and it promises to be a 90-degree day. Thousands of boys (6-12 years old) from across the country are arriving – by truck, by bicycle, by parachute, by hitchhiking – and gathering together in a warehouse on a giant corn farm. They’re all in Cub Scout uniforms – perfectly pressed and starched – and carrying water bottles and giant backpacks.

A thousand or so of the boys – the ones who are tall enough – go out into the corn fields, and start picking corn. They carry baskets of it back to the warehouse, and shuck it. They cut off the kernels, and put them in giant ovens to dry.

A few hundred or so boys start boiling giant kettles of sugar, reducing it down to caramel. They stir and stir and test and taste, until it is just right.

The smaller boys, the ones with artistic talent, get out sheets of cardboard and start cutting it and coloring it, to make boxes.

A dozen older boys – trusted, reliable, experienced – take a bunch of cash from last year’s sale into town. There they invite the local OSHA inspectors and politicians out to a lavish lunch… so they don’t notice the child labor right down the road.

They spend their day this way, toiling in the hot sun, and over hot ovens, until finally the sun goes down. Then they all come back to the warehouse, and start putting it all together.

They bag the kernels, for microwaves. They pop literal tons of corn, and dip it in caramel, and bag it up. They pour butter, and cheddar, and nuts, and make some of the tastiest popcorn anyone has ever known.

The spend the rest of the night packaging it up.

In the morning, they all walk away, carrying giant backpacks full of fresh popcorn, in all sorts of flavors and styles. They make their way home, across the United States, and begin the process of selling the popcorn to raise money for their Packs.

And now that popcorn is available to you… and when you see the prices on the popcorn, and you question whether any sane person would really spend that much – just remember that it’s American made, with American values, with American labor – and it’s worth it!*

*This popcorn was not actually made this way

Oh hi! Thanks for reading this far! By the way, my 7-year-old is selling popcorn for Cub Scouts this year. If you’d like some, you can order popcorn from his web store and it will ship straight to you, via Amazon.

(And thank you!)

Add a comment

This year for Lent: electronic distractions

filed under: , , , , ,

2672 days ago

I think I skipped last year’s Lent, and maybe the year before, too. (You can read about prior years, if you like.) But this year it was clear a few months ago what I needed to give up: my phone.

And then Lent snuck up on me. (It starts tomorrow!) I’m not ready! I can’t let go, not yet, not now! Nooooooo!!!!

So I’ve made some hasty plans. Here they are:

  1. I’m not giving up the phone entirely. I depend on it to manage most of my life, and I don’t really think I’d be better off with e.g. a paper calendar or paper lists of reminders or communicating via telegraph. Specifically, I’m keeping access to:
    1. Calling (you know, the “phone”)
    2. Text messages
    3. Email (but no notifications)
    4. Weather
    5. Music
    6. Pictures (but no notifications)
    7. Reminders
    8. Calendar
    9. All the various utilities that serve a single purpose that I don’t usually use as a distraction (e.g. Notes, Amazon, Dashlane) (but no notifications)
  2. I am giving up all the things on my phone that I use to distract myself from boredom. That means hiding the apps, disabling their notifications, and not looking at them at all between now and April 12th. These include:
    1. Twitter & Google+ (I don’t have Facebook)
    2. Safari & Chrome
    3. Newsify / Feedly
    4. Kindle (I have a Paperwhite; I’ll allow it as a substitute for a physical book)
    5. Youtube & Air Video HD & Podcasts & Audible
    6. Games
  3. Also, to keep myself from just bingeing at a regular computer, I’ll be giving up most of those services entirely (until April 12th):
    1. Twitter & Google+
    2. Feedly
    3. Youtube
    4. Watching movies and TV shows by myself
    5. Games on the computer (ha ha! I haven’t done this in years)
  4. Finally, to get the phone away from my face as much as possible, I’ll be putting it down as soon as I get home, and only picking it up if there’s some specific reason to do so.
    1. Oh, and I’ll apply a similar rule in the morning – no picking it up until after I’m showered.

Here goes!

Add a comment

Speaking up

filed under: , , , , , , ,

2701 days ago

Note: I thought long and hard about what to do about Trump, and decided that personally reaching out to my family, many of whom are Trump supporters, was the best thing I could do. I wrote the email below and sent it. I thought it might be important or useful for other people, too, so I’m sharing it here. Feel free to do with it as you like.

This email is about Trump. I know email isn’t the best way to publish political thought, but I’m trying to do what I can about a terrible situation, and this is the most valuable thing I can figure out to do (that I’m not otherwise already doing). I’m writing this to save myself, my family, and all of you – so I’m willing to break a norm.

Please read this. Do it as a personal favor to me, even if you think I’m being dramatic, or wasting your time. I’ll owe you. Do it as a personal favor to yourself, so that when you look back on this moment, you don’t feel ashamed.

Trump is headed for a coup. Either an explicit, overt one, or a fumbling, oh-we-didn’t-really-notice-until-it-was-too-late-that-he’s-unstoppable one. He’s moving very, very fast – it will be over within a few weeks. It doesn’t matter if you agree with his stated goals and plans; converting our country into an autocracy will not be good for any of us. Think about what it would mean to have a president who was accountable to nobody, and nothing – not to his prior statements, not to his political party, not to any court.

If this idea is at all surprising to you, that’s why I’m writing this email. It’s going to be over before you’re even ready for it.

If you’re angry at the “idiots” who created this situation, that’s why I’m writing this email. You’re part of the problem. I’ve been part of the problem, too. I’m trying to dig my way out from under that mistake.

Even if you totally disagree with all of this, I’m desperately asking you to pause now for a minute and think about what things would be “over the line” for you – what things could Trump (or any president) do, that would be clearly wrong and irreparable? What things are so far out of “normal” that they’d clearly indicate that something is very broken, and that he’s uncontrollable? Write those things down. If he hasn’t already crossed that line for you, look back at that list periodically. It will help you realize when “the next little thing” or “the next thing that’s too heavy to face” is actually across that line.

Now ask yourself – is banning a group of people, based purely (and overtly) on their religion, or country of origin, over the line? What if that group of people has exactly zero history of ever killing us in terrorist attacks? What if none of the countries-of-origin of the 9/11 attackers were on the list? What if all these immigrants already have to go through an 18-to-24-month vetting process across multiple federal agencies before they are allowed in, so all the statements about needing “more vetting” or “they’ll sneak in” are just outright lies? Would those things be over the line? Would causing all this pain and suffering, just for personal political gain, be over the line? What about all these other worse things, that are going to happen?

Please realize that at some point in the near future, any rights you have – yes you, a middle-class white person – will cease to become “rights” and will only be “by Trump’s benevolence”. As interpreted by his cronies. And driven by their personal motivations. Without consequences for their terrible actions.

Whatever he can do to any marginalized group (e.g. Muslims, Mexicans, blacks, gays, etc.), he can do to any group (i.e. you). He will be able to grab any one of you/us and make us homeless, helpless, powerless – without recourse.

His regime is doing exactly that with Muslims, right now, via DHS and the 100-mile border. (The 100-mile border was the thing that was over the line for me, years ago – well before Trump.) And DHS is clearly supporting him. But for middle-class white Americans in general, he doesn’t quite yet have the political foundations yet to get away with it en-masse. But that’s coming.

Note that I don’t care whose fault this is, and I don’t think “Democrats” are somehow better, and I’m not at all concerned about what we should have done before now. I don’t care about Trump’s stated goals for the country and whether they are good or bad. I don’t care whether each individual executive order is a good or bad idea. I care about what they all mean, collectively. I care about the complete destruction of our democracy, our safety, and our freedom.

The whole system is fucked, and it has been for a long time, and this is just the consequences playing out. But now that we’re here, we have to survive it, and ideally we do so with some semblance of honor and dignity.

If you want my advice on what to do about it, here it is: think of every “enemy” you can think of – Muslims, Republicans, Democrats, rich people, poor people, “terrorists,” whoever – and just… let go. Stop imagining them as enemies. Remember that they are people, and they have jobs and kids and backyards and games… and the only reason they have different values and viewpoints than you is that they have different experiences and history than you. Neither side is right. There aren’t even sides. There are just people, and all people are just trying to get through life. Take some time and try to understand why they would think the way they do. Assume that they all started as good actors, and imagine the circumstances that would have had to exist to make them the way they are. Imagine if you’d have turned out differently, in those same circumstances.

(Note that this viewpoint isn’t incompatible with needing to kill people, sometimes. But it is incompatible with doing it out of hatred.)

Imagine what your life would be like if you suddenly found yourself in a group that most people saw as “the enemy”. Imagine if you had to live through that. The only reason that isn’t your life, is the luck of your particular circumstances.

Go back up and read that article I linked above under ‘You’re part of the problem’. It’s advice from someone who has been through this before, and failed. He says that we need to make more bridges, not fight more enemies. Making enemies is what Trump wants us to do.

That article says we have to work together to limit this president to only those powers that we want every president – even ones we vehemently disagree with – to have. We don’t have to stop them (Trump and all future presidents) from doing all the stupid things they’re going to do. We just have to work together to ensure that no president – now or in the future – has more power than it is safe to let him (or her) have. Even if you agree with Trump’s current goals and actions, ask yourself – do you want a future president, that you disagree with, to have this much power? This is the foundation of our democracy – that we limit the power we grant to our government – and we’ve been failing to do so.

Then do the most important thing you can do: reach out to the people around you – especially the people you usually think of as “enemies” – and get them to see that we’re all in danger. We’ve all been played for fools. We’re all being tricked. We’re all in this together.

Maybe getting more of us onto the same page, will be enough.

With love and concern,

Add a comment [2]

A bicycle test

filed under: , , ,

2940 days ago

(I know, it’s been years since I posted here. I’m going to pretend like that doesn’t matter. You should too. Thanks!)

Benjamin initially resisted the removal of his training wheels. When he was finally willing to try it (at the end of last summer), I told him he couldn’t have them back on – he just had to learn to ride. He eventually started to learn to ride without them, but then winter hit.

This summer (as a 6-year-old), he figured it out, and he started to enjoy riding… but then he plateaued and wasn’t really all that interested in getting better. (He still wasn’t good enough to really love it.)

So I devised a riding test, and told him that once he passed it, he’d be allowed to go around the block on his own. It turns out that was a great idea, for a bunch of reasons – so I’m sharing the test here. Maybe it will be useful to you.

Reasons why it was a great idea:

  1. He was motivated to work on it, because of the goal
  2. He was motivated to work on it, because it was a discrete list and he could measure his own progress
  3. He was motivated to work on it, because he got 1-on-1 attention from me
  4. He got better at riding, because of it
  5. He learned that even the things that seemed hard/scary could be learned/overcome with practice and determination
  6. He came out of it loving to ride his bicycle
  7. He came out of it more proud of the work he had done, than of the new privileges he earned

(Note that it took about 6 weeks, start to finish.)

So here’s the test. I don’t remember the order in which he did the individual parts, but it certainly wasn’t in the order presented here. (It was certainly important that some were easy.) The order here is the order I thought of them :) I’ve added comments where particular tests were notable for some reason.

For each item on the list, he had to do it twice, back-to-back, without putting a foot down (or without falling, if the test involved stopping). If he did it once and then failed the next time, he had to start over and do it twice more. (To prove mastery, not just luck.) If the test involved e.g. a turn, then the first time he had to turn one way, and the second time he had to turn the other way.

  1. Start from standing without falling over
  2. Ride the length of the driveway (about 50’)
  3. Ride and stop with the front wheel on a line (within about a foot of it)
  4. Ride and stop without putting a foot down until all the way stopped
  5. Ride down the sidewalk and turn around in a neighbors (wide) driveway, without putting a foot down
    • This one he avoided until near the very end. The driveway was slightly inclined, and the turn radius was fairly small, so it was tricky. (Remember that he had to do it both ways, too.) He was scared of it – but once he had developed the skills from the rest of the test, and once he got up the courage to try it, he passed it quite easily.
  6. Pedal while standing up
  7. Slalom of 5 cones, 4-5’ apart
  8. Avoid a surprise obstacle
    • His brother ended up providing the surprise obstacle, twice! (Not in a row, but I counted it anyway).
  9. Ride down the driveway (a mild hill) and turn onto the sidewalk without using brakes or riding over the grass
    • He surprised me by doing this one fairly early.
  10. Ride down the sidewalk and turn up the driveway and make it up the hill without stopping
  11. Start and stop while riding on grass
  12. Start from a standing stop on an upward-facing hill (the driveway)
  13. Use his kickstand (which was very stiff)
  14. Cross the street (on his bicycle) between two driveways, safely
  15. Cross the street (on his bicycle) at a corner (4-way stop)
    • This one provided a great example of why you have to pay close attention to traffic in all four directions!
  16. Ride at a walking pace for 50’
  17. Go all the way around the block (i.e. not crossing the street) with someone following him (on a bicycle)
    • This one and the next were off-limits until the rest were completed.
  18. Go all the way around the block by himself
    • This one he did once without a problem, but then got scared of falling or hurting himself with nobody around. After a week or so he got up the courage to do it (and was fine) – and passed his test!

One final note – we ended up including “crossing the street unsupervised” as a new privilege. (Both privileges require getting permission to go, first.)

Add a comment

Technology and Lent

filed under: , , , , , , , , , , , , , , , , ,

4106 days ago

This website

The plugin that provided the email notification feature for this website broke with a recent update to my blog software, and it’s not going to be easy to fix. So I’m not going to fix it.

Of course, that means that the affected people aren’t going to hear that they’re affected. Sorry about that! (I’ll tell personally the few I know.)

In fact, I’m likely to switch to ikiwiki …eventually. Textpattern seems to have lost its mojo, and there have been some long-standing issues with it (like no native tagging support!) that seem unlikely to ever get fixed. And I’m hip to the cool technologies now, so a more infrastructure-like framework (i.e. ikiwiki, with git) for my blog feels like a better answer. And schmonz volunteered to do most of the work :)

That also means I’ll probably abandon tru_tags …more than I already have. There hasn’t been anything to do with it in a long while, at least not that I felt was worthwhile to be done. Most of the features that remain to be implemented require a major refactoring of the core Textpattern code, and that just seems very unlikely to happen (by me or anybody else) any time soon. So hopefully it will remain useful to the people who still use it.

This year’s Lent

I have utterly failed at this year’s Lent give-up. I have been better at going to bed at a reasonable hour, sometimes for days at a time. But I simply can’t do everything I need/want to do in my life with the few hours that leaves me between work, kids, and chores. So sleep will continue to lose to projects – although less-so than it used to. There are some nice perks to getting more sleep – I’m much more on-the-ball and willing to take on mental tasks that otherwise seem hard. But that extra value doesn’t offset the lost value from just not being able to do all the things I need to do.


Speaking of Lent, I also broke a 5-year streak of vegetarianism a week or so ago. Benjamin, Liam, and I had some extremely delicious tilapia, also breaking both boys’ life-long vegetarian streaks. Kristina chose not to participate.

We had a bunch of reasons for deciding to do it. And a bunch of reasons to not do it (i.e. to stay vegetarian). I may blog about all the tradeoffs some day soon, but for now, suffice it to say that it was a very close decision, and I’m not sure what’s next.

I made a web app!

If you recall, I started using SmugMug for my online gallery a few years ago. But when I made the switch, I left behind an old gallery site (on Menalto Gallery 1) that I’ve been meaning to clean up for a long time. It broke a while ago, motivating me to finally migrate off that old software – to ZenPhoto, which had been my long-standing plan. It took a few days getting ZenPhoto to work (when it should have been easy!), but I got it there, and I shut off the old site.

I also started this exchange with the ZenPhoto dev in which I start by being too grumpy and then he finished by insisting that his software simply must be unsupportable for him to support it. Net effect: I had to get off ZenPhoto.

But I had no alternate destination for self-hosting my images. My long-term goal is to migrate the images to SmugMug, but I want to filter them down from “every picture I took during that time period” to “just the best ones, tagged and rated” (like all the other pictures I post to SmugMug). And it will take Nathan-weeks of work to get that done, so it keeps getting put off. So in the short term I just needed a new self-hosting product, and there just aren’t any good alternatives. They’re all either old or ugly or badly designed or some combination of those three.

So I made one myself. I’ve never made a web app from scratch before, but I am quite comfortable in perl, had used Catalyst from a prior job, and I’d heard then that Mojolicious is better. So I tried it.

And wow, was it easy. Probably 8 hours total from “install mojolicious” to “the gallery is up and running on the new software”. That’s only just a little more than I spent trying to get ZenPhoto to work. Many kudos to Mojolicious, perl, and pkgsrc.

Now… ZenPhoto does way more stuff. (TONS more… too much, actually.) And this new software isn’t really ready for someone else to use it. And it has no tests. And it only does one extremely simple thing (i.e. serve nested directories of images, in name-sorted order, with no metadata).

But the code is small, easy to read, and easy to modify. (Roughly 300 lines of code, 115 lines of CSS, and 80 lines of HTML template.) The site looks really good (in my opinion). And it doesn’t require a database – just a directory full of images. And with some app-level caching and the help of Mojolicious’s preforking web server and great documentation for setting it up under apache mod_proxy, it’s about as fast is it could possibly be on my old host and slow network connection.

So ZenPhoto is out and my home-grown software is in. Here’s hoping it doesn’t need maintenance!

Add a comment [1]

This year for Lent...

filed under:

4149 days ago

…I’ll be giving up staying up late. (Starting tomorrow, the first day of Lent.) For me, that means I’ll be in bed by 11pm every night of Lent. This year will be a serious test of my self-discipline :)

Confused about why I’m doing this? See this

Add a comment

10 Questions a Pro-Choice Candidate Is Never Asked by the Media

filed under: , , ,

4259 days ago

My friend has again posted a link to an article about abortion. I find myself unable to avoid addressing it.

The article poses 10 questions. Theoretically the article is complaining about how the media doesn’t ever ask pro-choice candidates about those questions, but other than the paragraph at the top mentioning that complaint, the rest is just the list of 10 questions. I don’t much care whether the media asks those questions (see: some future blog post), so I’m not going to worry about addressing that issue. Instead, I’ll just reply with my own opinions about the 10 questions.

You’ll need to have read my previous post giving an overview of my opinions if you want to understand my answers. I’m not going to restate those opinions here.

1. You say you support a woman’s right to make her own reproductive choices in regards to abortion and contraception. Are there any restrictions you would approve of?


How I manage my inbox

filed under: ,

4341 days ago

It turns out that other people don’t use email the same way I do. And it turns out that some people think my email use patterns might have some useful ideas. It also happens to be the case that I’m well-known for being good at keeping track of things, and my inbox is basically the way I do that, so maybe explaining my inbox will help people get better at keeping track of things. So here it is :)

First rule: the only things in the inbox are things that are still underway, in real life. Once something is done, the email gets deleted, archived, or filed in a folder.

Second rule: only have a single inbox that receives messages that might result in a to-do for you. Mail rules that filter email lists and such into folders is fine – as long as that email list is passive-only. (And in the rare case where something from the list generates a to-do, move that email to the inbox.)

Third rule: the inbox has three statuses:

  1. New / unread – the things that you haven’t seen yet, or that you need to deal with in the short term (today or tomorrow, ideally). Example: an email from your mother with a question about her TV.
  2. Flagged / starred – the things that you need to deal with in the longer term (3 days – a few weeks). Example: an email reminding you to blog about your inbox usage rules.
  3. Read / not-flagged – things where someone else is responsible for taking the next step, but which you want to keep tracking. Example: a shipping notice from Amazon.com, for an item that hasn’t arrived yet.

Fourth rule: everything that I have to keep track of (i.e. my to-do list) goes into my inbox. I am constantly sending myself little one-line emails, because that’s how I manage my to-do list.

Some secondary rules:

  • If something sits in the “flagged / starred” category long enough, give up and archive/delete/file it.
  • Periodically review the entire inbox, cleaning out things that aren’t going to get done, and following up on things that have stalled.
  • The entire inbox (all three categories) should always be relatively short. I can gauge how overworked I am by whether my inbox has 5 things in it (ideal!) or 50 (WAY too many). I typically run at about 20. Looking at my (personal) inbox now, I have 6 unread, 8 starred, and 4 read.

Some notes about how this works in Outlook / corporate email:

  • I use flags for the long-term to-do items, and unread for the “new” status. I’ve tried setting flag reminder dates, or using different-color flags, and neither adds much value (for me) compared to the time spent managing them.
  • I delete most email once it’s handled, but I don’t have Outlook remove things from the Deleted folder until it’s a month old.
  • I keep all my sent mail. (Have it be locally archived if your company restricts mailbox size on the server.)
  • I keep a few key folders for explicitly filing things – but not many. It’s easier to search than it is to manually file and then try to guess where I filed something. It’s also very freeing to just accept that deleting email is OK.
  • I usually have a few project-specific folders under my Inbox, where I stash things I might need to reference later for a specific project. Once the project is done, I delete the folder.
  • I also keep a single “Save” folder that catches most things I think I might want to get back to someday, and then usually I have a few sub-folders for specific topics (like “sales” or “people”) – but I keep it to just a few folders.

Some notes about how this works in Gmail:

  • I use Gmail’s priority inbox because it is designed for me. It effectively (automatically) splits the “new” category into “email I need to see soon” and “everything else”, and then gives me a split view of my three categories, so the most urgent stuff is at the top, and the least urgent at the bottom. It’s perfect.
  • I archive every email, no matter how unimportant, once I’m done with it. No sorting or (manual) tagging – search is the answer here. And by archiving everything, I don’t have to pause and make a decision about whether to archive or delete. Sometimes I’ll forward an email to myself just to add keywords to it, so I can find it more easily later, but that’s it.
  • I do make use of Gmail’s automatic filters, to automatically tag emails. Most of that’s for shopping stuff (like Amazon) so I can spot it easily and mark it read (until the item arrives, when I archive it). Sometimes I’ll make a manual tag for temporary topic management (like “holiday planning”), but that’s rare.

Add a comment [2]

Older Posts