DEV Community

Travis Campbell
Travis Campbell

Posted on

The Halftime Show

We're Halfway There

We're Halfway There, Living on a prayer

Celebrations are in order, I've successfully made it through 3 months of this apprenticeship. Things have changed so much looking back over the last few months, not to mention the year as a whole. I never imagined I would get to be on an actual development team with such great people, and collaborating closely with my fellow apprenticeships to help each other out and just getting to know each other.

I've had my ups and downs during the apprenticeship but it has helped me so much with learning how to code, work with other people, and see a bigger picture to software development rather than just being heads down coding 24/7.

At the beginning of this fellowship I had just graduated college with an associates in computer programming, wasn't in the greatest place mentally, and had no real idea as to my next steps. I was SO unsure if I was able to get a job with just the degree as I had never had a job before now.

But thankfully I was accepted in here, and got to drastically grow my capabilities as a software developer in a team, learned about the entire process not just the coding, and just improving my coding capabilities too. I had no clue how an API worked before this program, I knew of them but other than knowing the term, knew absolutely nothing about them. But here I am working on building my own and making some good headway with it.

I also never expected that my first job, which I really don't think is the case for most people, I would enjoy it as much as I do. Almost everyone I know had that first job that everyday they would get home and say the lovely line of "I'm dead inside, I don't want to go back to that hell tomorrow". And I get that, some days after my time at my employer host I am SO exhausted and mentally drained. But I haven't gotten to that point. I'm eager to go back the next day and collaborate with my team members.

I truly think I was given a great gift of having my first job experience being one that I thoroughly enjoy and am proud of.

This workplace is my family

Updates as to my Experience

I didn't get my blog up last week due to Hurricane Ian. Lost my power for 26 hours which is not that enjoyable, especially after eagerly waiting to relax for the weekend. Was funny that from the perspective of my house, it was essentially just a slightly heavier than average rainstorm, nothing too intense but I guess it was enough for the transformer to go ka-poot and wasn't able to be fixed for awhile.

Which future advice when having no power. Have multiple things to help pass the time. ESPECIALLY if you are going to be alone during that time. It's much easier passing the time without power if you have another person to talk to, play card games with, or board games. But there's not nearly as many things as you can do solo. Really felt every second that passed for those 26 hours.

I was SO bored

Outside of the power loss scenario, I'm making great headway in my Umbrella Project and my project at my employer host. From both am I learning a lot about coding, security, bug fixing, testing, etc. I'm busy practically everyday, and by the time 5pm comes around my brain is ready to shut down and just vibe watching shows or hanging with friends. I'm really able to get deep into the code and troubleshoot my way around the bugs and learn new things, I'll see a line of code and be like "Oh I never thought of using it this way" or look up clarification on a function and then realize that's the function my Umbrella Project desperately needed to fix a possible issue. It great having overlap in both projects and use one to help the other in a sense.


My first successful Bug-fix

I was able to get my first bug fix complete. After 3 weeks of tech issues, was able to finally work on something and get it fixed! Which it was as good of a feeling as being able to take off your heels after a long day out (or so I've heard. I've never actually worn heels but they certainly don't look comfortable).

It did reveal a rabbit-hole of issues related to it however, which were tiring trying to fix them all. But within a week I was able to fix it all, and thanks to a team member and their guidance, I was able to make it work and am proud of the fix.

Which also, managed to finish a second bug just the other day related to the frontend. I'm mostly familiar with backend logic, and have had little to no experience with React or JS but I managed to get the small bug fixed. After spending ALL day trying to find where the issue was, I managed to fix it. Which was such a brain draining task.

Hopefully no other bugs come out of those fixes I made but with the team, it'll be found quickly I'm sure and able to be fixed.

Bug Testing to Production

Tests, Tests, Tests, and even more Tests

Going off of bug-fixing, automated testing is such an amazing thing. I haven't gotten the chance to write my own automated tests quite yet but the tests that I did have access to, I had to modify some of them to reflect the new changes in logic but they seem so useful and relatively simple to implement.

Just being able to click a button that will automatically run 200 tests on your project as a whole is so amazing and useful. There is nothing in your code that can't be tested essentially, and having the tools set up to automatically test them is incredibly convenient.

It's incredibly possible for a new feature that is completely unrelated to login to somehow cause a bug in login from what I know. How it works? Who knows, but that's what the tests help you figure out. Every test helps contribute to the integrity and confidence in the code, and not having those tests drastically diminish the confidence in your code, the stability, and integrity as well. Because unless you are manually testing something 24/7 (which is such a mind boggling job for someone to do when they could be contributing to such larger parts of the project instead) it is incredibly easy for a bug to sneak in to the code somewhere in an older feature that is no longer being actively tested manually, and it could ruin a lot of things.


Next Steps

First things first, I want to get back to weekly blog posts. Due to having to go on a road trip for security about a month ago (which omg I just realized that was almost a month ago, why does time have to be going this fast), and then the hurricane last week, the last couple of posts has been biweekly. I want to keep this going every week, solely cause it gives me a break from everything that's going on to reflect and just breathe. Along with the therapeutic side of things by writing it down and sharing it.

Secondly, I really want to get this security problem with my umbrella project solved. I have been trying to implement things to improve the security (as of right now we are not using any 3rd party tools for our authentication, authorization or project as a whole besides the DB) and make things secure. Hitting some snags along the way but have a general sense of where to go next. And if it continues being an issue nearing the end of this sprint, me and my partner are both okay with then relying on a 3rd party tool to authenticate our users. We are both hoping to use the packages that are part of the language to implement everything, so that way we know the concepts, how to implement, and how things work first hand regardless of what company we end up working with full-time and their tools. They may end up using Firebase, or AWS for auth, and although there's differences between those two tools, due to us knowing the general implementation and code surrounding Authentication as a whole, we will have a better understand of those tools as well. Even if we have never touched them.

Also I'm hoping to get a bit more indepth with frontend development. I plan on hoping to come up with some designs for our UP so that way we can revamp our UI and make it look nicer, be responsive, and to get in that mindset. And to possibly help write some of the code. I don't know JS hardly at all, but I know it's used almost everywhere for frontend webpages it seems, so knowing it will be incredibly useful.

And with that, I bid adieu. I have to continue metaphorically slamming my head into the wall that is security and authentication. Hopefully I'll actually be back for another blog next week.

Security

Top comments (0)