Joshua Paling

I did this last year. Been meaning to do it this year (I've had goals in my head since the beginning of the year). We're almost a third the way though 2015, but I've finally got around to writing them down.

1. Get a lot better at Ruby

As in plain ruby, without rails. Eg. I want to fully understand the difference between blocks, procs and lamdas without having to google it. I want to have a whole lot more of Ruby's built in classes and methods memorised. I want to get a LOT better at reading other's ruby code (eg. in gems)

2. Get a lot better at Javascript

I feel like I'm almost there with understanding javascripts odities. I'm still not really sure how to organise my javascript code once I have more than a small amount of it. I want to get confident structuring JS code, deciding which of the many non-class code reuse patterns to use and when, etc. I don't love javascript, but it looks like it's basically the future, so I'm going to have to get much better at it.

3. Try another language

Maybe python. Or maybe rust or go. I don't aim to get good at it - just to try it out, see how it differs. Maybe write something like Game of Life in it or something.

4. Attend RORO often, and give at least a few talks

With my wife no longer working on a Tuesday night, I can go to RORO. yay. I also want to try and give several beginner-related Ruby/Rails talks - both to solidify my own understanding, and to provide some much needed beginner friendly (and Ruby-centric!) content.

5. Learn Ansible

I'm embarrassingly bad at server admin. One of my goals last year was "Come up with a solution I'm happy with for hosting Rails apps that my business makes". I found an outcome that I thought I was happy with, and that I thought would avoid the need for me to learn server stuff. But I was wrong - I really just have to bite the bullet and get better at it.

One of the reasons I'm so bad is that I always do it ad-hoc. I think learning one of the Infrastructure as Code tools will go a long way to helping me get better. I've heard Ansible is the most straight forward.

6. Make a few contributions to open source

Just a few, to projects that aren't mine. I'll be happy with that.

7. Make a gem. And get comfortable with the way they work

I have some stuff for admin areas that I end up duplicating each new project, so that's a good candidate for my first gem.

8. Learn D3

This was one of my goals at the beginning of this year - I've already done a project using it, so although I'm no expert, I'm over the first hump. This goal's already done.

9. Learn React.

Ditto D3 above. A goal at the beginning of the year. I've done it already - or at least, done one project and understand the basics.

10. Write at least 10 blog posts

Last year my goal was 6. I want to bump it up this year. They don't have to be super high quality. I want my focus for my blog to be just about me learning stuff, and keeping stuff for future reference. I'll put it online for the heck of it, but I don't want that to mean that I get bogged down too much in a 'quality over quantity' mentality. If it's good enough for me to learn something from it, then it's good enough to count as a blog post.

11. Make at least 2 screencasts

This was a goal for last year and I didn't do it. They don't have to be amazing, but I do want to check it off this year.

12. Go to bed by 10 or 10:30, and maintain decent work/life balance.

I regularly slip into the schedule of coding til midnight, and spending all my time coding or reading/watching tech-related stuff in a desparate attempt to get better and stay on top of things. Every so often I start to feel burnt out. I'm pretty good at calling myself out on it when that does happen, and setting a strict schedule to avoid excessive work - but this year, I want to try and avoid even getting to that point in the first place. It's already happened once so far in 2015. On that note, it's 10:34pm, so I guess that'll my last goal for this year.