Archive for the ‘Microsoft’ 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 | LI Profile
Microsoft Azure (called Windows Azure before 25 March 2014) is a cloud computing platform and infrastructure, created by Microsoft, for building, deploying and managing applications and services through a global network of Microsoft-managed data centers. It is a growing collection of integrated services – compute, storage, data, networking and app.
It provides both PaaS and IaaS services, which for the general public means a powerful combination of managed and unmanaged services. These services let you build, deploy and manage applications any way you like. Its hybrid cloud solution allows you to store data, backup, recover and build applications in your data center and the public cloud.
With cloud and hybrid services expected to reach US$108 billion by 2017, demand for Microsoft’s cloud products including Microsoft Azure is booming. For now:
- 57% of Fortune 500 companies are using Microsoft Azure
- It welcomes 1,000 new customers per day
- Currently 1.2 million businesses and organizations use Microsoft Azure Active Directory
- Microsoft Azure gains two times the compute and storage capacity every 6-9 months
What benefits do companies gain from using Microsoft Azure?
Using a cloud computing platform service like Microsoft Azure provides companies with a number of benefits apart from premium storage space and high-performance. The business benefits include:
- Efficiency – Azure Solutions and Services are known for delivering better-quality products as well as high operational efficiency because of reduced capital costs. Customers and partners can truly realize a huge reduction in total cost of operations and reduced workloads in a small time period.
- Increased scalability to match demand – as your customer base grows and the usage of your application increases you can just add additional capacity to make sure your application is running smoothly. You don’t have to worry about running out of server capacity.
- More flexibility and creativity – applications can very quickly be deployed to the Microsoft Azure platform which means that changes can be applied without any downtime. This makes it an ideal platform for your developers to add functionality to your application.
- Agility – developers would find a host of development tools to take benefit, including automated service management and improved data center presence internationally to reply faster to diverse customer needs.
- Simplicity – Azure makes use of prevailing development skills in familiar languages such as .Net and even open source languages like Java and PHP to produce and manage applications and services.
- Trustworthiness – Windows Azure delivers enterprise-class service with consistent service level agreements based on Microsoft’s unbelievable service experience.
Among Azure customers are such companies as HEINEKEN, GE Healthcare, Temenos, Zespri International, 3M, Skanska USA, Xerox, Diebold which speaks for itself
What position does Microsoft Azure takes up in public cloud?
According to Rightscale releases 2015 state of the cloud report Azure is progressing among enterprises, while Amazon Web Services (AWS) continues to dominate in public cloud with 57 percent of technical professionals saying that they run applications on AWS. That’s up from 54 percent a year earlier.
By comparison, Microsoft Azure’s cloud platform and infrastructure posted a combined score of 19 percent. But Microsoft is making gains, posting a 6 point jump in the number of tech professionals using its cloud infrastructure.
Google’s Cloud Platform offerings came in behind Azure, with 8 percent of survey respondents using Google App Engine, and only 5 percent using Google’s infrastructure products.
Microsoft has put huge amount of work towards marketing Azure to large enterprises, so it’s not surprising to see that large businesses are Microsoft’s core customers. There’s also room for that business to grow: a majority of enterprise users responding to the survey said that less than 20 percent of their company’s app portfolio is in the cloud.
What do you think of Microsoft Azure? What future do you predict for it? Thank you for sharing your thoughts
Posted August 11, 2014on:
Sitecore’s CMS flexibility, scalability and security make it an enterprise favorite, powering more than 32,000 websites around the world from financial powerhouses like American Express to some of the largest international sporting tournaments like Barclays ATP World Tour Finals. Let’s try to find out why Sitecore is so popular nowadays especially among companies which have got high traffic sites.
What is Sitecore and why it is a choice for so many companies and businesses?
From the start, Sitecore’s architecture is able to meet every unique business need with speed, flexibility and dependability. The large variety of organizations are using Sitecore’s CMS solutions – companies (more than 3,000 of the world’s leading brands such as Experian, Toshiba, Canon, Nestlé, American Express, Carnival Cruise Lines, easyJet, Heineken, and Microsoft), schools, and government agencies all over the world in every vertical sector are leveraging from Sitecore CMS to create business advantage and online success.
Sitecore is one of the leading enterprise-level content management systems built on ASP.NET, enabling web content editors and marketers to have full control over all aspects of their website from social integration and blog posts to advanced personalization, e-commerce and more. Launched in 2001, Sitecore has used the .NET platform from the beginning of the language itself, and has been growing in popularity over the last few years. Nowadays Sitecore is a quite popular CMS in the U.S.A. and Western Europe.
Sitecore CMS brings the power of personalization and conversation management right in the hands of your marketers and business users. The CMS incorporates a powerful desktop interface that is controlled by a fully-customizable role-based system. This desktop is very similar in look and feel to a Windows desktop, which makes it easy for users new to Sitecore to pick up and learn the system. Developers will find Sitecore’s powerful technology platform and open API architecture provides them the flexibility and scalability they need.
10 main reasons why companies should use Sitecore CMS
Some of the top features of Sitecore CMS include solutions that offer better insight to website user behavior as well as tools to increase site visitors:
1) Insight to Website Traffic Conversion;
2) Targeted Content Based on User Behavior;
3) Repurpose Content for Different Devices;
4) Easily Integrate with Third Party Tools;
5) Improved Search Engine Optimization (SEO);
6) Fast Integration with Microsoft Technology;
7) Highly Scalable;
8) Intuitive and User-Friendly Design;
9) Optimize Web Experience with Multivariate Testing;
10) Web 2.0 and Social Media Integration.
.NET-based CMSs: Sitecore, SharePoint, Umbraco – how to choose the right one for your business?
Comparing Sitecore and SharePoint
Firstly, let’s look at SharePoint and Sitecore, as it is often asked about the possibility of using Sitecore for an intranet or SharePoint for a public-facing website. While the idea of using one technology solution to solve both problems sounds promising, there are many things you should consider before limiting yourself.
Here are some thoughts in which cases you should choose Sitecore CMS for your projects and in when it is better to stick to SharePoint (these points are based on experts’ views as well as on Altabel’s own experience):
- it is better to use Sitecore for a platform to customize the web user experience based on non-authenticated users;
- choose Sitecore for a marketing driven platform;
- for an external content focus, choose Sitecore;
- choose SharePoint for an IT driven platform;
- it makes sense to choose SharePoint for a collaboration platform;
- for an internal content focus with enterprise level security requirements, choose SharePoint.
Following the beaten path, many companies continue using SharePoint for creating public facing sites – they are well familiar with it and have already invested a lot of time, money, and knowledge in SharePoint. But actually it should be kept in mind that SharePoint was not developed for such sites so it’s worth adopting another CMS to develop them. There are some advantages Sitecore offers over SharePoint as a CMS for a public facing website:
- Sitecore allows high flexibility for content editors and a logical hierarchical structure;
- SharePoint is very limited to List Viewsfor content entry;
- Sitecore’s Web Forms for Marketers makes building forms and triggering goals simple;
- Frontend development for SharePoint is restricted and requires a lot of customized work, Sitecore on the other hand, is free of restrictions and able to do anything you want;
- Sitecore offers fantastic technical support;
- Sitecore offers easy multilingual configuration;
- A/B testing is included with Sitecore, a must for a modern website. SharePoint does not come with any kind of A/B testing;
- Sitecore’s DMS (Digital Marketing Suite) – SharePoint has nothing like this. Any website that has marketing in mind can greatly benefit from this tool included with Sitecore;
- Sitecore is developer-friendly – Development in Sitecore is much easier and requires a lot less specific knowledge. More developers are able to produce a better solution, faster, cheaper;
- Sitecore has a clear line between data and presentation making content easier to manage.
The bottom line is simple: If you’re looking to build a public internet site on the Microsoft platform, SharePoint makes sense if you meet a certain set of criteria. But Sitecore provides an extremely compelling alternative that, from a business owner’s perspective, offers superior tools for engaging with the customer.
Comparing Sitecore and Umbraco
Sitecore CMS and Umbraco CMS are two leading content management systems based upon Microsoft’s ASP.NET framework. Their flexibility, functionality, integration capabilities and ease of use is why many have chosen to focus their technical expertise on these systems.
Let’s have a look at the similarities between Sitecore CMS and Umbraco CMS:
- Easy integration with Microsoft Office;
- Endless expansion possibilities;
- Easy-to use User Interfaces (UI);
- Design layouts are separated from the content;
- Due to the large open-source Umbraco community and the expert development teams within the Sitecore network both CMS platforms are constantly evolving at a rapid pace;
- Easily scalable and customizable through modules (Sitecore) or packages (Umbraco);
- Can be integrated with your internal systems like ERP and CRM;
- Comprehensive documentation and online help & guidance.
And now let’s get acquainted with the differences between these two CMS:
– Sitecore is an enterprise solution whereas Umbraco is suited to small-medium sized businesses;
– Sitecore is a license-based product. This means a license fee is paid to acquire it. Licensing options can be chosen, taking in consideration a number of factors, making it possible to use Sitecore in a variety of projects: from small non-profits, with websites running on a single server, to big corporations with millions of visits per day;
– Umbraco is an open-source product, meaning there is no license fee;
– In both North America and Europe, you can easily find an existing Sitecore customer. This is very helpful to further increase adoption as it means that new customers have some experience they can tap into. In addition, Sitecore has many government references where Umbraco has almost none;
– Sitecore 7.1/7.2 has advanced feature set;
– Sitecore is an established global player; much more so than Umbraco. Sitecore is in particular strong in the important and highly competitive US and UK markets.
Our opinion is that if you do a proper CMS vendor evaluation, you will probably find that the license cost is only a fraction of the overall project costs. Your criteria should really be to look at which system will meet your requirements most efficiently.
If you are looking for a .NET-based CMS, all these products will work – but right now, at Altabel we would lean toward Sitecore when looking for a pure CMS that provides fast development time, stable platform and ease of use for non-technical content creators.
Of course, each organization is different, and it makes sense to check out the products and run them through your technology selection process to determine which is best for you.
Hope you have found the article interesting and helpful for you.
Also it would be nice to hear your opinion and practical experience. What CMSs do you use and for what kind of projects? What is your favorite CMS and why?
Thank you for your attention and looking forward to your comments.
Over the years dynamic languages such as Python and Ruby have become cherished by startups. As for .Net it is more rarely heard to be used by startups. That’s interesting indeed, because this platform is definitely bigger than most of the popular ones.
So I wonder why a platform as widely adopted and supported as .NET isn’t more visible in startup culture. Let’s try figuring out the main arguments in favor and against making .Net a startup technical choice.
1. Community culture
Some people say the main reason is the culture of the .NET community itself, not anything specific to the platform. Being centered mostly around the needs of enterprise market .NET developers’ concerns are often regarding supporting legacy systems, building enterprise architectures, large systems for supporting business processes. This implies solving problems which are not so relevant for startups at least at their initial point.
As for members of the startup community, they fuss over different issues – concurrency, experience design, supporting multiple clients and browsers, etc.
As a result the startup community and the .NET community don’t overlap as much as they do for other technologies. That’s why startup founders don’t get much exposure to .Net and don’t think of it as an applicable tool for their purposes. The same way many .Net developers who want to work for hot startups don’t have as many opportunities to do so unless they abandon the platform for a more startup-friendly one or start a company themselves.
So platform doesn’t always dictate its use – that’s people who make the choice. Enterprise and startups aren’t mutually exclusive – they’re just different stages in the evolution of software, and there’s no reason why the startup community shouldn’t look at .NET as an attractive starting point for a new business.
2. Startup tech compatibility
A startup is a risky venture with no guarantee of success. So tech startups seek advantages in order to succeed. Hence startups take what big enterprises consider risky bets on technology. This objective can be achieved by using technology that is popular in startup environment.
Many features of .NET, facilitating the productivity of big companies, are not always useful to startups. There is too much choice of implementation methods. If anything, web startups are looking to have this choice taken away – their technology choices come from the subset that is built for the web.
Also it is said that innovation is quicker with other ecosystems which have a bigger set of libraries and tools. As for .Net there are a few open source projects however most of them are pretty much an implementation of concepts that have already been implemented for a while in the Java world, for example.
3. Open source vs proprietary
Although many startups don’t mind paying for tools and services, most of them still pick things based on cost. For a long time the “enterprise” level tools, services, databases, etc were hardly affordable by startups. That’s why startups adopt so much open source.
It’s also hard to justify the use of proprietary software from a business perspective. If you want to be acquired it is wise to develop your product using an open stack rather than Microsoft’s.
However luckily for many startups Microsoft saw a huge value in giving their stuff away to startups and startups have benefited greatly. Microsoft has been running their Bizspark program for several years, which eliminates most of the startup costs normally associated with employing a .NET framework. To get into the BizSpark program you just need to get checked by BizSpark team if your startup is eligible (developing a real product). Then you’ll get free licenses to basically every product they make, including SQL Server, and a free MSDN gold subscription, for 3 years. They figure 3 years is long enough for you to get going so after that they want you to pay for new licenses. The great part is that they let you keep the licenses you’re already using. So Microsoft has basically taken the cost factor completely out of the equation for new startups.
4. Velocity vs performance
Some people say that it’s all about the velocity. If you agree with an assumption that a startup goal is to find a niche vs build a product, then the goal of a startup is to learn about the market, customers, and product needs as quickly as possible. Python, Js, Ruby, etc allow you to iterate quickly without a lot of infrastructure and boilerplate. However a company that has already has a market has a little different goal, for them the objective is to build a stable product that they can maintain.
Some people say that .Net is not suitable for quick changes. This is a pretty outdated view of C# these days, it’s actually fairly easy to write extremely terse code with. As an added bonus refactoring is so incredibly easy compared to JS, Ruby, Python, etc. that it’s ideal for rapidly switching directions in code as you can refactor so fearlessly without being slowed down by massive amounts of tests. Unfortunately what’s bad about .Net is the tooling and the supporting ecosystem.
Python is much better suited to quick prototypes that can be fleshed out into a reasonably reliable product without too many headaches. The key difference comes when you have to change features mid-stream. The lack of strict typing and interfaces means you can add, change, and remove features much quicker than C# for example. On top of that, you just write fewer actual lines of code to get the same thing done, although sometimes readability can suffer if you get too concise. There is a price to be paid with Python and Ruby though and performance is the biggest one.
5. Team and project size
The team and project size always matters. So when the solution is being built with a small team, then it is easier to use something like Python. Obviously the goal is to be fast to develop in and have a bunch of libraries to be used. On the other hand when building something with a big team, you feel like using something like C#. In this case it keeps it safe to develop in and easy to catch mistakes. Any optional documentation provided by a developer is incomplete. On the contrary the quality level of the available .Net documentation is outstanding.
However if the company is starting as very small at the initial point, it hopefully grows and builds up quite a sizeable codebase by some point. Python, JS & Ruby are fine for small programs but anything more than that and they become their own enemies because the programs they make are quite brittle.
The common opinion is that .Net scales well.So, if your startup does make it, you’ll probably have a much easier time scaling the .Net stack than you would with say Ruby or PHP.
Conclusion: it’s all about stereotyping
Eventually, I found different opinions on my question of .Net being not so popular with startups such as “platform lock-in,” “no open standards,” “licensing costs.” Sure, these are issues preventing many developers from adopting .NET in the startup space, but not enough to bar all of them from using it. Most of the arguments are just stereotypes that can be dispelled under closer examination.
All languages have strengths and weaknesses. For a startup, you need to do due-diligence and research what the right language to use for your idea will be because recoding in a different language can get costly.
So do you use .Net in your startup projects? Please share your feedback and experiences with us.