3 ms·
Ask HN: As a .NET Dev, what is worth learning as a new language
I've spent my (12 year) career doing .NET and web related stuff. But I'm wanting to learn new things and get my feet wet elsewhere.
I'm kinda tossing up between learning Rust and Go for a personal project at home. But I want to learn something that I could possibly use in my career in the future.
Curious what everyone thinks a lowly little .NET dev should learn. (I've done a lot of PHP, Coldfusion, and used to run an Ultima Online share for 3 years where I used to do a lot of scripting for the game)
- douche 10y agoF# is high on my list of things to dive into when I get time. I've also got Seven Languages in Seven Weeks in my queue of books to go through. Do some DirectX or OpenGL graphics work. Play with mobile development, either native or Xamarin.
- ElectronCharge 10y ago"Play with mobile development, either native or Xamarin." Another very interesting development in the mobile space is Exponent, based on React Native...
- flukus 10y agoI'm in the same position as you, personally I'm going with rust + desktop (gtk, don't bother with gtk if you're tied to windows btw) development for something different. I'm pretty sure rust will have a bright future. Prior to that I was brushing up on c + gtk, which is definitely a culture shock but in a good way. I haven't really been interested in go because it covers the same ground as .net but with a(IMHO) worse language.
- philliphaydon 10y agoI mostly use Windows 10 and OSX. But have experience with Linux, I just don't play games anymore and most of my stuff at home can be done on .NET Core so I can always use a VM for the odd Windows stuff I need. Good chance to learn Linux properly while learning something else.
- ElectronCharge 10y agoMy first suggestion would be Swift, which I think will enjoy an exponential use curve going forward. That will also give you exposure to a highly efficient native language, in fact one that's quite a bit more efficient than Go. It's also very well designed, and doesn't come with the learning curve of Rust. Finally, it will position you to do iOS and macOS development, which you may find enjoyable and profitable. I see you're interested in Linux from an earlier comment - Swift is open source, with a Linux port. Otherwise I'd probably suggest something on the JVM ecosystem, if you might consider either portable web development or Android development. I personally find Scala, Kotlin and Clojure to be interesting in the JVM space.
- galangalalgol 10y agoPeople seem to think go and rust fill the same niche. I am unsure why. Go is easy to use and quick to compile and runs about half the speed of c c++ or rust. It scales up to really large numbers of threads better than any of those languages though, so it is great for services that need lots of connections. Tokio and green thread stuff for c++ will catch up eventually on the threading but go will still be quicker and easier to program in. Ask first do I want to be the person that writes the super fast core of a project, rarer skill set, higher pay, fewer jobs. Or do I want to write mainline service code, lower pay, more jobs, with a quicker pace and less optimization or bit twiddling? Deviating from the web back end field, rust will also have options for driver and kernel updates, or shared libraries that are security sensitive like libresolve for instance.