Python over C# for Engineering software. Is it a good solution?

Hi all,

I'm working in a public french R&D organisation that is currently rethinking is way to develop softwares and services published for the outside. We traditionnaly had two sides of our developpement:

  • Engineers/Researchers developping prototype in Matlab/Excel or even just concept written on paper
  • Programmers that developped in C# all the applications/softwares that goes outside our organisation based on Engineers prototypes.

Recently almost all our Engineers/Researchers are moving to python because Matlab feels very outdated and python offers many more possibilities for free. There is since then an ongoing burning debate in the organisation on wether or not we should switch our code language for python over C# to have both R&D engineers and IT team on the same language to make easier and cost efficient the dev of our softwares.

The chief programmer engineer is on the following line:

" python is great as a script/prototype language but when it comes to doing complex architectures and software it is not reliable and lacks of "rigor". Also it is really hard to "hide" python code and produce easy to install software with python in any machine (Mac/Windows is mostly our target). He also says that pratically nobody develop proper softwares in python and it's much more a language for providing nice and quick web services.

Some of the "geeky" engineers sides are arguing that :

" Python is elegant, easy and comes with many open source libs that makes a lot of developpement economy (don't need to reinvent the wheel everytime). it's better to have a single language for both prototyping and developing softwares. The problem of hiding and installing python software are issues that can be managed and overcome. R&D engineers with quick IT training can develop proper code that can be used by IT Engineers. "

about me

I'm an R&D engineer that recently transitionned from matlab to python and I'm really happy with that. For prototyping and developing new stuff it's very elegant and simple. I have personnaly no a priori on both python and C# regarding developing softwares/applications/webservices to sell/give on the outside. I was hoping you reddit guys with some experience on python/C# dev could react to both the arguments I mentionned above. Posted this also on the python reddit for both sides argument :

by arcsinus_master via /r/csharp

Leave a Reply