An 0.1 todo command line script

I think I’m going to make an attempt at live-blogging this project. A post every day or two, with code snippets at least, maybe the full source because what do I give a crap about the source.

I DO need to install a code formatting plug-in for wordpress. Until then, code snippets are going to be just awful things wrapped in

<pre> tags.

So…

After I posted that yesterday (which was actually a simple electronic journal entry that I finished and said “meh, post it”) I opened an editor and started dicking around with an interactive console-based python script, just to see how far I could go in one shot.

It’s funny because it has add/list/save/load functionality (automatically loading on startup, saving on add.) There’s no removal/mark as completed function yet.

But imMEDIATELY my brain started firing off in all kinds of funky directions.

So here’s the 0.1 version (well, it’s probably 0.0.0.0.0.0.0.1, but who’s counting.) It has the most basic functionality, and a non-interactive option for just spitting the list to stdout.

Call it with nothing enters the interactive command loop:

todo.py

Call with ‘l’ (for list) and it’ll just spit the current todo list to stdout.

todo.py l

#!python

import os
import sys

filename = 'todo.dat'
items = list()

def save_items():
    fh = open(filename,'w')
    for item in items:
        if item != '':
            print(item,file =fh)
    fh.close()

def load_items():
    if not os.path.isfile(filename):
        return
    
    fh = open(filename,'r')
    eof = False
    while not eof:
        line = fh.readline()
        if not line :
            eof = True
        items.append(line.strip())

def add_item(foo):
    if len(foo) >2:
        items.append(foo[2:])
    else:
        item = ' '
        while item is not '':
            item = input("+ ")
            items.append(item)
    save_items()

def list_items():
    for item in items:
        print("\t",item)

def complete_item(foo):
    item_to_complete = None
    if len(foo) >2:
        item_to_complete = int(foo[2:])
        del items[item_to_complete]
        save_items()


def command_loop():
    bail = False
    while not bail:

        foo = input("> ")
        print(foo)

        if foo[0] == 'q' or foo[0] == 'Q':
            bail = True
        elif foo[0] == 'a':
            add_item(foo)
        elif (foo[0] == 'c' or foo[0] == 'f'):
            complete_item(foo)
        elif foo[0] == 'l':
            list_items()
            
def run():
    load_items()

    if len(sys.argv) > 1:
        if sys.argv[1] == 'l':
            list_items()
    else:
        command_loop()

if __name__ == '__main__':
    run()

So what’s this then? Here’s a script that maintains a local text file with a static name and gives you a couple commands (add, list, complete, quit) represented as one letter commands, to maintain a list, one item per line in the file. There’s a LOT wrong with it. BUT it works. It’s not production ready, and it’s particularly inelegant and it has no damn tests. All it’s supposed to be is a simple sketch, the code equivalent of a functional whiteboard diagram.

Next time I’ll either start ripping it apart for inclusion of more features, or for a serious restart. We’ll see. I’m still winging it.

Light thoughts about minimally architectured cluster apps

I’m having a Melanio V and one of their draft rootbeers.  I just don’t remember it being this good.

I picked up the “Wicked Cool Shell Scripts” book a few times today when I was in B&N before heading out for a bite (a cheeseburger at J. Alexander’s, skip it.) I almost walked out with it a few times; checked the price on amazon (within $2 with the discount at B&N.)  But then I realized that there’d really be no reason to use bash over python or perl for most of those things. 

It’s a function of designing a low level component architecture that splits responsibilities into multiple individual processes.  As long as I’m not walking all over myself with the storage back end, there’s almost no reason not to design this (todo list/project manager) that way.  I could take all the analytics and set them up as mixins that run independently and just decorate the damn data.  There’s no reason to use a complicated storage format when I can just store the data in flat files for maximum flexibility.  Hell, even if I create a little library for storing stuff in a tabular format (a wrapper around csv with some type checking) I’d be in perfectly good shape just building on that.

Then if I wanted to get fancy I could port a tool at a time over to straight C.  It’d be golden.  Then add a call wrapper that I could use to run mocks or actually just call web services as well, then I could microservice the whole damn thing. 

Now if I take that and start drawing out from there, I end up with something that starts to look like a lot of the late 90’s Agent Architecture diagrams.  Now, that never really MEANT anything. But the ability to transport asynchronous tasks across architectural boundaries transparently is an awfully useful concept.

The granted flexibility would drop the barrier to entry, from an architectural perspective if nothing else, to near zero.  Functional components could be added by banging out a simple script.  Worry about where the hell it lives later.

That would be predicated on some kind of minimal service registry, something that’d play the dispatch game. Now of course THAT would be an external service as well.

[Not what I was looking to write about. But as long as it’s sticking to a single topic and is going back and forth with some actual thought, I’ll take it.  Writers have the cleanest closets.]

So let’s get down to brass tacks:

  • A todo list is a list of tasks, persisted, with (initially) a description. 
  • There’s an application that can add items to the list.
  • There’s a user interaction that can “complete” items on the list, which removes them from the visible list
  • The storage format should be text based, easily readable by humans or other programs.
  • The storage format must allow for flexibility of future expansion without interfering with minimal functionality.  This suggests a simple numeric index of items that can be used as a foreign key to other applets freely.

I’m going to sketch out some minimal implementations of these.  They don’t make a WHOLE lot of sense to me without an actual gui front end, web based or otherwise.  Actually I quite prefer otherwise.  The massive proliferation of web-based guis for everything just makes me kinda crazy.  I’d rather a java or other kind of desktop front end, even if the back end was http, local or not. 

These are stream of consciousness right now. But I find the first few attempts at putting something down generally involve me sweeping and shoveling out the crap in my head to get down to the good stuff. 

20191230 – Pithy Title

Bear with me for the first few posts. It’s going to take me some time to get back on the wagon. Normally I’d sit here (Barnes & Noble, Hendersonville, TN) and type into a Microsoft OneNote notebook. I opened it and closed it twice before logging in here.

I’m nominally retired, call it a sabbatical, and I’m pretty neurotic and angsty about the next step.

I’m quite done living in an apartment and want to buy a house with a few acres of land, someplace I can set up a workshop and make dangerous and eventually beautiful things out of metal, wood, peppers, sugar, flour, and words. I’ve a long way to go.

But being untethered and largely rootless the question of where to go looms there, more terrifying than a blinking cursor on a blank page.

There are buckets and buckets of pros and cons for moving far away from here (and likely close…ISH to family, though after a week back up in NJ and NY, I’m not sure I need to be too close.)

Of course The Perfect is the enemy of The Good, and “fail early fail often” is the way to enlightenment. But…how does that jive with spending $300k on a house? Can’t really “fail often”, nor is it something I can have any expectation of “getting right.”

So my brain runs around in tight little circles with the same few issues, being unable to weight and rank them. Roughly, they come down to these:

  • People: The people in Tennessee are just awesome. It’s a lovely friendly place (especially if you’re from Brooklyn.) Advantage: Stay
  • Local climate: I love snow and winter. But one advantage Tennessee has is that the winters are SO mild that you don’t end up buried in your home all winter. It’s 12/30, I’m sitting in Barnes & Noble and there are people in shorts walking around. Granted, that’s overdoing it a bit. But it’s not completely unreasonable. The summers here are absolutely brutal 95 degree 100% humidity messes that DO drive everyone indoors from April through mid October, so it pretty much nets out. No advantage
  • Proximity to family: It’s a 16 hour drive to see my Mother and Sisters. As a result I only go up once a year.
  • Scenery: Middle Tennessee is just a flat mess of nothing. Advantage: GTFO
  • Stuff to do: There’s all kinds of neat stuff I haven’t even cracked the surface of down here. Sure, it’s no NYC, but nothing is. I can get something “close enough” to downtown Nashville without breaking the bank. I suspect that’s something close to unique. There’s the question of how much will I ACTUALLY do. But that’s orthogonal to where I live. Advantage: Stay

There are a couple/few other things kicking around. Gun laws, cost of living, etc. But most of those don’t fall in the “stay or go” assessment since I can tailor a destination based on those factors easily enough no matter what.

Plus, the idea of starting over socially just seems tedious. Not that I know so many people; startlingly few given that I’ve been down here for a hair over four years. But there’s a lot of context, for lack of a better word, I’ve built up here. Starting from scratch was fun back then. But I’m 50, this shit gets old.

I have no conclusion to this. Like the issue in my head the post just goes until I run out of steam, having resolved nothing so clearly.

o7

Five Day Fast

So I finished my 5 day zero calorie fast Friday night at midnight. I wasn’t doing it as a health/weight loss exercise so much as a “make sure you still have some discipline and willpower” exercise. So it was a massive success.

As a goof I got on a scale at 23:45 just to see, and I was down to 217, the lowest I’ve weighed in years, and 17 pounds down from 10 days earlier.

A couple/few thoughts about the progression:

Day 1, Monday

Monday was like the day everybody imagines when they think about fasting. Constant ravenous hunger totally dominating my head. It was absolute torture and the worst day of the week. I’m not sure what I even did when I got home, trying to focus on not eating. That might have been the day I reinstalled windows on my desktop.

Day 2

Tuesday morning I woke up pretty early without that consuming gut ache and felt pretty good. A couple times throughout the day I’d fade out a little. I was drinking water like it was water. Every once in a while I’d pop a little salt, a bit less than half a teaspoon. At one point on Tuesday, I think it was about 11:30, the ingestion of a bit of salt and a water bottle chaser made me feel remarkably better almost instantly. That ended up starting a trend. Whether it was an appropriate amount or not I don’t know. There’s a nontrivial chance I was correlating the events erroneously.

My sense of smell was getting pretty extreme.

The evening was kinda torturous. It became startlingly clear to me the degree to which eating is an activity rather than a manner of sustenance. I didn’t have the slightest idea what to do with myself. I downloaded and installed Steam and pulled Skyrim and Fallout off of backups and tried to get focused on playing. But my brain was just too scattered.

I had a physical pain I couldn’t quite identify. Wrote it off to the abdominal issues of my distressingly empty intestines.

Started watching Agents of Shield over again just to eat time.

Day 3

Again with the waking up early. About 5:30, a solid hour before my otherwise grudging alarm. While my thoughts went frequently to food, I wasn’t overly hungry per se. I downed a diet dew on my way in to the office and the caffeine sent me into fits of Elizabethan talkativeness. Seriously. I couldn’t shut up. My brain was just racing.

At lunch I walked in to the kitchen, eyes closed and rattled off the ingredients in a coworker’s lunch by smell. Seriously. I was a bloodhound.

It was this day I realized I’d never gotten a caffeine headache, which was odd.

I noticed a pain in my…well, I don’t know what. Bladder? It’s similar to kidney pain but it’s right inside my pelvis on either side, right at my belt line. Weird. Just an odd discomfort; discounted it.

Day 4

I was up at 5:15, against my will. We had a coworker leaving on Thursday. I’ll call him Stephen because his name is Stephen. The plan was to take him to Fulin’s Chinese restaurant for lunch. I told him I was zero calorie so I couldn’t reasonably go. He just chuckled and nodded “It’s cool man. That’s just crazy.”

At about 11:30 my trollish sense of innate self-abusing jackassery said “what? you a little bitch? You can’t handle that?” So I went and sat at the end of the table and drank a diet coke while I watched 12 people eat Chinese food. It was the craziest masochistic thing I’ve done in years and it was a blast. Why the hell was it actually fun? Stephen had sashimi and I would’ve eaten the ice it was bedded on.

I was lusting after a leftover scoop of white rice with a little dab of soy sauce. Even it looked just lovely, fluffy and warm, just sticky enough.

I just sat there and drooled like a St. Bernard, chuckling to myself in my madness.

I couldn’t sit at my computer at night. Mixed blessing. On one hand, there’s no objective downside to that. On the other, it’s because I was in a really frustrating amount of pain. Agents of Shield marathon. Watched 5 episodes then went to bed, fantasizing about what I was going to eat on Friday at midnight (Nachos. It all came down to Nachos…and a root beer float.)

Tried to use my scale when I got home, but the battery was dead. Kinda feel gross, physically. Not…internally. Just as a matter of body consciousness. It’s weird. I don’t ever feel like that. I feel dissatisfied and “too full” or “carb coma”ish. But I rarely feel that kind of gross.

Another Agents of Shield marathon.

Day 5 The home stretch.

I spent most of the day working on my shopping list for the evening. Marinara sauce, Updoot soup, avocado chips, Nachos, and who knows what. My brain would not get off of food without some serious prompting. However, once directed it was delightfully acute. I just had to spend a nontrivial amount of energy staying on task.

It wasn’t fun anymore. Water wouldn’t stave off the hunger, which came back pretty strongly. I’d had a coke zero at lunch, and a black tea in the morning.

The Publix near the office didn’t have one critical ingredient for about 4 of my planned recipes, so I bought what I could and left in a huff.

I watched a couple/few episodes of Agents of Shield ’til 9-10 then I started cutting onions for the sauce and sweating them down a bit. Peeled and minced a head of garlic and put that in there as well, a bit of oregano, some olive oil, and some black pepper, all while I put the crushed tomatoes in the crock pot. Dumped everything together, added the rest of the seasoning, and put it on warm (not even low) and tried not to think about the smell.

At 11:45 I turned the oven on and started assembling the nachos. Doritos, sharp cheddar, some taco meat, and Cajun Power Garlic Sauce. I’d planned on going full salsa/guac/sour cream, but it was 11:45 and I was entirely out of fucks.

I thought about it and went over to step on the scale (having replaced the battery.) 217. Down from 235 the prior Wednesday. 17 pounds. That’s kinda astounding. I thought about what I was planning for the weekend and thought to myself “oh well.”

When the clock struck the Nachos had 5 more minutes to go, so I loaded a plain old dorito with a little bit of shredded cheese and ate it. The instant SHOCK of flavors, smells, and textures was a damn tsunami. So much corn and the creaminess of the cheese juxtaposed with its sharpness. And just as fast as it came, it went.

I took a sip of milk and while the feeling of it coating my throat and making its way down in my stomach was sublime, it wasn’t….novel in any way.

I grabbed the tray out of the oven and made myself a little plate and ate it on the couch. It wasn’t particularly fulfilling as my body was just in such shock. Tasty as hell though. Then I ate a 2nd.

Then I went to bed.

The Morning After

I woke up feeling normal. Not particularly anything really. I puttered around a little before walking in to the kitchen to survey the carnage. With a twinkle in my eye I took the cookie sheet over to the couch and fucking HOUSED about 7/8 of it before I realized I was really just doing it to do it, even though the first half of that was positively orgasmic. I dedicated the rest to Johann the White and cleaned up a very little.

It’s Sunday now, and I’m reformatting and pasting this into WP. I’m a little sad it’s over. I feel weirdly full, having just eaten a burrito for lunch. It just seems like so much food.

Hmm.

Been busy? No, sorry. Been busy.

It’s been a shitty and excellent week.

Got to go see Jordan Peterson at the Ryman on Monday night, which was awesome. I’ve lived down here a little over two and a half years and I’d never been to the Ryman, 2 blocks from my apartment. Plus Jordan Peterson is just awesome, especially when he’s lecturing casually to a friendly audience, rather than being interviewed by some sanctimonious leftist with a third of his IQ.

I’ve got a new HiTorque lathe I’m finally tooled up enough to start noodling around with, so there’ll be pics of and from that over the coming weeks I’m sure.

Work is a screaming nightmare. But we interviewed someone excellent; a fellow kung-fu master with whom hit it off with SO well that if he were hired it would change my long term plans.

Unfortunately we also apparently tendered an offer to someone diametrically opposed to him on the quality scale. I’m still trying to figure out how they’d net out if they both accepted.

On the dark side, my father passed away last Friday. I’m…almost fine about it. What I suspect is happening is I’m outrunning my brain about it and at some point I’m going to stop to take a breath and get caught in a shitstorm of emotions. That’s fine. Didn’t really happen after 9/11; I compartmentalized that pretty well. So this is a wildcard. It wasn’t sudden or unexpected. At the end he was just tired of the slow slide.

I’ll leave you on that chipper note.

Search Results for “Wife” – I, Wilson

When I had the original blog, back in ye oldeney timeseyness, search engines weren’t quite so savvy about hiding information. So what would happen is, you’d get a referrer hit that told you what the web query was that led to your page being clicked on. And, since that’s how people found things (rather than shared links on social media) you could generally count on some interesting results. Often a peculiar use of words would be enough to get yourself listed and hit.

I vaguely recall some really strange searches leading to my pages. Now, if you get a hit from a google search, they’ll mask the search terms used in the referrer entry because google’s run by a bunch of assholes.

But I’d generally forgotten about this ’til I just happened to look at my hit log. Someone from Maryland last week hit the site, read a bit, then searched my site for the word “wife.”

Now… me being me (and more on that later) my brain IMMEDIATELY started fantasizing about who that could be. I don’t know anybody in Baltimore, but then I haven’t lived in Nashville for all that long (nor will I for all that much longer, more on that later) so it could be anybody.

Does make me wonder.

The Universal Church of Cosmic Uncertainty

So…I’ve been planning, weakly, to post stuff from the old blog up. It was titled

“The Universal Church of Cosmic Uncertainty:

A potentially painful excursion into the unabashedly narcissistic day-to-day ramblings of a severely A.D.D. ubergeek, baker, & fledgling world graveller. :P”

So I’m going to start doing that, backdating the posts to their original times. I’m going to TRY to remember to tag them UCCU or something. But we’ll see how that goes.

Of course, if something is just irrelevant or full of now-dead links I’ll skip it. But otherwise, it’s all coming over.

Wheatness

Saturday night I tried to occupy myself as the evening progressed, still maintaining the delusion that Comcast would have my internet back up and running at the projected and oddly precise 23:32, which turned out to be a lie, as had every prior “about 3 hours from now at an oddly precise time” assurance I’d gotten from their automated tech support line (complete with the fake sound of a keyboard as the automaton “looks up your account information.” Not gonna lie, nice touch. The keyboard sound in fact reminded me of the old 3270 terminals and their gigantic IBM keyboards from back in the Walter Karl days.)

But I digress.

I don’t MIND not having internet. I can get along with it just fine. Yeah I’ll twitch for a couple hours as I try and figure out what to do. But if I know it’s going to be out for a couple days I can just get on with something else.

What I DO mind is being lied to about how long it’s going to be down.

But none of that has anything to do with my countdown.

THAT was about a decision I’d made on December 31, to take 3 months and go without wheat, soda, and give myself a minimal amazon allowance. Saturday night was the end of the three months.

I was heating up the cast iron skillet and getting out a few slices of bread and some cheese to make myself a pair of grilled cheese sandwiches as the midnight hour struck. I made them as usual, too much butter for a human, cooked slowly and for several minutes on a side. One was just american cheese (an easy win) and one was shredded cheddar (an experiment.)

Finishing them up I grabbed a bottle of Virgil’s root beer from the fridge (I’d been planning this), took a pic, and headed over to chow down.

I did everything right. The sandwiches had that golden crispness of having been cooked in enough (too much) butter. The cheese in both was JUST starting to squeeze out the side.

I ended up completely nonplussed.

I mean, yeah, they were good (though the cheddar one was really strangely bland; made stranger still by the fact that I was using extra sharp (if store brand) cheddar) really good. But I expected an epiphany of some kind. Nope.

Now, the Virgil’s root beer was as sublime as ever and I savored every delicious clovey drop.

I got up on Sunday the first…not feeling quite right (suddenly willing to attribute everything to wheat consumption.) But went ahead with my plan anyway.

I made a small batch of teeny bagels I’d prepped in my not-quite-boredom on Saturday evening. They were okay. Nothing earth shattering. But worth pursuing. I ate a few (they were only a few inches in diameter) and tossed the rest.

The final recipe I used was a bastardized version of a couple/few different ones I’d found around, with some modifications of my own. The only real problem with them was that…ya know what, nevermind.

An aside about recipes and such: Despite my reputation in the offices where I work, and the parties and gatherings I attend, I actually bake neither a wide variety of things nor very frequently. But the things I DO bake I’ve worked really hard on. I start with a recipe then tweak it to my liking, changing one variable at a time over years, keeping detailed notes, until I’ve got it where I want it. Then I make a tweak every other attempt to see if I can improve on it. But I generally stick with the baseline once I’ve found one. It takes years of work to get some of these things right. There are little tricks of process and ingredient that I don’t even put in my own recipe notes. So, before you ask.

No. I’m not giving you my bagel recipe. To paraphrase the immortal Jules Winfield: I’ve been through too much over this shit to just hand it over to your dumb ass.

I’ll trade techniques. But I’m not giving away shit.

Kayso…

Doing some math based on my sourdough’s hydration level (not to mention that I only had a kilo of active starter going) and the net weight of dough I wanted to end up with, I ended up making about 3 pounds of dough. This should probably be enough for at least 2 dozen bagels. I let it rise, then punched it down and started forming them when I quickly realized I don’t have the fridge space to keep that many bagels chilling overnight and I certainly don’t have the oven space to bake them all in less than a few shifts.

Seeing as how I was going to need to get up at what looked like 5 am to bake these puppies as it was I ended up making them…HUGE. NOT the best idea in the universe. But I was running out of day and was getting real tired. I ended up fitting 18 bagels on 3 trays (huge.)

I found myself waking up every hour because I was worried about hearing my alarm, finally getting up and absolutely WRECKING my kitchen (the dishwasher toils away even now) and getting them baked.

I burned a tray, undercooked a try (mildly) and one came out right. They’re a little goofy looking, but I don’t really mind.

Of course they were a grand slam at the office. Homemade sourdough egg bagels. I probably ate one and a half or so, over the course of the day (srsly. Huge.)

By 11:30 I was ready to pass out. I was full of caffeine. But it just wasn’t helping. It was like someone’d replaced my blood with mercury. I made it to lunch and went, after some consternation, to Five Guys for a burger that was NOT put in a little tin for a change (I’d been getting bunless burgers there a couple times a month) with a small order of fries (so….34 pounds of them.)

It just wasn’t that satisfying. I just wanted a damn steak. My mind drifted back to the NY Strip I’d had on Saturday.

The afternoon dragged on in similar fashion when I realized it wasn’t the lack of sleep, but the damn carbohydrate crash. I just felt positively awful and had since Sunday morning. There wasn’t any real “oh my god I can’t believe I went without this. Life is finally worth living again” moment I’d expected (reasonably I think. It happened with pizza back in September after all.)

While trying to debug a particularly gnarly query I just kept thinking: This isn’t worth feeling like this. I’ve just felt like complete crap for two days. I was going to make myself a chicken cheesesteak burrito for dinner. But now I think I’m just going to eat it out of a bowl with some guac salsa and be damn glad I did.

So I took some of the remaining starter, fed it really dry, and sealed it in a plastic container before putting it in the freezer. I’m just not going to do this anymore. It’s not worth it. Ironic that my thesis really is an awfully close parallel to “Nothing tastes as good as thin feels” goals of weight loss notwithstanding. The pleasure just isn’t worth that persistent feeling.

Yeah, I’ll have pizza here and there, and a burrito or sandwich on occasion. But baking bread? I love DOING it so maybe I’ll do it for holidays, parties and such, and keep the other confection and baking pursuits going.

Baking bread without eating it is sorta like….well… like brewing mead you don’t drink.

But that’s a different post.

So close

My plan had very little particularly to do with blogging; just writing something down every day. So I expect that as I get more interesting, I’ll post less frequently. I just figure that if I take it in a certain kind of direction I might just as well hit post. But nobody’s even hit the site in the last two days so I’m under no particular delusion that I’m writing for anyone but me anyway.

Anyway the month is closing out as is the quarter, which has some exciting implications for me this turn.

A couple years ago I was getting very concerned about my mental fortitude and willpower. It was really bad. So I came up with an idea:

Every month, give up something or make a single habit change for the duration of the month. Just do something different and difficult that’s good for me. Seemed harder then than it seems now, but that was quite precisely the point.

So I did. Every month I’d give something up or start doing something differently. Some of the things were harder than others. Sometimes I stacked a couple.

The final list had things like:

– No gaming
– No non-meal snacking
– Read an hour or more a day
– No computer use at home
– No noncritical spending (nothing but food, gas, utilities.)
– Meditate every day
– No soda
– No Amazon
– Eat something green every day
– Only drink water
– Write daily

There were more, but they’ve slid into obscurity.

The plan worked. Over the first year it was really tough, but got quite easy. By the last few months it was such a trivial exercise that it barely seemed worth the effort.

Then in August of last year I decided to try and find something a bit tougher.

No wheat.

Now… I’ve been a baker for 35 years. I eat sandwiches, burgers, pizzas, burritos, pasta, cookies, crackers, cake, etc. This was gonna be tough.

And it was. It was complete fucking torture. I did it. But it sucked. It wasn’t “no carbs.” But “no wheat” and in the spirit of The Purity Test (look it up. I won’t be responsible for what you find) “All technicalities count.”

Did you know soy sauce was made with wheat?

I did it. I got through the month. But it was just so damn taxing that I stopped doing monthly things like that. I just cancelled the program. I’d developed what I wanted to develop and proven what I needed to prove to whom I needed to prove it.

A few days after Christmas I came back from New York on a single-shot drive to Nashville (16 hours from Albany to downtown Nashville. I was pulled over at 4 in the morning by an awfully cute cop, less than one block from my apartment. She let me off with a warning and a smile.) On the trip down I’d thought myself a good thunk and I thought to myself… “Self? Whatever happened to those little monthly prohibitions? You’ve really been taking it easy. SOME of the guys in here are saying you’re bitching out. I’m not going to name names. But… there’s….been talk is all I’m sayin’.” After all, the internal monologue on a drive like that eventually becomes an internal dialog, then a conversation and finally the cacophony of an insane asylum’s common room a month after they’ve run out of Thorazine.

“You know what you should do, I mean, if you haven’t backslid entirely into bitchdom that is?”
“What?”
“Three months. Three months…aaannd because it’s three, you can’t just do one thing for three months, it’s gotta be three. Yeah. Yeah. Okay. So… No soda, a tight amazon allowance ($100/month) and…. Yeah, no wheat. Three months. You aren’t a bitch, ARE you?”

New Year’s Eve I ate in such a manner that would make Oscar The Grouch flinch and say “damn dude…” But at midnight it was over.

The first couple weeks were just positively awful; stomping around yelling “What the hell do people even EAT!?!” But I started getting in a groove when the novelty wore off pretty good.

Then it was just a barren road leading off into forever where I’d have to occupy myself with keto bread substitutes (they ALL suck. Take your wacky ass egg and cheese concoctions and GTFO.) But I managed.

Interestingly, the biggest problem wasn’t craving. It was just straightforward food choice. Picking things to eat without getting crazy with repetition.

Between this and some light (twitter based) reading about a carnivore diet that people keep mentioning I started eating a WHOLE lot of red meat. The sous vide always has something going and I’ve got pounds of cooked ground beef I just bring to work and eat a little bit of for lunch (today I ate half a london broil though. *urp* A bit tough to chew but holy shit was it delicious.)

I noticed something, a few weeks in: I feel fucking great. I seem to need far less sleep. I don’t drag through the day. There’s absolutely no 2:30 lunch hangover.

I’m still dying for pizza and crackers, burgers and burritos. In fact I went to the supermarket tonight on my way home from the office and bought all kinds of bread. Plus I pulled my sourdough starter out of stasis.

I’m 25 hours and 16 minutes away from being able to eat something with wheat in it. I think what I’ll end up doing tomorrow night is make myself a grilled cheese sandwich and drink a root beer. But next week is gonna be completely fucking bananas.

I’ve got to say though, after all of this, I’m seriously considering cutting carb consumption to one day out of every two weeks or something. Go for a pizza, make fresh pasta, etc. Weekday lunches will still be a logistical bitch. But the things that cuts out are almost all in the fast food category, and how can that be bad?

Especially since I’ve lost almost 20 pounds.

Out of a fog, back to the past

It must be the fact that I’m putting pen to paper at all again. I can’t really imagine what else it could reasonably be.

This might get a little wacky, I don’t know. I’m all stream of consciousness all the time anyway lately so you get what you get.

Lately, and by that I mean within the last couple weeks to a month, I’ve felt myself coming out of a fog of sorts. It had been years since my brain felt like my own, since I progressed at all in thought or skill in any measurable way. This is not to say that I’ve been a window licking idiot for the last N years, but the difference is one in degree rather than kind.

There’s a thing I say to people when they get on my nerves, which also means I’m chanting it to myself ad nauseum: “If you were wrong, how would you know?” When I use it as an admonishment it’s usually, if I’m being honest, my way of saying “shut the fuck up.” But it has more value than that.

How DO you know if you’re wrong? You should be able to ask yourself that question about all things you think you know anything about at all. Now, the answer may very well be (and is, with frightening regularity) “I have no idea.” But at least be aware of that.

This comes up for a couple reasons: First, I’ve been listening to the narration of Nassim Nicholas Taleb’s book “The Black Swan” which, a couple hours in is exceptional. Go get it and read it. I’ll put a link in the sidebar. I’m not going to butcher his thesis here. Suffice it to say he touches on it enough that I was bouncing up and down in my truck saying “I do that! I do that!”

The other is that one of my favorite things in business happened to me today at about 4:30. This is not something that comes from my better nature as a human (indeed there are at least a couple people who would no doubt argue that I don’t HAVE one of those. But I’ll tell that story when I’m good and fucking ready and not a moment before.)

The most nightmarish place I’ve ever worked was a firm on Wall Street. It was a huge, german, backstabby financial institution with a 12-14 hour work day. I was a C++ programmer (oh THOSE were the days *le sigh*) working on a trading system. I feel compelled to add that it was one of the best few year stretches of my life. My boss and I locked horns frequently on the job, but left that shit in the office. It’s one of the only jobs where I made friends that I still keep in touch with. For all the misery, we build quite an esprit de corps. And holy SHIT did we drink.

Anyway I was on a long running project where I had to interact with a team of junior developers on a green field project. A more contentious team of fucknuts I’ve never had the displeasure of dealing with, before or since. Anyway I was providing (after 6-9 months of negotiation and spec tweaking) a feed file every night. There were constant complaints about data quality (I could only provide data that was as good as the data I had, Garbage In Garbage Out after all) and there were all kinds of other “I’ll tell your manager/VP/Director” horseshit problems I’ve forgotten within the last 14 (holy shit is it 14?) years.

We were running tests on a daily cycle. I give them a file, their overnight process ingests it, we sort through the problems. It should’ve been really straightforward. But it was a case of them being able to do no wrong and punting everything because they didn’t understand defensive coding (be liberal in what your program accepts, conservative in what it emits.)

One morning I got in (Seven Fucking Thirty) to a series of OMG THIS CAN’T KEEP HAPPENING emails firing back and forth. Yeah there was some really wacky problem with the file.

I went out to the drop location and found “filename.xls” and “Copy of filename.xls”, screen shotted the directory and copied the files locally, zipped them up, then started looking at copies I’d made of that, while keeping my eyes on the drop location.

Someone had opened the file to putter around with it before they imported it and had fucked with the formatting badly enough that the data wouldn’t load, then tried to pin the failure on me.

Now, we all like to tell stories wherein we are the hero. It’s WHY we tell stories most of the time. I wasn’t a hero. The reason this sequence of events were sufficiently powerful to make me sweat is that a lot of the time my feed was bad. I did forget things. I was eeking in on accuracy but it was taking a long time.

But not this time. THIS time higher managers were getting called in to deal with the situation. After some rounds of nonsense I called the developer (on the PHONE, which says something about how hot I was.) The “copy of…” file had disappeared in the interim.

“Dude, you edited the file and broke it.”
“I didn’t touch anything. You submitted a bad file.”
“Okay man, look. I have screen shots of the directory and local copies of the original and the backup copy you made. I have the real original I generated here so I can point to the exact changes you made that broke your import.”
“…”
“Here’s what’s going to fucking happen next. I’m going to give you the opportunity to send an email to me, my boss, HIS boss and whomever else you want, explaining exactly what happened. If you don’t, I will and I promise you it will be a much different email.”

The righteous fury with which I was barking at him by the end of that sentence was one of the most incredible things I’ve ever felt. I was RIGHT. It was the ultimate gotcha.

Petty? Sure. But I was fucking right.

I don’t go over that story often in my head; not like I used to.

The less interesting parts of my job today involve sending all kinds of data all over the place, including to a company who’s charging us a terrible amount of money to provide a service they can’t seem to get off the ground. They’ve got ENDLESS problems ingesting incoming data. They shift goalposts, slide new specs in as “quick changes” and play all kinds of underhanded games they think we can’t see. They’re not only assholes, they’re inept assholes. (For the record, we deal with many counterparties who are perfectly competent and pleasant. I don’t actually just hate everybody.)

Well, I got an email…Tuesday, “Hey man, the last two files you uploaded were both truncated and they’re corrupting our upload process. This keeps happening. Can you check the process on your end?” Fuck. (Also. “keeps happening?” I’d never heard about it.) I dodged the email because I didn’t want to deal with it and replied with a mea culpa email this afternoon, when I finally started looking at it.

Okay. They’re files coming out of two different processes completely. So something’s truly fucky.

I keep copies of these files for months (3-6 depending.) I find the files, one is in a zip file I send, and the other is just a csv I transfer natively. I crack them open and…they’re fine. I look at the end of file rowcount screen shots that were sent over and, sure enough, they were truncated. I puzzled around this for about an hour this afternoon.

An ftp transfer truncating files? That’s…weird. I run a test (though not a file size test) post-upload, to be sure they transfer was successful. So it’s not possible that the data connection bails during a partial upload.

I grab our systems guy and drag him over to show him and re-narrate the sequence of events, show him the email and the files. We bat about a couple theories when I go ashen.

“Wait..” I said. “THAT file came out of a zip archive right?”
“…yeah?”
“If the transfer had truncated the zip file, it would be corrupted. He wouldn’t be able to open it, much less retrieve a partial file.” Understanding dawned.
“He’s…”

“Fucking lying.”

I can not WAIT to go in to work tomorrow.

Freedom and Power

I had a conversation with a friend of mine last night that got me to thinking, as conversations with him are wont to do.

Since I’m now in the real name world, I’m going to be a bit sparing about details. But suffice it to say that I’ve made medium and long term decisions about where my life is going, and am acting with some alacrity to make those things happen. Some of the bigger changes are happening….not so much “on a long timeline” as “in the future” since they’re largely in stasis until a couple few other slow-rotating gears line up. Fair enough. Do what you can and make yourself ready for luck.

Having made these decisions and plans finally, a couple/few weeks ago, I’ve noticed something (though it may be related to other factors that I’ll get in to in a sec.) I’m operating from a much stronger position as far as my day to day work life is concerned.

The act of deciding upon and planning my future I knew would take me out of the world of “seat of my pants” living, sure. But it’s given me a foundation, an unassailable fortress from which I can act. Add to that the fact that my immediate manager is out on vacation for a week and I’m actually having a grand old time; moving as many projects forward as I possibly can before he gets back. It’s been a week of meetings, planning, and proof of concepts.

I’m not deluded by it though, like that Chevy Chase movie where they move in to a house, hate and are hated by their neighbors, so they work together to make it “showable” such that they can sell it and get the shit out of there. They have a moment of weakness at the apparition they’ve created for the sale, thinking it somehow represented reality. I forget what happens in the movie after that.

But it’s not fucking happening to me.

pics, upgrades, and micarta

Yeah I’ve definitely got to get image/media storage squared away. I made micarta for the first time this weekend, documenting as much of the process as I reasonably could (seeing as how I couldn’t take pictures while I was applying layers of fabric and resin.) So that will be coming.

Unfortunately I still don’t know how I’m going to get the stuff machined down to size, as I really overdid it with the initial size. Turns out that was a good thing since I hadn’t the faintest idea what I was doing and the result was…less than uniform. You’ll see what I mean. But there are some deep ridges in the top where the workpiece ended up being wider than the jig I had put together to hold it in place during clamping, so it folded a bit. Still, there’s more than enough usable material for a knife or three.

I’m going to have to run a prototyping operation with a couple pieces of hardwood. Damn I wish I could get maple down here.

A funny thing happened to my head on the way back here. Over the last 72 hours, my brain has started dredging up all the old ideas about site design and such that I wanted to implement. Even after only a couple days here my brain is plotting embedded wikis, gateways to and from social media (is there a goodreads “currently reading” addon? There must be) and all kinds of crap.

Damn. I had something else but forgot. Alas. I do want to implement some tagging scheme here and start putting in some project notes for the stuff I’ve been working on. Hey, who knows, maybe I’ll progress past this stream of consciousness stuff some day soon.

Don’t get your hopes up though. :p

Under construction

Yesterday’s move is, as implied, part of a renewed commitment to this platform. And if I’m gonna be living here more, it needs some homey touches. So expect a bunch of features to come and go, themes to change around as I try things out, etc.

I’ve got a couple Big Idea projects I’d like to test here, but I may decide to sandbox all that kind of stuff at home. We’ll see.

It’ll look like there are multiple posters here for a while, as I get users sorted out. There are decidedly not.

I realized last night after publishing yesterday’s post that my images have all flown the coop. Apparently I was storing them on imgur and had deleted my account somewhere in the interim. I’ll see what my options are for restoring them. I could host them here. But frankly I’d rather not.

o7

RIP: Mad William Flint

A long time ago, in a galaxy far far away…

I was a frequent blogger. This was back in 2002 I think. I used Radio Userland as my blog platform. I still remember my user id number (which was a part of my blog url) 0108194. The title of the blog was “The Universal Church of Cosmic Uncertainty” and I had all kinds of little cross-links, badges, cute little cycling memes, etc. Someplace I have a copy of most of the front page template. I’ll put it up at some point, it was funny; probably cringeworthy now. But I don’t much care.

Back then social media (as a series of monolithic aggregation points for individuals to come scream at political opponents and silly memes) didn’t exist. NOR, I hasten to add, did smartphones, so “food pictures” weren’t a thing.

Sharing ideas on the internet was generally done in long-form writing, cross linking between websites and huge comment discussion threads. You’d post stupid web quizzes and other nonsense. There were instant messaging platforms (icq, aim, yim, etc) where you had contact lists of people you’d talk to in one-on-one conversations, for the most part. The old guard of IRC and usenet were there then as they are now, creeping around in the background of things, generally out of the light of the normal internet user.

It was a golden age of the internet. We were emerging from the crash of the dot-com bubble and people were building and using interesting tools.

I loved writing on that little blog. I wasn’t particularly good at it, except for the occasional tuning fork of word choice I’d stumble over, combined with what I’m told is a relatively natural tendency to “write exactly how I talk” which I’d always heard was a good thing.

I talked a lot of smack and relayed work stories, dating stories, and all kinds of nonsense that, today, would make me absolutely cringe. Stories in fact that should have made me cringe back then. Not for their content, but for the possible exposure, were the people involved to have read them. And yes, more than once I had the rookie mistake of a girlfriend stumble over my site (who even knows how) and misunderstand what she read (I’d taken to the habit of pulling stories out of the past and telling them in the present tense as a narrative device. So imagine HER surprise when I talked about dates I’d gone on that he had no memory of. Go Team Dumbass *\o/*.)

Eventually I whitewashed UCCU.

During this couple/few year period of absolute wonderful chaos I had, at one point, taken a “Stupid Web Quiz” that was “What’s your Pirate Name?” It went on for about 10-15 multiple-choice questions and actually put something funny together:

Mad William Flint.

I liked it.

Blog friends liked it.

I decided this was the other half of the isolation process between my online presence and my meatspace presence.

So I went and grabbed the gmail address (having gotten a gmail alpha invite, donchaknow. *preen*) a domain name, and I set off to carve my niche anew.

But my narcissism would NOT let me maintain an online presence without SOME crossover. So I’d give a work friend the address with an admonishment. A week or two would go by and I’d start blowing out the lines on the keyboard about some work story and I’d stop….Shit. I can’t say that here.

Then there was the 9/11 account, the link to which I sent to a family member. Welp, there’s a whole new raft of shit I couldn’t talk about at all.

So I became weirdly detached and noncommittal. If I couldn’t really blow out the lines, what was I doing there. Years of false starts, multiple parallel sites with different “blogonyms” and such; every one a further fragmentation. Every one received less attention.

Until finally I’d forgotten how much I enjoyed writing entirely and I was finally fully adrift.

There’s a book, I’ve not yet read, preferring to cover the author’s prior works first. It’s “Skin In The Game” by Nassim Nicholas Taleb. If you’ve never heard of him, go get some of his stuff and read it.

It’s sufficiently popular that the title is bandied about pretty frequently. The thing is, even not having read it yet, the phrase “skin in the game” conjures up a powerful and immediate mental admonishment to “put up or shut up” in me, every time I see it. And so, an idea repeated in different contexts over a long enough time (especially one we agree with at the outset) tends to sink in.

In what areas of my life am I just a dilettante? Well, that question has a truly horrifying array of answers. But I’ll get to that…perhaps not today.

All this winding nonsense does bring me to my point: I’ve decided to stop the anonymous internet thing. Screw it. I’ve got too many wacky little compartmentalized clusters of interactivity to manage.

So today heralds the death of Mad William Flint. Once I hit post on this, I’ll paste the link a couple other places and cross-pollinate once and for all, these disparate forums. This of course means a whole lot more for me than it does for you. After all, in order to have a superhero unmasking, you need a superhero first.

I’m just some asshole with a blog.

o7