43 comments

[ 3.4 ms ] story [ 58.1 ms ] thread
Nice work. It will be great to use ASP.NET Core on a Pi with official support.

I tried .NET out on the Pi using Mono, years ago when it was relatively new but after the software floating point OS was deprecated. The weird hardware floating point CPU made it pretty much unusable. Even simple things like DateTime objects would fail to work correctly.

Similar issues were in Java IIRC but they had a special build of that. I think Sony had a fixed build of Mono but I haven't tried it. It will be good to have official .NET support outside of Win 10 IoT.

Interesting, imho Java makes no guarantees about FP portability if you don't enforce it with the strictfp keyword, you'd get 80bit on x87 and 64bit on other architectures.

Why would this cause failing tests though? Does that mean they relied on extended precision?

Not sure of the specifics. Java SE is now included with the official OS (Raspbian/NOOBS) [0]. When the Pi first launched you had to use the soft FP version of the OS or Java wouldn't work but this had a significant performance penalty. They added official support for hard FP a few years ago [1]. I believe the .NET issue was similar in that the VM (CLR i.e. JVM) didn't support the hard FP version of the OS. FP on the Pi processor is a bit weird and a non-standard implementation from what I've read.

P.S. In researching this post I noticed that one of my projects (a globe wake lamp) has been included in the latest project book (p108) [2]. First I've heard of this! This is actually an old version and there is a newer write-up on my blog [3].

[0]: https://www.raspberrypi.org/downloads/noobs/

[1]: https://www.raspberrypi.org/blog/oracle-java-on-raspberry-pi...

[2]: https://www.raspberrypi.org/magpi-issues/Projects_Book_v2.pd... [pdf]

[3]: https://unop.uk/pi-glowbe-mark-2/

This is a major step forwards. Having .NET on ARM is one of the most important milestones imho.
It was already there, but not the main version.

.NET Compact and Micro had ARM versions.

There is also an Arduino (AVR) that uses .NET Micro as their OS.

Exactly :)! For the Arduino you are potentially referring to the Netduino, which allows you to write applications targeting the .NET Micro Framework.
Re: Netduino - I've got one of them, works really well with Visual Studio, i.e. hitting break points, stepping through code running on the board etc.
I just want to emphasize the fact that not only is the .NET Micro Framework something that exists, but that it has been available since 2009 and remains so, under the items of an arguably much more agreeable license: Apache 2.0
One thing: the Netduino devices are ARMv7-M (Cortex-M3 and Cortex-M4) devices, not AVR
Great work. Can't help but notice most of the contributors in this issue are Samsung Electronics employees. Interesting to see Samsung in the .net world!
You can build Tizen apps in .Net now I imagine they're working to improve compatibility across all Tizen devices. Samsung is also now a member of the .Net foundation

https://www.tizen.org/blogs/dh0922/2016/tizen-.net-developer...

Which will be the fourth reboot on the Tizen SDK stack, so I don't know if they will actually win anything with it.

They already went through Meego APIs, replaced by Bada OS C++ APIs, replaced by C and Enlightenment APIs, alongside HTML5 apps.

As a developer I would be weary to invest any resources in so unstable OS design.

aside from frequent platform changes, and the fact that very little amount of users use Tizen, I believe C# is a much better environment for app development. C# has much better tooling around it (remember how long it took to have a stable android studio, let alone have it in the first place)
Assuming they implement the entirety of the .NET APIs then a developer would have to invest very little to get on their platform. One would hope anyways.
(comment deleted)
Other companies should be paying attention to Microsoft's PR department here. They've done really well at timing these kinds of announcements over the past several months, repeatedly getting their name on the front pages of places like Reddit and HN a few days after the last announcement fades away.
I'm just a .NET developer who is following what's new in the field and bearing no relation to Microsoft's PR department. This issue comment was posted 6 days ago so they much likely didn't know this was possible when they were reporting news from the event Microsoft Connect(); 2016 last week.
And that invalidates my comment... how? Microsoft announcements appear here in a nicely-spaced way that seems to garner lots of interest and, yet, not induce fatigue. How and why this is happening is "an exercise left to the reader."
This is not an official announcement, it is not even an announcement. What the fuck are you talking about?
I NEVER SAID IT WAS! Good grief, people. You'd think the strawman argument wouldn't get this kind of traction on HN. I had a thought that I've seen lots of announcements -- nicely timed -- along these lines over the past few months. That's it. MOST of it has come from official sources. I was just making a freaking observation, and making an inference about it. It wasn't particularly about this post at all.

Sorry for interrupting the circle jerk; I'll go back to lurking.

You can't go off like this on Hacker News after you clearly alluded to organized PR (if you didn't, then you weren't saying anything at all). To then label the rest of the interested discussion a circle-jerk is even worse. Please comment civilly and substantively here or not at all.

https://news.ycombinator.com/newsguidelines.html

And now this has been flagged.

Again, for the guy who apparently mods this whole thing, and to whom I can't reply: it was a random thought, for which I've been thrashed. Super.

I absolutely alluded to organized PR; I never claimed this was part of it. The timing simply brought the idea to the foreground. I never claimed the author or the poster was a shill. It was just an unfortunate coincidence. I apologize to the internet gods for not doing a thorough background search on this particular post and vetting it so as not to imply that THIS post was part of a conspiracy, or clearly stating that this was NOT implied. The implication just didn't cross my stupid little peabrain mind. Perhaps understanding every nuance of how every single person could interpret a post is part of the terrible, implied responsibility of posting on a public forum, and I readily admit that I utter failed to do so.

By all means, sctb, if you have the power to delete my account, please do so. Because of previous examples of nonsense exactly like this, I've tried several times, but HN offers me no way to do it. So I wind up lurking, then slowly coming back, and then this sort of thing happens again. And I never seem to learn that someone, somewhere will find a reason in ANY post to be upset about it, even AFTER EXPLANATION, and either I find these people way more often than others, or I just have a harder time with the response.

I've found updating my hosts file to block sites that I'd rather not visit but find myself visiting anyway and wasting time. Maybe that would help? (Honest advice, if that's what you're looking for. If I've read your comment wrong, please ignore.)

HN purposefully doesn't delete accounts to preserve the conversations and their context. There's a comment from pg around here to that effect.

Edit: here it is: https://news.ycombinator.com/item?id=6813226

Yeah, I get why they don't delete. It does make a mess of Reddit threads. And I've thought maybe even DNS-black-holing. But whatever I do, I know I'll just eventually turn it off again. :-/
If people didn't downvote the comments they dislike, we could know what the f... he was talking about.
1995 - circa 2014

Action: Microsoft is hostile to Open Source movement for many years.

Reaction: developers have a deep distrust of Microsoft.

2014 - current day

Action: Microsoft open sources a series of core projects and starts contributing to major Open Source projects.

Reaction: ???

Most devs I know not in .net are not gonna jump for this reason. It's so similar to what I can get from Python and Scala and Java... Why would I want to touch the Microsoft ecosystem?

Seems like it will take 10 or 15 years for a new round of college students to switch over.. so it has to be a very long term play.

Many of the current generation don't have any issues with Microsoft.

We do mostly Java and .NET projects, and enough juniors get on both stacks.

Yea, inexperience with Microsoft would make them think it's okay to do that before these announcements. I agree with parent comment though, not enough to make me come back.

source: C# and .NET were the first languages I taught myself after PHP in 2007-2008.

I went back in 2010. My first contact with it was when my employer, a MS partner got an early access to it, still on Alpha stage.

Nowadays I would rather do .NET projects than Java ones, as I already have the language and toolchain features today at my disposal that will only be available (with luck) on Java 10.

Also because neither Sun or Oracle really understand what native development should be like.

JavaFX has everything to compete with XAML, yet it really needs some love.

Last time I checked, the better colleges around taught some combo of C, Python, Java, and LISP.

Sometimes a few business classes with .net, but it seems very rare overall.

The professors have a lot of influence in the future..

> 1995 - circa 2014

Microsoft launched CodePlex for open source development in 2006, and it had released some bits of code before that.

Microsoft also started releasing .NET source code in January 2008 under its MS-RSL license [1], so there's been a long transition, not a sudden recent change.

[1] https://weblogs.asp.net/scottgu/releasing-the-source-code-fo...

That invalidates your comment in so far as that the person that submitted this as news claims to have no affiliation with Microsoft.

Unless you claim that the submitter is lying your whole 'Hey, nicely done by your PR department, Microsoft' argument goes down the drain.

Welcome to astroturfing 101. And they rely on people like you to keep the doubt alive.

But you have to be incredibly naive to think social media manipulation isn't a core part of companies marketing strategies today.

I can barely hide the truth now, let me elucidate: I am from the department of PR, the United Nations where Bill Gates and I have been trying hard to keep it secret that some people who work for UNICEF have been seen killing babies for a while now with use of laughter which they cause by injecting hyperpepsinic and hypoacoustic polynuclear bazookas into their own asses.

https://youtu.be/PZuErXLfQlM

I'm sure it is, but attacking fellow community members with no basis is a bannable offence. That's what you're doing, and you need to stop doing it if you want to keep posting here.

If you or anyone sees evidence of astroturfing on HN, please send it to hn@ycombinator.com so we can properly look into it (which we always do). We take the issue seriously, and it's also a serious breach of civility to casually sling these accusations at others. Two wrongs don't make a right.

Accusations of astroturfing and shillage without evidence are not allowed on HN. Someone liking different things than what you like is not evidence.

In context, what you've posted here is a sordid attack on a fellow user. That's shameful, and even worse after you got a good-faith response. Please don't do it again.

Looking forward to an official Docker image for this. The Raspberry Pi is probably the main board we think of when people say 'ARM' - but the Pine64 and Odroid C2 are maybe better suited - being 64-bit and the Odroid having twice as much memory.

What kind of .NET runs on Windows 10 IoT though (on the RPi Model 3)??

I've encountered some NuGet packages with the prefix runtime.win7-arm., so I think .NET Core has got support for Windows 10 IOT since the very beginning.
The UWP kind.

It is the same .NET Native as on Windows 10 store.

.NET Core + .NET Native, but that's on Windows, not Linux (.NET Core has been running on Windows ARM since Windows Phone 8)
Fantastic!

I was looking into this just yesterday to see how far away it was, so the timing is really fortunate for me.

Between this and the VS Code builds we should now have pretty solid support for developing .NET on Pi and/or Chromebook, so I'm really excited to get rolling with it, especially seeing as I have some free time this week. I'll try to write up my experiences too in case it helps anyone else.

Still waiting for it to run on any Android device.