5/5 (2) .NET Core : Start of Something Native

With so many of our students choosing Java as their weapon of choice, I found it appropriate to talk about .NET Core (dotnet core as people call it sometimes) and why we should be mastering C# and .NET Core framework.

.NET Core Icon

But before that, let’s give it a little introduction. .NET Core is the newest framework in a long line of frameworks supporting C# (including .NET Framework, Xamarin and Mono). Even though it holds the name .NET, it is first of its kind. And if you’re considering why, let me explain. It builds native applications on all major operating systems! You saw it right. With .NET Core, you can build applications that work across all platform. But what’s new with that? Java works across platforms too.

To understand that we need to understand something first. Java works across platforms because JDK (the runtime for Java) works across-platform. Microsoft has a long history of rejecting Linux. So they made sure their frameworks didn’t work with it. But a few years ago Microsoft recognized that they were lagging behind because of this. To meet up to the challenges posed by it’s competitors, they created a runtime that works across operating systems and to populate that runtime, they created the .NET Core framework.

“But Simanto, that is all cool and stuff but that still doesn’t make it more exciting than others. Java does all those things.”

True. With this approach they basically caught up to Java. But then they took it another step forward. .NET Core introduced the Runtime Identifier (RID). With RID you can specify which operating system your project is targeting. When you build for publish,  the project will create a NATIVE application. That means you don’t need the runtime in the environment to run this application. You can very well install a fresh copy of bare-boned Ubuntu 16.04 and get your application up and working. The entire runtime is packed with the application, along with the libraries. A native application is created which binds the runtime and any library you might have used, and run the app that you created.

There are tons of tools that do that for different languages with different runtimes. But .NET Team wanted this not to be just a tool, but a default on how you deploy your applications.

Another major thing that .NET Team introduced is the shared framework called .NET Standard. The way this framework works is that it allows libraries to work across all 3 major frameworks; .NET, .NET Core & Xamarin. Build your library once and it will work for mobile, web-apps or even windows-apps, without breaking a sweat.

.NET Future

Combine these features with the ability to use pointers exactly like how you might use them in C/C++, C-sharp tagged with .NET Core is a power house that, in my opinion, is set make its way to the top of the food chain.

How did you find this post?

Hype vs Reality: Intro 5/5 (1)

gossiping about something hyped
Source: RoundPeg.biz
hype1
/hīp/

noun
1. extravagant or intensive publicity or promotion.

Welcome back from the holiday! Last fall, our Landing a CS Internship series discussed various hints and tips about preparing for a paid internship through the CIIO program or otherwise. This winter, our new Hype vs Reality series will explore some major hot topics and buzz words in the tech industry like Machine Learning, Virtual Reality, Internet of Things, Blockchain, Continue reading Hype vs Reality: Intro 5/5 (1)

How did you find this post?

Take Control of Time with Git – Intermediate Git Tutorial 5/5 (3)

In the previous entry of this series we discussed what Git is, then we made a very simple git repository, and made a commit to it. If you did not read the previous entry, I strongly recommend that you read it before continuing. In this entry, we will send the laws of physics crying as we make time travel a reality with Git – so buckle up fellas, this is a whole new level of jet lag.

Continue reading Take Control of Time with Git – Intermediate Git Tutorial 5/5 (3)

How did you find this post?

Landing a CS Internship Part 3: Side Projects 5/5 (1)

Side Projects?

As you’ve probably heard, side projects are incredibly important to show your experience should you apply for an internship – an internship that will help you get experience for post-grad employment. It’s a kind of chicken and egg problem, but with CS you don’t have to wait till you graduate before you can start building cool stuff. You can experiment in areas and topics that you’re interested in during your spare time. A side project would then be something you work on, independently or otherwise, that helps to improve your skills or knowledge in an area. It can be anything from a tiny website that help to calculate your grade, to (one of the many) apps that help buy and sell textbooks.
Continue reading Landing a CS Internship Part 3: Side Projects 5/5 (1)

How did you find this post?

Landing a CS Internship Part 2: Job Search 5/5 (5)

Projects Banner image

Let me be honest with you – finding a job is hard, but not impossible.

An internship is a great opportunity to gain real-life experience in the field, as well as have you work with others, possibly on projects bigger than you’ve ever tackled. Finding a work term related to something you’re interested in Continue reading Landing a CS Internship Part 2: Job Search 5/5 (5)

How did you find this post?