I developed an application tailored for the oil and gas sector, focusing on risk assessment and activity mapping for wells across Brazil. This tool utilized the .NET Framework, specifically version 4.6, to ensure robust performance and seamless integration with existing systems used by oil and gas companies in the region.
Software engineer at a tech services company with 1,001-5,000 employees
Ensures efficient application development and deployment while providing versatile language support, robust security model, seamless interoperability and excellent scalability
Pros and Cons
- "It facilitated the streamlined scheduling process by amalgamating inputs from various sources, including location data and other systems."
- "Improvements are needed in .NET development, particularly in a backend scenario."
What is our primary use case?
How has it helped my organization?
The .NET Framework streamlined the integration of our enterprise-level applications by leveraging .NET service-oriented architecture. This approach simplified development as we could modularize our system into microservices, enabling us to assist each component seamlessly within the .NET environment, tailored to the specific scenario at hand.
The .NET Framework's interoperability with other applications and its language independence has proven invaluable for our development projects. In my latest project, I developed a portal application capable of simulating various applications tailored to different user roles within the company. Using the .NET framework, I created a secure domain model to manage user authentication and bill distribution across these applications. I particularly appreciated the .NET Bot framework for its ability to quickly translate existing class models into code, facilitating rapid development and seamless integration with our database.
The support for multiple programming languages in .NET has influenced our choice of languages for various tasks. As a team, we possess a solid understanding of .NET, making it easy to leverage its capabilities. While clients may not always have insight into the technical aspects of our work, the versatility of .NET enhances our productivity. This allows us to deliver results to clients more efficiently and encourages their active participation in the development process.
The security model of the .NET Framework significantly contributes to the overall security of our .NET applications. This is largely facilitated by our proficient IT team, who meticulously plan and manage the infrastructure. As our .NET applications are primarily utilized within our company's intranet, security measures are inherently more manageable.
What is most valuable?
The features that significantly enhanced our application's performance primarily revolved around integrations. For instance, in one scenario, our application was tasked with scanning field activities within the .NET framework, encompassing both onshore and offshore operations. It facilitated the streamlined scheduling process by amalgamating inputs from various sources, including location data and other systems. Users could input data and conduct simulations within the application to assess the viability of certain activities. Additionally, the application was backed by a database running SQL scripts to support its functionalities.
What needs improvement?
Improvements are needed in .NET development, particularly in a backend scenario. For example, if you're planning to develop an application to track project operations using .NET, a good starting point would be to adopt domain-driven design principles. This approach allows you to visualize all the relevant components within the .NET framework for such a project. You can begin by defining the core domain entities, such as projects, tasks, and locations, leveraging .NET classes to represent these concepts effectively. Additionally, incorporating a scheduler component in .NET to manage activities associated with each project would be beneficial. By organizing these classes systematically, you can streamline the process of generating database tables directly from your code.
Buyer's Guide
Microsoft .NET Framework
November 2024
Learn what your peers think about Microsoft .NET Framework. Get advice and tips from experienced pros sharing their opinions. Updated: November 2024.
817,354 professionals have used our research since 2012.
For how long have I used the solution?
I have been working with it for almost a decade.
What do I think about the stability of the solution?
The stability is outstanding. I encountered no issues, with any concerns primarily related to infrastructure servers rather than the .NET framework itself. I would rate it nine out of ten.
What do I think about the scalability of the solution?
The scalability is exceptional. I would rate it nine out of ten.
How are customer service and support?
We didn't require support assistance as Microsoft offers ample resources, including instructional videos, for implementing and resolving any issues independently. I would rate it nine out of ten.
How would you rate customer service and support?
Positive
How was the initial setup?
The initial setup is straightforward. However, as operations start, a structured approach is essential. This involves establishing distinct layers of code, each with specific responsibilities aligned with the product's objectives. For example, if managing a product class, its functions should exclusively pertain to product-related tasks. Similarly, when dealing with a layer handling thousands of transactions, caution must be exercised to ensure it remains focused on its designated operations without encroaching upon other aspects of the project. This segregation of tasks ensures clarity and efficiency within the development process, despite its inherent complexity.
What about the implementation team?
In our web and desktop application development workflow, we typically support IT personnel by providing them with the necessary components to set up a server for deploying our applications. We hold weekly meetings to discuss our approach and progress, and throughout the week, we collaborate on various tasks. Once the work is completed, we publish the applications to the server, ensuring that all required roles are fulfilled for successful deployment.
For deployment, we didn't have to do much as it was already completed for us. Additionally, we utilized GitLab and Jira in conjunction with Docker for streamlined deployment processes.
What other advice do I have?
Overall, I would rate it nine out of ten.
Disclosure: My company has a business relationship with this vendor other than being a customer: Partner
Last updated: Mar 6, 2024
Flag as inappropriateCEO at Shiraz University
Has improved our efficiency in the time it takes to program a solution
Pros and Cons
- "A great solution for creating program solutions in a framework for Microsoft Windows quickly and easily."
- "It would be nice if the framework were able to work with additional environments and systems like Linux."
What is our primary use case?
Our primary use is to be able to build solutions more quickly and easily that has good flexibility. When you want to build a product, you have to have faith in the nature of its functionality and know you can write your code to run on their core. Another solution is to write software code to run on top of the framework.
Microsoft .NET Framework is a very good infrastructure and we program over that. It handles many tasks for us and it helps us to write our programs very fast and very efficiently. Although it is like a virtual machine, it is still fast — or faster — and it is efficient. Compared to Java Virtual Machine (JVM), I prefer to use the Microsoft .NET Framework because it is built specifically to work with Microsoft Windows. I have grown to trust Microsoft over a long time and we can easily write programs in familiar languages to work with Windows over the Microsoft .NET Framework.
How has it helped my organization?
It has improved our efficiency in the time it takes to program a solution.
What is most valuable?
For us, direct integration with Microsoft Windows is probably the most valuable feature.
What needs improvement?
One thing that could improve Microsoft .NET Framework is to give it more flexibility. It is designed to work just on Windows. If it could run over Linux, over MAC, over mobile phone, etcetera, it would be a very good improvement. If it were the case, I would be able to write a program and I could be sure that my program would run on all those platforms and over other operating systems.
I know that Microsoft is currently working on solutions for this and the company makes .NET Core now. The .NET Core they propose is a framework like .NET Framework that will allow implementing programs across other operating systems like Linux. It is introduced in idea, but it has a lot of room for improvement.
If I were able to install Microsoft .NET Core over other operating systems, such as Linux, Unix, or mobile and it works as well as .NET Framework, then it solves other problems for me.
For how long have I used the solution?
I'm using Microsoft .NET framework over different versions from 2003 up to now. A total of about 16 years.
What do I think about the stability of the solution?
The stability of the current version of the product is very good. In the lower versions of the framework, sometimes I saw a crash but after version 4, I haven't seen any crashes. It is really, really stable and I like it. I wrote some services that have run for about a year without any crash at all. All issues with stability seem to be fixed.
What do I think about the scalability of the solution?
Microsoft .NET Framework is a solution, where the scalability is dependent on the programmer. The programmer could write a very large scale project — a large scale enterprise solution — using .NET Framework. They can also work on much smaller projects. It is just a tool to use.
All of our company members and all of our customers currently use the .NET Framework. The programmers write based on that .NET Framework. We define the scope of our work based on the project. Some projects need four to five programmers, but on some projects need ten to twenty staff. It depends what has to be done.
We can scale at any time except with some limitations on operating systems. By making our applications based on .NET Framework, our applications run already on the .NET Framework for our clients. When we do the development for our programs based on .NET Framework, our customers who want to use this solution also have to use .NET Framework. This is why it is a little limiting.
How are customer service and technical support?
The technical support is really, really good. Every time that I ask a question on the Microsoft Network, someone answers me and I never have felt ignored when I need some type of support. I am very satisfied with their work in supporting the .NET Framework.
Which solution did I use previously and why did I switch?
Previously, I used C++ for my development and it wasn't over any framework. It was the mentality at the time. When I saw the benefit of using a framework like .NET, I saw the simplicity of working over frameworks and the development advantages. That is when I decided to switch over to .NET Framework.
How was the initial setup?
Installation is very straightforward for the Microsoft .NET Framework. I never heard any complaints from any of my customers. Even those customers who still use a lower version of Windows like Windows XP or Windows 7 don't have problems. Because .NET Framework is not pre-installed on Windows 7 or on Windows XP or 7, the customers need to install it themselves. But on Windows 8 and 10, Microsoft .NET Framework is pre-installed.
I never heard any complaints from my customers who couldn't install the .NET Framework, and none have said they had difficulty with .NET Framework. They all have said they could install it very easily and get running with it without a problem.
How long will it take to make it do what you want depends on the things you want to accomplish. Some products take more or less time to deploy and some solutions take more to build. But the .NET Framework is very fast, not hard to learn, and even amateurs don't have a hard time with deployment and getting started.
What about the implementation team?
We deploy this solution by ourselves. We never have had to reach out for help from vendors or other consultancies for the product itself. The programming is a different thing and is not the fault of the product.
What's my experience with pricing, setup cost, and licensing?
One advantage to Microsoft .NET Framework is that it is a free product and everyone can use it. It is a very good point about that product because it makes it friendly and easy to adopt over many users. The solutions and use of technical support are free as well.
Which other solutions did I evaluate?
We did evaluate at least one other option before choosing Microsoft's .NET Framework. It was JAVA Bridge, but I prefer to use Microsoft .NET Framework because I only wanted to develop for Microsoft products and Microsoft Windows. The .NET Framework is, I think, more compatible with Windows than JAVA Bridge Virtual Machine.
What other advice do I have?
One piece of advice that I would give to people considering the use of this product is to use it because of several things: it is free of charge, it is fast, it is compatible with Microsoft Windows, and whenever a new version comes out, it supports the older version. These are all very good points. The development of the framework is really good and was approached intelligently.
If considering other options, when you want to use a framework, you have to look at its ability to work with different types of other products. With the.NET Framework, you are able to work with different environments like Microsoft SQL Server 7, MySQL, Oracle — any kind of database. You have to also know its limitations. It is my opinion that when you want to use the .NET Framework, it is a very good solution and you can have confidence in the functionality. The stability of the framework you choose is very important.
On a scale of one to ten with one being the worst and ten being the best, I would rate this product as a ten because my standard is Microsoft products.
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Buyer's Guide
Microsoft .NET Framework
November 2024
Learn what your peers think about Microsoft .NET Framework. Get advice and tips from experienced pros sharing their opinions. Updated: November 2024.
817,354 professionals have used our research since 2012.
Chief Operating Officer at a tech services company with 11-50 employees
Offers a lot of knowledge materials and community groups to help users
Pros and Cons
- "The tool offers a lot of support, and there is a lot of knowledge material available, along with a lot of community groups."
- "The product's price is an area of concern, making it an area where improvements are required."
What is our primary use case?
I use the solution in my company to build internal systems that are used for developing applications to run our business, and we also use it to call web services.
What is most valuable?
The most valuable component of the product stems from the fact that it works properly. I know it might sound funny, but you don't have to go and get other third-party solutions when using Microsoft .NET Framework. With Microsoft .NET Framework, you also don't have to do a whole lot of extra configurations to make it run. The tool offers a lot of support, and there is a lot of knowledge material available, along with a lot of community groups. If you have an issue with the tool, you can find someone to help you pretty easily.
What needs improvement?
I think the main thing that my company wants is Microsoft .NET Framework to provide us with more integrations with Azure, like in the area of DevOps in Azure, which can improve its management and work in the cloud. The tool is good, but it can be made a bit better.
The product's price is an area of concern, making it an area where improvements are required. The product should be available at a low cost.
For how long have I used the solution?
I have been using Microsoft .NET Framework for about fifteen years. The older version of the tool is automatically updated.
What do I think about the stability of the solution?
I have not faced any issues with the stability of the product.
What do I think about the scalability of the solution?
Considering what cloud services can support, the scalability offered by the product is unlimited. I feel that it is a scalable solution.
My company has around 12 to 15 developers who use the product.
In terms of the size of Microsoft .NET Frameworks' environment, I feel that as a cloud-based product, it serves as a system to the customers, so it can serve the needs of hundreds of customers, meaning there are no real size limitations. The on-premises version of the tool that our company has been running had 350 people running through the applications on-site, and it was running every day with thousands of daily transactions.
How are customer service and support?
I believe that the developers in my company have raised issues with the product's support team. I believe that it was never a challenge for my company to find the right person who provides the right solutions. My company has dealt with difficulties in a few technical areas attached to the solution, especially in the area of integration, but I don't remember any major issues with the solution.
Microsoft support is okay. If you are aware of the community practice when it comes to the tool, you can pay for Microsoft .NET Framework's extended support, as it can be helpful. The support is really good. I rate the technical support a seven out of ten.
How would you rate customer service and support?
Neutral
How was the initial setup?
As long as somebody in your company understands how the tool works, handling its setup phase is not complex. If you are learning to use the tool for the first time, the setup phase can be difficult. You need a good understanding to start with if you want to do the setup phase easily.
During the product's deployment phase, our company just needs to push the product through the pipeline, which is a very easy process. Putting the code out there is pretty easy since Microsoft processes work quite well in a simple manner.
What was our ROI?
My company has not looked at the tool from an ROI perspective since it is a product we need to use. Along with the stack of Microsoft products, Microsoft .NET Framework is a tool that works for our company.
What other advice do I have?
In our company's development projects, the code is built using Microsoft .NET Framework, which is valuable and beneficial.
In our company, we have a system internally that runs several contracts that we do, and it provides a workflow application that people in our organization basically manage to make sure that the workflow for the contracts we hire is completed, so it has a lot of business rules in it, meaning it has a very strong business rules engine. The other main process our company uses is in building the cloud solution that is focused on how you deliver durability to end-customers because it is a tool that can be used in a very extensible manner, leading us to use it a lot.
The interoperability of Microsoft .NET Framework with other languages and platforms affects our company's projects since it allows us to build whatever we want. There are no limitations in the tool, and as long as someone in our company has an API we can work with, we can build a connector tool, so it is quite open to what it can achieve. In general, with some of the low code areas, you may start to run into challenges while doing some integrations and maintaining them, but with Microsoft .NET Framework, it is very simple since once something is built, it works fine, especially when doing updates and changes, it is an easy process which is not a difficult thing to manage at all.
The product's security features are fine, but I feel you need to follow a security-by-design approach for all software environments. Microsoft .NET Framework usually enables what you do, but it does not make it happen for you since it only serves as a toolkit.
The performance and the scalability of the applications developed in Microsoft .NET Framework are fine but my has got certain things on Microsoft .NET Core is on Microsoft Azure. It can take as many customers or as many users as Azure can handle, making it a very extensible tool.
The product is not difficult to maintain.
The integration of security and network of the tool has benefited our organization since we can easily integrate SIEM, SOAR, or NMS tools.
I recommend the product to others who plan to use it. I believe that you need to invest in getting to know how to use and run the tool.
I rate the tool a nine out of ten.
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Last updated: Apr 8, 2024
Flag as inappropriateIS Technical Architect at AVARA FOODS HOLDINGS LIMITED
Rapid development, easy installation, and excellent technical support
Pros and Cons
- "The .NET Framework is a very good framework. It does what I need it to do."
- "This solution is best used with some training."
What is our primary use case?
I have built many things in Microsoft .NET Framework. At a high level, the main focus would be on integration.
Microsoft .NET Framework is primarily for the integration of solutions.
How has it helped my organization?
It enables us to do rapid development. We can develop solutions very quickly.
What is most valuable?
It is easy to use, and it runs on a Windows platform.
The .NET Framework is a very good framework. It does what I need it to do.
For how long have I used the solution?
I have been working with different versions of Microsoft .NET Framework for 15 years.
What do I think about the stability of the solution?
Microsoft .NET Framework is a stable solution.
What do I think about the scalability of the solution?
It's a scalable product.
In our organization, we have 700 users.
How are customer service and support?
Microsoft technical support is excellent.
Which solution did I use previously and why did I switch?
The previous solution we used, was also provided by Microsoft and Microsoft retired it.
How was the initial setup?
The installation is straightforward. It's very easy.
It took an hour to deploy this solution.
We have a team of five analysts, and developers to maintain this solution.
What about the implementation team?
Hitachi Consulting and Oracle Consulting have assisted us in other companies.
What's my experience with pricing, setup cost, and licensing?
Microsoft .NET Framework is licensed under the Windows License.
What other advice do I have?
My advice to others would go to get some training. This solution is best used with some training.
I would rate Microsoft .NET Framework a nine out of ten.
Which deployment model are you using for this solution?
On-premises
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Software Engineer at Micron Technologies, Inc
It simplified operations dealing with the allocation and deallocation of memory spaces
Pros and Cons
- "Initial setup is straightforward. All the components are readily available."
- "The addition of generics to handle common functionality across types, and the more recent upgrade of the dataset to the Entity Framework, has cut development time drastically, while increasing quality and confidence between builds."
- "The .NET Framework simplified operations dealing with the allocation and deallocation of memory spaces and the additional processing resources."
- "Needs stronger security with respect to cloud issues."
What is our primary use case?
The .NET Framework is the foundation for software design and development. This is the context that I use it in, and the perspective that I view the discussion about it.
How has it helped my organization?
Coming out of C++, the .NET Framework simplified operations dealing with the allocation and deallocation of memory spaces and the additional processing resources. Adding this feature to the .NET Framework has freed countless hours of leak management.
What is most valuable?
The addition of generics to handle common functionality across types, and the more recent upgrade of the dataset to the Entity Framework, has cut development time drastically, while increasing quality and confidence between builds. Finally, the test framework allows for increased velocity.
Most recently, the updates tot he Entity Framework, and the addition of the ability to work with mobile applications have also been huge additions
What needs improvement?
- Stronger security with respect to cloud issues
- Greater flexibility with data connections
- Better control
- Extensibility of the framework as a whole
For how long have I used the solution?
More than five years.
What do I think about the stability of the solution?
Changes in technology generally happen faster than any single entity can keep up with. But the side-by-side Runyon capability handles most stability issues behind the scenes.
What do I think about the scalability of the solution?
Only the ones that were fixed.
How are customer service and technical support?
I have not had to use the support.
Which solution did I use previously and why did I switch?
No.
How was the initial setup?
It is straightforward. All the components are readily available.
What about the implementation team?
Started as part of a school program.
What was our ROI?
I can't measure ROI, because I've never used a different technology stack. Switching from one to another has not been an issue.
What's my experience with pricing, setup cost, and licensing?
Do your homework. Consider the partnership program.
Which other solutions did I evaluate?
No.
What other advice do I have?
With the advent of IoT, combined with cross-platform development, the .Net framework becomes much more versatile. We should begin to see apps scaling down in size, but also (literally) covering more ground.
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Software Engineer at Streams Tech, Inc.
Easy to set up and fast with good good CLI support
Pros and Cons
- "It's easy to create and integrate things."
- "They should try to improve their Blazor WebAssembly."
What is our primary use case?
For testing purposes, we deploy it on our own server (on the Infrastructure server). For our production, we're deploying it on AWCC too.
Nowadays, Microsoft is trying to fix a few things and build a framework faster than other frameworks. There are a few reasons to choose .NET. However, my supervisor selected this framework for a few scenarios, and our scenario is also quite a good match with the .NET Framework.
What is most valuable?
We are using, the .NET Core Framework right now. It's the Core platform. They are releasing a new version, and the new version is becoming faster and easier to use compared to other frameworks and other languages.
The initial setup is easy.
They offer good CLI support.
It's easy to create and integrate things.
What needs improvement?
They're improving many features day by day. Maybe other kinds of support would be helpful. Making it even faster would be welcome. Their ORM is a little bit slow compared to other ORM. That said, comparing to the current version and previous versions, their ORM is now much faster.
They should try to improve their Blazor WebAssembly.
Previously, we used to face difficulties in designing a pattern or this kind of feature. However, right now, they're improving this so it's easier to write than it was before.
For how long have I used the solution?
I've been using the solution for three years.
What do I think about the stability of the solution?
The solution has been very stable and reliable. We haven't had issues with bugs or crashes.
What do I think about the scalability of the solution?
In my company, we have more than 100 employees, and more than 50 are using .NET Framework.
Compared to the previous version, the current version is more scalable in .NET Framework.
How are customer service and support?
I've never used technical support.
Which solution did I use previously and why did I switch?
I'm also familiar with Java.
How was the initial setup?
The product was easy to set up. It was not an overly complex process. I'd give it an eight or nine out of ten for ease of deployment. Their CLI support is very good.
The deployment itself is fast and takes about 20 minutes or so. I'm using a Windows server. It might vary based on dependencies. In our case, it was very straightforward since we had everything set up and ready to go. Only one technician was needed to set up the server.
What's my experience with pricing, setup cost, and licensing?
We do not have to pay to use the .NET Framework or other kinds of frameworks.
What other advice do I have?
We are end-users.
I'm not sure why the company decided to use the solution. However, they have used it for a while.
Choosing a framework totally depends on the scenario and project. If you want to build an interface, then the .NET Framework will be good. That said, a Java framework also will be good. I'd recommend either of those frameworks in general.
I'd rate the solution eight out of ten. they are always trying to improve, unlike other frameworks or languages. There are also good features and a good community around it.
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Associate Director at a computer software company with 10,001+ employees
Great customization and consistently delivers in enterprise-size companies
Pros and Cons
- "Proven solution with valuable customization."
- "Lacking in auto-scaling."
What is our primary use case?
Our primary use case is generally for clients that are enterprise-sized businesses like insurance companies or bit telecom companies in the US. They are generally the customers that use this solution and my company provides services to them. Our work is related to putting the solution together and implementing the whole thing end to end. A lot of companies are moving towards the cloud, so either it's AWS or Azure or Google. Google is not as popular as AWS, followed by Microsoft Azure. And of course there are a lot of products on Microsoft which are also popular like their database and of course the Windows server and things like that.
We're a partner of Microsoft and I'm the associate director of our company.
What is most valuable?
The most valuable features are the customization and the support moving towards a .Net framework.
What needs improvement?
Nothing in particular comes to mind in terms of improvement. It's a proven solution and it really depends on the resources that a company has for maintenance once a solution is in place. That said, it would be good if auto-scaling could be included. I also believe implementation could be simplified.
Microsoft has got a lot of products and improvements would be in the context of a particular product. I've seen there are areas that are much harder to capture - so things like auto scaling and implementation could be improved.
For how long have I used the solution?
I've been using this solution for three or four years.
What do I think about the stability of the solution?
It's a stable solution.
What do I think about the scalability of the solution?
It's a scalable solution.
How are customer service and technical support?
The technical support is good and they also have some community forums where people can get quick responses to some of the queries that they have. So the community is good.
Which solution did I use previously and why did I switch?
I"ve used Java previously and find it a more portable solution.
How was the initial setup?
Initial setup is somewhat complex and requires some training. I would say that Microsoft can improve on that somewhat in terms of enabling someone to understand the process and set it up themselves.
What other advice do I have?
I would definitely recommend that anyone considering implementing the solution do a proof of concept. That gives you an idea as to whether you're on the right path. A company also needs to take into account the requirements of their organization in terms of scalability and ease of maintenance and also whether they have the skill set to maintain the IT resources required. A lot goes into it but proof of concept would be good before going ahead.
I would rate this product an eight out of 10.
Which deployment model are you using for this solution?
Hybrid Cloud
If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?
Amazon Web Services (AWS)
Disclosure: My company has a business relationship with this vendor other than being a customer: partner
Technical Solutions Architect, Enterprise Architect at a tech services company with 11-50 employees
A software development framework for building and running applications on Windows
Pros and Cons
- "Firstly, I appreciate the decision to use Microsoft .NET Framework. I find it to be an excellent language, with a history rooted in providing an alternative to Java, albeit with initial challenges. It is gaining popularity and may be voted the most desirable programming language. What I particularly like about .NET is its language efficiency. While C# is the primary language, the platform also supports others, catering to those inclined towards functional programming. Although I started with Shell, I'm still grasping the concept of functional programming. Despite initial reservations about object-oriented programming, I acknowledge its advantages. .NET is a safer option, and despite criticisms, it has evolved over the years. One notable aspect is .NET's transition to an open platform in recent years, distancing itself from being exclusive to Microsoft engineers. I appreciate the versatility of .NET, enabling code production for a wide range of platforms, presenting a strong competition to Java. It allows targeting practically any physical platform, showcasing its flexibility. These qualities contribute to my positive view of .NET, totaling thirteen aspects that I find appealing."
- "In the realm of Microsoft .NET Framework, particularly in the C# language, there have been significant developments that I find highly commendable. I am genuinely fascinated by the continuous evolution of the language, and staying abreast of the latest features in Azure is both challenging and enjoyable. Working with C# in Azure is particularly fantastic. I appreciate in .NET, as compared to Java, is the enforcement of types, providing a better experience in terms of technicalities. Additionally, the introduction of Roslyn in the past few years has brought about the concept of late .NET, which I find interesting and powerful. This allows for the transformation of symbolic code just before execution, eliminating the runtime decision-making process and enhancing efficiency. However, late .NET does come with a drawback – a delay in the last-minute computation when starting an executable. While some may find this less appealing in terms of instant responsiveness, especially in serverless cloud environments, the efficiency gained from executing strictly binary code is valuable. Despite potential drawbacks like the time required for activation, I view .NET favorably for its technical advancements and efficiency, especially in scenarios such as serverless cloud computing. It's essential to recognize the intricacies of how .NET processes code and the efficiency it brings, which some may overlook."
What is our primary use case?
I am currently working on the development of a new product using Microsoft .NET Framework. The project is currently in the analysis, architecture, and user acceptance phases. It is a comprehensive system similar to ERP, designed to manage internal resources for a sizable bank. The application focuses on handling IT resources for the bank, and it is being developed in-house.
How has it helped my organization?
Within each specific .NET product of ours, we currently have a robust portfolio with around a dozen products actively running for our customers. Based on the user databases, it's evident that each product is implemented using .NET. In fact, one of our products boasts slightly over one thousand users. This underscores the prevalent use of .NET across our product range.
What is most valuable?
Firstly, I appreciate the decision to use Microsoft .NET Framework. I find it to be an excellent language, with a history rooted in providing an alternative to Java, albeit with initial challenges. It is gaining popularity and may be voted the most desirable programming language. What I particularly like about .NET is its language efficiency. While C# is the primary language, the platform also supports others, catering to those inclined towards functional programming. Although I started with Shell, I'm still grasping the concept of functional programming. Despite initial reservations about object-oriented programming, I acknowledge its advantages. .NET is a safer option, and despite criticisms, it has evolved over the years.
One notable aspect is .NET's transition to an open platform in recent years, distancing itself from being exclusive to Microsoft engineers. I appreciate the versatility of .NET, enabling code production for a wide range of platforms, presenting a strong competition to Java. It allows targeting practically any physical platform, showcasing its flexibility. These qualities contribute to my positive view of .NET, totaling thirteen aspects that I find appealing.
What needs improvement?
In the realm of Microsoft .NET Framework, particularly in the C# language, there have been significant developments that I find highly commendable. I am genuinely fascinated by the continuous evolution of the language, and staying abreast of the latest features in Azure is both challenging and enjoyable. Working with C# in Azure is particularly fantastic.
I appreciate in .NET, as compared to Java, is the enforcement of types, providing a better experience in terms of technicalities. Additionally, the introduction of Roslyn in the past few years has brought about the concept of late .NET, which I find interesting and powerful. This allows for the transformation of symbolic code just before execution, eliminating the runtime decision-making process and enhancing efficiency. However, late .NET does come with a drawback – a delay in the last-minute computation when starting an executable. While some may find this less appealing in terms of instant responsiveness, especially in serverless cloud environments, the efficiency gained from executing strictly binary code is valuable.
Despite potential drawbacks like the time required for activation, I view .NET favorably for its technical advancements and efficiency, especially in scenarios such as serverless cloud computing. It's essential to recognize the intricacies of how .NET processes code and the efficiency it brings, which some may overlook.
For how long have I used the solution?
I have been using Microsoft .NET Framework for many years, since 1992 or 1993.
What do I think about the stability of the solution?
It is stable.
What do I think about the scalability of the solution?
I'm frequently questioned about the scalability of .NET products by the company owner. In response, I inquire about the specific aspect of scalability they are interested in. If the concern is about handling sudden surges in traffic, I affirm that .NET is indeed scalable, especially with the implementation of group health checks. This ensures automatic scaling without manual intervention, providing convenience.
Contrary to common misconceptions, I emphasize that the performance of .NET is typically not hindered by processing power but by factors such as disk I/O and database operations. Scaling the database differs significantly from scaling processing power, as it involves handling transactions, open transactions, and conflicting operations. If isolation is not well-implemented, issues may arise. For instance, a database like SQL Server, while appearing appealing a decade ago for its tools and affordability, presented challenges in terms of scaling compared to Oracle. Understanding these nuances is crucial for making informed decisions about scalability.
How are customer service and support?
Regarding customer support from Microsoft, I can say that when we documented issues and submitted tickets, Microsoft was responsive and open, even without direct contact. Working with Microsoft has generally been positive, and their strategic direction is something we have followed closely. Microsoft's commitment to evolving their product has been beneficial for us, even though the unpredictability of their decisions can sometimes pose challenges. In a small company like ours, adapting to changes becomes more complex, especially considering the project size.
As a company, we are also involved in software development for the European Commission, where the strong requirement is to use software from the .NET world. The challenge arises when dealing with Java in parallel, as its community processes add an element of unpredictability. Managing a team that can swiftly adapt to changing technologies is an advantage, but it requires time and effort. The unpredictability of Java's direction contrasts with the more foreseeable evolution of .NET.
Which solution did I use previously and why did I switch?
We have had experiences with Oracle as well as .NET, specifically with the Silverlight framework, though that was some years ago. Silverlight, while not inherently bad, tends to be criticized, and I often advise people to understand its origin as the Presentation Foundation Everywhere (PFE), indicating its intention to provide a unified UI across various platforms. However, due to various challenges, it was eventually phased out, and Silverlight became obsolete. We once had a product active on SolarWinds 3.5, transitioned to SolarWinds Sorin, but unfortunately did not survive beyond Silverlight 5.
How was the initial setup?
Yes, it is easy. .NET has expanded its scope significantly. It's worth noting that while many may mention .NET, not everyone truly comprehends its intricacies. Nowadays, people often focus on microseconds, assuming they grasp the technical aspects, which can be misleading.
Although Continuous Integration and Continuous Deployment (CICD) may seem attractive for automated deployment, the allure of the cloud has somewhat overshadowed the significance of meticulous deployment, as it's often perceived as someone else's responsibility. This shift in perception, coupled with tools like CircleCI, requires a closer examination of their efficiency compared to more conventional platforms like Azure. Understanding the true speed and efficacy of these tools is imperative for making informed decisions.
What about the implementation team?
The shift in the deployment and maintenance is evident, as manual installations are no longer the norm. Intelligence is now directed towards automation, emphasizing the importance of testing. Once this process is completed, confidence in the system's functionality increases, alleviating concerns about manual loading and ensuring an automated and efficient workflow.
Everyone in our organization follows the mindset of having our proprietary tools. The majority of our internal tooling is developed in-house, making us predominantly a .NET-centric environment. While it's true that we also provide Java solutions, most of our confidence lies in .NET due to its reliability. Reflecting on past experiences, there were initial concerns about how autonomously and optimally .NET could run, especially in terms of memory management. However, over time, particularly with the introduction of .NET Core, those concerns have dissipated, and I am now completely confident in the reliability of .NET.
What's my experience with pricing, setup cost, and licensing?
In the interim, there's no need to purchase videos for viewing. Microsoft has made significant moves in the .NET space, starting with their response in Visual Studio Code and now providing Visual Studio entirely for free. This is a notable shift from the past when we used to pay substantial amounts for technical subscriptions. Previously, a group of ten developers could cost several thousand dollars annually for licensing. However, the current trend is to offer these tools for free to maintain their dominance in the developer market. The market dynamics have changed, and now developers can freely download Visual Studio, making it a preferred choice over other paid options.
What other advice do I have?
It has been around for about three months, and I've had a chance to delve into the capabilities. As for the .NET Framework, it's advisable not to use it anymore. While there might be some exceptional cases, I don't consider myself an expert on .NET Framework. The trend is shifting away from Framework towards .NET Core and now .NET 5. I would anticipate platforms to adapt and run seamlessly on the newer versions. Transitioning from Framework to newer versions might not be straightforward, particularly in terms of setup and configuration. Working with .NET Core involves a different approach, especially when dealing with configurations and influencing the product's behavior externally.
Switching everything from Framework to .NET Core in a short span may not be feasible, and even if you plan to do so, existing products and customer preferences may necessitate keeping the older products alive. Users may inquire about their familiar products, and it's essential to maintain support for them. Despite these challenges, I find .NET Core, particularly version 8.5, to be highly commendable. It excels in various aspects and is a robust platform, rating it 8.5 out of 10.
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Buyer's Guide
Download our free Microsoft .NET Framework Report and get advice and tips from experienced pros
sharing their opinions.
Updated: November 2024
Product Categories
Application InfrastructurePopular Comparisons
IBM DataPower Gateway
NGINX Plus
IBM WebSphere Application Server
Apache Web Server
Oracle SOA Suite
JBoss Enterprise Application Platform
IBM WebSphere Message Broker
WebLogic Suite
Magic xpa Application Platform
SAP NetWeaver Enterprise Portal
Zend PHP Engine
Windows Process Activation Services
Buyer's Guide
Download our free Microsoft .NET Framework Report and get advice and tips from experienced pros
sharing their opinions.
Quick Links
Learn More: Questions:
- Do you think there is a minimum critical threshold that justifies the deployment of the System Center suite?
- When evaluating Application Infrastructure, what aspect do you think is the most important to look for?
- What application infrastructure solution do you recommend?
- What do you use application infrastructure solutions for in your organization?