Posts Tagged ‘Linux’
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
At one time, universities and colleges were institutes of higher learning for those who were passionate about acquiring knowledge. Today, education discussions tend to to center around how much individuals can make with their degree. Thanks to the Internet there are still places that offer open learning initiatives designed to help a new generation of technologists succeed.
Let’s start reviewing the free online courses to grow your tech skills.
1. Data visualization
Those who can take different types of data and visualize it in a way that helps provide clarity and insight are in demand. The big data machine is picking up steam. In fact, according to recent data from Dice, big data skills rank highly among those most in demand by employers.
This four-week free course offered by the University of Illinois through Coursera provides a foundation in elementary graphics programming, human perception and cognition, basic visualization, visualizing relationships and information. The course is offered from July 20th – August 15th, 2015 and requires roughly 4-6 hours per week of study time.
2. Programming for everybody (Python)
This beginner’s course is a gentle introduction into the world of Python programming. It’s meant to be a first programming course, and as a result the focus is more so on understanding the concepts. There are no prerequisites and no advanced math skills are required so if you’ve ever wanted to learn how to code or are just interested in the simple intuitive programming syntax that Python offers now is the time to take advantage of this opportunity to learn.This 10-week free course is offered from October 5th to December14th 2015. It requires 2-4 hours a week of study time. All textbooks and resources are free.
3. Begin programming: build your first mobile game
A crash course in programming, this offering from Future Learn aims to teach the beginnings of Java, taking students through the basics of programming by modifying a small Java game (code provided) that can run on your desktop or your Android devices.
Over the seven-week course has started on June 1 , 2015 students will be introduced to the basic constructs of Java that are similar to many programming languages. The course consists of video introductions, on-screen examples, Java game code, downloadable guides, articles and group discussions. It requires roughly four hours of study per week.
You could join the course in progress or register to a new one (date TBA).
4. Introduction to Linux
Have you always wanted to learn more about Linux but never had the extra cash to inveset. This course offered through edX might be just what you’re looking for. The Linux Foundation partnered with edX to offer this free Introduction to the Linux that covers familiarity with the graphical interface and command line as well as a look at all the major Linux distributions. The course gives an over view of the day to day working environment of a Linux administrator and covers pertinent tools and skills.
The designers of the course estimate that a total of 40- 60 hours of study are required to accurately cover the material. Students have the option of auditing the course, at no cost. You get access to course materials, tests, assignments and activities. Those who audit and complete the course will receive a certificate of achievement, but for those wanting to add it as a bullet point on their resume there is a verified certificate available for a fee.
5. Google Analytics Academy
With the proliferation of the Web, online shopping and social media marketing, competition for organic search traffic has gone through the roof. Understanding your website’s analytics can help you make better data-based decisions while at the same time improving the customer experience. Google knows this and would love for you to use its product, Google Analytics. So much so that they’ve created this online learning center that offers courses to help you better use the hidden data located within your site.
The courses highlighted here are all free and are good examples of how the digital revolution is bringing education to the masses around the globe.
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
There has been a lot of talk about the dirge sounding for the Firefox browser. With a marked nosedive in market share (roughly 15%), the one-time king of the browse war has now fallen into third place (behind Internet Explorer and Chrome). As most pundits are scratching their heads, I’m fairly certain that there’s a clear reason for this change:
The 15% market share applies only to desktop browsers. Once you move to mobile… all bets are off. But why? What has shifted to cause Firefox to drop so sharply? Is it a bad product? Honestly, to the majority of users (I’m talking “average user” here), a browser is a browser is a browser. The biggest difference to the average user is the use of “Favorites” over “Bookmarks.” Since most users wouldn’t even know Firefox from Internet Explorer, how could this change have happened?
Again, I say… Google.
Actually, I should be more specific and say Chrome — or even better, Chrome OS and Android.
From November 2013 to the end of the year, a reported 21% of all laptops sold were Chromebooks. Worldwide, Android takes nearly 81% of the mobile market share. That’s a LOT of Google-based browsers out there. I don’t think it’s a huge leap of logic to assume a vast percentage of those users would have been, otherwise, using Firefox.
Let me present myself a case in point. For the longest time, I was a devout Firefox user. But then I discovered a few of the Chrome apps/extensions (such as Tweetdeck) and added Chrome to my Linux desktop. Then I adopted a Chromebook as a laptop. Since I really only do two things on a laptop (write and browse), it made perfect sense. Add to this the fact that my smartphone platform has been Android for what seems like forever, plus the mobile version of Firefox is dreadful, and you have the makings for a typical migration from Firefox to Chrome.
Let’s be honest — as long as the browser gets the job done, it doesn’t matter which browser you use.
- Unless you’re on a Chromebook
- Or on Android
- Or you depend on Google Apps
You can see the pattern here, right? It’s like third-party politics in the United States. Many people don’t vote for third parties because it takes away votes from the party they once championed. In this case — every person using Chrome is one less person using Firefox. Why?
Caution: generalization coming…
Most people who use Internet Explorer simply don’t know that the product they’re using is inferior to every other product of its kind (either that or they depend on a site that was written ONLY for IE). So, there’s little to no chance they’ll jump ship to either Firefox or Chrome.
So, what is Mozilla to do? Well, they’re busy focusing on the Firefox OS, which is akin to Ubuntu focusing on the Ubuntu Phone — it’s detracting from what they’ve always done really well in exchange for jumping into a ring with two of the heaviest hitters in the history of the game — Android and iOS.
And then there’s that advertising deal with Google that’s about to expire. The majority of Mozilla’s income is from that deal, and Google has less reason to continue on with that search agreement. Google no longer needs the advertising real estate from a browser suffering from a possible slow death. Should Google pull this, Mozilla will have to pull off a miracle to stay in the fight.
However, there’s good news. You can’t forget that Firefox is an open-source browser. That means, even if Firefox were to die, another batch of forks would appear. So, even if Google Chrome were to knock Firefox out of the ring, more contenders will appear to take up the gloves. But even a horde of forks are not likely to pull Firefox from the slow Chrome burn. Google isn’t going anywhere but up. As Chromebooks and Android continue to take over the mobile planet (and users become less tethered to their desks), Firefox will continue to suffer.
Firefox is still a quality product. But like Internet Explorer, it’s facing a foe that’s stronger, faster, and more agile. That new opponent is poised to take over nearly everything it touches. Fortunately (for users, not the competition), that new foe offers a stellar product on every platform (Linux, Windows, Mac, Chrome OS, Android, and iOS). Chrome is the only browser on the planet that can make that claim (as Chrome is the only browser that will run on Chrome OS) – a claim that’s becoming ever more important in a world gone mad for mobile.
I don’t have a prediction for Firefox. Will it die? Will it become an “arm” of Google? Will it get a second wind and, thus, a second life? No one really knows at this point. If I had to make a guess, I’d say both Firefox and IE will fall to Chrome. The difference is that IE is embedded into the psyche of many users, so it won’t suffer as much as Firefox.
The gloves are off and Chrome is set to rumble. How do you think this fight will end? Share your opinion in the discussion thread below.
Professional Software Development
Budgets continue to shrink, so IT departments have to do everything they can to save money. Many are looking at the all-too-obvious cuts and neglecting a helpful chunk of less obvious ways to pinch those pennies. I want to offer some, which I think can go a long way toward saving your department precious budget dollars (and quite possibly, your job). You can protect your budget and help safeguard your job by implementing these cost-cutting measures.
1. Drop Microsoft Office for Google Apps or LibreOffice
I know most businesses hold onto Microsoft Office as if their work-lives depended upon it. The truth is it doesn’t. Google Apps and LibreOffice have both evolved into business-class productivity suites that can easily replace the de facto standard, Microsoft Office. This move will especially help small businesses that don’t benefit from bulk-purchase prices from Microsoft. And since most users tap into only about 10 to 15 percent of the features and power of their office suite, why not save nearly one hundred percent of the cost of the proprietary solution? Besides, a tool like Google Apps makes collaboration between teams even easier.
2. Migrate your terminal server to a Linux box
The Microsoft Terminal Server is a powerful tool — and it comes with a powerful price tag. The more users you need, the more costly that option will be. Replace that box with a Linux machine and you can have the same kind of power at a small fraction of the cost. And adding more users won’t wind up costing you the entire budget. So long as your hardware can handle it, you can add as many users as you like — at no cost.
3. In-house your CRM/ERP/HRM solutions
If you go to SourceForge and search for CRM, ERP, or HRM, you’ll be astounded at the hits you get. Not only are these solutions plentiful, they are powerful. With the likes of Drupal, Joomla!, OrangeHRM, and countless other tools, you will have your business-to-customer-to-vendor-relationship in perfect harmony. And since these are mostly Web-based tools, you’ll be able to work that magic from anywhere that can reach the server housing the tool.
4. Migrate to networked or cloud-based storage
The benefits of this might not be immediately apparent. But migrating your users’ storage from their machines to a centralized location can help save your budget by reducing strain on the client machine (less writing to drives and more over the network). This will also help save costs because you can more easily back up all end-user data from a single location.
5. Move some desktops to Linux
This one will have the most people shaking their heads, but hear me out. There are always certain desktops in a company that have a limited usage. And because much of business has migrated to Web-based tools, a Linux box makes perfect sense. With those machines, you won’t have to worry about virus infections, corrupt registry entries, or users installing malware-infested applications. Some machines will need Windows (such as those that use proprietary software or software with no Linux port, like QuickBooks). And there will be users who refuse change. For those instances, simply stick with what works best. But for the machines and/or users that can make use of Linux, make the switch and you’ll save.
6. Keep good backups of everything
It’s inevitable: Hardware is going to break. That means every machine in your company, at some point, is going to give up the ghost. When that happens, so much time can be lost recovering data — be it user-level or company-level data. One of the most critical tasks you can have as an IT pro is making sure backups run and run consistently. With a solid backup plan, you will save quite a lot of money in the end, even if only in time.
7. Implement strict antivirus and anti-malware policies
A big issue with end user machines is the “accidental installation” of malware or the infection of viruses. One of the best ways to help yourself out is to use an antivirus solution (such as Symantec Endpoint Protection) that can be managed from a centralized location. Regardless of what you use, it is crucial to make sure that all antivirus and anti-malware software is up to date (both the application and the definitions). It might also behoove you to make sure that end users aren’t installing extra “features” for their browsers — such as coupon finders.
8. Encourage creative thinking (solutions for unique problems)
This is more for your IT staff. Encourage the use of creative thinking to solve issues with client computers and servers. Most every computer issue has multiple paths that can arrive at a solution. Sometimes the creative solution is the one that can help save money in the end. Not all administrators can think along these routes, so don’t press them if they aren’t capable. But encourage those who can think creatively and on their toes.
9. Document, document, document
You want to save time? Document your hardware, your network topology, and your software. Document your users, your users’ PCs, your backups — anything you can possibly think of that will help you save time and make transitions from one software/hardware/administrator to another as smooth as possible. This documentation will also go a long way toward helping you see how everything on your network is used and what can be used more efficiently.
10. Implement a help desk solution
Many smaller businesses don’t employ a help desk solution because they assume you can keep track of all the issues on your own. That is a big mistake. The ability to track progress on issues and to review previous issues (and how they were fixed) can really save you time and money. And enabling end users to submit tickets will help ensure that issues are better managed and resolved more quickly. Plenty of open source solutions are available for this. (My favorite is OS Ticket.)
Have you found some other strategies that have helped you reduce spending? Please, share your suggestions bellow.
Professional Software Development
Microsoft might have sold hundreds of millions of Windows 7 licenses, and Apple might be managing to persuade tens of millions of people to buy iOS-powered devices every quarter, but the real winner when it comes to operating systems in 2011 as been Android, Google’s mobile operating system.
Based on the Linux kernel, Android is a wildly successful platform. By November of this year some 200 million Android powered devices were in use. If that sounds impressive, consider that this number is growing by some 550,000 daily (or 3.85 million a week, 16.5 million a month). Also, last quarter Apple sold 17 million iPhones and 11 million iPads over the three month period.
Despite Google not charging handset makers a dime for Android, the mobile platform is a huge money spinner for the company. Android pulled in some $2.5 billion for Google during its last financial year (all from ads), and this number is set to double during this financial year. As the number of Android devices out in the wild increase (and the number of eyeballs looking at the ads increase), then this figure will keep on growing.
Then there are the 10 billion app downloads. That’s a staggering number, and at the equivalent point in the Apple App Store’s life cycle, it had only managed around half this number of download. What’s more impressive is realizing that Google only broke the 3 billion mark back in March of this year, so that’s 7 billion in around 8 months (it took Google 20 months to hit the billion download mark in July 2010).
There may be issues that Google need to address when it comes to Android, but we can’t allow this to take away from the successes achieved by the mobile platform. Apple might be grabbing the limelight with iOS and the iDevices it is installed on, but Android is the platform for the masses.
Android is, without a doubt, the most successful Linux distro out there. And it’s only going to go from strength to strength come 2012.
Business Development Manager
Professional Software Development