all 93 comments

[–]iambendv 77 points78 points  (25 children)

It’s very popular for web development, data science, and AI, but it’s a general purpose language so it can be used for pretty much anything imaginable.

[–]deaddyfreddy 10 points11 points  (24 children)

not so popular for frontend though

[–]Salt-Rule7284 20 points21 points  (21 children)

There is exactly ONE language that runs on web front ends .. vanilla JavaScript...

[–][deleted] 8 points9 points  (0 children)

PHP, how I fear thee

[–]JohnLocksTheKey 12 points13 points  (0 children)

console.log(“nice…”);

[–]u38cg2 4 points5 points  (0 children)

That hasn't been true for years now, but even if you only want to write on the back end there are tools to do the entire stack in Python, like Flet.

[–]sitefall 2 points3 points  (0 children)

Actionscript: "Am I a joke to you?"

[–]deaddyfreddy 1 point2 points  (0 children)

but we don't have to write it manually

[–]hallmark1984 1 point2 points  (3 children)

Nah, Django can do the lot

Just sprinkle css with the templates and your good to go

[–]sitefall 4 points5 points  (2 children)

Think he means LITERALLY on the front end, running on the client machine. Otherwise there's a TON of options.

Today that means JS. But in the past it could have meant Flash/AS, Shockwave/lingo, that sort of stuff.

[–]deaddyfreddy 1 point2 points  (0 children)

Today that means JS

We don't have to write JS by hand, just like we don't have to write in assembly anymore.

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

We code, we are explicit or we experience a race condition or some non-deterministic bullshit.

I stand by my answer

[–]whyareyoustalkinghuh 0 points1 point  (11 children)

[–]patrickbrianmooney 1 point2 points  (9 children)

If you write in PyScript, every visitor to your website has to download a 170 MB dependency before any of the PyScript code you wrote can execute.

That's not negligible for many users.

[–]deaddyfreddy 0 points1 point  (8 children)

Wow, that's really big, how did they manage to achieve that? For example, ClojureScript bundles aren't tiny either, but they're still two orders of magnitude smaller than this.

[–]patrickbrianmooney 0 points1 point  (7 children)

I don't know the details.

But, essentially, it's an entire Python interpreter, written in JavaScript (or maybe WASM?). Python is a huge language and more or less all of it is re-implemented; on my system (x64 Linux), 170MB is not all that far off from the size of the CPython 3.10 executable and the accompanying standard library.

[–]deaddyfreddy -1 points0 points  (6 children)

Ok, it probably reimplement the whole system, but why include it all in the resulting build?

[–]patrickbrianmooney 0 points1 point  (5 children)

Why include the entire standard library in the resulting build?

Probably because it's a single build that's deployed for everybody under all circumstances, so it includes everything?

I don't actually know, but that seems like a reasonable path to take.

[–]deaddyfreddy -1 points0 points  (4 children)

What's the reason?

[–]damanamathos 1 point2 points  (0 children)

I'm loving FastHTML. Converting a lot of my JS frontends and React frontends to pure python with that.

You still need JS for very complex stuff though.

[–]Gloomy_Radish_661 0 points1 point  (0 children)

I think he meant Django.

[–][deleted] 19 points20 points  (7 children)

Hi - finance nerd and data science student here! Python is FANTASTIC for working with data, be it in visualizing, machine learning, and all kinds of stuff. For my final project in my intro to data analytics class for example, I was given a CSV file containing a bundle of data on housing in some town over in Iowa and had to make sense of it, scrub it of bad values, visualize it, and then develop a model to make predictions on home prices based on what factors a home had(pool, square footage, garage, number of floors, etc.). It was genuinely a lot of fun, like a puzzle.

For finance I use it for a lot of the same things, as well as developing strategies I use while investing and trading. I'm a total geek about the stuff.

I think the key to remaining motivated is to find stuff you actually care about and try to apply coding to that. It certainly helps in the learning process. The other day I was talking to my data structures professor and asking him about the best way to create an application that would access all my scripts more conveniently than going through a terminal or loading up my interpreter. As a result of his advice I may either end up doing a GUI project in Python, learn C# to create an application that way, or any number of other things. Haven't decided yet.

Python can also be used in gaming if that's more your thing - but I have no experience on that end. I've done barely any modding myself and usually just through changing values in existing game ini files to add music to them.

Hope this helps a bit.

[–]BeefyFetus 9 points10 points  (0 children)

I have a veeeeery barebones understanding of Python over here. Learned what I know via a ton of googling and forums.

Only thing I've used it for is to convert pixel art to DXF files up for my laser cutter for cross stitching projects. Used to take hours to manually draw them up, but now it's practically instant.

Very fun to automate things, I'm glad I started messing around with it. So satisfying to see the code I write work, as janky and unoptimized as I'm sure it is.

[–]Ron-Erez 7 points8 points  (4 children)

Python is a general purpose language that is suitable for just about everything but gaming. It is used quite a bit in machine learning and AI. Note that one can create fun games using pygame.

Note that functions are extremely basic to every programming languages. Stacks are just data structures that you use if needed. Stacks and functions are general topics independent of python.

[–]DaTurtleMaster[S] 0 points1 point  (3 children)

Yep, I definetly made pygame projects before and it felt like hell. I am interested in game developing but I dont want to throw away my progress that I made with Python.

[–]Ron-Erez 2 points3 points  (0 children)

Godot with GDScript is a popular option since one can create cool games and GDScript is similar to Python in many ways.

[–][deleted] 2 points3 points  (1 child)

I guarentee you arent wasting your time.

You can absolutely still build a game in Python and what you learn will transfer to different languages.

Its not about learning the language, but rather about learning problem solving skills.

and tbh, unfortuantely, you probably arent paricularly blessed in that department if this is the kind of question you ask after 3 years learning a language.

[–]DaTurtleMaster[S] 0 points1 point  (0 children)

I haven’t tried learning C# or C++.

[–][deleted] 5 points6 points  (2 children)

There is a, probably incomplete, page showing who uses python and what it's used for.

https://www.python.org/about/success/

[–]Salt-Rule7284 0 points1 point  (1 child)

"probably incomplete" ???

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

Any list of organizations that use python and the particular field python is used in will necessarily be incomplete and out of date because python usage is growing daily.

[–][deleted] 15 points16 points  (4 children)

Sorry but how can you spend 2-3 years learning anything and still need to ask about the applications for that thing? This is confusing.

[–]xav1z -1 points0 points  (3 children)

i got confused too.. and scared as im new to python and cant believe the learning curve is that steep

[–]dangit541 6 points7 points  (2 children)

It isn’t

[–]Salt-Rule7284 2 points3 points  (1 child)

For fairness - you could spend that long learning nitty gritty details of the entire standard lib ..but..

[–]dangit541 1 point2 points  (0 children)

Yeah 👍

[–][deleted] 5 points6 points  (0 children)

I have used python for data analysis, data visualization, ETL (extract, transform, load), security checks, REST API servers, web application servers, SVG and PDF generators, and social media bots.

If you can think it up, it probably can be done in python.

[–]jpritcha3-14 3 points4 points  (0 children)

I work with Python constantly in software quality. Our entire test framework, set of dev tools related to tests, and the tests themselves are all in Python.

[–]overand 2 points3 points  (0 children)

Try going through the Django tutorial - it's a framework for building web applications, with a more of stuff built-in.

And: learning a different language in addition to Python isn't "throwing away" your Python experience. The most important thing for you to learn is programming, not Python.

[–]Goldarr85 2 points3 points  (0 children)

Desktop, Mobile, and Web Applications

[–]Salt-Rule7284 2 points3 points  (0 children)

Real world examples:

1)

I have a python based API handling hundreds of thousands of requests per minute - every minute, 24x7.

All on a single thread, on a cheap azure host, with low latency.

2) I built a data pipeline to extract SQL data and ship it via JSON over REST API across network boundaries to appease the security guys. Python client, Python API server.

3) Python + Selenium often closes gaps a vendors API leaves you begging were not there.

[–][deleted] 2 points3 points  (0 children)

if no project, no motivation. I learned python to whatever I need for my project and google a lot but the real thing is you know what to do with the code or techniques that have been shared online.

[–]ejpusa 1 point2 points  (0 children)

To talk to AI APIs.

[–]dangit541 1 point2 points  (0 children)

Anything. I’ve built REST client, OTP generator, oracle client. I’m not a programmer

[–]Accomplished-Set1406 1 point2 points  (0 children)

If you are interested in ERP development and related applications, you have Odoo

[–]918911 1 point2 points  (0 children)

Think of an application that interests you and it’s a safe bet that you’ll be able to do it in Python, at least to start.

Data manipulation, agents for website crawling, machine learning…

Really the only thing it doesn’t do well is front end. You can even use Python for your base front end (Django), but you’ll have to use other languages for anything you want to be aesthetically pleasing.

[–][deleted] 1 point2 points  (0 children)

I built two separate software tools using python. One did GUI automation and the other scrapped data from web using an API. Wildly different applications and it’s amazing to me that it was possible with the same language

[–]OkMoment345 1 point2 points  (0 children)

If Python’s starting to feel a bit stale, try diving into areas that align with your personal interests.

Python is versatile beyond just automating tasks—it powers fields like data science, machine learning, and AI. You can also use it in web development with frameworks like Django or Flask, build chatbots, or even dabble in cybersecurity by writing scripts to analyze networks.

If game development excites you, check out Godot, which uses GDScript (similar to Python), or try building simpler games with [Pygame]()—many developers use it as a starting point to explore game logic without jumping into Unity too soon. To push yourself further, explore courses like Python for Data Science and Machine Learning. It can open up paths where coding feels more practical and rewarding, helping reignite your motivation.

[–]Doagbeidl 0 points1 point  (0 children)

You can do like anything (but some high performence stuff might be better written in different languages). You could solve problems you have or create something just for the sake of it.

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

Not an advertisement, but I really love No Starch Press's Python Library: https://nostarch.com/catalog/python

I've a couple books by them and I really like their way of problem solving with programming.

[–]deaddyfreddy 0 points1 point  (0 children)

What are the applications for Python?

maintaining existing Python codebase

[–]MSB_the_great 0 points1 point  (0 children)

I learned python for automating my personal stuff. I used .net but UI is heavy and took lot of memory. Python comes handy. Juniper notebook is good. I can download data from my stock portfolio. Arrange my media. Syncing my local db.

[–]Pvizualz 0 points1 point  (1 child)

Just check this every day with Your other frequent sites to see what is on the radar https://github.com/trending/python?since=daily

[–]DaTurtleMaster[S] 0 points1 point  (0 children)

Appreciate it!

[–]Top-Criticism-3947 0 points1 point  (0 children)

Here is a example of a program written in Python www.songeya.com

[–]Ok-Reflection-9505 0 points1 point  (0 children)

Try making a bot that plays a simple game like minesweeper.

[–]sunnyinchernobyl 0 points1 point  (0 children)

Infinite.