Being a San Francisco native, I’ve seen my city change for the good and bad. A hard realization hit me when I realized that if I wanted to survive in the city that I love, then I would have to change career paths. So in 2014 I began to teach myself front-end development in the hopes that maybe I could make a career out of it. The harsh realization that programming is hard was something that I had to overcome and take on if I ever really wanted to make it out of the front-end minefield. I became a human sponge, and I tried to learn something new everyday in the hopes that it would stick. When I read about these so called “programming bootcamps,” springing up all over the Bay Area, I had to see what was available for someone in my predicament.
These programming bootcamps offer you the world, and then some. Problem is, is that they either cost you a new boat, or their tests are made to weed out only people who were programmers to begin with. I tried my hardest to keep pursuing my front-end dreams while also receiving rejection letters from some of these bootcamps. It was really hard, and I felt like giving up. Until I read about an interesting offer that was being given to a select group of folks here in San Francisco. I put all my chips on the table, and hoped that I would be selected. A couple weeks later I found out that I was one of the lucky chosen. So began my two year journey with the folks at GoodMojo.
When I began interning for GoodMojo, they wanted to start me off easy and so I began to help their lead full-stack developer with a project that they had been working on called Charter For Compassion. The message that CFC wanted to send was that of compassion for others, and to bring people of all walks of life together. My job was helping Quy, GoodMojo’s full-stack developer, with implementing SQL databases that would then connect to Joomla websites that would then be maintained by the different non-profit charters. Essentially, what we did was clone a master copy of a bare bones Joomla website that we put together, made a new database for that site, connect them, and then help the people within the charters to fill up the site with their non-profit information. Working with Quy on the charter sites was a great learning experience for me. I learned a lot about what goes on in the real world of web development. How to traverse the waters and survive by completing deadlines for customers. While all the charter business was happening, GoodMojo also had another project that they wanted my help on, and it required me to put on my front-end development hat and tackle a major headache that they needed fixed.
Charter For Compassion Homepage
Errors as far as the eye can see
Luckily for me, Charlie, Quy, and Alfred were all very helpful in getting my virtual machine up and running with all the needed files. Little did I realize just how large of an undertaking this would be. Not only was the process long and laborious, but it wasn’t a DRY process. The reason being that these applications inside Axiom were usable without Axiom as separate programs. So if a company only needed to use say, GoodMojo Scheduler, then that HTML, and CSS files had to work without the use of Axiom. I implemented the use of a more modular approach in my CSS design using SMACSS, BEM, as well as using the Sass toolset called Bourbon. Axiom was a pretty old piece of software that truly needed to be remade instead of spruced up visually. However, that wasn’t an option, and so the process of removing old inline CSS inside archaic ASPX code was a real learning process. Did you know that DLL files could contain CSS code? Yeah, me neither, and it was a pretty big headache.
I did this refactoring process for the first six applications inside Axiom, and during that time at GoodMojo, I realized that while I was completely competent at front-end development, my real passion was design. Front-end development is all about problem solving, and having structure to those solutions. While I did enjoy trying to solve for those problems, my attempts never seemed to be enough. I would tend to google my problems, find something on Stack Overflow, throw it at my screen and see if that code would work. Sometimes it would, but I just didn’t seem to enjoy it as much as I had thought. During the internship, I had a lot of free time on my hands and so I taught myself UI Design, UX Design, Prototyping Software, and User Center Design Principles. I realized that I absolutely love to think up and design user interfaces for applications. While working on Axiom, I was around a lot of poorly designed UI. From extremely long forms, poor typography choices, as well as zero accessibility principles being implemented. So during my time at GoodMojo, I became a sponge again, but this time it was for user interface design, and the proper steps that go into designing accessible interfaces.
In the end, I was able to complete the task at hand of refactoring a portion of the Axiom system. It definitely needed a lot more work, and I wish GoodMojo gave me more time to work on it. While they were very pleased with what I had accomplished, funds seemed to have dried up, and so my time at GoodMojo was over. It was bittersweet to say the least, but I absolutely do not regret the decision of interning for them. So I’d like to personally thank Alfred, Quy, Charlie, and Paul for taking a chance on me, and making a small difference within their company.
Unfinished Axiom Update