Why did you decide to switch from C# to Python?
sobes.tech AI
Answer from AI
There are several reasons, mainly: higher development speed, flexibility, and a larger ecosystem of libraries for data science and machine learning.
I like Python's dynamic typing, which allows writing less boilerplate code. This speeds up prototyping and quick implementation of ideas. The absence of strong static typing in C# in some cases simplifies refactoring and making changes.
The widespread use of Python in areas I am interested in – data analysis, machine learning, web development (with frameworks like Django and Flask), automation – opens up more opportunities for professional growth and participation in diverse projects compared to C#, which is more tied to the Microsoft ecosystem.
Although Python's performance in speed-critical computations can be lower than C#, for most tasks this is not critical. And if necessary, optimized libraries in C or Rust, accessible through Python, can be used.
# Example of a simple script in Python
def hello_world():
print("Hello, World!")
hello_world()
// Example of simple code in C#
using System;
public class HelloWorld
{
public static void Main(string[] args)
{
Console.WriteLine("Hello, World!");
}
}
Some aspects can be compared as follows:
| Aspect | C# | Python |
|---|---|---|
| Typing | Static, strong | Dynamic, strong |
| Development speed | Medium | High |
| Ecosystem | Mainly Microsoft | Diverse, Data Science, ML, Web |
| Performance | High | Medium (can be improved with external libraries) |
| Code readability | Good | Very good |
Switching to Python seems to me a logical step to expand skills and develop in the most relevant and rapidly growing areas of IT.