Archive: May, 2018

When your hobby is like your profession, but isn't fun

posted by Jeff | Thursday, May 31, 2018, 3:28 PM | comments: 0

If I go far enough back, to when I was in middle and high school, I "played" with computers for fun. That mostly meant making goofy little BASIC programs to do random stuff, and it was rewarding to see code turn into something useful. Before I got to college, I became totally infatuated with broadcast work, radio and TV, and mostly let the computer interest subside or sit in the background, even as the machines started infiltrating all of the broadcast equipment. Obviously I went back to computers when it was clear the Internet wasn't going away (and felt like another form of media to me), and within four years out of college, I learned enough to make software my profession without the formal education.

That fun hobbyist approach led to the sites that have been with me for two decades, and I've always worked on these on my own time. It was always supposed to be a fun distraction, but also a natural way to keep up on new technology that I might not get to work with in my day job. This became really useful as I started to pivot away from heads-down coding jobs, because at many points in the last six years, I've written as little as no code as part of my job, and in others, was there largely to validate and guide the work of others. You keep street cred when you're still in it in some fashion.

For most of that time, I was able to use a combination of my forum project and the sites to stay at the very latest versions of Microsoft's dev stack, even when we might be behind a version or two in my work. But about four years ago, two things started to make it hard to keep up in a fun way. First, Microsoft basically rebooted their entire platform, which was good because they were open sourcing it all, but bad because it was a constant moving target. Every few months they'd change things enough that trying to get any non-trivial project into the current preferred state was a hassle. There were also a lot of things missing. Concurrently, front-end technologies were changing just as fast, and there were (and still are) several dominant frameworks that are competing for your attention. I think I've been involved in evaluating those at least three times in the last few years, and while I have a cursory understanding of them, I'm not fluent in any of them.

In my day jobs, the amount of context switching from business execution to technical overlord (I kid, it's not like that) gets to be a little exhausting at times. As much as I've tried to focus my career on the execution and leadership angle, company and/or team size has often required that I also be technical and write code. So combine that situation with all of the rapid change, and it shouldn't be surprising that trying to maintain my own stuff, the stuff that's supposed to be fun, isn't really very fun. I suppose maybe that's why your hobby should be different than your work.

But during my period of involuntary non-employment, I had some time to get back to it, and the platform has largely stabilized. In recent weeks, I was able to get the forums and CoasterBuzz up to the latest bits. This means I can probably do a real release of the forum app soon, which is really just a port from the old platform, and not modernized, but it's a step in the right direction. I can't even tell you how good that feels, because for the first time in years, it's fun. It stopped being fun because it was hard to move it forward, but now it's moving again, and that's exciting. Even the build automation behind it, which I rarely ever messed with for my hobby stuff, is working. That's pretty cool.

I've had some serious challenges lately, and I needed something to be fun and winning. The timing is excellent. There may be some truth and wisdom to varying your hobby from your work, but I think it's just different enough that both can be awesome, even if they are related.

Star Wars: Too much of a good thing

posted by Jeff | Tuesday, May 29, 2018, 10:45 PM | comments: 0

I haven't yet seen Solo, the latest Star Wars movie, but probably this weekend. The movie had an opening weekend that wasn't as epic as Disney would have liked, though director Ron Howard said it's a personal best for him. The entertainment press is asking if Disney has lost their mojo or something, but I think it's very simply an issue of saturation.

We're just coming off of Episode VIII, which came a year after Rogue One. When Disney bought Lucasfilm and talked about doing the mythology films every other year, in a set of three, that seemed pretty cool, and fans were ready for it. Then they added the origin stories to intersperse, which sounded like a good idea, but now it's starting to feel like there is so much out there that it's just not as... special. The prequels were not great in retrospect, but we overlooked their shortcomings because 16 years had passed and we wanted something new. Then we waited a decade for something new, eager to right the ship, and it was awesome.

But I can definitely see how there's a scarcity benefit. That's why I kind of tuned out from the Marvel movies, because there were so many. They're less special if there's always one in the theater. The scarcity might be a thing that helps most forms of art. I wonder, would I like Garbage as much if they put out an album every year? Would Monet be cool if everyone could have one in their house?

Maybe Disney should slow down on the Star Wars movies.

The limitless promise of graduation

posted by Jeff | Thursday, May 24, 2018, 10:30 PM | comments: 0

There are a lot of college graduations in the books for this year, and the high schools are finishing up, too. Every year, these events yield some great speeches, and a lot of sentiment among the graduates about how anything is possible.

I remember that feeling, particularly in college. I was feeling very done with school and was ready to be successful in real life. I wasn't entirely sure what that would look like, but it was a feeling that stuck with me for a number of years, even into my career change four years out of school. There were some struggles in that time, and my confidence was up and down, but the possibilities were in fact endless.

I wish you could bottle that feeling. I thought I had it again when we moved to Seattle, but I think the stress of extended "self-employment" and having a child put me largely in survival mode and I wasn't thinking much about what could happen. On the other hand, the move to Orlando, when we started planning it five years ago, did feel like there was limitless potential for our future.

There are times when I'm probably naively optimistic, and while I can't always keep up that attitude, I do cling to it because the opposite state would be a miserable way to live. But while optimism is good, that feeling of embracing the unknown, and excitement over limitless possibilities, that's harder to capture. There's something about life as it progresses where the stakes seem higher, change gets scarier and uncertainty carries a lot of mental weight.

But is any of that really true? As I said the other day, we only have so many minutes. As time moves forward, the stakes aren't as high, the change is less permanent, and there is one thing that becomes all the more certain. I'm not exactly sure how to phrase it, but while time does restrict the limitlessness of our future possibilities, it also creates urgency to consider those possibilities.

Right now, I'm trying to share in the feelings of limitless promise that graduates are feeling, because there's a lot of potential to embark on new adventures in the very near future. If anything has changed since I graduated (and to be clear, everything has changed), it's that my view on what is possible is way more flexible than it was when I was barely old enough to buy a drink. Our limitations are often self-imposed.

We only have so many minutes

posted by Jeff | Tuesday, May 22, 2018, 11:12 PM | comments: 0

We booked a last-minute cruise for last weekend, because I was really in dire need of some laughs after a lot of un-funny times. Cruises are my happy place where I can turn off my brain and just be present. It's also a social opportunity that I love to have. Sure, we end up meeting people from down the street, or exotic Tampa, but there are always fantastic encounters with people from all over the world, especially among the crew. I love to hear their stories, about where they're from, about their families.

You can imagine then my sadness when I catch news stories about people with extraordinary hate for people of different ethnic backgrounds, races and national origin. First there was the bat-shit crazy lawyer in New York who made a racist spectacle of himself, and not for the first time, apparently. Then there's the border patrol agent in Montana who assumed that because a woman was speaking Spanish, she was obviously an illegal immigrant. Let that sink in. "Papers please" is not a thing here in the US, especially for citizens.

Look, I don't care where you fall politically in terms of immigration policy. The fact is that the US is a nation founded and built by immigrants, and it's still being built by immigrants. More to the point, these are human beings, and in these cases, voting American citizens. They have the same rights I do.

We have to stop allowing this sort of thing to be OK. While I'm certainly making the case that the diversity around us makes people interesting, I would also argue that we all have more in common than not. We all came from two other human beings, everybody poops and we'll all be dead eventually. When you have a finite number of minutes to live, why would you spend so many disliking people you don't even know?

Getting to .NET Core when migrating is a slow, slow process

posted by Jeff | Thursday, May 17, 2018, 3:57 PM | comments: 0

I finally got CoasterBuzz moved to .NET Core this week. I guess you can say I've been in the process for years, since it uses POP Forums' user system underneath, and I've been working on porting that to Core now since September, 2015. That's when Core was still called vNext. v1 was released June, 2016, and v2 was August last year, but ultimately the problem was that ASP.NET Core was just missing too many things to use it. I wanted to see out its vision of breaking entirely from the old .NET, so I didn't want to take those dependencies. Yeah, I wanted to run it on a Mac just to see it was possible.

The first and biggest problem is that I needed SignalR, which keeps an open connection to get messages from the server indicating something happened. I introduced real-time loading and updating on the forum a very long time ago, and maybe it was the first forum that wasn't Facebook to do it. I couldn't move forward without that, and it's finally coming with v2.1 of Core. The other challenge was that I needed something to do image resizing, and fortunately ImageSharp was already in development, though it's still beta. I can't be critical of that one because it's a great volunteer effort, and it's pretty high quality stuff.

I spent a lot of time messing around with various scale tricks during that time, and while they need some polish, I could in theory scale out the forum app to epic places without a lot of effort. The thing is, I personally will probably never need it. When I had a weird Google news feed traffic spike a few weeks ago, the old app was doing 20 pages/second with no performance degradation, and I've pushed it close to 500 without a lot of wear and tear. In the last year, I also started porting parts of CoasterBuzz over, little by little, and last week I used my plentiful spare time to just get it done. When migrating, you don't really have to change a ton of stuff, and even the views will work as they did before, but I fundamentally decoupled user handling from the framework in the forums, so that was my biggest change.

Beyond that, any of the old plumbing stuff from ASP.NET.old has to come along to the new world. The OWIN stack is kind of what we have now, in terms of handling the request/response lifecycle, but it was changed dramatically in some cases. HttpModules and HttpHandlers are of course gone, so you have to convert those into middleware. And then there are little nuanced things like figuring out the order of middleware, conditionally mapped middleware, the right way to wire up error pages so they still have the right status code (hint: 500's and 404's aren't configured together), rules for redirect middleware... it's a lot of new stuff. Entity Framework is dramatically different in convention, so there's a lot of re-learning to do there (and I don't even use it that much on CB). Oh, and of course configuration is totally different now, too. I think the hardest thing to reconcile is that stuff changed enough that I'm not sure which things I'm doing "right" and which have changed, since even the preferred tooling was not a constant.

The bottom line is that migration is fairly time consuming, as opposed to doing something greenfield. It also took a long time to go from something totally new to supporting all of the stuff that you used to know you could do. I think with v2.1, it's pretty much "there," you just have to understand how and where your cheese was moved. If I'm thinking about the parity with the old platform, I guess I should be impressed they've come so far in two-ish years, and all open source, too.

With this hurdle out of the way, and relative stability with all of the features I needed, at least my hobby can be fun again. I look forward to actually pushing the release button on GitHub for v14 of the forum, at which point I can start to get it out of 2011 in terms of front-end technology.


posted by Jeff | Wednesday, May 16, 2018, 10:45 PM | comments: 0

We got word today that Simon will be back on an individual education plan (IEP), which is a relief going into third grade, when he'll have to start taking standardized tests. Mind you, this means they'll probably have to spend time teaching him how to take tests instead of learning useful things, but I'm glad he'll get the extra help. Thanks to Diana's diligence in this process, he's been pretty well evaluated, and there are countless acronyms associated with him now. It's days like this I'm ready for him to just have the simple designations of "Simon" and "my child."

Simon's situation is definitely complex, because academically he's ahead in some ways, behind in others, but not horribly so. He's clearly very intelligent, but does not learn the same way as others. The ADHD makes that more complicated, too. I was impressed by the school staff, because they do get it and I think they have good ideas about how to navigate the challenges (and his teacher this year has been great). I don't think he would have met the criteria for the extra help though were it not for an outside diagnosis from doctors for the ADHD and ASD. Amphetamines don't make blank lines on a page any easier to fill with thoughts for him. The IEP acknowledges the risk going forward that he may begin to slip without intervention in areas around curriculum and learning environment, specifically around reading comprehension and language skills, as well as social skills. Imagine that you could absorb reading something, but get so fixated on the fact that you can't articulate the answer to a question, so you get stuck on it and can't move to the next one. That's the category of things he struggles with. It's hard to believe when the kid can tell you what exit number to get off on the freeway after going somewhere once.

My personal challenge in this is that I get so impatient with him. I feel like I'm getting better at it, but that fixation problem carries over into everyday life. When you ask him to do something, he will immediately challenge it, not to be a dick (well, maybe sometimes, because he is 8), but because he can't reconcile the direction with an underlying reason. Not being able to ask questions or allowed to disagree just grinds his gears until he can't roll anymore. This is, as you might expect, exhausting for me. When it's something simple, like asking him to not wear pajama pants to bed because they're all in the laundry, and he protests, it's frustrating, but when it's direction around something that could be a safety issue, like walking down the next street instead of ours because of construction traffic, his opposition is terrifying and frustrating.

Beyond all of these challenges though, I just want the kid to have a happy childhood. Socially, he's sometimes "the weird kid," which I can spot from a mile away because I was that kid. He sometimes struggles with some of the neighborhood kids, because kids can be dicks, but I want him to navigate those waters and advocate for himself. I want him to have fun though, too, and I'm thankful that some of the kids also look out for him.

Simon is a good kid, and we're fortunate that he's intelligent, even if he can't always articulate things, verbally or on paper. He can be funny sometimes too, even if he is incapable of sarcasm. The window for him to get the right help, from us and his teachers, feels so small when he'll be in middle school in three years. I'm cautiously optimistic though.

You have to love yourself first

posted by Jeff | Sunday, May 13, 2018, 8:45 PM | comments: 0

I don't usually write about the darkest parts of my life. You'd never guess I was going through a separation and divorce in 2005/2006, for example, by reading my blog. But the reality is that people go through stuff, and everyone has "a thing" at some point that makes life kind of suck. When we consider how we treat others, we generally forget that this is the case, and it's regrettable, to say the least.

The last three weeks have been tough, because losing a job that you were mentally and emotionally invested in sucks. It's a little like a break up. On top of that, throw in the bits about losing one of our cats, the continuing challenges of parenthood, the sudden realization that I've not been taking very good care of myself (and the self-loathing that goes with that)... it all adds up to a bunch of icky feelings that are in some part caused by things I have no control over.

Let me go back to that split, for a moment. Understand that I've long since reconciled the entire thing, and I am thankfully in a place where I can honestly say that I love and respect my first wife, even if we couldn't be married. When I say that I'm thankful for our time together, it's not lip service, it's for real. At the time, as that transition occurred, my bigger problem was really that few people paid much attention to what was going on my life. Few people ever asked, "Hey, how are you doing?" I was miserable, even though no one was really asking. There were really only three or four people asking, and one of those I was romantically involved with. This situation caused an important realization.

When you say, "People didn't give a shit," that paints a kind of bleak and unhappy kind of picture, but the reality is that this forced me to understand that if I couldn't love myself, and willingly do my best to improve my situation, it didn't matter who cared externally. If I were to wait for external validation, it might never come. All I could really do was sack up, smile and look out for myself. By the time I entered another long-term relationship, which ultimately did not last but was certainly impactful to my life, I was mostly able to do it knowing that happiness had to start with me before I could add layers of love from others.

Why am I bringing this life nugget up right now? Because I have observed recently that a number of people in my life wallow in misery, and I can't do anything for them. The only thing that they can talk about is how hard their lives are, and given the amount of shit I've waded through in the last month, it's hard for me to be sympathetic given the requirement for me to look out for my own stuff. Life can be hard, absolutely, but if you're measuring your worth or your happiness by the amount of love you get from others, you're destined to be miserable. Doing so means that you're keeping score, measuring against the lives of others, and worse, rejecting any responsibility for making life awesome by starting with you.

I'm turning a corner now where I'm ready to make my own life better. It starts with me. Sure, we're all human, and people need people. I get it. But we can't truly be open to the love and caring of others if we can't first understand how to love ourselves and own our own lives. I can happily and willingly support people who take that ownership, but if you can't do that, I just don't have the emotional capacity to help. You've gotta help yourself before others can help.

Ready for another boring year

posted by Jeff | Friday, May 11, 2018, 10:30 PM | comments: 0

When I look back at 2015, I think, "Wow, nothing really happened." The only thing remotely interesting was that we bought the electric space car, and thus proved that going all-EV was possible as a new normal. Otherwise, we had the same address all year, and I had the same job all year. That was gloriously routine.

This year, I thought might be the same, but I've already been forced into a job change. We're definitely not moving though. Simon going to third grade might be hard, but we're hoping getting him on an IEP will help with that. So once I get the job thing settled, my hope is that this year is otherwise relatively uneventful. Less chaos would be good.

It's so weird to think about how much chaos there has been for the last decade of my life. I met Diana in 2007, and in the the 11 years since, I've had one child, moved six times a total of 6,000 miles and had five jobs. That's a lot of change, even if most of it was voluntary. The weird thing is that 2005 me would have been horrified by this, but today me finds this to be somewhat normal.

I'm ready for less chaos. I'd like to continue to have vacation adventures (can't wait to return to NY, for example), but for job and domestic life, less is more. I can roll with all of that change, but I would be totally OK with having less of it.

Sleepless nights

posted by Jeff | Tuesday, May 8, 2018, 9:25 PM | comments: 0

I've been having a lot of sleepless nights lately, and worse, waking up with all kinds of weird aches and pains. I was chalking this up to stress or something, because, you know, I've seen more than my fair share of shit lately. But then I started thinking about the last times that I slept well. Most recently, it was in New York, which is surprising because the hotel bed didn't seem particularly comfortable. Before that was our last cruise, but I would partially credit the motion of the ocean there, and the fact that cruises are my superhappyplace. The thing is, all of my best sleeping in recent memory has occurred everywhere but home. That implies it might be the bed.

People who sell mattresses say that they need to be replaced every 7 to 10 years, which is a convenient statement when you sell them. My last previous mattress went a crazy 12 years. The current one is at 9 now. The thing looks pretty decent, but I have been, periodically, heading to the couch for the last year or so when I couldn't sleep, and for whatever reason, I just figured it was the change of scenery that helped. But I guess I need to wake up and get serious about the fact that it's probably the bed.

Beds feel like the lamest thing to spend a lot of money on, which is counterintuitive when you consider that you spend a third of every single day in them. That first mattress I ever bought was at some discount place for like $200 (in 1996), but I recall the replacement was something like $1,500 (in 2009). I guess the 20 years of experience suggests that spending more isn't really a win, so perhaps this time I just have to go on comfort.

One thing that is clear, after pinging the social medias, is that the foam stuff is not universally loved. In fact, some people seem to hate it or feel it doesn't last. I guess I won't know until I get out there and try it.

The hardest part is getting started

posted by Jeff | Saturday, May 5, 2018, 8:05 PM | comments: 0

As you might imagine, finding a job when you don't have one tends to be a priority. While there is little risk coupled with urgency in my case (beyond perhaps the need to have health insurance), I do like to have regular income because it's the way I provide for my darling family and it enables us to have adventures together. So weekdays start with an hour or two of following up on leads, setting up conversations and seeing if there's anything new to consider. This routine doesn't really go much beyond 9 a.m., so I have a whole lot of free time on my hands.

I've been feeling some extraordinary anxiety the last week or so, and I thought it was the lack of work. Now that I'm really taking the time to explore that anxiety, I realize now that the anxiety is tied to my desire to fully use that free time for something creative. I just don't know what that creative thing is, or how to start it. How screwed up is that? Most of the time, most of us would say something like, "If I only had more time to..." Now I actually have that time, and I have no idea how I would finish that sentence.

Now, I know that software is still a creative endeavor to an extent, but as my occupation, there is typically a directive or problem to address, so starting isn't all that difficult. In my TV days, doing far more creative work, I had the unusual opportunity to figure out what my community needed, and then do it, so even then there was some level of directive to get me started. When you step away from that and look for ways to express creativity purely for pleasure, there is no directive.

I suppose it helps to talk about the things that I think I would like to do. I want to write two screenplays, a short and something feature length. I have a lot of ideas for the longer thing (and I'm actively researching one idea), but nothing comes to mind for something shorter. I want to write something short and make it, as an exercise to make the longer thing "better." I want to make something out of wood. I was thinking an arcade cabinet, cocktail table style, would be fun. I have two software projects, the first being the conversion of CoasterBuzz to .Net Core, which is colossally boring, and I'd like to take another stab at my dashboarding idea, that I built a prototype of years ago. Heck, I'd like to build that quilting community over again with fresh eyes. But all of that coding stuff, I think might feel too much like work.

That's where my head is at. Anxiety is much less impactful when you understand it. Now, I wonder what I need to start...

Forgetting about self-care

posted by Jeff | Friday, May 4, 2018, 4:10 PM | comments: 0

When Diana and I went to New York about a month ago, it was the first time in a very long time that I could remember being totally unplugged, in the moment and enjoying myself. I felt it was a great realization, as if a weight had been lifted. I realized that I was feeling the physical manifestation of stress and wasn't taking care of myself. Work and parenting were taking a toll, even when I enjoyed them, because I wasn't taking care of myself. It all came to a head two weeks ago when I was let go, and it has taken much of the time since to kind of review, reassess and adjust priorities.

Five years ago today-ish, we decided for sure to get the hell out of Ohio, after the poor decision to leave Seattle to live in my then-unsellable house. I'm not going to write about that move again, but as I said then, it was a decision that came after months of reflection. When I look back at what I wrote, there's a lot of clarity there about working in something career stage-appropriate, being a solid and present parent, being a husband and all of that fell under the general theme of taking care of myself. Aside from the stress related to the financing of our (first) house in Orange County, I followed through and felt excellent for that next year.

Since that time, I think I started to get out of practice when it came to self-care. I've been going at life non-stop and slowly stopped watching what I eat, I was skipping morning walks to do work, or working late and skipping Simon time, and the worst thing is that I stopped taking time to just do nothing and contemplate life. Seriously, when is that last time you just sat down somewhere, closed your eyes and thought about stuff? Bedtime doesn't count. Self-care starts with being self-aware, and the understanding that no matter what your support system entails, no matter what you do for a living, your ability to thrive begins with you.

Obviously it goes beyond thinking about yourself in a non-trivial fashion. Sometimes you need to do stuff for yourself, even if it's the goofy self-indulgent stuff like going to a spa or buying something you want but don't need. It's doing stuff that you enjoy that maybe others aren't interested in. We have a weird cultural thing going on where we lump in self-care with narcissism, and that isn't right. It's OK to "treat yo self" periodically.

I am honestly not sure yet what it is I need, because life is different than it was five years ago. But I'm going to take the time to figure it out because I was definitely neglecting myself.