News for hackers. Stuff that matters.
Re:Introducing .NET Standard by arenaninja on Monday September 26, 2016 @01:12PM (#12583621)
In the last 10 years I wouldn't have bet on C# to be the language to be the most excited about, and yet here we are. Kudos for dealing with fragmentation
Re:Introducing .NET Standard by 2bitencryption on Monday September 26, 2016 @01:28PM (#12583767)
I started using Xamarin to develop an Android app, expecting the Xamarin platform to be some gross in-between which only exists to squeeze just a few more developers onto C#.

But, no joke, it's a BETTER experience than Android Studio. I had a much better time using Xamarin Studio (on OS X) and Visual Studio with Xamarin (on Windows) than I ever did with Android Studio. And not just because of the tools: C# provides so many great features that make Android development awesome on it. And the API is essentially the same as the true Android Java API; I found myself googling "start an activity on Android" rather than "Xamarin start an activity on Android" because it's all done the same way.

I normally don't obsess about my code looking clean and beautiful, but when I wrote my simple app in C# it shorter and easier to read than when I did it in the Android Studio.

Re:Introducing .NET Standard by pjmlp on Monday September 26, 2016 @02:04PM (#12584109)
I still don't understand how Microsoft was able to provide a better debugging and tooling experience for Android, than Google itself for their own OS, although Android Studio 2.2 finally seems to be usable.
Re:Introducing .NET Standard by Delmania on Monday September 26, 2016 @02:39PM (#12584436)
> I still don't understand how Microsoft was able to provide a better debugging and tooling experience for Android, than Google itself for their own OS, although Android Studio 2.2 finally seems to be usable.

Visual Studio was first released in 1997, the company has 20 years experience in designing and building tooling. I believe they also have a very firm dogfooding policy, and some very intelligent people work there.

Google changed the search engine landscape and created the only competitor to the iPhone, but building tools and tooling is definitely not a key strength.

Re:Introducing .NET Standard by pjmlp on Monday September 26, 2016 @02:51PM (#12584532)
Surely a few of those PhDs able to draw inverted tree algorithms on the whiteboard should be capable of producing a proper IDE that doesn't hang the computer all the time, an OS simulator and get their mind around how to have an actual working build system for NDK users.
Re:Introducing .NET Standard by em500 on Monday September 26, 2016 @03:08PM (#12584685)
But Android Studio is basically IntelliJ IDEA, which is not that much younger at 15 years.
Re:Introducing .NET Standard by mattmanser on Monday September 26, 2016 @03:54PM (#12585014)
The parent's point was that MS have the institutional memory and expertise that you don't get by simply forking someone else's codebase.
Re:Introducing .NET Standard by geldan on Monday September 26, 2016 @02:45PM (#12584482)
Except browser tooling, where they are far ahead of others.
Re:Introducing .NET Standard by mattmanser on Monday September 26, 2016 @03:58PM (#12585052)
Compared to VS, chrome dev tools are bloody awful.

There are some incredibly annoying basic missing features in Chrome dev tools. Like you still can't just hover over a variable, you inexplicably need to highlight it. Functionality that IE dev toolbar had 10 years ago. And don't even get me started on their shitty black boxing solution, something that should be as easy as right clicking on the file you want to black box, but no, time for some bloody regex foo.

It's better than Firefox + IE, by it's not better than proper IDEs by a long shot. And it's got "designed by a programmer" written all over it, the UX is awful.

Re:Introducing .NET Standard by oblio on Monday September 26, 2016 @05:25PM (#12585714)
Well, on the other hand, while debugging, if I recall correctly, in Eclipse you can select an (almost) arbitrary section of code and evaluate it. In Visual Studio for the same thing you have to use the clunky "Watches" feature. So even VS can improve.
Re:Introducing .NET Standard by dsp1234 on Monday September 26, 2016 @05:46PM (#12585881)
In Visual Studio for the same thing you have to use the clunky "Watches" feature.

VS has the 'immediate window' which allows you to execute (almost) any statement within the context of the local scope, including intellisense and autocomplete.

Re:Introducing .NET Standard by tracker1 on Monday September 26, 2016 @05:55PM (#12585924)
Caveat to the use of lambdas... Where, ironically the last time I used .Net was what I needed to inspect the most were subsets of collections or the results of other queries... I always used the function methods for linq over the language extension.
Re:Introducing .NET Standard by Locke1689 on Monday September 26, 2016 @11:32PM (#12587271)
Lambdas are supported in the debugger as of Visual Studio 2015 :)
Re:Introducing .NET Standard by tracker1 on Tuesday September 27, 2016 @02:00AM (#12587742)
Thanks.. can you tell I haven't done nearly as much .Net for the past couple years? ;-) Though the .Net core stuff has me relatively excited for the platform again.
Re:Introducing .NET Standard by alistproducer2 on Monday September 26, 2016 @02:30PM (#12584362)
For me, the biggest downside to AS is its reliance on graddle. I used AS pretty extensively and I honestly feel like the Eclipse workflow was much better.

I'm curious about Xamarin. I've been weary of cross platform tools since the days of trying to use phone gap but I understand the current gen of tools are much better.

Re:Introducing .NET Standard by mattleibow on Tuesday September 27, 2016 @12:15PM (#12590712)
Xamarin does not "wrap" the API in the traditional, it just provides a binding - calling a method in C# actually calls the underlying native method. The classes are just proxy classes and do not actually have anything more/less that does not exist in native code.
Re:Introducing .NET Standard by Nullabillity on Monday September 26, 2016 @05:04PM (#12585542)
Did you try Kotlin?
Re:Introducing .NET Standard by 2bitencryption on Monday September 26, 2016 @01:30PM (#12583787)
It looks like the old way of "MAKE them use it by making ourselves the only option" has given way to "Make them WANT to use it because if we don't they'll just use something else."

I am okay with this.

Re:Introducing .NET Standard by bopcrane on Monday September 26, 2016 @01:15PM (#12583657)
I hope 'new Microsoft' continues to embrace open source and cross-platform - I'm very impressed and never would have imagined this direction a decade ago, either
Re:Introducing .NET Standard by drawkbox on Monday September 26, 2016 @02:08PM (#12584141)
They will, because ultimately their new OS for developers is Azure. They do push you towards that but it is actually a good cloud system. Microsoft has moved lock-in further up to the cloud (just like everyone else AWS, Google) and the tools are so nice once visual studio is truly cross platform (not just vs code -- though nice competition to sublime/atom/etc) then a tool lockin.
Re:Introducing .NET Standard by tracker1 on Monday September 26, 2016 @05:56PM (#12585940)
I can imagine VS Code expanding to cover a lot of the VS use case via plugins though...
Re:Introducing .NET Standard by david-given on Monday September 26, 2016 @04:48PM (#12585411)
Personally, I think it's all thanks to Oracle. When Microsoft suddenly realised that they were no longer the most hated IT company in the world, the shock was too much for them, and they just stopped trying any more.

...

Seriously, I have, right now, just dropped out of Vim into VSCode to debug a C program, because the VSCode debugger is fantastic. Everything just... works. In fact, I'd drop Vim in a heartbeat in favour of VSCode if only the vim keybindings were better, but right now they're pretty terrible and my fingers get confused. (Mercurial integration would be nice too, but mostly I use hg from the command line so I don't mind.)

I like the new Microsoft.

Re:Introducing .NET Standard by kennell on Monday September 26, 2016 @01:27PM (#12583760)
They are going in the right direction but i feel like they still have a long way to go before people in the Linux/OSX world start taking C# seriously and we see actual products.
Re:Introducing .NET Standard by oblio on Monday September 26, 2016 @01:42PM (#12583895)
First of all they need to stabilize. There's still a lot of churn even for command line apps/server, let alone for making desktop apps.
Re:Introducing .NET Standard by dblooman on Monday September 26, 2016 @02:05PM (#12584116)
Especially with all the hype around containers, C# is left in the cold. The deployment story would have to be as good on Linux for many to even consider production services
Re:Introducing .NET Standard by tracker1 on Monday September 26, 2016 @05:57PM (#12585953)
I've been able to use several of the onbuild base images with C# projects.. given they weren't anything huge, but it's been pretty cool. Should only get better.
Re:Introducing .NET Standard by manigandham on Wednesday September 28, 2016 @01:46PM (#12599703)
The programming language has nothing to do with the deployment or containers.
Re:Introducing .NET Standard by rch on Monday September 26, 2016 @01:26PM (#12583752)
Excited? Having just inherited a previously outsourced ASP.NET MVC application, I feel like announcements like this ammount to tiny, tentative steps towards tolerable. Portability work should have started over a decade ago.
Re:Introducing .NET Standard by xori on Monday September 26, 2016 @01:36PM (#12583831)
I think it's better to cheer loudly when we see a monolith move an inch. Better to say you're going the right way than to say you have a mile minus an inch to go.
Re:Introducing .NET Standard by rch on Monday September 26, 2016 @01:39PM (#12583876)
Last week I might have agreed with you, but it is really difficult when I'm actually dealing with this mess.
Re:Introducing .NET Standard by douche on Monday September 26, 2016 @02:27PM (#12584330)
Is the pain because it is ASP.NET MVC, or because you're trying to save an outsourced project? I've done that, and I've done greenfield MVC projects; one of these is much more painful than the other.
Re:Introducing .NET Standard by rch on Monday September 26, 2016 @03:08PM (#12584686)
For better or worse, I have a broad set of painful experiences from which to draw comparisons: PHP, Java (Swing, Spring, OSGI, RMI, Nuxeo), Fortran 77, Managed C++ circa 2004, "modern" Pearl, and even some remarkably awkward Python.

My chief complaint is that it takes less effort to grab an open compiler and get to work on 20 y.o. Fortran (for instance) than it takes to spin up the whole stack that this relatively trivial MVC app requires[-]. Some years ago I would have had to buy the Lahey Fujitsu Fortran compiler, but those days are over as far as I can tell.

Substantive greenfield projects (any platform) are marvelous by comparison; not even in the same ballpark.

[-] Note that most of the platform pain goes away if you're a fungible MS dev, but then there's a more subtle and insidious pain for you to deal with down the road.

Re:Introducing .NET Standard by MichaelGG on Monday September 26, 2016 @01:34PM (#12583823)
Portability work started nearly 2 decades ago. .NET has been multiplatform from the start. Around the first release they even had an "open" source version that ran on BSD, thought not with all the libraries.
Re:Introducing .NET Standard by fail2fail2ban on Monday September 26, 2016 @02:04PM (#12584108)
.NET was multi-language and C# was an open standard; .NET itself was not multi-platform. I was there at the start. I was a beta tester for the first Visual Studio.NET. The reason Mono exists is because C# is an open standard and Miguel and Xamian (or whatever they were calling themselves then) were able to create .NET from the ground up, called Mono.

https://en.wikipedia.org/wiki/.NET_Framework

Re:Introducing .NET Standard by ppog on Monday September 26, 2016 @04:26PM (#12585248)
I think MichaelGG is thinking of the Rotor "shared source" implementation for BSD, which was released around the same time as .NET for Windows as a proof of concept for implementing the .NET standards on other platforms. (These standards included CIL and the Common Type System, not just C#.) But as Michael says though it fell way short of full .NET, lacking many libraries and a lot of the optimisations of the Windows .NET implementation; and it wasn't open source in that you couldn't fork it, you could only look at the code 'under glass.'
Re:Introducing .NET Standard by MichaelGG on Monday September 26, 2016 @04:27PM (#12585254)
The .NET design has always been multiplatform. MS has released code over a decade ago to demonstrate this: https://msdn.microsoft.com/en-us/library/cc749640.aspx
Re:Introducing .NET Standard by rch on Monday September 26, 2016 @01:49PM (#12583964)
I get that you can jump through certain hoops to make cross-platform development possible, but the applications I've seen are 'all-in' with MS (even to the point of inappropriately depending on system services like ftp). Portability simply isn't the norm, and it's disingenuous to claim otherwise.
Re:Introducing .NET Standard by sjellis on Tuesday September 27, 2016 @08:24AM (#12589049)
Yes, please let's not try to revise history. I've seen Microsoft evangelists play games like this, and IMO it's a terrible way to promote your preferred platform. .NET Core will stand on it's own merits, it doesn't gain from inaccurate statements about the past.
Re:Introducing .NET Standard by MichaelGG on Tuesday September 27, 2016 @11:45AM (#12590453)
The actual design and standard are designed to be multiplatform. You can see it in a lot APIs, like Environment.NewLine -- not needed if you only target Windows.

MS released Rotor as a proof of concept. It's just an argument over implementations, which were admittedly lacking. And the standard parts are smaller than the whole .net bits MS shipped.