592 karma · joined July 9, 2017
Some things are absolutely safety relevant. But no one cares.
Setting up and managing Postgres is a pain tho. Would be nice to have a simpler way of getting this all right.
I can understand that this might be intrieging for newcomers. I've certainly learned the hard way that the only thing worse than manually writing mapping code is doing it automatically at runtime.
So how would this work for parking?
A: Add more cameras so there are no dead areas in front of the car
B: build a model in vector space when driving towards a parking spot and assume blind spots don't change. (still sucks)
I don't know how you came to that conclusion but I'd guess that you mostly work on small projects? (where I'd say smallish is < 100K LOC)
Stuff I'd miss in VS Code coming from JetBrains Rider:
- Docking of panels to top, bottom, left, right
- built-in database explorer (with table designer, script runner, ...)
- built-in unit test explorer
- built-in memory/perf profiler (not talking about a simple text interface!)
- nice config options of project settings (in either text with completion or the UI)
- NuGet package explorer UI
- integrated IL viewer
- great git blame / annotation view
... could continue for a while
I wrote C# daily before I switched to F# ~3 years ago and I sometimes struggle reading "modern" C# code. In C# you now often have multiple ways of doing the same thing.
I recommend Rider.
Pattern Matching
https://learn.microsoft.com/en-us/dotnet/csharp/whats-new/cs...
Non destructive mutation
https://learn.microsoft.com/en-us/dotnet/csharp/whats-new/cs...
Null-coalescing assignment
https://learn.microsoft.com/en-us/dotnet/csharp/whats-new/cs...
> How much work would it take in term of code rewriting?
There are definitely code changes required, but I think those are quite manageable as concepts mostly map 1:1 from OCaml to F#.
> can it compile to native code?
Yup, https://learn.microsoft.com/en-us/dotnet/core/deploying/nati...
> how good is the language support experience in vscode?
Pretty good, https://ionide.io
(but I personally prefer JetBrains Rider)
> any reason not to do it?
Compilation speed, some OCaml language features?
I really don't like what has happened to C# is the past few years where features are just added blindly it seems. Current C# looks nothing like C# code from a few years ago and that's bad IMO.
For us the tooling + library ecosystem are more important to get sh* done.
- via Fable (F# to JS Compiler)
- WebSharper (tightly integrated web frontend and backend)
- Blazor/Bolero Server Side (like phoenix live view)
- Blazor/Bolero WASM
We also start to see Avalonia running on WASM, but I wouldn’t say it’s ready yet.
Rider got a lot better over the years and I would pick it over Visual Studio anytime.