.NET notes

Just random notes regarding .NET

  • CLR = Common Language Runtime
  • FCL = Framework Class Library
    • BCL = subset of FCL
    • ASP.NET is a part of the FCL

Windows: Assembly type Class Library produces .dll files / .exe is another type of Assembly. DLLs do not have an entry point (No Main()) so can’t be run on their own.

 

 

Becoming a developer

From business to IT

In my job, I’m making the transition from a business information manager (in Dutch: functioneel beheerder) to a developer. Our company uses C#, Javascript, HTML and CSS and various (Microsoft) .NET technologies. It’s an exciting change and I will try to keep this blog updated with my progress.

Prior experience

I’ve programmed before, but not in C# and not with .NET framework(s). As you can read in an earlier post, I have started to program in Javascript with NodeJS in my spare time related to the Homey home automation device. My OOP (Object Oriented Programming) experience is limited, and while I’ve been involved with the Agile Scrum method from the business side, it will be interesting to learn how it actually works on the IT side.

Learning resources

Besides on-the-job training with help from existing developer colleagues and possibly custom training from IT partners, there is a lot of information available on websites and in books. I plan on listing and discussing them here.

Microsoft certifications

Working in an environment where most of the IT is Microsoft based, it’s probably a good idea to get some official Microsoft certifications.

An example would be the MCSD: App Builder certification which itself consists of several smaller certifications/exams. One current way to get MCSD: App Builder would be to pass

  1. 70-480 Programming in HTML5 with JavaScript and CSS3
  2. 70-486 Developing ASP.NET MVC 4 Web Applications
  3. 70-532 Developing Microsoft Azure Solutions

However, these courses/exams expect multiple years of experience so it may not be realistic to get the certification within one or two years.

External link: https://www.microsoft.com/nl-nl/learning/default.aspx

Online training

These days, there are websites specialized in providing online training, using videos, examples, tutorials, etc. Some are paid, some are free.

Udemy

Paid training in many categories, usually involving pre-recorded video episodes and text-based training materials. From time to time, they have massive sales so you can pick up a course for about 15 euros.

Codecademy

Offering both free and paid online courses, mostly web development oriented.

Pluralsight

IT and Creative online courses

External link: http://www.pluralsight.com

Books

Still a good way to get information, these so-called books are pieces of paper, usually of the same size and thickness, bundled together. IT books usually have lots of letters and only a few nice drawings or photos.

You can also get most books in a digital form, like PDF. Common publishers include Microsoft Press, O’Reilly, SAMS and Prentice Hall. O’Reilly also has a website featuring many technology and business related books (not only their own books), called Safari (not to be confused with the web browser). It also includes video and online training. I have not used it yet, but I have read a few books by O’Reilly and really like them.

Tools

Obviously, a developer uses a lot of IT tools besides learning material. So here I will log what I’ve found and how I’m using them (or why I decided not to).

IDE (Integrated Development Environment)

Most programming happens in text editors. Often, those editors are enhanced for programmers. You can also add useful tools that help with versioning, checking the code, debugging the code and even compiling and deployment. If you have all (or a lot) of that, it’s no longer called an editor, but an IDE.

Microsoft Visual Studio, Community Edition

Visual Studio is Microsoft’s IDE, useful for several different languages including C# and ready to work with frameworks like “.NET”. The Community Edition is free to use for individual developers. Once I will actually contribute to our company’s code, I will have to move to a paid version that can also work with TFS (Team Foundation Server, basically a central repository for all code, the backlog and related documents)

External link: https://www.visualstudio.com/vs/community/

Microsoft Visual Studio Code for macOS

Visual Studio Code is a different product from the other versions of Visual Studio. Still, it’s an editor specifically made for programmers and supports many programming languages. I have installed it in order to develop NodeJS projects in Javascript on my Mac.

External link: https://code.visualstudio.com/