Yet I work for a very successfully (we have too much work and don’t even advertise for it) small company and we all use windows computers as software engineers. We use C# .Net Entity Framework, SQL, GraphQL, React Typescript or WinForms.
We have some large clients that most people ok earth have heard of.
What exactly are we talking about? Doing Windows related development on Windows is roughly as decent as doing Linux related development is on Linux (or Mac).
It’s just that because like 90% of servers are Linux, 90% of development benefits far more from being developed on a Linux-y system.
For example, the Windows filesystem is very different. Over and over I’ve had issues with permissions being different, with paths being inconsistent (this happens esp. with WSL) and with limits on path length.
You can develop on Windows, but having the test env closer to the real env takes care of so many little headaches.
That’s an uncommon opinion here. Here being the operative word.
Look in I’m not going to say I wasn’t disappointed that it wasn’t Mac which I used at my last job, but when it comes down to what we need to do in a day I don’t notice the difference.
I tried Linux last year as a daily driver and gave up as I’m not looking for something else to debug in my own time. I now just want it to work.
C# development is incredibly efficient to be fair.
Have you considered not asking questions based on conjecture? No it isn’t because we are inefficient. It’s a mix of staff come first and the work comes second and a lack of greed I’d say. Most of our work comes from word of mouth and we keep client for as long as they’ll stay with us.
If a client reads a spec and get the application described and decides it’s not right we will change it for them for free to build a relationship. Which is why we get more and more requests to work with us.
As someone who has worked with a pretty large C# codebase and several smaller ones, I’ve found it to be one of the least efficient languages to program in. This is maybe not a technical fault of the language, but the way Microsoft encourages developing C# means that once you get past a certain point even simple MRs will have 10-20 files changed. There is sooooooooo much boilerplate caused by .NET that even things like Java Spring Boot just don’t have (and even then I’d consider Java to be a pretty bloated language in terms of boilerplate).
That’s ignoring the fact that the ecosystem surrounding .NET is a lot more enterprise-y, meaning a good portion of libraries require paid licenses to use.
Yet I work for a very successfully (we have too much work and don’t even advertise for it) small company and we all use windows computers as software engineers. We use C# .Net Entity Framework, SQL, GraphQL, React Typescript or WinForms.
We have some large clients that most people ok earth have heard of.
Nobody thinks you can’t do software engineering on windows. It’s just worse.
It really isn’t though. I’ve done in on Windows, Mac, and Linux.
Mac and Linux are easier to install stuff but on the whole the experience has been almost identical.
What exactly are we talking about? Doing Windows related development on Windows is roughly as decent as doing Linux related development is on Linux (or Mac).
It’s just that because like 90% of servers are Linux, 90% of development benefits far more from being developed on a Linux-y system.
For example, the Windows filesystem is very different. Over and over I’ve had issues with permissions being different, with paths being inconsistent (this happens esp. with WSL) and with limits on path length.
You can develop on Windows, but having the test env closer to the real env takes care of so many little headaches.
You’ve used modern Linux and modern Windows and think the experience is almost identical? That’s an uncommon opinion.
That’s an uncommon opinion here. Here being the operative word.
Look in I’m not going to say I wasn’t disappointed that it wasn’t Mac which I used at my last job, but when it comes down to what we need to do in a day I don’t notice the difference.
I tried Linux last year as a daily driver and gave up as I’m not looking for something else to debug in my own time. I now just want it to work.
Have you considered that you might have too much work simply because these tools are inefficient?
C# development is incredibly efficient to be fair.
Have you considered not asking questions based on conjecture? No it isn’t because we are inefficient. It’s a mix of staff come first and the work comes second and a lack of greed I’d say. Most of our work comes from word of mouth and we keep client for as long as they’ll stay with us.
If a client reads a spec and get the application described and decides it’s not right we will change it for them for free to build a relationship. Which is why we get more and more requests to work with us.
As someone who has worked with a pretty large C# codebase and several smaller ones, I’ve found it to be one of the least efficient languages to program in. This is maybe not a technical fault of the language, but the way Microsoft encourages developing C# means that once you get past a certain point even simple MRs will have 10-20 files changed. There is sooooooooo much boilerplate caused by .NET that even things like Java Spring Boot just don’t have (and even then I’d consider Java to be a pretty bloated language in terms of boilerplate).
That’s ignoring the fact that the ecosystem surrounding .NET is a lot more enterprise-y, meaning a good portion of libraries require paid licenses to use.
Eh C# GUI development is quite productive. I don’t think you’d get such a pleasant experience on Linux.