Pages

Friday, February 14, 2014

My approach to learn things

I was always eager to learn new things. First of all - it is just fun to know things! And from a developers perspective learning new stuff enlarges your horizons...

Recently I've accidently stumbled on that question at the programmers.stackexchange. I thought about adding my answer-opinion there but then realized that it can take a while (I mean phrasing of it). So I've decided to add a blog post about my approach :)

As a developer you have to learn new tricks almost every day. Every task means that you have to solve a problem, if that problem is not trivial then there is more than one possible solutions. Every of those solutions are better than others :)

But getting back to the question about learning things. Right now I am learning MongoDB + Python with a MongoDB courses and a Unity3d by myself. Both of those thing are completely optional for me, I just want to know more. Maybe I will use them later...

Interesting part about this is that I am learning them differently. For mongoDB I am watching online courses and for Unity I am playing all by myself. Probably, first approach is a bit more optimal because it was created by professionals; it is much easier to follow their way then reinventing the bicycle!

But for me the main part of the education is an independent study! Even with those courses I am trying to finish my homework before watching corresponding lessons. Just to make sure that I am able to do such things :) Reading documentation and searching for answers are the main skills of a professional. Yes, the true professional knows a lot, but no one can know everything!

So, overall, watching tutorials are ok to get an general impression about something or to find a solution for a specific task. But I would use them only occasionally. Because for now I am able to try solving problems with my existing experience. This, however, does not mean that I am against tutorials. I am using them as well. my schema is following: try something by myself and only then check the internet. I am checking external sources in both situations when i have successfully solved something or stuck.

For me especially nice to find out that I`ve done something the same way as a recognized professional or even better :)

To sum all up.
If it is something completely new for me, then I will try to find a "general-impression" tutorial;
If I've worked with a given technology or it's stack then I will try to do something by myself and only after it will check the external sources. If they are better then my result I am happy to learn from them!

Saturday, February 1, 2014

SignalR and MVC4

I had to use SignalR this week and it was quite funny experience :) And, fortunately, successful!

The main problem I`ve faced was about different versions of the SignalR and MVC. If you would try to install SignalR package with windowed NuGet interface you will find that it can install the latest version - 2.0.2. But the installation will fail, because it uses the latest version of OWIN.Security, which requires .Net 4.5...

So the solution is to use NuGet console! Use
install-package Microsoft.AspNet.SignalR -Version 1.1.3
and it will install everything! Then, as always create a new hub class, register it and add signalr.js and signalr/hubs scripts. (as in tutorial).

But for me it was little harder :) I`ve tried to add SignalR 2.0 and failed, but it have not rolled back correctly. The javascript files were left in Scripts folder... And when I`ve reinstalled the correct version they were not downgraded!

Because of that I was not able to connect to hub - my overridden OnConnect just was not called! I had to make parallel project and install everything in there in a right way to connect...

Hope this notes will help someone :)