The company I work full time for recently did their annual reviews, which means we had to set our sights on a new horizon of goals. This year was abnormal, by that I mean normally we are encouraged by management to pursue particular goals. This year we were given independence and were asked to come up with a few team goals and a personal goal or two.
Goal - the object of a person's ambition or effort; an aim or desired result.
I believe goals should be like the highest shelf of your pantry, hard to reach and providing a similar sense of accomplishment as finally making contact with the seemingly impossible to reach China.
When originally tasked with this blog there were a few requests on topics, but most of all leeway to write about what's important to me. Well, within reason of course. It is my hope as an upcoming developer to share what I learn in hopes that I can help the next generation overcome obstacles I have incurred. Here I am rambling on when I could merely say I intend to steer these blogs in that direction. For the near future this series will be detailing my progression on my soon to be mentioned goals. There will be other topics of course, I plan to intermingle these as to keep on myself and learn something new every day.
Goal One: CI/CD
CI/CD is the most easily achievable of my goals. For those of you unaware, CI/CD stands for Continuous Integration, Continuous Deployment (or development but in my case deployment). Atlassian will word it better than I could ever imagine.
Continuous Integration - developers practicing continuous integration merge their changes back to the main branch as often as possible. The developer's changes are validated by creating a build and running automated tests against the build. By doing so, you avoid the integration hell that usually happens when people wait for release day to merge their changes into the release branch.
Continuous Deployment - With this practice, every change that passes all stages of your production pipeline is released to your customers. There's no human intervention, and only a failed test will prevent a new change to be deployed to production.
In summary goal one is to convert one application to be fully CI/CD in our work pipeline.
Goal Two: UI/UX Design
Goal two is the harder of the two but also the most rewarding. I plan on taking classes through www.lynda.com and attending seminars on UI/UX.
UI - the space where interactions between humans and machines occur.
UX - the process of enhancing user satisfaction with a product by improving the usability, accessibility, and pleasure provided in the interaction with the product.
My expectations are the blog will be a way to keep me true to the course while also being a useful tool. Expect the next blog in this series soon.