So I guess I won't be learning new tech in 2014. I'll be focusing on writing, basic marketing, building an audience for my future product and just shipping the damn thing.
"Real artists ship!"
I don't know your motivations, but what always happened to me is that I'd get to a point in a project where the tools seemed constraining, and whatever problem I had, some other toolset aimed to solve it, so I'd jump ship, usually before making any sincere efforts at solving it with whatever language I started the project in.
Or even worse, I'd write the hard parts, and then be left with the boring bits. Login, registration, sending notification emails, etc., so I'd hop on over to Rails which let me rewrite all the fun parts, and then scaffold the rest, only to find now I had a new problem somewhere that I hadn't considered.
Finishing is mental, but once you get past the hump, it gets added to your skillset just like every other skill. Once you can ship, you play the game differently. Good luck!
learn Vim.
master iOS and release several apps.
learn devops / sysadmin.
gain experience with SQL/Postgres (as opposed to just hacking together something with MongoDB, the easy way to do things)
My background is in iOS and JavaScript web (Angular.js, Node.js).
I also want to have something lightweight for playing and prototyping so I think I should improve my Clojure/WebStack or Python/Flask, I haven't decided yet.
I wish to continue with learning more Computer Science / Maths stuff like Statistics.
And I finally would like to adopt Emacs, I got inspired by recent talks about its power at HN. Lots of plans :)
Grails - same as above - some of the guys in my shop are using this as a transitional technology since we're a Java shop. Looks pretty cool so far. Probably do one in Django/Python, then one in Grails.
Ruby - have done a tutorial but need to write some real apps
Android - have written about a dozen internal apps plus a library (abstract class derived from Activity). I want to write a couple of my own apps to put on the Market, unrelated to work stuff. With a million apps out there, it's hardly likely to even be noticed, but that's OK, just to have an app out there is kind of essential if you want to be taken seriously.
I'd like to understand more about full-stack javascript apps; it seems like a lot of people are using it to write pretty sophisticated apps these days.
2) get better with Haskell; basically make it replace Scala as my "native tongue".
3) learn more math stuff, especially abstract algebra, type theory, and more category theory as used in Haskell
4) do all right at my internship as a web developer, and get intimate with this nice funky lang that is JavaScript (and get an actual job though that's not a tech skill)
5) learn another lang that will blow my mind with some weird feature. I'm not sure yet; Erlang, J, and more advanced Scheme/LISP/Clojure are possible candidates.
6) find my hipster server-side scripting lang of choice and get decent with it; Node.js and Yesod and two possiblities.
-AngularJS
-Vim
-Dvorak
Then there's node.js, which I toyed with earlier but now has some pretty exciting applications like nodecopter.
My main focus in the spring will be learning SystemVerilog for design/synthesis and later in the year I want to join a Computer Architecture research group.
* Learn Haskell
* Send a patch to the Go project
* Release a useful Ruby on Rails gem
* Perfect my hackathon stackMy background is Flex/AIR development.
Given the opportunity I'd add Go to the list but we'll see how the year goes
2. Open source contribution
Great question!! Thanks for posting.
I have done some already; I intend to master it in 2014.
C/C++
Really understand more Algorithms
- Start learning Java
- Start learning C
- Algorithms