Stuff to learn in 2016

There's so much to keep abreast of in the wonderful crazy world of web application development. This is my list of things that I'm determined to learn / get better at this year:

  1. ASP.NET 5
    I'm sitting on the fence with this - I know a lot of people who I respect greatly aren't happy with what Microsoft are doing with the Core CLR, and feel that ASP.NET 5 is a huge shift for no real gain. I dunno. As a web developer, it's fair to say the cheese has well and truly been moved. I'm going to start building out a serious web application using ASP.NET 5, which will be very interesting I hope.
  2. ES6 and general JavaScript fu.
    I depend more now on javascript than ever before. I see some crazy stuff in Github - some of it using ES6 and things like babel.js to transpile it all. So I'm going to dabble more in these things, and maybe finally get round to checking out TypeScript
  3. React and it's ever growing set of companion libraries.
    I've used angular (v1) and I quite liked it. I didn't like the sheer size of the framework, or that I was learning angular skills that weren't transferable though. So then I got to use React. In some ways I felt it was a very basic library that didn't do enough for me (I felt it was too long winded to effectively do two-way binding for example). But overall I really enjoyed the foot-print of the library, and the more I wrote react code, the better my javascript skills became. This year I want to find out more about flux, redux, and other React patterns and libraries that sound very interesting.
  4. F#
    I'm ashed to say I bought a well reviewed book about thinking and programming functionally using F#, and only got past the first 2 chapters. No lightbulb went off for me in those 2 chapters, but I really need to try and read more about that.
  5. CQRS / Event Sourcing.
    Some people I respect in the world of .NET development have been banging on about CQRS and event sourcing for a while now. This fascinates me, but I've not had the opportunity to work on anything using this approach yet. I like the premise that everything is audited and that the approach encourages solutions that scale really well. But I can't shake a feeling that for most medium sized projects, it's an overly complicated architecture with plenty of scope for mis-interpretation and thus huge code issues and technical debt. That said, I just don't know enough about it, so I'm going to do me some learning on this!
  6. JavaScript Service workers
    Apparently, the application cache is a douchebag.. Well it must be because it's pretty much dead now. But service workers are here to save the day, and certainly look promising (no pun intended). I have a few ideas for using them in my apps, so they're on my learn list.
  7. CSS patterns / structuring.
    Ugh. CSS. It's taken me years of reluctant styling of sites to finally learn a decent amount of CSS. But while my general CSS suckiness has faded, I have no consistency about structuring the stuff. Should I create re-usable components with my CSS, or style up by page, or something else, or both - eek. Luckilly, I've discovered that large teams have had similar issues and now best practices like BEM exist that look interesting. So yay - I'm going to kick my CSS into touch.

From the top of my head, I think that's my top 7. I'm hoping that by blogging this, I'm committing myself to make decent progress on them all. Hopefully I'll get somewhere on this lot and be able to write some posts along the way.
2016 looks to be another year of huge strides in web development. Exciting times!

Comments powered by Disqus