Hitting my stride a little

I’ve officially been a professional software developer all of four months, but I’m starting to feel pretty darn good about my choice.  It started back in February when (while not even looking for jobs) I got a nice offer from a different company. I was all set to take it but when the CTO of my current company found out I was leaving he called an impromptu board meeting and got me essentially a match so I would stay with them. Having two companies fight over you before you even get good is certainly an encouraging feeling.

Now, a couple months later I’ve solved enough problems that I don’t get scared anymore when I get handed something I’m completely unfamiliar with. I just assume that I’ll be able to figure it out because that’s how it’s gone so far, and that allows me to relax a little. At the moment I’m working on something that’s pretty easy for me, at home, in sweats, listening to good music and I can’t imagine “work” being much nicer than this.

How tricking got me a job as a software developer

Success! It took longer than I hoped, apparently there weren’t many actual entry level positions open in the Madison area, but I got the first truly entry level one I applied to. Actually, I didn’t even apply. I met a guy at a software meetup, he invited me to come talk to the team, and a few days later I was working a two week trial period. It’s a startup so I guess they move a little faster than big businesses. As of today I’m officially hired on, starting Monday.

So about that title. I may have lucked out in that I actually knew the CTO a little bit. He’s a gymnastics coach and I used to go to open gym at the place he worked. I’m pretty sure I asked him to teach me things a couple times, so he probably already knew how thorough my learning approach is, and I’m sure that didn’t hurt my chances. So now I’ve got my foot in the door, the part that I was most worried about. I officially completed the career change, and all I have to do now is soak up everything I can on my way to being a top notch developer!

Why I love the internet

The internet is a strange and sometimes wonderful place, and the thing I love most about it is the number of things there are to learn. I often stumble across things I didn’t even know I was interested in that turn out to be entirely fascinating. Enjoy a few recent examples:

Elon Musk discovered the meaning of life from Hitchiker’s Guide to the Galaxy

Shampoo

Film directing

Minimizing employee retention

RefactorU

There were few things I’ve been as excited to do as join RefactorU. Most people don’t have many chances to redefine a major part of their lives, and that’s what I was setting out to do. After hours upon hours of research and some leading from a couple friends I had decided I was going to be a coder, and this was the best way to get started.

The course I was taking was a full-time coding bootcamp that teaches full-stack web development. I knew what I was getting into, but I still had no idea how entirely absorbing it would be. I found myself staying long after class was over, coming in on weekends, even missing meals at times. Not because I felt behind or wanted to outdo the other students, but because there were problems to be solved. Hours slid by at unbelievable rates. On days I felt especially tuned in I would be jarred unexpectedly by the arrival of the end of day discussion, which seemed far too early and out of place. I was learning about as fast as I ever had, and completely thrilled by it.

It would be negligent of me not to mention the instructors. The instructors for my course were Raine Lourie and Chris Rolfs, both very knowledgeable, excellent teachers, excellent bug hunters, and incredibly patient. I’m certain I would have learned a lot no matter where I went, but it’s hard to imagine instructors much better than Raine and Chris. The course format, alternating between lecture and large blocks of coding time, seemed well thought-out and very effective, and I know they are very actively working to incorporate feedback from students to keep improving it. Their selection process must be awfully good too because my classmates were great, ranging from high powered business executives to math professors to guys a couple years out of high school and all of them were capable, enjoyable human beings.

By the end of the course I had a good set of both front and back end web development skills, and had branched out on my own to do some basic game development as well. Here are some examples of what I was doing early on, and then for my midterm, and final project.

I suppose I can’t pass final judgement until I find out how well prepared I am to actually land that first job, but I thoroughly enjoyed my time at RefactorU and feel good about what I’ve accomplished. Of course, having found something fun that can lead to a good job certainly helps with the optimism. So wish me luck on that job, and if anyone out there has questions about getting into coding feel free to get in touch, I’d love to help!

Sublime Text interface tweaking

Having never used a really good text editor before, I fell in love with Sublime Text shortly after being introduced to it. I liked everything about it, even the default theme. The one issue I had was the arrows used to represent folders. Because the indentation is based on where the text starts, not the arrow, I didn’t find it obvious at a glance which files were in which folders. Today I found the Phoenix dark theme (easily installable via the package manager), whose author had the same thoughts as I did and added in simple folder icons which are a little more intuitive. However, the default color scheme (Monokai) didn’t match anymore.

So I did what any respectable developer would do, adjusted it and put the tweak up on github in case anyone else wants to do the same thing. Here’s the link if anyone is interested: https://github.com/dlsso/monokai-for-phoenix

Tic tac toe: Finished!

I got the AI working about half an hour after writing the last post. The first time it moved to block me was pretty exciting. Presentation went fine, and watching everyone else’s projects was fun too. I still have some refactoring to do to make everything structured the best way, but I’m excited to have made my goal and everything working smoothly. You can check it out here if you want.

Tic tac toe: Day 3

Today was supposed to be the hard day, and it’s lived up to that pretty well. I spent the morning writing the logic to assign each board position a score and then fixing a couple bugs and finding out I’m really bad at getting variables passed around correctly to the functions that need them so that stuff slowed me down some more and I didn’t get to the meat of the project until after lunch.

Much to my surprise I was able to create a running (not working) version of a branch searching AI program. It’s broken right now, but I just found out where it was breaking so I should in theory be able to fix that part. There might be 100 more problems with it for all I know, but I’m somewhat happy just with the fact that I managed to get something going when the program is this difficult to follow (recursive in both branches, a little mind blowing for someone who’s never seen recursion before) and the only decent reference I had was written in a language I am completely unfamiliar with. Presentations are tomorrow morning, so I’m going to work on it a bit and see if I can get it functioning properly by then.