4 ms·
I think that's unnecessarily angry at Microsoft. Of course they have to sell something. They offer some great tools for free (as in free speech) and you still c
by xps 8y ago
I think that's unnecessarily angry at Microsoft. Of course they have to sell something. They offer some great tools for free (as in free speech) and you still complain that their MVPs promote their own paid services at their conferences?
- dustinmoris 8y agoWell Visual Studio is certainly not free (maybe the community edition) and therefore I don't think I deserve to be littered with Azure ads all over a tool which costs already a lot of money. However, my main complaint is not that they advertise their own products, which is absolutely fine, but the way how it is done is starving the .NET community from anything else but Microsoft. The way how all their .NET products are extremely tightly linked to a point where wanting to use something else but Azure or VSTS becomes almost unnaturally difficult, which is what I really dislike. For example, if I look at a nodejs product then I see documentation for all various integration points, with AWS, GC, Azure, etc., but when I look at a Microsoft library there is no documentation or integration points out of the box but Azure and that has a ripple effect on the rest of the community. Every library author only builds their tools optimised for Azure and don't even think about what else there is, which is quite upsetting.
- bonesss 8y agoI don't think this issue is unique to MS, but thanks to their historical business markets (Office, small-to-medium businesses), and product portfolio the sense is that many Azure services are spider-webs of related products. That feeling that you can't just use a component in isolation, but that other tightly bound products are often the only way to serve reasonable services. They've made substantial efforts and improvements, so credit where credit is due. I think the broader .Net community needs to pull their thumbs out and take a hard look at why C# OSS has struggled the way it has, and how the ecosystem should be maturing. The cross-platform, OSS-friendly, orientation of the F# community has been much more reflective of my technical concerns, platforms, desires, and predelictions.
- mattmanser 8y agoI use git inside VS, it's fine, I've a few minor quibbles, but all the GUI git tools I've used are a bit shit (tortoisegit, GitHub for Windows). The built in support for GitHub is fine, so you can stop moaning about VSTS. Also, you don't have to use azure or SQL server. You can close those tools and, poof, it's done. One of the more ironic things is that there's a growing dissatisfaction with MS precisely because they're making it more flexible. Lots of people just want stuff that works with no config, no mucking around with command line tools. That MS are proudly going 'run dotnet blah' is actually, in a lot of ways, a bad thing. Why can't I just click a button, and why clutter tutorials with lots of pointless command lines? The 'no hassle, no fucking around with shitty console tools' programming alternative is going away.
- alkonaut 8y agoGithub was one of the best integrated services in VS even before ms bought it. But that's beside the point- the point is this: it's on Google and Amazon to make the development story good for their platforms. So Google and Amazon should be scrambling to perfect the deployment plugins for VS. True, microsoft is SELLING (some editions of) VS - but there I'm sure they weigh both demand from customers AND the potential earnings. If AWS and Azure features are equally in demand, of course they will focus on their Azure features first because they have benfits for Ms.
- scarface74 8y agoWhy look at Microsoft documentation then? AWS provides excellent documentation and plug ins for Visual Studio.
- tamrix 8y agoSo you want other cloud providers to be a checkbox in the installation rather than a checkbox under extensions and you want to copy the documentation from other cloud providers onto msdn? That's a pretty easy ask.
- bonesss 8y agoIMO the issue isn't MS, really (though parts of the org are still worthy of strong skepticism), it's the cultural phenomenon of a certain generation of developers who essentially eat, breathe, and die by Microsofts product cycles... There are those argued that any innovation is unneccesary until MS launches a product for it, when it becomes a "must", ad nauseum. I'm talking about the developers who never discovered ORMs until MS pushed theirs, who let their products languish for years waiting for MS to address issues, and move lock-step with them on all fronts.... You've seen major motion with "Alt.NET" groups, and some pretty major internal revolutions based on the displeasure of community technical leaders (and their willingness/needs to hop off of MS solutions), that stem from this dissonence. It can create some cross-purposes in their tooling when they're aiming at conservative C#'ers who want a unified MS experience and look at no other technical sources... Especially for the Enterprise devs, cloud-native architect, and cross-platform engineers who have clear needs that don't jive with those assumptions. F# and .Net Core are the only reasons I'm still on their stack. It's a dream to work with, and addresses critical issues of cloud and distributed engineering that previously would have excluded MS and .Net from the discussion. Particularly with scalable cloud systems, OS licensing fees are often show stoppers for NGOs, non-profits, academics, and researchers
- scarface74 8y agoI'm talking about the developers who never discovered ORMs until MS pushed theirs Because every ORM sucks outside of the ones built on top of Linq. Linq is great because it makes a query language a first class citizen and it decouples writing the query and the implementation.
- Jallal 8y agoIn all fairness, you should consider Entity Framework, not Linq, when speaking about ORMs. And the first versions of EF sucked compared to the others frameworks that were available at the time.
- scarface74 8y agoIt’s not just about EF. The beauty of C# and Linq is: Linq => expression trees => provider => native query language of data source => data source. Written correctly, you can pass expressions around like: repo.Find(c => c.age > 65 && c.gender == “male”) And the expression can be interpreted at runtime by either EF creating native sql or the Mongo driver creating a native MongoQuery or even an in memory List for unit testing. No matter how good another ORM may be for another language, what made C#s implementation better was Linq + expression trees.