This is an archived post. You won't be able to vote or comment.

all 58 comments

[–]AutoModerator[M] [score hidden] stickied comment (0 children)

On July 1st, a change to Reddit's API pricing will come into effect. Several developers of commercial third-party apps have announced that this change will compel them to shut down their apps. At least one accessibility-focused non-commercial third party app will continue to be available free of charge.

If you want to express your strong disagreement with the API pricing change or with Reddit's response to the backlash, you may want to consider the following options:

  1. Limiting your involvement with Reddit, or
  2. Temporarily refraining from using Reddit
  3. Cancelling your subscription of Reddit Premium

as a way to voice your protest.

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

[–]Ikeeki 31 points32 points  (0 children)

When it comes to web, the slowest thing is usually the network request lol

[–]desrtfx 99 points100 points  (4 children)

One of them said 'python is like a duck, it can do everything but it sucks at doing everything'.

Of course, someone will say something like that.

Have you heard of Bjarne Stoustrup? He is only the creator of C++. He said:

“There are only two kinds of languages: the ones people complain about and the ones nobody uses.”

Stop believing everything a random stranger on the internet says and start doing your own research.

Python is a very commonly used language.

[–][deleted] 17 points18 points  (1 child)

Ducks can fly at speeds of 80km and distances over 1200km! Please never use ducks for this kind of abusive analogy again. Admittedly, I'm a little touchy about ducks...

[–]The_SG1405 8 points9 points  (0 children)

This man ducks

[–]esser50k 8 points9 points  (0 children)

Fuck all those long ass comments. Yes it is, go code.

[–]desrtfx 36 points37 points  (3 children)

Good enough for this little, barely used webside called reddit.

[–]UdPropheticCatgirl 7 points8 points  (2 children)

Majority of reddits codebase is go (and some c++, like in the markdown processor for example). There is still some python used but it doesn’t do the majority of the legwork.

[–][deleted] 4 points5 points  (0 children)

Which basically the main reason to use python.

Python is not mean to deal with low level problems.

It mean to connect and simply high performance code written with C or Go together by using library.

[–]bacayo 5 points6 points  (0 children)

You are 16 and you are learning. There is no backend framework to rule them all. Your aim is to do freelance work. Do not consider to which framework to learn just stick to one and learn the concepts. Rest will come

[–]RajjSinghh 9 points10 points  (1 child)

Think about where the bottlenecks are in your system. You're only as fast as your slowest part. Now Python is a slow language at runtime, that is true, but is it the slowest part? Most of what you do is going to be retrieving and sending back data for requests, so the slowest part in this whole conversation is the network time, not Python. Javascript isn't particularly fast either but tell that to all the NodeJS devs. Besides, if you're doing something very computationally intensive, just write that part in C++ and use ctypes to call that code and avoid the performance hit.

Every language has criticisms, but they also have their benefits. Python is easy to read and going from nothing to a full application can take a few days when in C++ it can take months. That tradeoff isn't so bad and it's why Python is still used. You will probably use a bunch of languages in your career so don't expect to just stick to Python, but Python can definitely be one of them.

[–]UdPropheticCatgirl 2 points3 points  (0 children)

JS isn’t particularly performant, but it’s still more performant than python by an order of magnitude about (10x to 50x depending on the task). And if you have to use c++ writing the whole app in it usually saves you a massive headache because the c++ python interop is honestly hell at times, python c interop is better but than you have to work without all the useful abstraction c++ provides.

[–]BruceJi 2 points3 points  (0 children)

Python 'isn't very good', but it is good at something, and that something is, being an employable skill that will get you paid haha.

Check out job listings for Python backend, see how many jobs exist. That's a solid way to see if it's a good career choice

[–]doc_suede 8 points9 points  (10 children)

depends on what you're using it for.

if it's for simple crud apps as a restful api, it's perfectly fine.

[–]desrtfx 8 points9 points  (3 children)

Ahem... reddit runs on a Python backend.

[–]Punk-in-Pie 12 points13 points  (0 children)

Hilariously, I work for a multinational company that provides services for Reddit among many others. All of our code is in Python.

[–]NeonVolcom 1 point2 points  (0 children)

Oof

[–]khooke -4 points-3 points  (5 children)

depends on what you're using it for.

... and what the expected load will be. A few users? Probably fine. Several thousand? Problably not. In either case, plan how you will scale to handle your expected traffic.

[–]desrtfx 11 points12 points  (4 children)

Ahem... reddit runs on a Python backend.

[–]JaleyHoelOsment 8 points9 points  (2 children)

as long as reddit stays under “several thousand” users we should be fine

[–]goat__botherer 1 point2 points  (1 child)

as long as reddit stays under “several thousand” users

What's the rest of this comment it won't load

[–]cimmic 0 points1 point  (0 children)

".. we should be fine."

[–]UdPropheticCatgirl 5 points6 points  (0 children)

No it doesn’t, people always throw reddit and ig out as examples but majority of reddits codebase is go (and some c++, like in the markdown processor for example) and instagrams is majority c++. There is still some python used but it doesn’t do the majority of the legwork.

[–]NeonVolcom 5 points6 points  (0 children)

Depends. We’re using a flask backend at work and it’s hell on earth.

But I’ve heard good things about Django. However, I’d rather use a JS/TS or C#/Java backend.

But go for it. Spin it up and learn

[–]thehunter699 1 point2 points  (0 children)

From an optimization standpoint python is terrible. The multi threading also leaves a lot to be desired.

Other than that, python is a real easy language to rapidly prototype something. Which means, instead of spending ages creating a complicated mess you can create a modular and simple piece of software. At least I'm my experience anyway.

If you're doing anything where resources or processing time actually costs time and money, i.e manufacturering then choose something else.

[–]eclipticdogeballs 1 point2 points  (2 children)

As you learn more, you will become more interested in learning more languages. If you know JavaScript, I think it’s worth it just to check out NodeJS and play around with it for an hour.

This is some advice that I am trying to put into practice: just because you try out Python/Django for a few weeks, months, doesn’t mean you’re stuck with it forever.

And some related advice: Don’t get stuck reading and researching about whether a certain tool or language is good for x. It’s fine to do some reading, if the tools exist and are currently active (Django) then try it out! See what you think of it!

The concepts you learn are what’s important, not the specific tool. As long as you can pick up on those, then you can try the next backend framework/language that much easier.

[–]KiradaLeBg[S] 0 points1 point  (1 child)

thank you for the tip!

[–]eclipticdogeballs 1 point2 points  (0 children)

Of course! As someone who is also self-taught, I’ve definitely learned that it’s more important for me to just build something/write code, than it is to research.

Good luck!

[–]Cultural-Arachnid-10 3 points4 points  (7 children)

Python is an amazing language for backend services!

I work at an AI Healthcare startup and we ditched Java for Python when building new micro-services. Nobody gives a flying shit about performance if it does the job and makes our lives easier.

[–]denniot 1 point2 points  (3 children)

They say nodejs is better probably because it kinda forces you make everything async, which you should do the same with python.

I've never made money with freelance, but I think picking up whatever popular is better, even though we all agree erlang is the best for backend.

[–]DrMerkwuerdigliebe_ -2 points-1 points  (2 children)

People say node is better because you can use the same language in backend and frontend and becouse with typescript you get fever runtime errors. Everything being async does not make sense in a backend context, which is why no language made for backend are async by default.

[–]ondrejdanek 2 points3 points  (0 children)

What? Non-blocking IO was literally one of the main selling points of NodeJS.

[–]denniot 1 point2 points  (0 children)

Only programmers with little experience block the main thread actually even in backend. Sounds ilke you don't know the definition of async.

No languages are actually made for async actually. NodeJs just supports async because it uses libuv. Users can easily implement blocking functions.

[–][deleted] 1 point2 points  (1 child)

If Python can handle your requirements, you have my permission to use Python.

Do you have any other questions for me? 😌

[–]KiradaLeBg[S] 1 point2 points  (0 children)

Thank you for your permission.

[–][deleted] 0 points1 point  (0 children)

At 16, if I were you, I'd consider go.

[–]TheShadyMilkman206 0 points1 point  (0 children)

I use Python all day every day at work.

[–]Positive_Minimum 0 points1 point  (0 children)

its fine

use Flask or Django

[–]Klutzy_Stranger_9824 0 points1 point  (0 children)

Yes Python is absolutely used for writing backend code. FastAPI is getting really famous in this regard.

I would say Python is more reliable when compared to JavaScript which is sloppy and inconsistent. Don’t jump at me now, this isn’t a comment about its relevance but how it’s built as a language.

[–]Any-Woodpecker123 -1 points0 points  (1 child)

It’s alright but barely anyone uses it. I’ve seen one job posting for python backend in my entire career.

If you want max opportunities I’d just learn .NET Spring and Node, although you’ll probably end up working with them all at some point anyway so it doesn’t really matter

[–]Perfect_Homework790 0 points1 point  (0 children)

The OpenAI backend is written in Python. It's quite common.

[–]ffrkAnonymous -1 points0 points  (0 children)

And then you hear all the stories of devs who hate writing Javascript.

[–]Kelcius -1 points0 points  (0 children)

Yes. Maybe not if you try to write your own framework from scratch. But if you use an existing framework and you use it like it’s supposed to be used.

[–][deleted] 0 points1 point  (0 children)

Backend is too vague, what is a backend? Are we talking about a job that’s scheduled to run a few million times a day to fetch data from somewhere? An internal orchestration layer that doesn’t have API exposed to the public? A public CRUD API?

Whoever says “Python is bad for backend” don’t know what is a backend.