Ensemble from global company InterSystems was a middleware and application infrastructure offering. It is a legacy product, now replaced by InterSystems IRIS.
N/A
.NET
Score 8.5 out of 10
N/A
Microsoft's .Net is an open source, freeware application infrastructure.
If you want to connect different environments, laboratories, companies, etc. Each one uses its own system and services to transmit information. Instead of having to make costly developments for each of the companies to connect, with a single common process many companies could be integrated in very short times. It offers a wide range of common architectures and methods that reduce development time by almost 75%. You do not need to add databases, complex automation connection systems, etc., ... everything is in the same application.
If you need to build anything from a quick-and-dirty GUI utility to a full-fledged desktop application, .NET is the way to go. It doesn't require extensive knowledge of the languages as Visual Studio is extremely helpful in its autocomplete, refactoring, and prompts, and lets you build out your solution easily without worrying about the details of [the] setup and boilerplate.
Easy to use: The simplicity of its programming language allows fast learning. Visual environment to generate complex code.
Robust: A fall of the system will not be a problem. Never again will information of the transactions in progress be lost. Never more messages lost.
Connect to the world: The most popular connection is possible to implement quickly. FTP, File folder, TCP, SMPT, REST.... all method are ready to use. Only define "where" and "how"
Given that Ensemble and Cache are one of if not the only true fully object orientated database/development technologies for massive transactional data systems its customizability is extensive and it just comes down to the creativity of the developer to get the products to pretty much do whatever they want to do with it. However, this is not necessarily obvious to newcomers to the technology.
The developer community could do with greater participation from the software developers/application specialists and engineers within InterSystems.
More extensive documentation and greater access to proven working solutions particularly in the realm of some of the lesser known or new and upcoming technologies.
.NET is heavily Microsoft Windows oriented, and while .NET core tried to resolve that with MacOS and Linux support, .NET Core is still waiting for wider adoption.
While free for small projects, additional features for big projects can be a little expensive.
Can be resource-heavy upon deployment. We continuously have our more senior staff optimize the code of our junior developers for performance. Other languages are a little bit more forgiving in comparison.
.NET frameworks are fantastic overall. There are no limitations to what you can accomplish with it. The most important part is that you'll have access to developer community support and that .NET is always being improved every month. Be it in web applications, back-end servers, or integrations, .NET enables developers to do it all.
I have yet to raise an issue with InterSystems WRC that they have been unable to resolve to my satisfaction in the 20+ years that I have worked with their products.
As Microsoft Gold Partners, we do have access to a lot of additional information and support from Microsoft. Still, the availability of "open and free" documentation, community, and enthusiasts of the platform is vast. Added to that, the quality of resources provided for all the Microsoft ecosystem is very impressive.
There is just no comparison. Try it and see for yourself. Furthermore based on information from software houses I have interacted with over the years it far out paces products like WebSphere.
If it was up to me, I'd rather use something like Node.js hands down. Things are simpler, there is no gigantic convoluted class hierarchy to learn like there is with .NET. Also Node is really fast and lightweight. I find .NET these days to be a totally solid product and it certainly has its place - but it seems a bit dated and boring to me now.
I was able to develop a fully functional integration engine linking pharmacy systems with pharmacy robotics in less than three months in comparison with the year that the previous software development company had taken to develop a solution that was incomplete and did not work using Microsoft technology.
The engine I developed was so stable and adaptable that it quickly replaced the equivalent engine supplied by the robot manufacturers own software development team.
It has proven to be so effective that it is now the product of choice for future developments within the organization replacing Microsoft technologies which were the previous company standard.
We are slowly switching from a dying programming language to .NET because it was too expensive to hire developers for the old programming language. There are way more .NET developers around and an amazing community which has allowed us to keep our costs low.
Our development time has been greatly reduced because now we're not developing applications for each OS platform. We do it once and deploy accordingly.
.NET Core has been a big mindshift in terms of how to program. The learning curve has been quite high for existing .NET developers.