1. Add structs 2. Add linting (with Rust) 3. Add static types (with Rust) 4. Add good package manager (with Rust) 5. Use docker Wait which language were we talking about
I've seen so many command line tools and some GUI apps get rewritten in rust. and they're awesome btw. very fast, but they don't have unsafe problems and bad syntax of c++
That's basically how evolution work.Whatever crap reproduces has some chance to add more crap which might be slightly better crap than what's going around. Each generation eliminating the crappiest crap raises the pool of better crap until it's not quite so crappy.
Been using Ruff and UV since 5 months and its a life changer when it comes to get installing stuffs fast and cleaning up code without freezing your ide.
@@KanashimiMusic no no, i mean, python definitly sucks for big projects.. (i suffered too much) but making something fast def out-ways benefits of beautifully engineered complete type safe project that took 6 months to complete... that is only going to be used by 20 internal team members.. (if something is actually useful, people ignore issue and crashes...) things like rust only worth after a certain number of usersbase is reached...
Java is cumbersome, too verbose; C++ and more so C are a ticket for the ER; Haskell, could be fun, I haven't tried it yet; C# - maybe, but no one uses it in a cross platform manner, like Python!? Rust, I would love to start using it, haven't put in the time yet. Have I mentioned how uneasy I am with OpenJDK and .NET SDK licensing, like Oracle & Microsoft are always just about to pop a licensing stunt on all users!?
@@BogdanTestsSoftware Java is fine imo. And if it's too verbose for you, use Kotlin. It's specifically made to fix the verbosity problem that Java has, among other major issues. And it does that job beautifully. Also, C# can easily be used in a cross-platform manner, I really don't know what your problem is. Regarding your JDK licensing issues, there are many different JDK releases that are not made by Oracle. So like, that issue is really non-existent.
@@BogdanTestsSoftwarehaskell is really cool to write and has an amazing type system but its not super practical and going to it from a dynamically typed imperative language is like jumping off a cliff without a parachute
i have never heard of any of these tools, even though i consider myself an active programmer on the internet (in the meaning of being up to date, and knowing about the new tech)
Have a question. I have pylance and in vscode typecheking is basic. If I use mypy should I turn off vscode type checking? I tried mypy type checker by Microsoft worked me without pip install mypy. But it does not show undefined local variables with red sign. And also I don't like black formatter, it messed up my codes. For example while a greater b, it uses () in this code and in () it goes a new line @@CodingWithLewis
@jackBauerDev this is what I was thinking when watching the video as well. Same has been done with Javascript and now Python... but yet Python lovers talk trash about strongly typed languages such as C# and Java.
Sorry, but this is the sort of advice that guarantees your product will never ship and never work on any two developers desktop the same way. Yes, including using Docker. Stop jumping to the newest bestesst hypest thing all of the time people.
How to code Python in 2024: Just code. Nobody has to tell you how to code. Get some "Python for beginners" book at your local bookstore and go ahead. Maybe check conformation with PEP 8 before you make it public, but code as you want.
1. Pydantic 2. Black (WTH do we need speed here?) 3. ... ok maybe mypy 4. pdm (i got fed up with poetry) 5. Docker I guess I'm only partially coding in 2024
I think people also seem to forget about things like brython - browser python, jython for python in a jre, micropython etc.The ecosystem is vast and touches on many other platforms and languages.
As much as i love rust,c, go, can't beat the convince of quickly getting things done for an internal tool or a test server that only going to be used by just 20 people...
I loved Python when it was a powerful scripting system. I legit wanted to replace my shell with ipython at some point. But it is obviously not ideal for large, performance sensitive applications. Then they started adding all this static typing nonsense and at this point why not pull the band aid off and code in rust? It's OBVIOUSLY what you want.
@@CrYpt001 instead of dumb ad-hoc fallacies actually think. It doesn't matter that large apps are written in python if they have to pour millions into optimizing it because it is a slow language. And I used to LOVE Python. I loved it's 'batteries included' approach back when we didn't juggle with virtualenvs. Back when it was just a really powerful scripting language. Type hinting in Python combines the verbosity of Rust with the slowness of Python itself, minus the robust macro system. But I guess you are just looking for people to anonymously insult.
@@sadsongs7731 Someone saw tsoding's video . Python's slowness is fine many times including for giant projects . It's not a fallacy to give a counter example . Pouring millions into your project is good if it makes sense practically . Your entire opinions lie on some presumptions that simply you can't know . I do agree on python turning into js 2.0 with all the env, managers , frameworks and libraries . But I like the type hinting as a documentation tool . It is what it is , you can just do it lightly and it's delightful for scripting .
Also, to add... When dealing with code, it is generally not the execution speed that matters but how maintainable it is. Being able to iterate quickly on code to get features to market is often better than having code running 3x faster (remember python can use C and Rust in libraries) but needing minutes to compile each time you make a change.
How incredible is it that a language can suck so bad that you need 4 different tools to replace the standard tool chain and fix all the bad designs with the language itself.
Yeah no. Don't try to make a language be what it's not supposed to be. Keep Python being the scripting language to automate tasks and run simple stuff with fast setup. There is absolutely no need to use all this. If you're trying to do some form of "proper" application software development with Python, you're just too lazy to learn a language that is optimized for it. Same goes for Rust btw, and C++ and C# for that matter, but with other parameters. Neither Rust nor C++ is the answer to everything unless you're a diehard fanboy for no good reason.
You can code away without types and this works well... but when it comes to testing your codebase with other code, having types is useful to stop errors before they become a problem. Also, your code will run faster as you are giving some hinting to the python interpreter about his stuff should work.
Bros are moving from type-safe to dynamic because it's handy and then making dynamic type-safe again. They realize it's faster to spend 3x the time programming and 1/10x the time debugging
Pedantic and many are a hard pass for me. If your data structures are too complex, you're doing something wrong. A key feature of python is dynamic typing. If you need your ide to tell you what type a variable is, you're doing it wrong
CZcams shorts don’t let you link :( but all are open source!
I thought most people just use Chatgpt
You can have a CZcams short point to a long form video, and put the links in the description there!
1. Add structs
2. Add linting (with Rust)
3. Add static types (with Rust)
4. Add good package manager (with Rust)
5. Use docker
Wait which language were we talking about
We were talking about C
guys i think this is c#
I can only say it's clearly not Java
Structs (with rust) pydantic-core use rust
i think we're talking about javascript
"Docker runs every time"
*Laughs in Cuda.*
Me don't get 😢
OMG. RIIR (Rewrite it in Rust, the movement for rewriting the whole world in Rust) is no longer just a meme
It never was
I've seen so many command line tools and some GUI apps get rewritten in rust. and they're awesome btw. very fast, but they don't have unsafe problems and bad syntax of c++
Rust is definitely a meme
@@PixelThorn how so?
@RenderingUser don't know, but I am still struggling to decide between zig, rust and go 😅
Wow the prohpecy was true...
Rust really is taking the control everywhere =)
Rust is the Crab of Prophecy !
One who shall rule the word one who is omnipotent yet lurking deep in hearts of others.
Learning python ❌️
Learning Rust ✅️
social credits ✅
Job❌
Lots of companies are hiring rust developers, lots and lots of them.
Writing TypeScript ❌
Turning your python into TypeScript ✅
@@triplebb9809 tbh, python now support type hinding, it's not that much strict, but good enough if compared to typescript
Getting Docker to run in the first place can be a pain in the ass
Found a windows user...
@@vaisakhkm783 guilty. :D
Really ? Even with WSL it's relatively painless.
Getting a network to play nicely though ? Ha.
Cheat and use a compose file
Rye is a tool to manage Python projects which uses UV and it's also made by Astral, it's really good :)
can you do a full YT video with more details, please?
Better switch to another static type language
1. take crap
2. add more crap
3. success
That's basically how evolution work.Whatever crap reproduces has some chance to add more crap which might be slightly better crap than what's going around. Each generation eliminating the crappiest crap raises the pool of better crap until it's not quite so crappy.
add more crab
This is the best Thread and epic pun@@NervylHraje
Been using Ruff and UV since 5 months and its a life changer when it comes to get installing stuffs fast and cleaning up code without freezing your ide.
Noticed a few edgecases when moving from pip to uv, but generally an awesome transition.
Moral of the story. Use rust.
You are in a phase... you will grow out of it
@@vaisakhkm783 My man, did you watch the short? Literally half of this video is telling you to use tools built in Rust because the Python tools suck
@@KanashimiMusic no no, i mean, python definitly sucks for big projects.. (i suffered too much)
but making something fast def out-ways benefits of beautifully engineered complete type safe project that took 6 months to complete... that is only going to be used by 20 internal team members.. (if something is actually useful, people ignore issue and crashes...)
things like rust only worth after a certain number of usersbase is reached...
me doing numerical computation on Python watching this list of Python toolkit I never heard of or ever used: 👁️👄👁️
😢
@@foxyolk literally same
Why not using typed languages directly?
Java is cumbersome, too verbose;
C++ and more so C are a ticket for the ER; Haskell, could be fun, I haven't tried it yet;
C# - maybe, but no one uses it in a cross platform manner, like Python!?
Rust, I would love to start using it, haven't put in the time yet.
Have I mentioned how uneasy I am with OpenJDK and .NET SDK licensing, like Oracle & Microsoft are always just about to pop a licensing stunt on all users!?
@@BogdanTestsSoftware Java is fine imo. And if it's too verbose for you, use Kotlin. It's specifically made to fix the verbosity problem that Java has, among other major issues. And it does that job beautifully.
Also, C# can easily be used in a cross-platform manner, I really don't know what your problem is.
Regarding your JDK licensing issues, there are many different JDK releases that are not made by Oracle. So like, that issue is really non-existent.
@@BogdanTestsSoftwarehaskell is really cool to write and has an amazing type system but its not super practical and going to it from a dynamically typed imperative language is like jumping off a cliff without a parachute
@@BogdanTestsSoftware C# is good cross-platform these days.
@@BogdanTestsSoftwarewhat about Go?
i have never heard of any of these tools, even though i consider myself an active programmer on the internet (in the meaning of being up to date, and knowing about the new tech)
I sould know about docker
You've never heard of docker? The rest are understandable, but the modern web-at-scale is literally built in docker (via k8s).
@@sophiophile i heard of docker, but not about anything else
Helpful
python devs realizing too late that they need types in their language hahahaha
Takes about the time of writing three classes and you get your first run time error.
I personally prefer pyright than mypy as type checker
You forgot rye - a complete project and package manager (uses uv for installing package too)
Thanks for the listing...love it
Thank you sir
So.... "How to turn Python into Rust, but slower" in 5 easy steps?
me who use all of them except "mypy". I will use it in the future anyway.
Glad you will use it!
Have a question. I have pylance and in vscode typecheking is basic. If I use mypy should I turn off vscode type checking? I tried mypy type checker by Microsoft worked me without pip install mypy. But it does not show undefined local variables with red sign. And also I don't like black formatter, it messed up my codes. For example while a greater b, it uses () in this code and in () it goes a new line @@CodingWithLewis
Literally any strongly typed language has all this built in. Just let Python go.....
Its about the libraries dude
Hahaha legit… i just love Python 😂
The libraries that only last a few years. FastAPI will be dead soon and there will be another library... Mind boggling
@@JackBauerDev that's just how all computer stuff works
@jackBauerDev this is what I was thinking when watching the video as well. Same has been done with Javascript and now Python... but yet Python lovers talk trash about strongly typed languages such as C# and Java.
"Hatch" is great too!
Wow
This dude is a low-key Rust marketer, who has been sent to discredit Python.
Thanks man
Just use rust and enjoy it…
Poetry is also such as great tool
Well written installation or venv creation script can pull docker out of the chain.
This is how you code python is 2025: rustup
Lewis is underrated
Bython - greatest ever: python with braces
Mypy is great, and it's actually pretty easy to hack on, especially with the Annotation type object.
Idc how much it kills me I'mma be a rust dev
Sorry, but this is the sort of advice that guarantees your product will never ship and never work on any two developers desktop the same way. Yes, including using Docker. Stop jumping to the newest bestesst hypest thing all of the time people.
bro reminds me of george cooper rip
I need video like this but for Typescript
Python hurts my eyes.
Most LSP configs do this almost out of the box and they beat the pants off of intellisense.
Hi Lewis!!! I actually beat bots to the comment section 😅
That’s how I know you’re a real one
Thanks!
I’ve been learning python for the past month or so now and I have no idea what to do with any of this lmao. I think I’m cooked
Never get diverted for the time. All those are supportive tools
This shorts its kinda fun bcz he only tells about backend usefull techs. If you write NN or do deep math computations - all of this is useless
It's a whole lot of things to learn on top of having to learn python itself.......
Python users should be learning Rust at this point.
So at the end, all of python is replaced by rust 😂
How to code Python in 2024: Just code. Nobody has to tell you how to code. Get some "Python for beginners" book at your local bookstore and go ahead. Maybe check conformation with PEP 8 before you make it public, but code as you want.
Is it worth using mypy even with VSCode? Asking bc IIRC the official VSCode extension for Python has its own tool that "conflicts" with mypy
"Who even are you guys, anyway?" Waaaiiit, you propose us to install some new software you don't even know the source of? Gee, I'm out. 😂
At this point, why do we even use Python?
At this point just straight-up use Rust
Wait! Why isnt anybody memtioning Mojo anymore? Isnt this still the natural evolution?🤔
PyCharm + SonarLint and Rainbow Brackets Plugins + Docker-/Compose
So python have like typescript in js?
what about Tkinter?
Use black instead of Ruff and you're set
Also this list seems a bit Rust biased
Ruff covers some of black's use-cases, but adding Black for formatting is useful still
What about pycharm? Is it good compared to the ones you mentioned?
PyCharm is an IDE. More turnkey than VisualStudio and built quite well
missed testcontainers
1. Pydantic
2. Black (WTH do we need speed here?)
3. ... ok maybe mypy
4. pdm (i got fed up with poetry)
5. Docker
I guess I'm only partially coding in 2024
ruff works as both a linter and formatter otherwise you'd need flake8, black and other crap
So basically hack it to make it more like java, c++ or c# got it 👍
Hot take, Smojo is one of the best programming languages ever. What do you think? 🤔
No love for poetry?
i don wanna, is too hard :(((
- Sincerely,
a C developer
Bython
Python with semicolon, and some C's things
Don't code python in 2024 😂 🙏
Just... just use Rust at this point.
people are crazy about every tool being written in rust like python wasn't written in C
I think people also seem to forget about things like brython - browser python, jython for python in a jre, micropython etc.The ecosystem is vast and touches on many other platforms and languages.
1) you choose normal language and learn it
2) code in it
As much as i love rust,c, go, can't beat the convince of quickly getting things done for an internal tool or a test server that only going to be used by just 20 people...
i dont think pydantic is that needed. native python typing system with mypy i think is enough
ruff is so useless. Pycharm already had that built in.
I loved Python when it was a powerful scripting system. I legit wanted to replace my shell with ipython at some point.
But it is obviously not ideal for large, performance sensitive applications.
Then they started adding all this static typing nonsense and at this point why not pull the band aid off and code in rust? It's OBVIOUSLY what you want.
Huge apps like instagram run on pure python . The type hinting is a very good documentation tool . Why talk big when you kind of lack ?
@@CrYpt001 instead of dumb ad-hoc fallacies actually think.
It doesn't matter that large apps are written in python if they have to pour millions into optimizing it because it is a slow language.
And I used to LOVE Python. I loved it's 'batteries included' approach back when we didn't juggle with virtualenvs. Back when it was just a really powerful scripting language.
Type hinting in Python combines the verbosity of Rust with the slowness of Python itself, minus the robust macro system.
But I guess you are just looking for people to anonymously insult.
@@sadsongs7731 Someone saw tsoding's video . Python's slowness is fine many times including for giant projects . It's not a fallacy to give a counter example . Pouring millions into your project is good if it makes sense practically . Your entire opinions lie on some presumptions that simply you can't know . I do agree on python turning into js 2.0 with all the env, managers , frameworks and libraries . But I like the type hinting as a documentation tool . It is what it is , you can just do it lightly and it's delightful for scripting .
Typehinting can give you a boost in speed in normal situations. Also you have tools like mypyc which can use to improve it further.
Also, to add...
When dealing with code, it is generally not the execution speed that matters but how maintainable it is. Being able to iterate quickly on code to get features to market is often better than having code running 3x faster (remember python can use C and Rust in libraries) but needing minutes to compile each time you make a change.
How incredible is it that a language can suck so bad that you need 4 different tools to replace the standard tool chain and fix all the bad designs with the language itself.
C, js, PHP, Python...
At this point shitty toolchain is the standard.
@@droga_mleczna At least 3 of those have a stdlib... ;)
Yeah no.
Don't try to make a language be what it's not supposed to be.
Keep Python being the scripting language to automate tasks and run simple stuff with fast setup.
There is absolutely no need to use all this.
If you're trying to do some form of "proper" application software development with Python, you're just too lazy to learn a language that is optimized for it.
Same goes for Rust btw, and C++ and C# for that matter, but with other parameters. Neither Rust nor C++ is the answer to everything unless you're a diehard fanboy for no good reason.
tools in rust for people who cant code in python. written in rust, that is c for people who cannot code in c.
seems legit
literally
Any resources on how to start with these
Their documentation is great! For the most part, it’s usually just plug and play
@@CodingWithLewisyou’re a GOAT for saying ‘try it’ and not ‘buy a course’
Types in Python! And I thought dynamic typing is why Python is better than Java
You can code away without types and this works well... but when it comes to testing your codebase with other code, having types is useful to stop errors before they become a problem. Also, your code will run faster as you are giving some hinting to the python interpreter about his stuff should work.
@@MikePreston-darkflib So, maybe then just use a statically-typed language? Like Java
@@rogerdinhelm4671 eew
Why are you even using python at this point? Just use a different language. Amateurish.
I just use idle
I don't use any of these things. I'm fine.
omg, Sheldon's dad explains cs
Why would someone still use Python?
Low barrier to entry and massive ecosystem that probably covers your use case.
Translate to English. Have no idea😅
I just realized you hid the like amount. Instant dislike
where is pypy?
How does MyPy differ from PyLance?
Pylance is an lsp (pyright) + other integrations. Its a near full featured extension for python dev. A formatter is just a single part of pylance.
@@hanzofuma Python isn't my first language, so I don't know what PyRight is. 😅
Yeah, exactly what you do when you know nothing about writing actual software. 🤘
you lost me at pydantic
or just use rust
Mypy is horrid compared to pyright
How to use Python in 2024: don't
why?
Bros are moving from type-safe to dynamic because it's handy and then making dynamic type-safe again.
They realize it's faster to spend 3x the time programming and 1/10x the time debugging
so when will {} be added?
"This is how you code in Python in 2024"
I have the simple answer: don't
Pedantic and many are a hard pass for me. If your data structures are too complex, you're doing something wrong. A key feature of python is dynamic typing. If you need your ide to tell you what type a variable is, you're doing it wrong
Still using python in 2024?
Sooooo, use a better language?
How to write good python: don't.
Wow... it's sort of like, all these features that are completely missing from vanilla Python... because it's a terrible language....
step 1: Pick another lanugage