6 ms·
This is why one of my favorite series of questions to pull out during an interview are: What is your favorite programming language/library/technology? What do
by jballanc 2y ago
This is why one of my favorite series of questions to pull out during an interview are:
What is your favorite programming language/library/technology?
What do you hate about it?
Anyone that jumps to answer the first but struggles to answer the second is likely not someone you want to hire.
- BeetleB 2y agoOk. For anyone struggling with the second, the answers should be: Lack of libraries. Lack of good tools.
- Const-me 2y agoMy favourite languages are C# and C++, and sometimes I interview developers to work with them. Saying these languages are lacking libraries or good tools is unreasonable.
- BeetleB 2y agoTrue, but it's trivial to come up with things to dislike in C++ :-)
- Const-me 2y agoGreat point on C++, but it’s harder for C#. The language and ecosystem are IMO pretty good. I only hate that Microsoft stopped shipping modern .NET runtime with Windows. A few annoying things though, like the recent push towards AOT compilation (IMO strictly worse that JIT), and the lack of a good first-party cross platform GUI frameworks (for example Microsoft could compile d2d1.dll with DXVK, reimplement dwrite.dll API on top of FreeType / HarfBuzz, and copy-paste UWP).
- CrimsonCape 2y agoWhat I dislike about C# is how much effort is needed to get a minimal environment. Rust and Python make simple code compilation quick and easy. Let's assume I want to use a C# script .csx file. The CSX filetype seems to be Microsoft's flavor of attempting to "make it simple". I write a hello world. Now what do I do with the .csx? I have no idea how to compile that with modern dot net. It appears csi.exe would have been the answer, but now Roslyn seems to be the current best practice. No idea what to do though
- neonsunset 2y agoI'm not sure where you are coming from in terms of difficulty of setting it up, it's just - sudo apt install dotnet-sdk-8.0 / brew install dotnet-sdk - dotnet new console -o {folder} --aot - dotnet run -c Release - optionally dotnet publish -o . If you want to use it as a scripting language, you do `dotnet tool install -g dotnet-script` and use it normally[0]. Keep in mind that C# is not designed for this, but it will work (at the cost of first uncached script launch costing extra - it is a compiled language after all, but that's a niche scenario anyway). [0]: https://github.com/dotnet-script/dotnet-script?tab=readme-ov-file#running-scripts https://github.com/dotnet-script/dotnet-script?tab=readme-ov...
- CrimsonCape 2y agoThanks, I will look into the github repo. Although I think it's a bit confusing, since the steps you describe above lead to a requirement for the .net 8 runtime which leads to the following licensing information. It's not clear how to proceed with C# development as an open source language. I thought maybe it could be done by cloning Roslyn (MIT license) from github. Do I need to accept the below licenses to develop a C# app? I'm not asking you specifically, just that I don't care to try and understand if I can even use the language without accepting any of the below, (anything not MIT or Apache) License information for .NET on Windows The Windows distribution of .NET contains files that are provided under multiple licenses. This information is provided to help you understand the license terms that apply to your use. By using any or all of these files you agree to their associated license terms. The following binaries are licensed with the Windows SDK License: api-ms-. (used by .NET runtime, .NET 6 and earlier) ucrtbase.dll (used by .NET runtime, .NET 6 and earlier) D3DCompiler_47_cor3.dll (used by WPF) The following binaries are licensed with the .NET Library License Microsoft.DiaSymReader.Native.{x86|amd64|arm|arm64}.dll (used by .NET runtime and SDK) PresentationNative_cor3.dll (used by WPF) wpfgfx_cor3.dll (used by WPF) The following binaries are licensed with the Microsoft Visual C++ Runtime Software License: vcruntime140_cor3.dll (used by WPF) All other binaries and files are licensed with the MIT license This document is provided for informative purposes only, and is not itself a license.
- iLemming 2y agoThis is the very first thing I do when picking up a new tech - language, framework, library, tool. After initial familiarization with the basics - Wikipedia/Readme-Intro, I would google "Why does X sucks", and try to avoid becoming overly enamored with it too quickly, and strive to maintain a level-headed perspective.