Press "Enter" to skip to content

That Damn Wolf

centaur 0

Blog Postings Jan-Feb.png

Welp, while I’ve missed a few days, I have overall kept ahead of the blog wolf. By a hair. My lovely plans to build a buffer have resulted in one backlogged article, which I’ll post tomorrow to keep myself honest (and keep it from becoming stale) and basically no buffer. I’m only ahead because I sometimes post several articles per day, like today.

Sigh. No wonder I’m so stressed out - I make even being a dilettante a chore.

-the Centaur

Effective Beverages

centaur 0

So after a gut punch, one of the most important things to do is to take time out to recuperate.

effectivesangria.png

But funny thing is, the highly effective sangria above wasn’t the thing that broke me out of my funk. When something bad happens, I try one of the following strategies to feel better:

  • Take a nap. Or just go to bed. Sleeping can sometimes reset your emotional state. When I had my big crisis of faith in the 90’s, converting from Catholicism to Episcopalianism, I slept for like a day and a half, rethinking my whole life. Of course, if you can’t fall asleep, that’s no good - I was up to 5:50AM this morning, so blech.
  • Take a walk. This can also provide metaphorical distance from your problems. During my crisis of faith, I walked around my apartment complex again and again, taking an inventory of my whole life, weighing and evaluating everything I could think of. Today, when I tried the same strategy, I was snarling at the air, so blech.
  • Change your scene. Talking to uninvolved humans, not connected with your dramas, really can help. I had an interview with a candidate, a technical conversation about deep learning with a TL, and, later, after my mood was lifted, another technical conversation with my waitress at Opa! about the econometrics of developing nations.

As for why that last conversation happened …

20160211_192947.jpg

Which goes to the next item on the list ...

  • Try shopping therapy. Doesn’t work for everyone, but I’m a bookhound. I ended up going to the Stanford Bookstore to try to pick up a book on large scale machine learning (it had sold out). The books themselves weren’t the solution, but I’m getting to that - but it did involve the books in a tangential way.
  • Get some coffee. The inventor of the idea of separation of powers, Montesquieu, reportedly once said “coffee renders many foolish people temporarily capable of wise actions” and I’ve found that to be true - which perhaps suggests that we should install a Starbucks in the Congress and change the structure of our political debates, but nevermind. It helped.

You’ll note that nowhere in here is “get a drink.” That’s a terrible idea - if you think you need a drink, you probably shouldn’t have one, as needing a drink is the road to alcoholism. For that reason, and many others, I always stop at one drink per day - period. No matter how strong the drink, it’s almost impossible for a one hundred and eighty pound male to get drunk on just one.

Having a drink after you feel better, on the other hand, can be a great relaxer. But how do you get to that relaxed state? Well, one thing I try is, well, trying to resolve the problem.

  • Talk to the people involved. I have a theory that if you have a problem with a person and leave it alone, your emotional reaction will be frozen, even intensified over time - a theory based on my personal experience, but backed by cognitive emotional theories which say your emotions are derived from your stance, your relationship to the people, actions and events in the world - which doesn’t change if you don’t give yourself the chance to have new experiences with those people. Thanks to the fact that it’s the twenty-first century, this can be done via text, even when people don’t have time to talk.

But the point at which it turned wasn’t when I got a drink. It wasn’t after I took a nap, took a walk, talked to people, changed the scene, got a book on political economy, got coffee, or texted the involved parties to finalize the resolution of yesterday evening’s gut punch. It happened at very strange place, as I was drinking coffee, as I was reading, as I was texting with my friends to resolve the problem, I got sucked in to the problem that prompted me to get the book, a question I heard in an unrelated political debate from last night. As is usual in these cases, I found that the debate followed the rule of thirds: on a third of the topics, my buddy was definitively wrong, on a third, I was definitively wrong, and on the middle third, there were open unresolved questions worthy of debate. And as I started to look at those questions … I had a brainflash on how to solve them.

And then on a meta-brain-flash, as I realized what tacking the problem was doing to my mental state: it was fixing it.

  • Do the work. Find something you love, and cultivate the ability to throw yourself into it. If you’ve had a gut punch, you might have a bad taste in your mouth about a lot of the projects you were working on … but get your brain into a new space, and all those behavior programs will execute … and give you something new to fall (intellectually) in love with.

The particular question I was tracking - how to evaluate economic policies - is something I’m going to be working on for a while, but I can give you a flavor for it: how do you know whether a political candidate’s economic policies will work? Sometimes that’s easy: for example, Democrats like to spend when the economy’s doing well, and Republicans like to cut when the economy is doing poorly - and both sides are dead wrong. An economy is not a household - cutting spending in a slump will cut the state’s tax revenues and cause an austerity spiral and increased debt; spending in a boom incurs obligations that the state can’t sustain in the next slump and increased risk. These are pretty close to ironclad laws, that operate whether you believe in big government or small or low taxes or high; those are just the dynamics of economies whether you like it or not - whether you believe it or not, suck it up.

But looking long term, some policies promote growth, and some don’t; and it isn’t always clear which is which. What’s worse, exogenous factors - those pesky world events like wars and plagues and wardrobe malfunctions - throw an unavoidable amount of static on top of whatever we’re trying to measure.

The book I’m reading gives me, so far, the impression that individual outcomes are, roughly, helped by a country’s growth, and a country’s growth is affected by things it can't control, like the luck of history and geography, and things it can, like culture and institutions, with evidence strongly suggesting that institutions matter more than culture, since some countries have kept their cultures but changed their institutions and shown amazing growth. The factors that seem to affect this most are protecting private property, having enforceable contracts, reducing barriers for investment, having a level playing field for businesses, and creating equality of opportunity for citizens … but …

But how much of this is noise, and how much is reality?

And that got me thinking: if you assumed some randomness affecting growth, could you tell apart policies that caused 1 percent growth, or 2 percent growth, or 3 percent growth?

Turns out ... you can.

The Promise of Growth v1.png

The central red line is 2% growth, projected out over 20 years. The dotted lines above and below it are 1% and 3% growth … and the grey range is the max and min of a stochastic simulation of ten different histories, each with 5% random variation from year to year, which looks something like this:


The Alternatives to Growth v1.png

The point is, if you get a gut punch - like in the bottom trajectory above - it can look like you’re running a bad policy on a time range of a decade or more before things start to get back on track. On twenty year time horizons, however, you really can start to see an affect. On even longer time horizons, having the right polices can be the difference between a country like Nigeria - rich with oil wealth, yet having a flat growth range - versus a country like the US or Japan or even Botswana or South Korea.

This doesn’t show whether I or my buddy is right - in fact, this model, even as an abstract model, would need to be augmented greatly, to get a proper range of growth rates, of randomness, of the types of exogenous influences and their timescales. But even in its current state, it shows that under a very broad set of assumptions … I and my buddy were right to wrestle over this problem.

What we do now matters, not just in the next election, but twenty years down the road.

And doing that work took me out of my slump. It connected me to an earlier conversation, to earlier problem solving skills not engaged with what I’d been doing just prior to the gut punch. The gut punch still needs to be dealt with - but now it’s just an event, not a thing that causes random spikes of rage and anger when I’m trying to drink my coffee.

effectivecoffee.png

And that’s how I learned a new way to deal with a gut punch.

-the Centaur

Appendix. The graphs above were generated via the following Mathematica code:

RandomGrowth[initial_, rate_, fuzz_] :=
initial (1 + rate) (1 + RandomReal[{-fuzz, fuzz}])

ProjectGrowth[initial_, rate_, fuzz_, years_] :=
NestList[RandomGrowth[#, rate, fuzz] &, initial, years]

InterpolateGrowth[initial_, rate_, fuzz_, years_] :=

Interpolation[ProjectGrowth[initial, rate, fuzz, years]]

FuzzyGrowth[initial_, rate_, fuzz_, years_] :=
Table[InterpolateGrowth[initial, rate, fuzz, years], {iterations, 10}]


fuzzyTwoPercent = FuzzyGrowth[1, 0.02, 0.05, 100]

Plot[{
Min[Map[#[x] &, fuzzyTwoPercent]], Max[Map[#[x] &, fuzzyTwoPercent]],
InterpolateGrowth[1.0, 0.02, 0.0, 100][x],
InterpolateGrowth[1.0, 0.01, 0.0, 100][x],
InterpolateGrowth[1.0, 0.03, 0.0, 100][x]},
{x, 1, 20},
Filling -> {1 -> {2}},
AxesOrigin -> {1, 1},
AxesLabel -> {"Years Downrange", "Growth Rate"},
PlotStyle -> {Thin, Thin, Thick,
   Directive[Thick, Dashed],
   Directive[Thick, Dashed]}]


The Promise of Growth v1.png

and

Plot[{InterpolateGrowth[1.0, 0.02, 0.0, 100][x], Map[#[x] &, fuzzyTwoPercent]},
{x, 1, 20},
AxesOrigin -> {1, 1},
AxesLabel -> {"Years Downrange", "Growth Rate"},
PlotStyle ->
{Thick,
Thin, Thin, Thin, Thin, Thin,
Thin, Thin, Thin, Thin, Thin}]


The Alternatives to Growth v1.png

I hope you enjoyed this exercise in computational therapy.

Gut Punch

centaur 0
inversion.png Welp, that took a nasty turn. The week leading up to my birthday went great: a surprise business trip to Atlanta, a great research talk, a wonderful visit with friends, a nice cake and gift from my teammates on the occasion of my tenth Google anniversary, a great card from my Mom, calls from my Mom and friends, a wonderful birthday dinner with my wife, and then an outpouring of well wishes online - half a dozen via email, and over 70 on Facebook. I was riding high. What a great birthday! A few hours later, I was seriously considering deleting my Facebook account. And this blog. For context, the original title of this post was “worst birthday of my life.” The particulars are, sorry, not your business. But just so you know, no-one involved did anything wrong. It was all a simple series of misunderstandings. And everyone involved managed to fix the problem with a couple of hours of work. But, still, a sequence of simple thank-yous online and the cascading reactions that followed on from that quickly turned a glorious day into a life-changing gut-punch. Facebook itself isn’t the problem, but deleting my Facebook account would help. But as I step back, I now find myself needing to reconsider, well, everything - not just Facebook, but whether I should have an online presence at all, and my involvement with every single job, relationship and project. I know a few other people going through similar things right now - a close friend is rethinking their life, and it’s happened to a few bloggers I follow. I know, rationally, that artists have these impulses, I’ve had them since I was a kid, and it’s just a pointless self-destructive exercise. You feel like the particular events that have happened are the cause, but they’re really not. You’ve entered a mood, or a depression, and while it has a trigger, it’s the emotional state that feels forever. Still, for a moment, I felt like deleting my Facebook account, smashing my computer, and loading the library up into a Dumpster. To give you a scale of the seriousness of the problem, I am actually still thinking about getting a PODS unit and loading up much of the stuff in the library to get it out of the way and putting all my projects on hiatus while we deal with the shattered windows, the damaged floors, and all the other crap going on at the house. Now, while all that other crap is real, I said it the way I just did to exaggerate the problem. That crap has nothing to do with the gut punch, is all ongoing - the shattered window was from a ladder that fell during some work, the damaged floor behind the fridge was a discovery by my wife when she was doing cleaning. But when the gut punch happened, it made me step back and look and everything to ask, "is this working?” So I don’t know what I’m going to do. I might put this blog on hiatus. I might declare a mulligan on some projects. I might rework some habits, make some changes, do things differently. Or I might just draw a breath, take the gut punch, and move on - the way I did in the shower this morning, at which it all hit me again, hard enough to make me draw a breath; then I thought of the Avengers movie, that quote from Bruce Banner, the thing he just said before going green and tearing off to kick ass and take names: “That’s my secret. I’m always angry.” Anger is an alarm, a sign of a problem. And the first thing you do with an alarm is to turn it off. Then deal with the problem. So, this morning, when I felt the gut punch, I drew a breath, straightened up, killed the shower, got dressed, and left for work to go do my fucking job. I had an onsite interview to conduct, I have deep learning techniques to research, I’ve got to reinvent the foundations of mathematics for my latest urban fantasy novel, and I have eighteen more books to write in my main series. Time to get cracking. -the Centaur Pictured: me on my birthday, Photoshopped to illustrate my state of mind when the gut punch arrived.

Okay, now that was a birthday cake …

centaur 0

googleversary.png

Well, I spoke too soon: as a surprise during my team’s offsite yesterday, they gave me a real Googleversary birthday cake. And a gift card to Cafe Romanza, one of my favorite coffeehouses (the other two top faves being Coupa Cafe and Cafe Intermezzo). I don’t think I could have been happier at that moment:

centaurwithcake.png

But I was sure happier today, having a nice dinner with my wife at our mutual favorite restaurant. We could have gone somewhere “special”, but I wanted to go to Aqui, the place that has the best memories of eating for me, not because of all the time I spend there writing, but of all the wonderful conversations I’ve had there with the love of my life, my wife.

der-ring.png

She didn’t let me take a good picture of her, but she certainly got good pictures of me.

20160210_202231(0).jpg

Now off to Facebook - I got over 50 well wishes from people on the occasion of my birthday, so as far as I am concerned the people who think that computers are making us less connected to other people can just go Like themselves. Gotta dash - the longer I spend saying thank you, the longer I put off my birthday spanking. (Actually, I already got that, but it’s the principle of the thing).

-the Centaur

Ten Years, Man!

centaur 0

20160207_013427.jpg

Oh yeah, I almost forgot: I’ve been at Google ten years as of this Saturday. Hooray!

Now, I make it a policy not to mention my employer, with two exceptions: coincidentally, as a consumer, such as my recent article about running Google’s TensorFlow deep learning package on my MacBook Air; and concurrently, as an employee, when my employer’s just announced something I’ve worked on.

I’ve abided by this policy for years, even before my current employer, because you really do have no protection from your employer for anything you write: you can get fired for it. Even if you run your writing past your employer for legal approval, your company could be acquired tomorrow, and the new owners’ legal team could review what you’ve done and decide to fire you for it.

So I don’t talk about my current employer on my blog. I disclose both my writing to my employer when I’m hired, and my plan not to write about them, and then I go blog about my own damn business.

But Google’s been awesome to me for the last ten years, so it deserves an exception. It’s been awesome. Even the stuff that comparatively sucked was better than the average at most jobs I’ve held - and most of it didn’t suck. I get to work with awesome people, on awesome problems, with awesome resources, and have eaten a lot of awesome food while doing it.

So, thanks, Google, for all the awesome.

-the Centaur

Pictured: not my birthday cake, not from Google; just a great slice from Cafe Intermezzo.

Yeah, that Superbowl.

centaur 0

20160207_182027.jpg

A repost here from Facebook … I caught the opening of the Superbowl in a Gordon Biersch waiting for my flight back from Atlanta, and damn, that was patriotic. I shed a tear when Lady Gaga sung the national anthem - straight up, no antics - and then they showed troops watching from Afghanistan, and fighter jets buzzed the stadium. God bless America.

And in case anyone’s wondering, I mean this completely non-ironically. Yes, the Superbowl is the epitome of commercialism, but it need not be crass, and it’s by choice that they’re making it patriotic. I’m not a sports guy, but I love watching football with my family whenever I go home; it gives us something to bond over.

And isn’t that what the Superbowl did for us this Sunday? A third of America watched it, everyone from football jocks to computer nerds. A whole spectrum of people participated in it, from the first Superbowl MVP to Lady Gaga to makers of two minute jingles to troops serving their second tour overseas. They even piped it into the plane, and people cheered and jeered at the outcome.

The Superbowl could just be a game, but it’s an institution that brings America together.

Thanks, guys, for a job well done.

-the Centaur

Why yes, I’m running a deep learning system on a MacBook Air. Why?

centaur 1
deeplearning.png Yep, that’s Python consuming almost 300% of my CPU - guess what, I guess that means this machine has four processing cores, since I saw it hit over 300% - running the TensorFlow tutorial. For those that don’t know, "deep learning” is a relatively recent type of learning which uses improvements in both processing power and learning algorithms to train learning networks that can have dozens or hundreds of layers - sometimes as many layers as neural networks in the 1980’s and 1990’s had nodes. For those that don’t know even that, neural networks are graphs of simple nodes that mimic brain structures, and you can train them with data that contains both the question and the answer. With enough internal layers, neural networks can learn almost anything, but they require a lot of training data and a lot of computing power. Well, now we’ve got lots and lots of data, and with more computing power, you’d expect we’d be able to train larger networks - but the first real trick was discovering mathematical tricks that keep the learning signal strong deep, deep within the networks. The second real trick was wrapping all this amazing code in a clean software architecture that enables anyone to run the software anywhere. TensorFlow is one of the most recent of these frameworks - it’s Google’s attempt to package up the deep learning technology it uses internally so that everyone in the world can use it - and it’s open source, so you can download and install it on most computers and try out the tutorial at home. The CPU-baking example you see running here, however, is not the simpler tutorial, but a test program that runs a full deep neural network. Let’s see how it did: Screenshot 2016-02-08 21.08.40.png Well. 99.2% correct, it seems. Not bad for a couple hundred lines of code, half of which is loading the test data - and yeah, that program depends on 200+ files worth of Python that the TensorFlow installation loaded onto my MacBook Air, not to mention all the libraries that the TensorFlow Python installation depends on in turn … But I still loaded it onto a MacBook Air, and it ran perfectly. Amazing what you can do with computers these days. -the Centaur

Zonked

centaur 0

20160206_180120.jpg

Welp, there went a day. I had a lot of plans for this extra day that I had before my flight back, but mysteriously I woke up around 3pm after almost 13 hours of sleep, with my whole body feeling … I dunno … pummeled.

I was a bit mystified, until I remembered what happened at around 5 in the morning: I woke up with a vicious cough, took some NyQuil, and went back to sleep.

Now my nose is clear, and my time is gone. Apparently that NyQuil shit works.

But! As a bonus, I (and now you) get this reflected sunset, which appeared late this afternoon as I was sitting down to get some writing done. Enjoy!

-the Centaur

The Spectacle of the Silver Screen

centaur 0

atthemovies.png

So I’m continuing my adventures at my undisclosed location *cough* Atlanta *cough* and reporting my activities after they happen, as is my habit when off adventuring when I’m not making a public appearance. And one of the things I enjoy doing when on a trip is, after all the work is done, catching a late night movie. Like, at the theater, on a big screen with a comfy seat and a soda, not on your phone.

I was watching the conclusion of The Hunger Games, and I’m glad I did. The first one was OK, but the second one grabbed me in a way that no movie has since The Empire Strikes Back - not that I haven’t seen better movies, like, oh, I dunno, Mad Max: Fury Road or my favorite movie, Kiki’s Delivery Service - but I felt hooked into a series in a way I haven’t felt in a long time.

And the movie delivered something else too: big screen cinema. My buddy Jim Davies has a theory that some kinds of stories are best suited for some kinds of media, and I agree. Robert Frost’s “The Road Not Taken” would not work as a miniseries; it relies on the quick sharp punch of poetic language. Babylon 5, with its A and B endings and epic space battles would only work as series TV. The Martian movie was great, but it lacks the electric punch of that crackling opening and the games it plays with text: “Chapter 1: Log Entry SOL 6: I’m pretty much f*****.”

Each kind of medium emphasizes different elements - pure audio in radio plays; pure text in novels; an actor’s expressions in theater - and even within the medium of moving pictures, some are better suited to some stories than others. Animation emphasizes the impossible with the tools of graphic design, for example; while It’s possible to make a live action movie of Kiki’s Delivery Service - they did - but they had to work enormously hard to create the imagery that the animation made effortless, and it still doesn’t quite have the same resonance. Even within a particular type of movie, the type of imagery has its own demands. Some images work at any size, others are best left as animated gifs or vines to be played on your phone … and some demand the big screen.

Movies are about spectacle; about imagery that can fill an entire theater. And, in one spectacular moment in The Hunger Games: Mockingjay Part 2, in which an enormous tidal wave of oil fills the whole screen and roars down upon our heroes, my breath was briefly taken away — followed by the thought: yes, this should appear on the silver screen.

Movies have more value - in particular, having a shared experience with unchosen strangers, but more importantly, a shared narrative experience that builds a common bond - but it was a late-night show of an end-of-run movie, and the only people in the theater were a bunch of yapping effers in the back row, so that one bit was a bit spoiled for me.

But for one brief moment - actually, for many moments - I felt movie magic through the spectacle of the silver screen.

Totally worth it.

-the Centaur

The Spectacle of the Silver Screen

centaur 0

atthemovies.png

So I’m continuing my adventures at my undisclosed location *cough* Atlanta *cough* and reporting my activities after they happen, as is my habit when off adventuring when I’m not making a public appearance. And one of the things I enjoy doing when on a trip is, after all the work is done, catching a late night movie. Like, at the theater, on a big screen with a comfy seat and a soda, not on your phone.

I was watching the conclusion of The Hunger Games, and I’m glad I did. The first one was OK, but the second one grabbed me in a way that no movie has since The Empire Strikes Back - not that I haven’t seen better movies, like, oh, I dunno, Mad Max: Fury Road or my favorite movie, Kiki’s Delivery Service - but I felt hooked into a series in a way I haven’t felt in a long time.

And the movie delivered something else too: big screen cinema. My buddy Jim Davies has a theory that some kinds of stories are best suited for some kinds of media, and I agree. Robert Frost’s “The Road Not Taken” would not work as a miniseries; it relies on the quick sharp punch of poetic language. Babylon 5, with its A and B endings and epic space battles would only work as series TV. The Martian movie was great, but it lacks the electric punch of that crackling opening “Chapter 1: Log Entry SOL 6: I’m pretty much f*****.” It’s possible to make a live action movie of Kiki’s Delivery Service - they did - but they had to work enormously hard to create the imagery that the animation made effortless, and it still doesn’t quite have the same resonance. Some images work at any size, others are best left as animated gifs or vines to be played on your phone … and some demand the big screen.

Movies are about spectacle; about imagery that can fill an entire theater. And, in one spectacular moment in The Hunger Games: Mockingjay Part 2, in which an enormous tidal wave of oil fills the whole screen and roars down upon our heroes, my breath was briefly taken away — followed by the thought: yes, this should appear on the silver screen.

Movies have more value - in particular, having a shared experience with unchosen strangers, but more importantly, a shared narrative experience that builds a common bond - but it was a late-night show of an end-of-run movie, and the only people in the theater were a bunch of yapping effers in the back row, so that one bit was a bit spoiled for me.

But for one brief moment - actually, for many moments - I felt movie magic through the spectacle of the silver screen.

Totally worth it.

-the Centaur

The Spectacle of the Silver Screen

centaur 0

atthemovies.png

So I’m continuing my adventures at my undisclosed location *cough* Atlanta *cough* and reporting my activities after they happen, as is my habit when off adventuring when I’m not making a public appearance. And one of the things I enjoy doing when on a trip is, after all the work is done, catching a late night movie. Like, at the theater, on a big screen with a comfy seat and a soda, not on your phone.

I was watching the conclusion of The Hunger Games, and I’m glad I did. The first one was OK, but the second one grabbed me in a way that no movie has since The Empire Strikes Back - not that I haven’t seen better movies, like, oh, I dunno, Mad Max: Fury Road or my favorite movie, Kiki’s Delivery Service - but I felt hooked into a series in a way I haven’t felt in a long time.

And the movie delivered something else too: big screen cinema. My buddy Jim Davies has a theory that some kinds of stories are best suited for some kinds of media, and I agree. Robert Frost’s “The Road Not Taken” would not work as a miniseries; it relies on the quick sharp punch of poetic language. Babylon 5, with its A and B endings and epic space battles would only work as series TV. The Martian movie was great, but it lacks the electric punch of that crackling opening “Chapter 1: Log Entry SOL 6: I’m pretty much f*****.” It’s possible to make a live action movie of Kiki’s Delivery Service - they did - but they had to work enormously hard to create the imagery that the animation made effortless, and it still doesn’t quite have the same resonance. Some images work at any size, others are best left as animated gifs or vines to be played on your phone … and some demand the big screen.

Movies are about spectacle; about imagery that can fill an entire theater. And, in one spectacular moment in The Hunger Games: Mockingjay Part 2, in which an enormous tidal wave of oil fills the whole screen and roars down upon our heroes, my breath was briefly taken away — followed by the thought: yes, this should appear on the silver screen.

Movies have more values - in particular, having a shared experience with unchosen strangers, but more importantly, a shared narrative experience that builds a common bond - but it was a late-night show of an end-of-run movie, and the only people in the theaters were a bunch of yapping effers in the back row, so that one bit was a bit spoiled for me.

But for one brief moment - actually, for many moments - I felt movie magic through the spectacle of the silver screen.

Totally worth it.

-the Centaur

Back in Business

centaur 0

20160204_085226.jpg

We are back in business. Apparently it was a temporary database glitch. Time to make sure my backups are up to date. Meanwhile, since I’m waiting to find out where my next meeting is, enjoy a picture of a coffeehouse that I am totally not at right now.

-the Centaur

Weeeird…

centaur 0


dresandown.png

… the Library of Dresan is letting me add posts, but all other operations are squirrelly. Stand by.

-the Centaur

Respite

centaur 0

20160204_110216.jpg

So me and my wife are super cool about most of the things we do - I get home late, she stays up later, I travel for conferences, she travels for work, no matter what’s going on, we get along. But one of the rules we’ve established is to not discuss our travel plans in public until after they happen, unless it’s for a public appearance.

One of the reasons is that she’s an artist, and I’m an author, and sometimes the things that we create can irritate people, and if you publicize your schedule it opens you up to attack. So she’s asked me not to publicize our location or our travel plans. That won’t stop Goldfinger, of course, but it makes it less easy for a determined whacko.

So, I’m … somewhere, to give a company talk, but it’s not a public talk, so consider it an undisclosed location. And I took the red-eye, as is my habit for crossing country, because I hate losing a day. Prior to my talk, I’d lined up a whole day full of meetings with people so I could use this time productively … but as of this morning, all have canceled or failed to respond.

I’ve no worries: if my meetings are all canceled, I’ve got a giant stack of papers to read for a brand new project at work, so I’m covered. But I don’t want to drive away from the meeting site in case my last meetings go through. So I’m nearby, in a coffeehouse, chilling out, waiting to either hear back on my meetings or to get the good news that my hotel has a room ready for me to check in.

And you know what? It’s nice to have a respite, a little time to chill. For someone who juggles a job, writing, a small press, and comic book work, it’s easy to get overwhelmed.

A few minutes to chill is a good thing.

-the Centaur

Uh … What the?

centaur 0

uh-what-the.png

So, as you may or may not know, I’m trying to blog every day this year, and just now, taking a brief respite after my red-eye flight, I decided to extend my tracking spreadsheet from just January to cover February. And when I did so … my tracking graphic suddenly turned into … I don’t know … an origami Pac-Man?

I’m not even sure how this particular chart type could make the above graphic, so I’m not sure how to fix it. This probably should get filed under “if you break the assumptions of a piece of software’s inputs, it will break your assumptions about its outputs.” Best thing to do is probably start over with a new graphic.

-the Centaur

That Ground Game

centaur 0

trumped.png

Poll watchers may have noticed that Donald Trump has apparently failed to come first in the Iowa Caucuses. I know at least two people - one of them being my military advisor, and the other being Trumpwatcher Scott Adams - have predicted that Trump would win the caucuses, then run the table.

I have a number of bad predictions about the race - namely, that he would bow out as he’s bowed out before, as a result of his genius brand management. He didn’t. But I did also predict that winning the nomination takes more than leading in the polls - it takes a good ground game, and that with half of Republican voters unwilling to vote for Trump, he had a hard road ahead of him.

Now, there are forty-nine states left, and plenty of time for Trump to turn it around. And a lot says he might - Adams would say because he’s a Master Persuader, some of my friends because they think he’s awesome, and my old high school history teacher would say populist demagogues are always popular.

But, if Trump wants to bow out when the going gets rough, as Trump did before the last two times he ran, he will have accomplished a genius act of brand management. You can’t buy publicity like he’s gotten through his antics, and he’s made the things he cares about the focus of the campaign. Kudos to his skill.

To go on the record, I think Trump’s a poor choice for President. He’s anti-American, frequently insulting immigrants (like my grandfather) and veterans (like my father) and everyone who opposes him (like half the people a real President would have to deal with in office). He’s a loose cannon, frequently tossing out crap ideas that would sabotage our relations with our allies; some people call that “first offer in dealmaking,” I call that “being an untrustworthy liar.”

Now, not all his positions are anathema to me, and he’s got some good features. For example, he has a lot of business experience, though a number of his business ventures have failed or gone bankrupt; people who know a little about business (but think they know a lot) call that “compartmentalizing his ventures to protect him from losses”; people who know a lot about business at scale call that “gross incompetence” as a real businessman doesn’t let a business setback get spun into a public bankruptcy. But he has lots of experience running really big things, and would likely manage the running of the office passably.

But we can’t let him do that. We can’t trust Trump to respect his office. We had a bad enough time Bush skating on the edges of impeachable malfeasance until Obama took over and showed us how being a rogue president was done - but both Bush and Obama respected the office. If given the opportunity, Trump wouldn’t respect a congressional subpoena - he’s the one who does the firing, remember? So we need to make sure not to give him power he would have to give up when he’s impeached.

Sigh. Jeb!, why’d you stumble? Hillary, what was in your head when you set up that email server? And Sanders? Cruz? And what about Robert Jefferson Shmickelwhaite, former mayor of Benson, Arizona, that almost unknown guy who should have run who had all the experience and all the right positions but decided to sit it out this round?

Regardless, I love America, and whoever wins is my President.

But, if you’re going to run, even if you’re a “populist” or “Master Persuader” or even just “Making America Great Again”, it would behoove you to look at the math and make sure you’ve got a ground game when the time comes to stop polling and start voting. Ground game - that is, an actual nationwide campaign organization that, like, gets out the vote for your guy or gal.

Worth checking into.

-the Centaur

Pictured: Donald Trump, taken by Alex Hanson, used under the Creative Commons Attribution 2.0 Generic license, under which you are free to share or remix the work as long as it is attributed to Alex Hanson.

Money From Heaven

centaur 0

20160131_134234.jpg

I like to pick up coins when I see them, but this is getting ridiculous. Recently I’ve netted 50 cents from money falling from heaven. Today’s find was weird: a quarter in the middle of my brand new copy of Principia Mathematica, Volume 1, which I’m reading as part of my quixotic quest to reinvent number theory for a young adult novel. :-P

Shipped from Amazon. Apparently a reprint (there are handwritten notes in my text which are apparently copied from whatever they used for camera-ready copy for this one). But with a quarter in it, stuck in the beginning of Chapter 3. It survived shipping, survived me carrying it around for a while … how?

The other one was weirder. A couple of months ago, I stepped out of the shower and pulled on a towel. I turned around, and a shinggg sounded, followed by the unmistakable sound of a coin falling to the floor. I looked around and found a quarter, which apparently fell from roughly where the bathrobes hang.

Only … we rarely use the bathrobes. There are no holes in the bathrobe pockets. The quarter fell, like from the air.

Now this is totally possible. We forgot and put a quarter in a bathrobe pocket, and I jostled it. The quarter got stuck in a knot. The quarter wasn’t on the bathrobe at all, and was stuck to the towel. The quarter was on the bathroom windowsill and I knocked it off. Et cetera. Et cetera. There are a thousand “rational” possibilities.

But it was still damn unusual.

Now I have 50 cents. That and four bucks will get me a Starbucks. Until the rest of my grande mocha Frappucinio falls from heaven, I gotta ask: who’s trying to tell me something, and what?

-the Centaur

Nanowrimo Triples Your Productivity

centaur 0

NanoVsNot.png

So I’ve got enough data now - two months - and it shows my productivity in non-Nano months is about one third of the Nano goal. Because December and January are 31 day months, by now I should have produced a notch over 100,000 words if this was National Novel Writing Month … but instead I’ve produced a notch under 30,000.

The picture is a bit muddled since my productivity in successful Nano months is slightly higher than 50,000 words, and my productivity this month is slightly higher since I’m not counting some writing (some edits to stories, plus all the nonfiction writing I do at work). But it shows the social effect.

Nano triples your productivity.

-the Centaur

Haha!

centaur 0

Haha.png

I have completed 31 blogposts for January! (Not even counting this one!) I’m on schedule for my “blog once a day” New Year’s Resolution! Huzzah!

Now only 335 posts to go. Sigh.

-the Centaur

It Always Takes Longer Than You Expect

centaur 0

thetwoofus.png

So my wife and I talk - a lot - about life, the universe, and everything - and we decided we should try to capture some of our thoughts on the matter as a series of video blogs. I grabbed dinner at Aqui, she was grabbing dinner at home, and then we were going to get the studio set up so we could do a test run.

None of that happened as planned.

I was late leaving Aqui; I never got to run all my errands. Sandi started to cook eight-minute paste thirty minutes before I was scheduled to get home; I got home late and she was still cooking. I tried to get the software set up on the kitchen table while she finished up, hoping the two of us would both finish in time for a trial run in the great room which we planned to use.

When our time was up and it was time to go to the gym, I’d never left the kitchen table, and she’d never left the kitchen counter, working on her pasta, watching over my shoulder while I wrestled with the software. I did get it installed, and, in the end, we managed to capture a handful of screenshots and a few short videos, the longest of which lasted only five minutes.

I heard a study once which claimed that when it comes to estimation, there are two groups of people: optimists, who underestimate schedules by a lot, and pessimists, who only underestimate schedules by a little. Both groups in the study failed to estimate the actual time it would take them to complete the task.

This is a natural human instinct. My wife and I have speculated that people wouldn’t really ever take on large tasks if they knew how long they took — certainly in my experience in computing, if you give people a realistic schedule, they’ll either push back or even cancel the project. Now I freely admit I make mistakes - but when I've called bullshit on schedules, I have never been wrong.

Here’s a few rules of thumb for you:

  • If you’re estimating by the seat of your pants, you’re wrong. It will take longer.
  • If you need it done in a short amount of time, you’re out of luck. It will take longer.
  • If you’re an administrator and can crack the whip to get it done, quit fooling yourself. It will take longer.
  • If you’re estimating based on past experience, and you think it will take less time, you’re kidding yourself. It will take longer.
  • If you think there’s really good reasons it’s easier this time, you’re even wronger. It will take longer.
  • If, on the other hand, you’re an expert on this kind of thing, congratulations: you’re the wrongest. Thanks to the process of automatization, through which humans learn to become experts, your mind has abstracted away all the details of the problem so they’re out of sight, out of mind - so what seems easy and quick to you will take longest of all.

There is no substitute for a formal process of estimation. I personally use function point analysis (breaking tasks into small parts, estimating their cost, and applying a function that produces time) and Gantt charts (calendar-like diagrams showing people and length of tasks and their dependencies) to get an idea of how long things will take, and this gets a good estimate, even though as soon as you start work you have to rework the design and throw the Gantt chart away.

This process offends some I know who are really into “agile” development, in which you forgo that kind of formal planning in favor a more flexible approach involving user “stories" - but these people are fooling themselves. The point isn’t the Gantt chart, it’s going through the formal estimation exercise, getting a realistic estimate of both task complexity and dependency chains. I knew agile back when it was called “extreme programming,” and its techniques have only gotten more sophisticated - but REAL, experienced agile development uses a training process to get people up to speed and engages in estimation of the velocity of development. If you ape agile with daily standup and a few post-it notes, congratulations: you’re fooling yourself, your schedule will slip.

THERE IS NO SUBSTITUTE FOR DECOUPLING THE PROCESS OF GENERATING TASKS AND ESTIMATING THEM. If you come up with tasks and score them on the spot, you’re flying by the seat of your pants, and will subconsciously generate estimates that show you will succeed.

You will not.

Once I dealt with a sharp CEO who recognized that I was right when I told him his three month project would take nine months. (I had to literally resign my position to get his attention, but that’s another story.) His response: ok, you’re right, it will take nine months - but we can’t track anything that long. We need three month milestones. Something we can see and manage. That way we’ll know we’re slipping. That’s what we did, that worked - and in nine months, we delivered, in three steps along the way. And, strangely enough, I find this is more generally true: in any given time period, I get about a third as much as I want to - but if I keep at it, and break things apart into smaller chunks, eventually I do get done.

So don’t imagine you can travel in time; instead, realize you need to take baby steps. Break your problem into the smallest chunks you can, relentlessly work on them to get them done, and doggedly track your next steps. You may not produce an hour-long video describing your views on life, the universe, and everything the first time you set out to do it, but maybe you can spend a pleasant evening getting your film studio set up, so that you’re ready to take the next step, when the time comes.

-the Centaur

Pictured: a shot of me and my wife. We tried to take a picture. We expected to take a couple. It took six shots, and I had to composite two of them together with four Photoshop layers to get a good one of both of us at the same time. :-P