Archive for the ‘Linux’ Category
Introducing ASP.NET Core:
ASP.NET Core is a new open-source and cross-platform framework for building modern cloud based internet connected applications, such as web apps, IoT apps and mobile backends. ASP.NET Core apps can run on .NET Core or on the full .NET Framework. It was architected to provide an optimized development framework for apps that are deployed to the cloud or run on-premises. It consists of modular components with minimal overhead, so you retain flexibility while constructing your solutions. You can develop and run your ASP.NET Core apps cross-platform on Windows, Mac and Linux. ASP.NET Core is open source at GitHub.
The framework is a complete rewrite that unites the previously separate ASP.NET MVC and Web API into a single programming model.
Despite being a new framework, built on a new web stack, it does have a high degree of concept compatibility with ASP.NET MVC.
ASP.NET Platform exists for more than 15 years. In addition, at the time of System.Web creation it contained a large amount of code to support backward compatibility with classic ASP. During this time, the platform has accumulated a sufficient amount of code that is simply no longer needed and is deprecated. Microsoft faced a difficult choice: to abandon backward compatibility, or to announce a new platform. They chose the second option. At the same time, they would have to abandon the existing runtime. Microsoft has always been a company focused on creation and launch on Windows. ASP.NET was no exception. Now the situation has changed: Azure and Linux occupied an important place in the company’s strategy.
The ASP.NET Core is poised to replace ASP.NET in its current form. So should you switch to ASP.NET Core now?
ASP.NET Core is not just a new version. It is a completely new platform, the change of epochs. Switching to ASP.NET Core can bring many benefits: compact code, better performance and scalability. But what price will be paid in return, how much code will have to be rewritten?
.NET Core contains many components, which we are used to deal with. Forget System.Web, Web Forms, Transaction Scope, WPF, Win Forms. They no longer exist. For simple ASP.NET MVC-applications changes will be minor and the migration will be simple. For more complex applications, which use a great number of .NET Framework classes and ASP.NET pipeline situation is more complicated. Something may work and something may not. Some part of the code will have to be rewritten from scratch. Additional problems may be caused by WebApi, because ASP.NET MVC subsystems and WebAPI are now combined. Many libraries and nuget-packages are not ready yet. So, some applications simply will not have a chance to migrate until new versions of the libraries appear.
I think we are waiting for the situation similar to the transition from Web Forms to ASP.NET MVC. ASP.NET Framework will be supported for a long time. First, only a small amount of applications will be developed on ASP.NET Core. Their number will increase, but sooner or later everyone will want to move to ASP.NET Core. We still have many applications running on the Web Forms. However, no one comes to mind to develop a new application on the Web Forms now, everybody chooses MVC. Soon the same happens to ASP.NET Framework, and ASP.NET Core. ASP.NET Core offers more opportunities to meet modern design standards.
The following characteristics best define .NET Core:
- Flexible deployment: Can be included in your app or installed side-by-side user- or machine-wide.
- Cross-platform: Runs on Windows, macOS and Linux; can be ported to other OSes (Operating Systems). The supported OSes, CPUs and application scenarios will grow over time, provided by Microsoft, other companies, and individuals.Command-line tools: All product scenarios can be exercised at the command-line.
- Compatible: .NET Core is compatible with .NET Framework, Xamarin and Mono, via the .NET Standard Library.
- Open source: The .NET Core platform is open source, using MIT and Apache 2 licenses. Documentation is licensed under CC-BY. .NET Core is a .NET Foundation project.
- Supported by Microsoft: .NET Core is supported by Microsoft, per .NET Core Support.
- As for the “cons” one of the biggest issues are gaps in the documentation. Fortunately most of the things for creating and API are covered, but when you’re building an MVC app, you might have problems.
- Next problem – changes. Even if you find a solution to your problem, it could have been written for a previous version and might not work in the current one. Thanks to open source nature of it, there is also support available on github. But you get same problems there (apart from searching).
- Another thing is lack of support in the tooling. You can forget about NCrunch or R# Test Runner. Both companies say they will get to it when it gets more stable.
- ASP.NET Core is still too raw. Many basic things, such as the Data Access, is not designed for 100%. There is no guarantee that the code you are using now will work in the release version.
- It’s modular. You can add and remove features as you need them by managing NuGet packages.
- It’s also much easier and straightforward to set up.
- WebApi is now part of the MVC, so you can have class UserController, which will return a view, but also provide a JSON API.
- It’s cross-platform.
- It’s open-source.
ASP.NET Core is the work on the bugs of the classic ASP.NET MVC, the ability to start with a clean slate. In addition, Microsoft also aims to become as popular as Ruby and NodeJS among younger developers.
NodeJS and ASP.NET have always been rivals: both – a platform for backend. But in fact, between them, of course, there was no struggle. The new generation of developers, the so-called hipster developers, prefer Ruby and Node. The adult generation, people from the corporate environment, are on the side of .NET and Java. .NET Core is clearly trying to be more youthful, fashionable and popular. So, in future we can expect the .NET Core and NodeJS to be in opposition.
In its advertising campaign, Microsoft is betting on unusual positions for it: high performance, scalability, cross-platform. Do you think that ASP.NET “crawls” on the territory of NodeJS? Please feel free to share your thoughts with us.
Thank you in advance!
Business Development Manager
Professional Software Development
It’s impossible to deny the amazing rise of Chrome OS. This Linux-based platform was the ideal solution at the ideal time. The cloud proved itself not only a viable option but, in many cases, the most optimal option. The puzzle was simple to solve:
Create a cost-effective platform that blended seamlessly with the cloud.
Linux? Are you listening? Now is your chance. All of the pieces are there, you just have grab the golden ring before Microsoft does.
One of the main reasons why Chrome OS has succeeded is Google. Google not only has the cash to spend on the development of such a product, it also has the momentum of brand behind it (and the “Google” brand no less). Even without this, Linux could follow in the footsteps of Google and create their own cloud-based OS.
The answer to that is also simple: Because Linux needs (in one form or another) a major win in the desktop arena. It now has the streed cred (thanks to Android and Chrome OS — both of which are built on a Linux kernel), so all it needs is to deliver something… anything… to build on the momentum. I think that thing could be a cloud-based platform. These platforms have already proven their worth, and people are buying them up. Since cheap (read “free”) has been one of the many calling cards for Linux, it’s a perfect fit.
I’ve installed Linux on a Chromebook (Bodhi Linux on an Acer C720). The marriage of a full-blown Linux distribution and the Chromebook was fantastic. You could hop onto your Google account and work magic — or to one-up Chrome OS, you could work on the many local apps. That’s where a cloud-based Linux device could help solidify both the cloud ecosystem and the Linux platform… the best of both worlds.
To this end, three things need to happen:
- Canonical needs to re-focus on the desktop (or in this case, a cloud-based iteration)
- A hardware vendor needs to step up and take a chance on this platform idea
- Open Xchange needs to work with the distribution to create a seamless experience between the platform and the cloud system
It’s a lot to ask, especially on Canonical’s end (with them focusing so much effort on the Ubuntu Phone and Mir). But with their goal of convergence, getting Ubuntu Linux cloudbook-ready shouldn’t be a problem. As for Open Xchange, I would imagine them welcoming this opportunity. At the moment, the OX App suite is a quality product living its life in obscurity. A Linux-based “cloudbook” (please do not call it a Linbook) could change that. The hardware side of things is simple, because it’s already been proved that Linux will run on nearly every one of the available Chromebooks (and it should, since Chrome OS uses the Linux kernel).
I say all of this as an avid Chromebook user. I find the minimal platform a refreshing change that’s both incredibly easy to use and efficiently helps me get my work done with minimal distraction. There are times, however, I would love to have a few local apps (like The Gimp, for example). With a Linux cloudbook, this would not only be possible, it would be easy. In fact, you would find plenty of apps that could be installed and run locally (without sucking up too much local storage space).
The cloudbook could very well be the thing that vaults Linux into the hands of the average user, without having to stake its claim on Chrome OS or Android. And with the Linux cloudbook in the hands of users, the door for the Ubuntu Phone will have been opened and ready to walk through. Convergence made possible and easy.
The desktop, the cloudbook, the phone.
Is the cloudbook a path that Linux should follow — or would the overwhelming shadow of Google keep it neatly tucked away from the average consumer and success? Let us know your thoughts in the discussion thread below.
Taken from TechRepublic
Linux users have been mostly left out when trying to get in on the gaming action, but soon they’ll be able to be “Left 4 Dead 2” instead. Recently Valve announced that it would bring its digital distribution service Steam to the Linux platform.
The company reportedly formed a new team last year to work on a full-featured version of the Steam client for Ubuntu 12.04, and the result is “Left 4 Dead 2,” a first-person action game developed by Valve and set in world overrun by zombies.
The so-called “Steam’d Penguins” project will see more titles ported to Linux, and this will allow developers to target gamers via the online service beyond just Windows and Mac. To date, Linux users have had to rely on Windows emulators such as Wine and often have been annoyed with bugs and compatibility problems along the way.
“Valve wants Steam to be on all platforms, and it is possible that Linux could see greater exploitation as a gaming platform,” Billy Pidgeon, a game industry analyst with M2 Research, told.
Steam’d Up With Open Source
Steam’s move to Linux will be done through Ubuntu, at least initially. The goal of the development team is to create a full-featured Steam client, and good progress has been made so far. However, no date has been set when gamers might actually get Steam’d up on Ubuntu and blast away the walking undead.
In addition to opening up the online service to open source gamers, this could help Steam get a bit more attention as well.
“Steam remains one of the best assets in the gaming space today that doesn’t get much attention due to the console cycles and the rise of social gaming,” P.J. McNealy, consultant at Digital World Research, consider. “However, it’s right in the thick of the emerging business models for gaming, and being available on Linux certainly can’t hurt.”
While gamers will get to battle those zombies in the first game for Steam on Ubuntu, the online service continues to do its job battling the digital pirates plaguing game publishers and developers.
The Steam service requires gamers to log in to the service to play a game, and this authenticates that the copy is tied to the specific user. This in turn makes it very difficult for pirates to copy and distribute the code.
“Steam has largely stopped piracy of games that are available on the service,” said Pidgeon. “This is especially true in the Asian markets, where piracy has been an ongoing concern.”
It was piracy concerns that led many game developers to move away from PC games to the video game consoles, but some game companies see opportunities in the PC market again, thanks to services such as Steam. Being on Linux could help attract that small, but very passionate market of gamers.
“It doesn’t cost too much to support it, so why not?” asked Pidgeon. “And as the consoles get long in the tooth, there could be more game development on the PC, which Steam could support.”
Linux Gaming Beyond Steam
Steam of course is not the only online service operating. While it is the leading service, some game publishers, including Activision and Electronic Arts, have created their own services that allow users to purchase, download and update games.
This has also helped reduce piracy of some hot-selling titles such as those in the “Call of Duty” and “Battlefield 3” franchises.
But could Steam get developers powered up to look more closely at open source? Probably not.
“It is hard to say, but I don’t think there will be a huge effort to open source on the PC,” said Pidgeon. “It is going to take a lot more than Steam to get publishers on board with Linux.”