6 ms·
I feel as though, with C#, Microsoft's brilliance was to get a number of very clever people in a room together (Anders Hejlsberg, Eric Lippert, etc). Somebody
by jmkni 9y ago
I feel as though, with C#, Microsoft's brilliance was to get a number of very clever people in a room together (Anders Hejlsberg, Eric Lippert, etc).
Somebody at Microsoft said to themselves, these guys are clearly brilliant, let's see what happens if we hire them all, task them with creating a new object oriented programming language, pay them a tonne of money, and see what happens.
C# was the result, and it's awesome!
- seanmcdirmid 9y agoDon’t forget former Arhus professor Mads Tergesen, he’s been the lead C# designer for sometime now.
- na85 9y agoThe problem with C# for me is the fragmented ecosystem that's hard to navigate, coupled with dense and hard to find documentation that seems to be spread out over 14 different msdn domains and GitHub projects. CoreFX? CoreCLR? No idea what these are or what they're for. And don't get me started on the dumpster fire that is roslyn. I've tried no less than 10 times over the last few months to get "intellisense" working in emacs via roslyn and it has never worked. C#'s a cool language that I want to like but it's just so much work to get started with.
- lwansbrough 9y agoThere are many more names for things in C# than what you really need to be aware of as a C# developer. Want to write C# that targets Linux? Download the .NET Core SDK. Simple as. Everything else: .NET Standard, .NET Framework, are just names used by the .NET contributors to keep things straight in their head, but you honestly rarely deal with that stuff if you’re starting fresh with .NET Core. If you’re trying to write C# in emacs you’re doing it wrong. C# has probably the best tooling in the world if you embrace it.
- qdot76367 9y agoAgreed. I basically live in emacs, but for C#, I'm in VS 2017 community and it works great.
- Pxtl 9y agoC# has a decade and a half of hyper-fast Microsoft-funded idea churn behind it, so I agree that it can be super confusing. It's very hard to distill it down to the "modern" stack when every Google hit gives you piles of results that are painfully out of date. I love c#, but I've been using it since '05. I don't envy newcomers.
- sauliusm 9y agoWhat is it with using C# w/ emacs that is wrong? Compared to say development of Java or python code on emacs? Although it doesn't have all the tooling present from say VS, it is still managable with refactoring, autocompletion and some more functionality working already. I am the current maintainer of omnisharp-emacs and would love to know out what are the most pressing problems people encounter using C# on emacs via omnisharp - https://github.com/OmniSharp/omnisharp-emacs https://github.com/OmniSharp/omnisharp-emacs
- lwansbrough 9y agoI've never been one of those guys who gets super into his editor, as I don't see it as being the driving force in productivity or efficiency. VS Code or VS Community are my go-to, because they have all the features that are possible. I'm not being pulled away to find a solution to a solved problem: it's there, and it's solved. How does time travel debugging work in emacs?
- sauliusm 9y agoAh, .NET debugging is not implemented in omnisharp-emacs as debugger service is not provided by the underlying omnisharp-roslyn project (the parent language server project). So you are expected to download VS Code, use sdb or something else if you want to have step-by-step debugger...
- shadowmint 9y agoTo be fair, C# is a chore without good tooling. I used to use omnisharp with atom and frankly it was just rubbish. It crashed all the time and required constant restarts, and (still) takes a massive amount of time (and memory) to start. I went back to using golang, and didn’t regret it for a second. The tooling in go is excellent and you can use a simple editor for many things. That’s really compelling for people. So... to be fair, if you were to idly pickup .net core as a linux user, and expect vim or emacs to do the job, you’ll find it a terrible experience. ...but, with the right tooling, it can be really great. vs, cscode or rider (not free) make using c# a pleasure to work with. The dotnet cli tool is still quite terrible (how do you install dotnet watch again? why does it take 25s to restart a simple web app? You think git has obscure inconsistent incomprehensible command line flags...? ha! remind me why ‘dotnet build’ is running like 50 shell commands from the .csproj file...but only in this configuration you didn’t specify excplictly? surprise!) ...but its usable, and its slowly improving. I feel like a lot of C# enthusiasts shoot down complaints as people being rubbish, or trolling or ‘doing it wrong’; but the reality is c# on a platform other than windows is new, and still pretty raw. Pointing people in the right direction (you do need a proper IDE) and acknowledging that doesn’t suit everyone is better than telling them they’re ‘doing it wrong’; thats just jerk behaviour and comes off as fanboiism.
- jackmott 9y agoCan you explain why you need a good ide for C# as compared to other languages?
- paulddraper 9y agoC#'s bread-and-butter was desktop apps and then web servers. I've yet to see good Windows GUI support for Go.
- pjmlp 9y agoLet me know when Go has something comparable to Windows Forms, WPF, UWP, Xamarin.Forms, Avalonia. Oh, and when I have to use Go, I find a chore to write generic code as if I was back in 1992 using Borland C++ 2.0 for MS-DOS, with pre-processor based code generation for BIDS or still using Java 1.4 (EOL in 2008).
- rrhd 9y ago> dumpster fire that is roslyn you can't get your editor working therefore Roslyn is a dumpster fire. Great logic.
- sauliusm 9y agoHey, current maintainer of omnisharp-emacs here. Would you be willing to submit an issue to github about the problems you have encountered (if not already?) I would love to make the experience of using C# on emacs with omnisharp-emacs easier for people.
- erikbye 9y ago> ... Coupled with dense and hard to find documentation that seems to be spread out over 14 different msdn domains and GitHub projects. docs.microsoft.com is steadily improving this. > I've tried no less than 10 times over the last few months to get "intellisense" working in emacs via roslyn and it has never worked. https://github.com/OmniSharp/omnisharp-emacs https://github.com/OmniSharp/omnisharp-emacs Are you not using this? Works great for me. If you want getting started to be less of a chore use VS Code, VS, Rider, VS for Mac, Xamarin Studio, or Monodevelop.
- alkonaut 9y agoThe fragmentation was really what allowed the new breakneck pace of development. I’m a c# developer full time since 1.0 and I have huge problems following even though I’m 100% on the “old” (desktop) frameworks. I’m hoping that things will slow down and converge again in a while.
- will_hughes 9y agoIt probably seems fragmented because it's easy to get things confused, and Microsoft isn't making life easy during their journey in open sourcing the whole stack (or at least significant portions of it). There's the languages (C#, F#), there's the runtime (CLR - Common Language Runtime), and then various frameworks (including the base framework, and the ASP.NET framework). Then there's the difference between the original variants of these and the new 'Core' variants. Plus there's various other related bits like the .NET Standard projects which are meant for library developers to target to make library cross-platform portability easier. As for difficulty getting intellisense working via emacs - that's certainly been something demoed, but it's not really a well tested use-case at this time. If you're coming at it from a non traditional (Windows) developer perspective - then you're looking at a massive ecosystem in flux and in migration from being a primarily single platform to multiplatform.
- pointernil 9y agoSure. Sharing mostly the same view of this (hi)story... but: did those guys leave? lost their muses? What happened besides maturing and "standards"-lockdown... outside of some smaller bubbles and marketing gigs the whole eco-system seams stagnant and mostly irrelevant to today's internet/web development... despite so obvious interest of the company. What happened? What did not happen? (besides mono and unity)
- styfle 9y agoAlso TypeScript and Turbo Pascal and Delphi. > He currently works for Microsoft as the lead architect of C# and core developer on TypeScript. https://en.wikipedia.org/wiki/Anders_Hejlsberg https://en.wikipedia.org/wiki/Anders_Hejlsberg