
Official support for .NET - darwhy
https://stripe.com/blog/stripe-dotnet
======
lwansbrough
More Silicon Valley startups need to get on board with .NET. Yeah, I know it's
strongly typed and doesn't abuse white space, but you're missing A LOT of
potential customers when you skip out on .NET. Seems like a really poor
business decision to ignore it simply because there isn't someone on your team
who has built a compiler for it in their spare time.

~~~
frik
PG wrote some essays about it: startups better spend their seed/series money
on other things than software licenses.

Then the unthinkable happened: after PG left, HN got MSFT PR-heavy in spring
2015. People should learn from the history.

~~~
lwansbrough
> startups better spend their seed/series money on other things than software
> licenses

Like say, paying developers to maintain their SDK in Closure?

------
DaiPlusPlus
I'm using the Stripe.NET library - but begrudgingly - there's a whole slew of
FxCop-compliance issues with the code and some code-smells that I don't like
(e.g. they read the JSON objects into strings, then deserialize the strings -
it's more efficient to use the JSON.NET stream-deserializer). My biggest issue
is the lack of `using()` statements: objects are not being disposed-of
correctly!

(I'd submit a PR with fixes, but I'm short for time).

~~~
nodesocket
Understand about not having the time, but maybe you could create issues
([https://github.com/stripe/stripe-dotnet/](https://github.com/stripe/stripe-
dotnet/))?

------
zip1234
Fantastic that they are taking over the Open Source library that was already
out there. Have used it and the maintainer had obviously put in a ton of work
on it.

------
tracker1
Aside: there seems to be a lot of renewed interest in .Net with the advances
of Core and other cross platform support in the open.

~~~
c0nfused
It always seems odd to me that people are excited about .net coming to Linux
or osx. Mono has been around for so long I can't remember when it showed up,
2001?

As far as I know mono's been feature complete for a decade or more.

.net core is neat, but for me it's a tooling thing and not a "we can write
.net of Linux" thing

~~~
ComputerGuru
Mono has never put a focus on reliability or production-ready code. It's been
awesome for desktop software and client applications, but we _actually_
deployed ASP.NET on Mono to unify our deployment environment across our web
infrastructure and ran into random bugs and show stoppers on a daily basis.
And I'm not just talking about the horrible process of getting Visual Studio
projects to deploy to a Mono server, the unavailability of certain APIs,
functions that don't quite work the same way, or issues with the Mono frontend
server, but also runtime infrastructure issues, random crashes, and more that
made it a horrible nightmare worth maintaining two different operating systems
for (our reliance on PHP for WordPress and vBulletin (back then, now XenForo
instead of vB) meant we faced basically the same .NET-on-Linux issues with
PHP-on-Windows, prevented us from going all-Windows at the time).

.NET Core is actually cross-platform from the ground up and the .NET Core team
considers it blocking issue and won't release if the codebase doesn't run
properly and identically on all supported platforms. It's a night-and-day
difference.

~~~
martinald
I agree, I've been using mono in semi-production for the best part of a decade
for ASP.NET and it's been a complete nightmare every time.

It's also a shame that VS for Mac is so half baked for web projects despite
MSFTs backing. This issue I have been search for an answer for a while is so
obvious I don't understand how they didn't catch it:
[https://stackoverflow.com/questions/43967326/visual-
studio-m...](https://stackoverflow.com/questions/43967326/visual-studio-mac-
cant-run-asp-net-core-project)

~~~
scarface74
Luckily there is a better alternative....

[https://www.jetbrains.com/rider/](https://www.jetbrains.com/rider/)

~~~
dewiz
I love Rider but since they went GA it's super expensive. VS for Mac beta
channel is decent, then there's VSCode which is free

~~~
scarface74
$139 a year or $14 a month for an individual license is "expensive"?

On top of that if you buy a yearly license or you pay the monthly license for
a year, you get a "perpetual" license. You get to keep the turn current
version forever without buying another license.

~~~
martinald
I agree but it is £26/month in the UK (~$35/month), not 14. Where are you
getting that price from?

~~~
scarface74
It's the personal license not the business license.

------
jmkni
Works with .net core also (they don't specify this).

~~~
tomnipotent
>> targets the .NET Standard

It was mentioned.

~~~
dpim
Yes, and in case there's confusion around Core vs. Standard. Standard can be
thought of a spec, and supporting a version of .NET Standard implies support
in a specific set of versions of .NET Core.

[https://docs.microsoft.com/en-us/dotnet/standard/net-
standar...](https://docs.microsoft.com/en-us/dotnet/standard/net-standard)

------
hotwagon
Noob question, what's the advantage of using a language library over using
your programming language favorite http client?

~~~
oliwarner
Speaking with experience of the Python Stripe library, automatic type
conversions, native exceptions, keeps my code cleaner.

If it were a simple API, I might agree, but Stripe does a lot of stuff and in
payments, many things can go wrong. Particularly being able to directly handle
exceptions (rather than picking apart obscure status codes) is a godsend.

------
Scirra_Tom
Been using it for years, really good and well written! Author very responsive
with bugs as well.

------
thanksgiving
A little off-topic but I'm gettinga little impatient.

What is the reason we can't have a dnf install dotnet or apt install dotnet
and have it linked to whatever is the most recent? I can even do that with
php-cli.

A deeper problem to me is I don't think there's enough expertise outside of
Microsoft to continue this project should Microsoft decide to take its toys
and go home.

~~~
romanovcode
>Microsoft decide to take its toys and go home.

coreclr and corefx (basically C# .NET Core) source code is using MIT license.

~~~
thanksgiving
Yes but who will (indeed can) continue the project should Microsoft stop work
on it?

I mean no disrespect to my hardworking friends at red hat but they cannot take
over stewardship of the entirety of dot net. Nobody else seems remotely
interested.

~~~
romanovcode
I cannot see a scenario where MS stops working on .NET, also, people are
interested. Remember Mono?

------
ComputerGuru
Ugh, thank God.

I get that until 2016 and Nadella/.NETCore only Ruby, JavaScript, and Python
were the hipster languages of choice for web development... but .NET has been
an awesome, rapid-development, tried-and-tested, business-friendly option for
creating business applications, including, believe it or not, eCommerce
platforms.

Outside the "hacker bubble" no one in their right mind would have neglected
.NET as a first-class API target for this long. It's insane that Stripe got
away with it for as long as they did, actually.

~~~
lwansbrough
Still in my hall of shame: CockroachDB, which decided _Closure and Rust_ were
more important than _.NET_ \- I love Cockroach but based on this I wonder if
they want to make any money.

~~~
ComputerGuru
Isn't cockroach protocol compatible with PGSQL?

~~~
lwansbrough
Yes but they don't officially support _any_ PostgreSQL libraries in .NET (like
say, npgsql.)

Plenty of other languages are tested officially by the CockroachDB team, but
somehow they missed .NET.

------
heja_bruh
When are we getting official support for superior languages without GC? Say
like Rust?

~~~
pjmlp
When those superior languages are able to target the same environments and
match in terms of IDE support, graphical debuggers, server monitoring tools
and cluster deployment, game development engines GUI toolkits, and compile
times.

~~~
heja_bruh
Rust has good IDE support, graphical debuggers are around the corners, gui
toolkits are coming and compile times are improving. By the time 2017 ends,
rust will improve on all these things, while .NET platform will still be stuck
with a slow GC (2017 and GC in same sentence lol) while rust is going to get
faster, safer and better. I suggest you to see for yourself, maybe start
learning it - it ain't so hard ;)

