How @FreeCodeCamp Helped Me Get a Job

Back in October 2017 I finally landed an IT job, after starting to teach myself coding in August 2013. The job I currently have is not really a developer job per se, but I do work with JavaScript and SQL and the HL7 protocol, as well as various specialized medtech systems such as Powerscribe and Mirth Connect.

My programming story begins in middle school, in the dark ages. I had already played with Algol – yes, using the old punchcards, and now I learned Basic. But sadly, I was trying to avoid being called a nerd (hey, I was a teenager) and so I drifted away from programming as time went on. In college, I majored inm Mechanical Engineering, which led to me taking classes in Quickbasic, Fortran77, and Pascal. In my MBA program, I messed a little with HTML and CSS – this was the early days of the Web – but as I said, I was a mechanical engineer, and that was where I was building a career.

In 2010, though, thanks to the crash of 2008, all that came crashing down. By 2013 I’d had enough and I started to teach myself to code. I found that I really enjoyed it – and wondered why I had ever quit at all! I took a certificate in Software Development at the local community college but it didn’t leave me much to show employers – building a portfolio isn’t part of the curriculum, although I learned quite a bit about programming. So when, in Spring of 2015, I discovered FreeCodeCamp, I was pretty excited. Here was a program with tangible lessons, a structured schedule, measurable results, and that would leave you with a batch of projects at the end for a portfolio.

And best of all, it was free!

So I began to work through the lessons, a little at a time while I worked part-time jobs to survive. A lot happened in my personal life too, most of it not so good. But I kept chipping away at the lessons and the challenges and finally in summer of 2016 I earned my front end devloper certificate, and had a nice portfolio of projects to show for it.

When I interviewed, my portfolio supplemented my resume and showed that I had the JavaScript skills needed and also showed that I could learn new things and apply myself. I wouldn’t have gotten the interview without it.

So now that I have a job, I’ve been focusing on learning the technologies used there, and in the meantime, I’ve been trying to learn React and work on the Back-End certificate. I’ve also been working through the beta for the next iteration of FreeCodeCamp, which has a lot more on CSS and SASS and so on. It’s an ongoing voyage, and I’ve really been enjoying it so far.

Update and Coming Events

I haven’t written her for awhile and the reason is quite simple: I started a new job. In addition to that I kept the part-time minimum wage job that I was also working. Throw in the fact that part of the time I am a single dad, have a house to keep up, and am still learning programming, and you end up with a lot of stuff to do. That said, my time management skills have slipped, and now I am working on getting back on board the train. I wasted time on Instagram, ridiculous political arguments on Facebook, and getting lost in the endless articles on Medium – not to mention Bullet Journal blogs and Instagrams.

Yes, I’ve fallen into the Bullet Journal craze, but to be honest, mine is as utilitarian and minimalist as it can be. No drawings, no fancy fonts, I don’t even use a ruler. But it has helped quite a bit anyway. Things that were slipping through the cracks are now getting caught. I haven’t gotten back into the full “Getting Things Done” mode that I was a few years ago, but now I find that I actually have time, for example, to…write a blog post! So at some point I’ll do a post on how my BuJo works, and how I organize and all that stuff, but for today, let’s hit some highlights.

As noted, I landed a job, in the IT field (at last). It doesn’t have as much development or writing code as I’d like, but I’m learning a lot about networks, how systems of different software work, and what it’s like to be on call pretty much all the time(!) I’ll do a post soon on how I got the job, how Free Code Camp helped, etc.

In addition, I’ve decided to build a Fintech app. Really, it’s a toy app, something for me to play around with and learn to use some new languages and technologies, as well as mock up something that could actually be used. It will involve me learning SASS, React, ArcGIS web development and Bitcoin.JS, as well as using the knowledge I have of HTML5, CSS3, JavaScript (I may even need to learn ES6), MongoDB, Node, and Express. It’s pretty ambitious, I guess, but I can do it in pieces and slowly get up to a full scale app.

Anyway, I’ll be blogging my adventures, hopefully weekly or more, and I hope you’ll jump in for the ride!

HTML Calendar Template

I maintain my church’s website here.  It is actually hosted by a higher level of the church (we call in a conference in the United Methodist Church) and they control the WordPress version updates, and things like that.  They also host any CSS files that are part of the themes we are able to use.

So what that means for me is: no custom themes, no customizing the CSS, no adding JavaScript files, and so on.  My add-ons are also somewhat limited.

So, I go back to old-school web development.  I use (horror!) inline CSS, and can put JavaScript stuff in the <body> of the document.

One thing we really wanted was to reproduce the calendar we send out in our dead-tree edition newsletter (we call it the Tidings).  There were lots of CSS options and other assorted stuff, but all required that I be able to upload files…which I couldn’t do, since that is controlled at the upper level.

So I created my own HTML template.  It takes me 10 – 15 minutes a month to update it.  I used a table format, and I use span and the CSS color property when I need color.  I make every other line have a gray background using the same inline CSS principle.  Here’s the template in case it’s useful to anyone out there, and you can see it in action here:

<table style="width:120%; table-layout: fixed" border="1" id="calendar">
<caption style="font-size: 3em; background-color: #eaeaea; text-align:center">MONTH NAME AND YEAR</caption>
<tr style="height:30px">
<tr style="height: 30px; background-color: #eaeaea">
<th>Sunday</th>
<th>Monday</th>
<th>Tuesday</th>
<th>Wednesday</th>
<th>Thursday</th>
<th>Friday</th>
<th>Saturday</th>
</tr>
<tr style="height:100px">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr style="height:100px; background-color: #eaeaea">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr style="height:100px">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr style="height:100px; background-color: #eaeaea">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr style="height:100px">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr style="height:100px; background-color: #eaeaea">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</table>