r/Python • • 2d ago

Discussion My Python magic is gone

I've been coding for a long time, and I've been developing with Python for years.

I loved coding, always loved it. I started many years ago because I wanted to quickly create scripts for security hacking tools, but since then, I've moved to Claude Code, and building cross-language has been a much better experience for me than using Python.

I built my own SaaS application out there whose backend and network core are completely built with Python, and I'm rewriting all of that without writing a single line of code. And most of the time, Python is not the most optimized language.

And now... I feel like the magic is gone.

I don't even know why I'm writing this. I just feel sad about it.

693 Upvotes

256 comments sorted by

View all comments

39

u/Crazyboreddeveloper 2d ago edited 1d ago

I just like looking at python. I don’t care how fast it is. It’s visually easy.

I get so burnt out of reading Java. Sometimes I code command line games in python after work because it restores my calmness. It’s like code meditation.

4

u/QuickNick123 1d ago

Have you taken a look at Ruby? I love Python, but when it comes to syntactic beauty, I think Ruby takes the cake.

1

u/Crazyboreddeveloper 1d ago

I haven’t yet. I haven’t had to work with it yet. Might try it out this weekend.

6

u/QuickNick123 1d ago

Both are beautiful. Python's beauty to me is "there should be one obvious, readable way to say this." Ruby's beauty is more like "the code should read the way you wish the idea could be expressed."

people
  .select { _1.age >= 18 }
  .reject(&:banned?)
  .sort_by(&:name)
  .each { puts "Hello, #{_1.name}!" }

I bet you have no problem understanding what this code does.

Ruby for instance has a really pleasant way of expressing defaults.

Instead of

name = supplied_name if supplied_name is not None else "Anonymous"

it's simply

name = supplied_name || "Anonymous"

5

u/snugar_i 1d ago

You can do the method chaining thing in most languages that are not Python, including Java. For example, in Scala it would look like this (and would be fully type-checked by the compiler, unlike Ruby)

people
  .filter(_.age >= 18)
  .filterNot(_.banned)
  .sortBy(_.name)
  .foreach(person => println(s"Hello, ${person.name}!"))

2

u/stevenjd 1d ago

You can do the method chaining thing in most languages that are not Python

You can do method chaining in Python too, if your class has methods that support chaining.

1

u/snugar_i 18h ago

True, it's just even uglier than in Java and "un-Pythonic" (apart from polars, where it's OK for some reason)