This one time at band practice …

We’re the best band in a three block radius.

It has been almost three years since a jam session between Shawn Burgwald and I prompted the founding of the “Rubber Band”. I think we tried to play “Shook Me All Night Long” by AC/DC. Almost three years later and I’m still learning the damn solo. 

The band has changed a little. Shawn now primarily plays electric guitar rather than drums. Colin Young has taken up the drums in his place. Mike Jock, our original bassist, has decided to pursue other things. John Hatcher has replaced him on bass, and has introduced a banjo into some of our covers. Kenn Matthews maintains his role as lead vocalist. My brother, Todd Vandervort, and I bring up the rear on our respective guitar.

Aside from playing guitar I’ve started singing a little, too, lending backup vocals for Kenn as well as the occasional song. I joke with the guys that I have exactly two octaves to play with, but I’ll leverage them to the hilt if they’ll let me. The shower is now my studio and my family, the unfortunate audience. As for guitar, I find myself mostly playing acoustic. At band practice, surrounded by amplified electric guitars, it can be like bringing a knife to a gunfight, but I manage. 

I started writing songs, too. I’ve had a lot of fun garnishing my illustrations with poetry, so songwriting seemed like a natural progression. Time will tell if they ever see the light of day and the drums of ears ( other than mine ).

As far as the future of The Rubber Band? We’re trying to get out of the garage and start playing live more. It’s tough, though. We’re all Dads with families, jobs, and responsibilities vying for our attention. It’s hard enough to find time to practice alone, let alone as a group. But, we manage. And the good news? We’re getting better, too.

Maybe someday we’ll be the best band in a four block radius.

The Rubber Band and their merry group of band aids.

Take care. Stay healthy. Live life.

– Scott


#therubberband #garageband #music #guitar #musician #rock #beatmaker #drums #garagebandmusic #newmusic #beat #bass #cover #rockband #comic #illustration #drawnandcoded

Crazy Train

To my (old) team at UPS : Thank you for helping me keep the ol’ train on the rails for the last couple of years.

This is my station ( time to get off ) …

I resigned from my job as an Application Development Manager at UPS. While I enjoyed working with my team, I found myself increasingly at odds with my supervisor, a rigid back-to-office policy, an incredibly stale technology stack, an almost criminal lack of respect for working conditions, and an-out-of-touch CEO.

I have started interviewing, but it has been rough. I am finding myself overqualified for the software development positions that I enjoyed during the first two decades of my career. In Corporate America you are two things : a number and a salary. When either of those tips the scale you either need to adapt, or risk sliding off of the scale altogether. I’m trying to adapt, but as a software engineer ( also known as an “Individual Contributor”), I am finding myself competing with younger and/or cheaper talent than me.

That leaves management, which, at least at UPS, became an increasingly tough pill to swallow. As a manager I felt like my primary function was to find ways to manipulate people to do the greatest amount of work possible in the least amount of time against increasingly impossible deadlines. As a manager I never felt like I was helping people grow or learn. Aside from the paycheck, it was not a rewarding experience.

As I have gotten older and dealt with some pretty significant life changes, I find myself wanting to make a difference – wanting to help people. Yes, I am probably naive in the assumption that such a meaningful position exists for me, but I am not going to give up hope.

One last thing …

Interviewing can suck hard

One company I interviewed at had a final three hour interview, the first hour of which was a slideshow presentation. The recruiter suggested I “tell a story” to engage my audience. Taking him too literally, I drew a bunch of quick sketches to illustrate my take on managing a software development team ( the position was for a Software Development Manager ). After my presentation concluded I was met with blank stares and silence, like I farted loudly in an empty concert hall. The hiring manager just said, flatly, “Did you even read the instructions?” Needless to say I didn’t end up getting the job.

  • Throwing stuff over the fence at offshore teams.

Wish me luck!

– Scott


#jobsearch #technicalprojectmanager #projectmanager #careerchange #jobsearching #careeropportunities #careerdevelopment #itcareer #drawnandcoded #illustration

Straight from the top

I could get on my soapbox, raise my fist, and scream my frustrations in a lengthy, expletive-laced diatribe, but what’s the point? Capitalism has spoken – and boy, is it clueless, sometimes.

-Scott


#CEOTownHall #RightSizing #Offshoring #ReturnToOffice #COVID #Layoffs #OutOfTouch #Capitalism #Comic #DrawnAndCoded #Work

Guest registry, made easy …

Deetoh

I have a friend, Richard. Over twenty years ago we worked together at a small software startup in Kearny Mesa. Since then Richard has delved into real estate and investments, while I’ve continued down the path of a software developer. We hadn’t talked in a while, so we agreed to meet up for coffee about a year ago. 

“I’ll pick you up.”, he offered.

“You sure?”, I asked.

“Yes.”, was his response.

A few days later he rolled up in front of my house in a bright orange McLaren supercar. It stood in stark contrast to my current ride, a 2010 Chrysler Town and Country ( yes, that Town and Country ).

In the blink of an eye my daughter, Kaylee, who had been watching from the living room window, ran outside and pleaded to sit in the driver’s seat.

Kaylee in Richard's McLaren
Kaylee, in Richard’s McLaren

After Kaylee was pacified I climbed in and Richard and I headed for coffee.

After swerving to avoid anything bigger than a pebble, I realized that supercars come at a cost.

“Your ride is cooler, but mine is way more comfortable.”, I told him. 

“But overall, you seem to be, uh, doing well”, I continued, looking around the interior of his car.

He smiled.

Over coffee we discussed several things, but focused on a project that he wanted to build and launch. He wanted to bring to market a digital guestbook, and was looking for help.

He explained that it could be used at weddings, birthdays, baby showers, etc.., to streamline the process of registering at the party, making it easier for the party’s host to send correspondence. 

“Instead of signing a physical guestbook, guests will photograph a QR Code. The QR Code will redirect them to an online guestbook.”, he told me.

QR Code
The ubiquitous QR Code, a modern day bar code you can cram full of data.

“Then, after the party is over we can automate emails to all of the party’s guests”, he continued.

Without thinking I uttered the words no developer in their right mind should ever say.

“That sounds easy…”, I told him.

And then I uttered the other words no developer in their right mind should ever say.

“It shouldn’t take too long.”, I told him.

Richards’ proposal was timely. 

I had studied Software Engineering in college for the creative aspects: the ability to create something from nothing. For the last year I had been working as an Application Development Manager, and, although the role offered me the chance to mentor other developers and plan and guide projects, it didn’t leave much time to, well, to create. Furthermore, I felt my programming skills stagnating, as well. So, when Richard asked me if I’d like to partner with him, I jumped at the idea.

A year later we launched Deetoh, Rich handling marketing and legalese, and I the software development. Here’s the link :

www.deetoh.com

Please check it out.

  • Deetoh Register Guest Page

The Technology Stack

I decided to use Azure, .NET Core,  Angular, and Bootstrap for Deetoh’s technology stack to create some synergy between Deetoh and what I was doing at my employer, a .NET shop with Azure “cloud” aspirations.

I have been using Angular since its initial implementation a decade ago, so no problem there. Bootstrap, too, although I would be using it foremost for its “mobile friendly” layout engine, and secondly for its UI components. Deetoh was to be a “mobile-first” application, after all. 

I have been using .NET for over twenty years. Back then ASP.NET Web Forms and MVC were king. For Deetoh, however, I’d only be using it to create Web APIs – or, REST APIs that the Angular front-end could consume. In retrospect, I probably should have opted for Azure Functions as hosting a Web API as an Azure Web Service on Azure is pricey. Given Deetoh had no established audience, pay-as-you-go Azure Functions would have been much much cheaper in the short term. On the other hand, .NET Core, which Deetoh’s Web APIs were built upon, can be run as Linux Containers on Azure. Initially, I had everything running on Windows on Azure. After realizing I could migrate to Linux and cut my hosting costs in half, I switched.

Admittedly, Azure was new to me. At my prior employers I had used Amazon Web Services. What I found is that for every product offered by AWS, Azure had a doppelganger

I used Azure AD B2C and MSAL for user management and token-based authentication. This project provided a good foundation for my Angular front-end. Azure B2C provided user flows for registering new users, signing in, and password resets. My only complaint is that it proved to be a little lacking in custom claims. The JWT tokens generated by Azure B2C were limited to the standard username, address, phone number, etc….

For security, I would rely on Angular Guards to authorize access to each of Deetoh’s routes. The Guards would leverage the MSAL library to “sniff” the token generated during sign-in. On the backend, the WebAPI would also use MSAL to restrict access to the various REST endpoints based upon the same token. So, even if a user were able to circumvent the front-end’s security, they wouldn’t be able to access any data on the back-end.

My .NET Core Web API would consume Azure’s NoSQL database, called Cosmos DB, using Entity Framework. In retrospect, using an ORM was probably overkill, but the implementation would be sparse and straightforward given the flat, non-relational nature of NoSQL, so I figured, why not? 

To support Deetoh’s emailing of guests I used Azure’s Email Communication Service and a Storage Account. At my employer I’ve used SendGrid for sending emails, but SendGrid only offers up to 100 emails/month for free. After that it’s $19.95/month. Knowing that I’d likely blow well beyond 100 emails in testing alone I opted for Azure’s platform, which charges a flat fee of $0.00025 per email. Azure’s service doesn’t have as much polish as SendGrid, but so far it’s worked out well. 

“If Deetoh ever gets enough traffic so that our costs increase enough to warrant a revaluation of our platform, our service providers, or even a refactoring –  I think it’ll be a good thing!”, I joked with Richard.

That’s not to say Deetoh isn’t production ready, but if it miraculously receives traffic rivaling Evite overnight, there will definitely be growing pains. Obviously, I don’t expect that. Don’t build a cruise ship when a sailboat will suffice, right?

A little help from AI

About a month before launch Richard was demoing Deetoh to a couple of his friends that wanted to use it for their upcoming wedding. At the time Deetoh was fully functional, if not a little rough around the edges.

“It needs a better help experience”, he told me. “They didn’t know how to use it.”

At this point Deetoh’s system consisted of little help bubbles that could be toggled on-and-off. Richard, however, wanted full page overlays with rich graphics.

“Who is going to do the artwork?”, I asked Richard, already knowing the answer.

If you’ve been following my website long enough – heck, just by the website’s name alone, you probably realize that I am an artist, too. However, at this point I had already revised Deetoh’s email feature twice per Richard’s request, and just wanted to launch. After sketching up what I wanted the help pages to look like I quickly realized the custom artwork was going to take a lot more time than I was willing to spend. I started perusing the web for open source artwork, but realized that I’d never find content specific enough. Then I tried AI. 

AI is an acronym that has been met with both fear and excitement. As a software developer, I’m scared that someday it might be able to render code well enough to replace me, yet I am excited by its possibilities as a tool I can use to speed up my daily work. As an artist, I discovered the same fears, only multiplied. I have little doubt that in less than five years the majority of corporate artists will be replaced by AI. Keep in mind I say “Corporate Art”; this is the “generic” kinda’ stuff you see on internal memos, training videos, and the like. Anything public facing will undoubtedly undergo more scrutiny. For Deetoh, however, AI just worked. With the help of a mobile application called Recraft I  was able to generate specific-enough content for Deetoh’s help pages. Admittedly, I still had to make alterations ( i.e. “nip and tuck” ), but overall it took me easily a quarter  the amount of time. As far as the alterations? I vectorized the AI-generated imagery using Adobe Express Online and manipulated the resulting graphics using Inkscape. Here’s a sample of the end result. What do you think?

  • Deetoh Help Page 1 of 3
  • Deetoh Help Page 2 of 3
  • Deetoh Help Page 3 of 3

Closing thoughts

Deetoh took a lot longer than I expected. At most jobs I’ve worked I’ve taken to doubling my estimates and then some when determining how long something will take. Rarely, have I come under ( or over, for that matter ). For Deetoh, I went over. Way over. Why? It came down to two things :

  1. A simple misunderstanding between what Richard, the product owner,  wanted, and what I built.
  2. An inability on my part to determine how many hours a week I could dedicate to the project.

Ironically, these two problems plague every single software project that I have led or worked on. Part of the problem is Agile Methodologies, or incremental / progressive development. Agile doesn’t leave a lot of time for proper design. However, I’ve worked on way too many waterfall-based projects, Agile’s polar opposite, where all planning is done up front, to realize its faults, too. I’ve seen Waterfall stall out before a single line of code, much less a prototype, saw the light of day. With Agile, the focus is in delivering something, anything. 

Aside from governance, developing Deetoh gave me a renewed respect for Cloud to leapfrog development. There was a time not so long ago where I would have had to provision my own servers, my own user management, my own database, my own authentication, and so on. Now, I can do it relatively quickly ( and cheaply ).  Cloud is not just for large corporations, but for the little guys, too – like Deetoh.

Please give Deetoh a try if you get a chance. 

Thank you for reading!

– Scott


#WeddingPlanner #GuestRegistry #BabyShowerPlanning #Guestbook #BridalShower #GiftRegistry #EventPlanning #GuestList #Barmitzvah #Batmitzvah

6th Grade Glamp

“I almost walked up to the office to call you guys the first night, but my friends convinced me not too.”, Kaylee told Jodie and I, not long after returning from 6th Grade Camp.

It was probably a good thing she didn’t because, although Jodie and I had fully intended to leave our phones turned on as we slept, we had forgotten to. Awesome parenting, right?

“So…?”, I prompted her.

“The food was bad and I didn’t sleep at all the first night!”, she told me.

“Would you do it again?”, I asked her.

“No!”, she said, firmly.

“Really?”, I asked again.

“No!”, she demanded.

“Why?”, I asked. 

“The food was horrible!”, she repeated, adding, “And the beds had graffiti all over them, and….”

“….it wasn’t that bad, then!”, I interrupted.

“… and everyone kept farting! My friends and I all used the bathroom at the same time…”, Kaylee continued.

“…so no one knew who was farting?”, Jodie interrupted, laughing.

“YES!”, Kaylee confirmed.

Although I missed my little girl, I am proud of her. My own experience with 6th Grade Camp some 36 years ago – ironically, at the same campground and ( likely ) bunk houses – was disastrous.

Due to nerves, bad food choices, or both, I didn’t shit for the entire week. Showering was also traumatic. I spent the first two days with unrinsed shampoo in my hair before I gave up on bathing altogether. I was all-too-happy to return home, or at least I would have been if my mom didn’t immediately whisk me off to an event at the Portuguese Hall upon picking me up –  unshowered, filthy, and still very constipated, in dress slacks and a tie.

So, no Kaylee. I’m not sure I’d do it again, either…

But I’m glad you did.

– Dad


#6thGradeCamp #Camping #SixthGradeCamp #Cabin #Cuyamaca #CuyamacaOutdoorSchool #PowayUnifiedSchoolDistrict #Comic #ParentingFail

Budget Cuts

Budget Cuts
I wouldn’t put it past some employers….

My chair at work did lose an armrest a few weeks ago. I was denied a new replacement due to budget cuts and ended up reattaching it with an entire roll of scotch tape. The other option was digging through the graveyard of abandoned chairs leftover from prior layoffs and voluntary retirements, but most chairs were in worse condition than mine. I’ve had a desk job for 25 years now and it never ceases to amaze me that no matter what you spill or where you spill it, the stain always manifests itself as a dark stain in the chairs’ fabric exactly in front of your crotch. Inexplicably, armrests are inevitably more convenient than napkins when in meetings or battling it out with a coworker over email. So, scotch tape it is, and, if I’m going to sit in a stain, I’d much prefer it to be my own.

Take care. Stay healthy. Live life.

-Scott


#Comic #BudgetCuts #Layoffs #Recession #Layoff #Strike

Spending my inheritance

Spending my inheritance

My Mom loves clothes. 

As the story goes, my Mom and her identical twin sister, Bernadette, were traumatized throughout their adolescence by being forced to wear hand-me-downs and homemade attire due to my grandfather’s frugalness. This resulted in an insatiable desire to shop for clothes upon reaching adulthood, but only at discount clothiers.

Unfortunately, they didn’t get it out of their systems before I was born. Some of my earliest memories are of my mom and aunt dragging my cousins, brother, and I to go “clothes shopping” with them. My Mom always admitted this “urge to shop” was a direct result of her childhood deprivation. Being kids, we entertained ourselves as best as possible, often by hiding in the clothes racks – much to the chagrin of our Moms’ and the store clerks. And the clerks? They knew my Mom and aunt on a first-name basis. As to whether this was due to them being identical twins and easily recognizable, or their frequenting the stores so often as to become regulars is debatable. My money is on the later, however.

As I grew up I have no doubt my Mom’s biggest disappointment is that I didn’t inherit her love of clothes. It’s not for lack of trying, either. She’d drag me to Nordstroms, eager to buy me the latest in Men’s “Surfer Wear” that was all the rage in the 80’s and 90’s, and was always shocked when I’d shrug off her attempts. It is a little known fact that, yes, for the most part I let my Mom dress me all through middle school and high school.

My Mom got the last laugh, though. Between my brother and I? Four granddaughters. All of whom have inherited the clothes shopping gene. She’s never been happier.

This comic is a tribute to my Mom and my aunt. Shop til you drop and spend every penny, just please, oh, please, don’t drag me along anymore.

Take care. Stay healthy. Live life.

-Scott


#DrawnAndCoded #ShopTillYouDrop #DiscountClothes #TJMax #Marshalls #Ross #Comic #FashionSale #Fashion #Shopping #Style #FashionBlogger #Inheritance

Dog, the walk

The first of my “draw comics, faster” New Years’ Resolution for 2024.

One downside when drawing digitally, at least for me, is that I’m given too much control : I can can zoom in ( and in, and in, and in ), flip, rotate, skew, erase, un-erase, re-erase, sketch over, sketch under … with the end result usually looking like crap. My OCD inevitably gets the better of me.

This year I’m trying to keep it loose and get these done a little faster. I have a lot of ideas I want to pen down this year. Hopefully, they’ll make you smile, or think. Hopefully both.

Take care. Stay healthy. Live life.

-Scott


#WalkingTheDog #AnimalLover #Pets #ILoveDogs #FamilyDog #FamilyPet #DogComic #DrawnAndCoded

Purpose

Purpose
Over two years in remission ….

Remission.

It’s been two years since my last treatment for prostate cancer. If there’s still cancer growing in me, there’s not enough of it to detect in my bloodwork. 

If there’s anything good about prostate cancer, it’s that it can be detected through a simple blood draw. The blood draw looks for a Prostate Specific Antigen, or PSA. A high PSA doesn’t necessarily mean cancer, but if you’ve had your prostate removed ( like me ), anything higher than zero is bad.

I get tested every three months. The days leading up to those tests are anxiety-inducing to say the least. I try my best to push the worst parts of my cancer treatment as far back into the corners of my mind as possible, but those memories start creeping up, like clockwork, as the blood tests near.

Staying busy helps.

My daughters, now 12 and 14, haven’t outgrown dear-old-Dad, but their own interests, friends, and hobbies have freed up time for me to take on some new interests of my own. I’ve started taking online art lessons, formed a garage band with some of the neighborhood dads, and have even started doing some freelance software development. 

So, yeah. Life is good.

Take care. Stay healthy. Live it.

-Scott


#Remission #FindingPurpose #SurvivorsGuilt #PTSD #NoEvidenceOfDisease #CancerSurvivor #Family #ParentingFail #Comic #ProstateCancer

New Cheer

New Cheer
Let’s go Broncos! Make us Proud!
Touchdown Broncos! For the Crowd!
Stomp Your Feet! Rattle the Stands!
We cheer for you. Your biggest Fans!
…..BEE!

Pop Warner is over for my cheerleader, which means it’s competition season. On January 20th we’ll be headed ( again ) to Last Vegas for the 2024 JAMZ Nationals. It will be our third such trip. Our first competition was met with the untimely demise of the family van. The second resulted in a new pet. Who knows what will happen this time. Hopefully? Just a trophy. First place would be nice.

Take care. Stay healthy. Live life.

-Scott


#LasVegas #CheerCompetition #Jam #RanchoBernardoBroncos #BadPoetry #Comic #ParentingFail