4 ms·
Isn't that fantastic? The whole idea that developer productivity (and thus, tool support) shouldn't be a part of programming language design has been flawed fro
by skrebbel 8y ago
Isn't that fantastic? The whole idea that developer productivity (and thus, tool support) shouldn't be a part of programming language design has been flawed from the beginning and I'm happy times are finally changing.
- seanmcdirmid 8y agoC# also has always been done like this, but 20 years ago only Microsoft could pull that off.
- pookeh 8y agoThe father of C# also created Typescript and we now see the same level of language tooling support OOTB with the Typescript compiler. It's a fantastic initiative -- in such a short time we see many IDEs support consistent auto-complete, refactoring and so much more.
- rpeden 8y agoHe also created Turbo Pascal and Delphi, which both had pretty great tooling support in their respective heydeys.
- jillesvangurp 8y agoC# emerged around the time that Java IDEs emerged. Basically, MS did a decent job with the C# language and tooling. However, it was very much inspired by Java, Java IDEs and Microsoft's own Java IDE (Visual J++). I think IBM was first with supporting refactorings for Java in Visual Age and Eclipse. Refactorings themselves emerged out of the Smalltalk community. MS was very motivated to support that for C# as they were getting worried about losing marketshare to Java at the time and because J++ got a lot of negative press (compatibiltiy issues, vendor lockin, the usual MS stuff). In the end C# was held back by the same factors that held back J++ and it took them until very recently to openly support it on platforms other than Windows.
- seanmcdirmid 8y agoWhy C# exists isn’t very relevant to that, Microsoft actually made the IDE team a first class member st the table during C#’s design and evolution. Such and such feature thought to be difficult to tool even if it can compile? Well, fix it or cut it. Microsoft intellisense (aka code completion) was truly a first back in 1997 (then just for VB and C++).
- jillesvangurp 8y agoI think they were very much inspired by Delphi and other Borland products at the time. Delphi was pretty awesome in 1996/1997.
- dragonwriter 8y ago> I think they were very much inspired by Delphi and other Borland products at the time. Inspired by is an understatement, the connection is more intimate: https://en.m.wikipedia.org/wiki/Anders_Hejlsberg https://en.m.wikipedia.org/wiki/Anders_Hejlsberg
- pvg 8y agoThere were zillions of language-specific IDEs in 2000 when C# was announced.
- seanmcdirmid 8y agoYes, but none of those IDEs were developed concurrently with the language by tightly integrated teams (well, except smalltalk).
- repolfx 8y agoYes they were. Delphi and Visual Basic are the most obvious examples of IDE-centric languages. You couldn't even buy the compiler separately from the IDE.
- seanmcdirmid 8y agoVB comes from the same lineage. Heck, even delphi does, obviously.
- pvg 8y agoIf that was the case for C#/.NET, they really didn't have much to show for it at time of release. IntelliJ IDEA that came out a year later was a fancier, more 'integrated' IDE. But beside smalltalk, there were lots of others. All the commercial Lisps, Dylan etc. Somewhat more mainstream-ish - the NeXT Objective C environment is a good and much earlier example. There were lots of interesting things about .NET when it came out, the IDE-ness of it doesn't strike me as one of them at all.
- rooam-dev 8y agoSure, as long there isn't much to improve in the language itself.
- dakna 8y agoI started programming with Turbo Pascal https://en.m.wikipedia.org/wiki/Turbo_Pascal https://en.m.wikipedia.org/wiki/Turbo_Pascal and as far as I remember I never had to leave the IDE. The step-by-step debugger felt like magic.
- ethelward 8y agoThat's true, Turbo Pascal was awesome. But to stay realist, it was rather an exception than the rule at the time.
- wenc 8y agoThere was also Turbo C/C++, Turbo Basic, Turbo Prolog. On the Microsoft side, there as Quick C, Quick Basic, etc. IDEs were the norm rather than the exception in the 80s and 90s for DOS machines. Writing code on DOS with a plain-text editor was a little unusual, whereas on Unix it was a norm.
- repolfx 8y agoYes. This is one of the reasons that Windows stomped UNIX everywhere outside of big iron servers. Windows developers had access to much more advanced development environments that were very productive compared to vim+c and maybe a buggy C++ compiler if you're lucky, which is what UNIX vendors were offering at the time. Visual Basic, Delphi, MS Access, Visual FoxPro, Visual Objects, Visual Studio, C++Builder, Macromedia Flash, even obscure stuff like REBOL - all supported very fast iteration on client side business CRUD apps that connected to a database. It's only in recent times that we lost this and came to believe that buggy bloated text editors implemented in HTML plus a giant pile of pre-processors in which everything is coded by hand and the frameworks are obsoleted every six months is a good developer experience. Compared to what we had in the 90's the level of polish and integration is far, far lower in modern toolchains.
- tralarpa 8y agoIt's one of the reasons I like Java. People call it a "verbose" language, but it's such a simple language syntax-wise that the IDE knows most of the time exactly what's going on in the editor window. Static typing helps, too, of course. I remember working with C++ in Visual Studio when that new refactoring plugin became popular (tomatoe something something? later bought by Microsoft) and although the plugin tried its best, it often stopped working with files with a lot of ifdefs and macros. B removed some features from BCPL that were too expensive to implement. I never understood why they didn't continue that idea in C by applying it to the syntax as well. Wirth knew what he was doing.
- misterbowfinger 8y agoI do think it's great, but I'm worried that as Kotlin grows, so does Jetbrains hold on IntelliJ and the IDE market. IMO, any change that benefits IntelliJ should theoretically be applicable to NetBeans. Maybe it's already this way? I'm really not sure, but I'd appreciate a NetBeans or IntelliJ dev to clarify. It'd be awesome if these changes were done collaboratively.
- yawz 8y agoIntelliJ is "the" IDE market, but not the entire ecosystem.