Monday, October 26, 2020

It's Monday, but It's Okay

 One of the managers posted a picture with that saying.  It's another day and we're still here.  The morning was overcast, so I couldn't see any stars.  I pulled weeds in the dark, fed my ducks, and put the rest in the compost pile.  

Speaking of composting, I read an article about a startup, Recompose, in Seattle.  They seek to compost humans.  I have to admit that it appeals to me.  Personally, I'm against embalming and burial in a concrete vault.  Place me in the dirt and let me return to the Earth.  Recompose "sounds" romantic and beautiful.  Place your loved one in a bed of alfalfa and let them return to soil.  Don't dig deeper.  Let's just stay at that point.

Details to Dissuade

Not trying to get morbid, but still on the topic of death - losing my dad is still too fresh.  He had opted for cremation.  I went with my mother to the funeral home to sign all the papers and confirm what was to be done with his body.  In the paperwork, she had to sign a statement that she had read details of what happens during a cremation.  The director told us that it was a law in our state.  It came about when cremation was a new option and the funeral homes lobbied against it.  They got our state to pass a law requiring that the relatives of the deceased had to read the gruesome details of what cremation did to a body.  They did it to get people to choose the embalming route.

Transition

Still going through the grief process and the changes that come with losing a loved one.  I still think that he was robbed of life, but so many people in this world have had their lives cut short.  I need to remember that.  I still worry about my mother.  They had a great marriage and loved each other very much.  Now she is alone.  I can walk to her house, but we're still so far away.  There are hours that she must fill and the pandemic makes time feel longer.  I stopped by her house to check on a few things, and found her lying on the sofa.  I asked her if she were okay.  She said that she was tired.  I asked about gardening or cleaning.  She said 'no' and that she was just tired.  Grief weighs heavily upon her.


Saturday, October 24, 2020

Rambling

 Coffee

Sitting here, drinking my coffee.  Soon, I will go out and do my fowl chores (pun intended.).  Extra duties on Saturdays.  I have to turn my compost pile, in addition to cleaning the duck house and gathering greens for them.  Still, I enjoy the dark morning hours.  Too few minutes dedicated to staring up at the stars.

Angry Beaver

When my niece was younger, she watched a show called Two Angry Beavers Even being, 24 years older than her, I had watched that show some, too.  What's my point?  I have an anger issue.  Not serious enough for anyone to fear for their life, but bad enough to make my marriage difficult.  When I talked to my brother (RIP 2009) about my marital issues, he told me not to be an angry beaver.

Help

I still need help.  I feel that I have legitimate complaints about my relationship, but at the same time, there are things that I should be doing to correct issues in myself.  I am frustrated.  I am angry.  I am upset that I have a bad relationship, especially since it had been good at one time.  I feel that life piling more onto my shoulders.  I have two households to maintain and strife between them (parent and spouse.)

I do need help.  Two options that I am inclined towards are Stoicism and meditation.  As a philosophy, Stoicism appeals to me.  I think that I have begun to live some of its tenets, but my dissatisfaction disrupts.  And meditation... I think that it would be good, but, dang, it is hard.  It's so easy to stop doing it as with many other activities that I have done in the past.

Lost

I am lost.  I am certain that there are millions like me out there.  We're all lost.  I am certainly nothing special.  Not a snowflake or unicorn.  Just an asshole wishing for a better life than he deserves.


Friday, October 23, 2020

Back to Career Talk

 Toxic Environment Partially Detoxed

At my previous company, I was a lead developer.  I believe that I did good there.  I worked on making the environment less toxic.  There was a "me me me" attitude when I first got there.  It was shocking.  I did little things to help.  I was certainly not skilled in this area. A simple example of what I did was to pass out our lunches.  The company bought our lunch and we made our individual orders from the restaurant chosen for the day.  I'd distribute those.  Before that, people would just barge up to the desk, toss aside other's food and grabbed theirs.  In a few months, most people were passing out food to their coworkers.  There were still issues, but it was much more collaborative than when I first started.  It wasn't all me, but I think that I helped move us in a better direction.

Insulted

I had to undertake the daunting task of rewriting the company's public website.  I made suggestions on what I believed to be the best course of action based on technical debt avoidance.  The suggestions were ignored.  The head of IT hired a contracting group to upgrade the CMS instead of doing a rewrite on the latest.  It was not pretty.  I don't know the details, but I feel like the contracting group quit.  We had an upgraded CMS, but with all the technical debt and mess of the old one.

Long story short, head of IT made my life a living hell.  He constantly changed his mind.  He berated our work.  He fired the two people working for me, so the project was left to me alone.  The last straw was when I was walking by the lunch room to hear him tell the president of the company that the web team wasn't doing their job and that's why the project was behind.  I was furious.  I was the only one left on the web team, and my days were filled with changes, reversals, tweaks, and all sorts of madness courtesy of the head of IT.

Quitting

I told my boss that I would be quitting once I found a new job.  I told him why.  He fussed at the head of IT and was probably the only person in the company that could get away with that without being fired (we lost our PM due to her disagreeing with the head of IT.)

It took about three months of searching, before I found the right job. And that's where I'll end this post.

Wednesday, October 21, 2020

Another Day

It would be good for me to post more on this blog.  I really don't expect anyone to read this.  It's out there on the web, but it is mainly for me.

Stars

I have ducks and quails.  Not too many, just eight ducks and six quails.  Every morning, I go out around 6:30 AM to let them out of their houses.  I take my wagon and head down my driveway to the family memorial garden.  Walking down my driveway, I look up at the stars.  I really only recognize the Big Dipper.  May be I will learn more constellations.  Looking up at the stars fills me with awe and makes me fill so insignificant at the same time.  I'm lucky that I live somewhere where I can see the stars and am not too affected by light pollution.

It's a lovely walk, even though there are days that I just don't want to do it anymore.  I get to the garden and start pulling weeds.  I get a wagon-full to feed my ducks some fresh greens.

I walk back over, feed them, and start cleaning their house.

At night, I go out around 7:45 PM to get their feed and water set up, then put them up for the night.  Sometimes, I sit by the quail house and look up at those stars again.  Such beautiful lights in the sky.


Tuesday, October 20, 2020

Long Time

Hopefully, I will get back to posting here.  Basically, a post for myself.  May be a sanity check, cathartic writing or still hoping to fix myself.

My dad is dead.  He had heart surgery May 14th, 2020 to replace a leaky valve.  He was rated in the top 99% for survivability.  Surgery went well, but as they were closing up, things went wrong.  In short, the aorta shredded and they fought to save him (40%).  They did.  Then he had one complication after another:  kidney failure, fungal lung infection, steel sutures rejected, bone infection, bacterial lung infection.  He languished for five months in different hospitals with them all telling us that he was getting better.  He was a strong, healthy man before surgery, and they completely broke him.  We did finally get him home for one day.  My mother caressed his head, and I held his hand as he took his last breath.  His grand daughters and daughter-in-laws got to say their goodbyes.

Worse things have happened to better people.

I do think that my dad was a good person.  Not perfect, but good.  As sad as I am, I do know that there is still suffering out in the world, and bad things do happen.

"I would not do anything to hurt my family.  I am spent.  I have lost my glasses, my voice, Hope."

I found the above in his email drafts (I did correct the typos).  It was to go to me and was dated June 27th.  I wish that he would have sent it.

If anything positive has come from this, is that I pray every night for the people that I know that need it (coworkers, friends, relatives, etc.)  I can't say that I am religious, but the book, The Healing Power of Pray had an impact on me.  It doesn't matter who you pray to (whatever fits your beliefs), but know that the prayers do have an effect.  Yes, my father is still dead, but that is for another discussion.  My brother's dead, too. And many other relatives have gone, some naturally, some tragically.  But I still believe.

Friday, September 4, 2015

Career Path Ups and Downs

I've been a working as web developer since 2000, did professional web design starting in 1998, and messed around with websites circa 1996.  Even though I've been around for quite a while, I haven't exactly been a rock star or code ninja, though I did have my moments.  The bulk of my experience is working for smaller companies where I had to do most everything (server setup, database creation and management, and web - both design and development.)  Currently, I am a lead senior .NET developer in a support role.

Note:  Originally, I intended to write about becoming a lead before I was ready, but it morphed into a brief history of my career in computing.  Perhaps, it will be of interest.

Way Back

In the beginning, there was the Commodore 64 and life was good.  Seriously, I got my first computer when I was 12.  It was fun programming on it, but I was no hacker.  I made a color-based alarm that flashed all colors to wake me up in the mornings.  I made a program to help me create characters for different role-playing games (pen and paper variety).  Otherwise, I remember playing games, and writing papers for school on it.

In middle school, I "believe" that I programmed on an Apple II.  Can't swear to it.  I did some simple graphics programming, and even took a course.  There was an amazing guy that was more the hacker, and I did learn some from him.  Sadly, he didn't survive his teens (reckless driving.)  Back to me, I liked computers a lot, but I didn't LOVE them.

Good Beginnings

I got my first taste of the web sometime around 1995/1996.  I'm not certain of the exact date, but I was working as a library assistant for a university library.  I found the web, and I was excited.  It was a whole new world.  I found so much cool information, and I learned that I could make my own pages!  It was simply astounding that I could use notepad to write HTML and see it in the browser.  I still remember when I saw the colors change on hyperlinks when you moved your mouse over them.  Wow!  I dug in, and copied the JavaScript code, so I could learn and do the same.

A Break and a Bump

In 1998, I actually got a job as a web designer.  My personal web page impressed them.  That was a great moment, then I had to work.  I affectionately refer to my work as fast-food web design.  It was work for an online directory, and I had to crank out three page sites for their customers.  The first tool that I had to use was dreadful.  It was all drag-and-drop, and here I was used to hand-coding everything.  It got better when we switched to Dreamweaver.

I did that for a year, and then was moved into a position to manage four web designers.  That was a drag.  I enjoyed working with my designers, but management was a mini-death.  I didn't have time to make anything and I was bored.

Excited Again

Another opportunity arose.  A company wanted a web designer that they could teach to program.  I jumped at the opportunity.  My training?  It consist of them pointing at a computer and telling me to get to work.  I didn't have the benefit of a mentor or even skilled coworkers.  I had to discover everything on my own.  The first year was a little rough as I learned ASP development using VBscript, but it was exciting!

I learned a lot, experimented a lot, and made major improvements to the code base.  I was becoming more skilled as a developer, and cared about my work.

501 Developer

The downside?  There were plenty.  I was too isolated from the development community, and I fear that this has stuck with me even now.  The sites that I worked on changed from greenfield development to legacy projects.  I was being left behind as technology moved forward.  My company resisted the .NET framework, because classic ASP still worked for them.

Why didn't I leave?  I had several reasons for not leaving.  The biggest reason:  I worked in the same office as my older brother.  Other reasons:  I made good money, and the office was 11 miles from my home.  Talk about a great commute.  But I was becoming a 501 developer, and losing my overall excitement.  I still enjoyed experimenting, but I was no longer passionate.

A Kick When I was Down

Sadly, my brother passed away from a brain tumor.  It was a gut-wrenching experience that threatened to break me.  My young daughter kept me grounded, and gave me more support than she will ever realize.  A little less than two years later, the company laid me off.

I got lucky and landed a contract job within two days of being officially unemployed.  Only it wasn't so fortuitous.  The job was maintaining and extending a horrid code base laden with so much spaghetti code that it made me want to run for the hills screaming.  The contract ended early, since the lead wanted fast development without any eye to maintainability, whereas my approach was slower but more maintainable.  Even though they were unhappy with my speed, they freely admitted that I was skilled and knew what I was doing.

From that contract job, I saw the writing on the wall that I should never develop classic ASP again.  Now, I did like it, but putting it on IIS 6 was an issue.  The technology worked, but the support was diminishing and that would make it much harder to support these sites as technology marched on.

Excited Again and Then...

I managed to land a .NET web developer job, but at a 20% pay decrease.  In the long run, I thought that it was worth it.  And I was right.  It started off as a wonderful place.  I got some excitement back, and was able to do more in the .NET space, and showcase my JavaScript Client-Side skills.  There were still issues.  The environment started to shift from the attitude of doing everything in-house to in-house bad, COTS (Commercial Off The Shelf) software good!  I was beginning to wonder why they were employing me.

A Career

I still feel like I haven't decided what I want to be when I grow up, but I should take a programming career seriously.  Amazing, isn't it?  I've been working over a decade in development, and I just now decide that maybe this is my career.

New Goals and D'Oh!

I started a new job with the purpose of becoming a better developer, and really start taking my career seriously.  I told my manager about my goal of sharpening my skills, so that I would be worthy of the title of lead senior developer.  Well, son of a gun... they hired another developer, waved a magic wand, and made me a lead.

What's the deal with the d'oh?  Isn't this what I wanted?  Honestly, I don't think that I'm skilled enough yet to be a lead.  This will definitely be on-the-job training.  I've been successful with mentoring junior developers in the past, but a lead is different.  Juniors come to the mentor for help and to learn.  A lead must, well, take the lead.  I can no longer be heads-down with my code and oblivious of others.  I need to be more aware of what my team mates are doing, and I need to check on their work when necessary, and guide them as needed.

So Far

It sucks.  I have a lot to learn, but I think that it will be good for me.  I have no desire to move into management, but I will need to develop a subset of managerial skills.  I need to improve my own programming skills, and be confident in my knowledge, but not arrogant.

Saturday, June 6, 2015

Writing Bad Code On Purpose

In my current position, I am a .NET Developer that is part of a support team.  I'm responsible for supporting brownfield applications used by the business.  The applications range from Windows Forms to Web Forms to ASP.NET MVC applications, and I even have a CMS to support for the company's public-facing website.  Soon, I'll have some WPF applications and web services handed off to me from the New Development team.

Now, I love greenfield development (who doesn't?), but this is a good opportunity for me to work on my debugging skills and my software archaeology skills.  I even joked that my title should be changed to Software Archaeologist, since I am having to delve into poorly documented legacy applications and carefully sift through layers of code to understand what the original programmers were trying to accomplish.

I like writing good code.

And I do know that I can always improve.  When I need to work on an application, I do my best to improve the code, and leave it in better shape than when I found it.  Unfortunately, there are times when I can't and that truly pains me.

When should I be "okay" with writing bad code?  

Ideally, never.  However, I came to a realization or simply confronted an ugly reality:  There are applications that I shouldn't clean up the code (except for bug fixes) and I can't take the time to write what I consider to be good code.  Though I must state that what code I write, however bad, should be as bug-free as possible or what's the point?

How did I come to this awful conclusion?  

I needed to update a point-of-sales Windows Form application.  I scrolled through line after line of hard-coded values, and was constantly seeing other instances of bad code smell spread throughout the program.  Some of these hard-coded values were rules for the application (i.e. if store has this rule, then allow this function.)  Changing any of these required a rebuild and deployment of the application.  Why weren't these types of values placed in a config file that could be updated via a text editor and deployed?  How in the world would we know what a rule number meant if we lost the database?  I could spend months on fixing all the issues that I considered to be wrong.

The Application has an expiration date.

That fact changed everything - I still didn't like it.  I can't spend valuable development time correcting and changing code that I believe needs attention.  I can't take the time to write code that is going to be maintainable for years to come.  The application isn't going to live that long.  A newer version is coming down the pipeline.

I still struggle.

I do my best to avoid writing bad code as much as possible.  I keep maintainability in mind when I am writing code.  For those legacy applications that have a short lifespan, I write code that is "good enough" to correct the bug or add the required functionality.  And I definitely aim to do no harm when I have to write that less-than-ideal code.