10 ms·
I don't dismiss C# developers, I'm just glad I'm not one anymore.
by megamark16 15y ago
I don't dismiss C# developers, I'm just glad I'm not one anymore.
- MartinCron 15y agoDo you mind if I ask why? Not being defensive, just curious.
- llimllib 15y agoWell, I'm not the gp, but I am a former C# guy who's happy to be out of that world. 1) I dislike C#'s types; they're neither as strong and intelligent as a ML/Haskell language nor as convenient as a Python/Ruby family language. 2) I much prefer the sense of design displayed by Python and Ruby open source projects over C#. (Not that there aren't issues there!) 3) I hate Visual Studio. Nice debugger, crappy interface for writing code. Horrific user interface design for the most part. (At least back when I was writing C# back in 2009!) 4) I hate Windows. Linux and Mac are far more developer friendly. I hated dealing with Cygwin to get some sort of reasonable (crappy but tolerable) command line environment. 5) I love git. Until fairly recently, git was not available and stable on Windows. For it and for many other bits of software, windows is a second class citizen. Shall I go on? Because I could. But I'll leave it at 5 for now.
- MartinCron 15y agoThanks for the thoughtful reply. I've absolutely felt your pain. Some of those things have maybe improved (I use git every day, I love my PowerShell, and Visual Studio + ReSharper is glorious once you tell some of the cruft to stay out of your way) but it's still a long way from perfect.
- DaveMebs 15y agoIt's amazing how many people either dismiss PowerShell out of hand because it's different, or don't even think about it when talking about Windows commandline support. Getting .NET objects returned, rather than piping text around is awesome. So is having an IDE specifically for writing PowerShell scripts. I'm still learning PowerShell, and love bash, but as powerful as bash is, in some ways it feels very primitive in comparison. If PowerShell 15 years old when bash was released, would anyone consider it better than PowerShell?
- llimllib 15y agoPowershell did not exist when I was a C# programmer. Not saying it would have made a difference either way, just that I couldn't have mentioned it. Anyway, I don't think bash/zsh is so great, rather the tools that have grown around them for the last 20 years make them the best available option. Powershell may be nice, but it's got a long road to hoe.
- pjmlp 15y agoTrue. It has a steep learning curve, as one needs to learn a new set of commands, but once you start getting it, it is great. I just have two complaints with it: - the stupid ps1 extension; - commands are verbose when comparing with other shells
- markkanof 15y agoAgreed that PowerShell really does make command line work on Windows much more pleasant than the old DOS prompt. I just discovered a PowerShell module for working with Git (https://github.com/dahlbyk/posh-git https://github.com/dahlbyk/posh-git). It shows status info right in your prompt line and does tab completion of git commands and branches.
- jbrechtel 15y agoCrazy. I could have (honestly) written this exact same post, timeline and all.
- lusr 15y agoAs someone who's more than happy with C#, I'm wondering if there's a world out there I'm missing but I can't really connect with what you're saying. 1. "Strong and intelligent"? "Convenient"? 2. "Sense of design"? My current side project includes a web scraper which uses the following open source projects: AutoMapper, CsvHelper, HtmlAgilityPack, Twitter Bootstrap, jQuery, Modernizer, Moq, NLog, MongoDB C# driver, PetaPoco database driver, Rx extensions, knockoutjs and structuremap. 8 of those are .NET specific. Because of their excellent design, I have probably no more than about 30 lines of code hooking up to them (where I use interfaces) and maybe no more than 100 lines of code total utilizing them directly. Yet they conceal YEARS worth of work I would have to do myself. 3. Have you ever used Resharper? I've never heard of anything equivalent on any platform for any IDE (except for IntelliJ, developed by the same company, Jetbrains). 4. I'm fine with Windows. I find both Linux and Mac less developer friendly. I'm fine hosting my services on Linux and interfacing with them from C#, though, because it's a great server operating system. I've been using computers for 20 years and I'm happy to be away from the command line 99% of the time. What do you like about it? 5. Git Extensions + Git Source Control Provider are a completely integrated and free Git experience on Windows.
- sausagefeet 15y ago> 1. "Strong and intelligent"? "Convenient"? Not a C# user, but few languages of the strength and intelligence of types in ML. Covariant arrays (which C# presumably adopted for the sake of Java programmers) moves an easy, and obvious, compile time type check to runtime. The type inferencing in C# is very weak relative to ML/Haskell. The type syntax is generally more lighweight in ML/Haskell as well. For example a function that takes a list of some type ('a) and returns the head of the list if it exists or None if it doesn't looks like: val hd : 'a list -> 'a option Of course, all if this works in unison with other type functionality that is far more lightweight in ML than C#. The function above is only really so succinct because I have powerful variant types and pattern matching on them. I think they go hand in hand because using an option-type is somewhat useless if I don't have something like pattern matching to access its state.
- lusr 15y ago
- messel 15y agoSame boat, but still wrestling with windows at work. I've got a workable configuration with Cygwin, and mingw32. Hey Visual Studio's IDE (2008) may be full of cruft but the debugger isn't too bad. Vs2010 feels broken, I gave up creating projects in VS, and now use a simple combination of ruby and cmake for creating solutions/projects. http://www.victusspiritus.com/2011/10/30/an-elegant-ruby-script-for-building-complex-c-projects-using-cmake/ http://www.victusspiritus.com/2011/10/30/an-elegant-ruby-scr...
- noveltyaccount 15y ago4) Powershell! Sweet mother of Scripting Gods, Powershell! As a language it's what Bash should have been. Bash is better in some usability senses like tab completion, but Powershell operates with pipelines of .NET objects instead of pipelines of text.