My Mission:
My mission is to build bridges over the rivers & canyons that inhibit daily task efficiency within my former industry, chemical manufacturing, by implementing my freshly learned and refactored skill-sets that will forge as I work to become the best developer that I can be within my future industry, software.
With the understanding that perfecting my craft will take no less than a lifetime, I estimate the portion of the second half of my mission that includes qualifying as a software developer, to be worth: Optimistically: 130 points Realistically: 390 points Pessimistically: 520 points I estimate the first half of my mission to be worth:
Optimistically: 2600 points
Realistically: 5200 points
Pessimistically: 7800 points
A little over a year ago, i set a goal. To be proficient enough at developing software to be employable. What happened three and a half months later was unexpected. For all intensive purposes (or is it intents and purposes?), while Leo was still in his desperate-wounded-warrior-crawl state-of-life, i met that goal by submitting my first iteration of tic-tac-toe to Clean Coders, who thereafter offered me a job as a software apprentice.
That was on September 9, 2020. The term of my apprenticeship was estimated to be approximately 5 months.
In November, things got a lot harder with the onset of a new sort of task. I struggled with these tasks and felt the first stabs of discouragement as I missed some of the given and estimated deadlines due to both the complexity of the tasks and my ever-so-little understanding of the concepts I was up against to master. Shortly thereafter, I became acquainted with those concepts and drew a profound yet concerning understanding about the world as it is today.
Over the next couple of months, I trekked on amidst the life events of losing our beloved, beautiful rottweiler, Brusly, and moving into our new home.
Then, at some point in March, roughly six months after my offer, I was told that I might be ready! I was to pick a date when I had nothing expected going on to be given my ‘final challenges’. I chose the week of April 12, and on that date, they were given to me.
That night, Rex came in my bed with a fever, and I faced a concerning and unfortunate dilemma. I was stressfully prepared to communicate the circumstances, but by morning, the fever had completely subsided and Rex was completely himself.
For yet another week, I pushed all the buttons at full throttle (and sometimes on less than fumes) to complete those challenges to at least, if not higher than the expectations of my judges.
Five days later, on Friday, when my minimax was still not working–but oh, so close–panic sunk in, and with it (on top of sleep deprivation) I lost my focus and ability to step back and think through the problems. That weekend was a blur, except that while I was trying to load up my old Mac to test my article’s procedure, I found some kitten pictures of Cheddar-bug.
The following Monday, I presented my efforts despite knowing their deficit. At the end of the day, I was offered the opportunity to extend my apprenticeship. This was an embarrassing and defeating moment for me that I had to overcome.
The most impactful statement to me at this point was, in paraphrase: “A professional falls back on his or her fundamentals while under pressure, but an amature panics and loses sight of them.” I took this very seriously. It was necessary for me to demonstrate a naturally ability to utilize as opposed to losing sight of the fundamentals of TDD and the art of good craftsmanship while underpressure.
Despite my tasks over the next several weeks, I practiced this and kept it in the back of my mind at all times.
A few weeks later, I was given another challenge. Wait for it… Tic Tac Toe!!! Yet again, in a new language.
Because my daily story tasks were complicated, rather difficult, and in the end, quite literally impossible, Ric-Rac-Ruby-O, took me much longer than I’d hoped. Nonetheless, when I submitted, I was pretty confident in its design and output.
I submitted only to realize a few days later that my most recent commit & push was done from the wrong directory such that it didn’t get to the repository correctly–ugh!
Nonetheless, it was reviewed and critiqued.
As of this morning, I’d been a software apprentice for a little over nine months–nearly twice the anticipated time. I believe that the longevity of this is due to two and a half reasons.
First, I came into this with next to no experience in software, despite my family’s blood of bits. It’s my understanding that most apprentices have at least a little history of software whether that be in the form of a CS degree from an institution or a developed passion overtime.
Second-and-a-half-ly, I was on my own. I had help to reach out to, if I really needed it, but I had no peers to ping in a quick bind. For me, to reach out would be to perhaps inconvenience or take out-of-deep-focus, a mentor/leader/judge and then admit to those judging me that I lacked understanding of a concept. Instead, and certainly at a cost to all those involved, I took a little more time each day to figure it out. Oh to have a peer to troubleshoot with… That probably would have saved me a month or two.
The half part is the work-from-home bit, which I can’t deny that I do love, but working from home leaves a longing for interactions with in-body humans. Not only did I not have peers to reach out to, but I had no across-the-table or knock-on-the-door or pop-over-the-cubicle-wall interactions available to me.
There’s comfort in talking with a peer. It’s easier to ask ‘dumb questions’ to a peer. Because I did not have this option, tasks and concepts took a little longer.
That said, to any of those who come after me, I will more than gladly help you to get through a block. I will not do it for you and I will not hold your hand to get to an answer, but I will help you in the best possible way that will neither steal from either your learning and experience nor from validation yourself and proving that you can do this too.
I selfishly wanted to get all that out.
Today marks roughly 433 points since I first stated my mission, which is actually within range of my realistic and pessimistic estimates, and this post is the final of my apprentice posts, as today, I was knighted as a Software Craftsman.
Leo:
Leo, when I picked him up today, greeted me with the biggest of hugs I’ve ever gotten from him, and he just held on in the sweetest little way. I had a hard time letting go to put him in his carseat, and so just hugged on for a good minute or two cuddling and rocking that sweet, unexpectedly, strawberry-blonde little boy.
Rex: Rex was excited that it was wednesday and thus pizza-shop night. He ate his pizza and rode the motorcycle game. When it was time to go, we continued the routine of going to look at the fountain with the “Wah-er” as Leo says.
There was a great big puddle in front of the fountain that the boys were all too excited to jump in and splash. I allowed them and recorded it, because their enjoyment was too cute and just so heartwarming. Suddenly, Rex turned around crying, and ran to me just as I noticed blood all over his face.
He’d hit his head on brick while on the down of a great big “boing” puddle jump. I comforted him and wiped the blood away. It was deep, but it didn’t require stitches or anything more serious than a band-aide and some kisses and love. To give him extra comfort, we called Bobby to show him his owie and then again to show off his bright orange band-aide that he wears with such pride and is excited to take to school to show his friends.
He says now, “Tomorrow, I’ll watch out for bricks”. Me: “Good Rex! You got an owie, and you learned. I know it hurts, but it’s really good that you learned from your mistakes” Rex: “Yeah, but, next time I’ll watch out for bricks. It was a ‘good one’!”
It’s been a good one!