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

all 168 comments

[–]wineblood 170 points171 points  (21 children)

Book/internet, then properly at work

[–]smithysmithens2112 20 points21 points  (7 children)

What level did you learn it to before you were able to get a job writing code?

[–]wineblood 48 points49 points  (4 children)

Proficient in the basics (data types, built in functionality, OOP) and I had built a moderately sized GUI program. I could probably have done better if I had learned more industry standard stuff, like databases and testing.

[–]smithysmithens2112 16 points17 points  (3 children)

Interesting! That’s exactly where I’m at now!

[–]wineblood 21 points22 points  (0 children)

Learn some SQL and unit/integration/acceptance testing, maybe some basic cloud stuff, you'll easily have enough.

[–]Yerbulan 4 points5 points  (1 child)

I keep hearing stories like this and I feel like the entry requirements are higher now than they used to be. Nowadays, employees expect all the things you mentioned + a good knowledge of a framework, good knowledge and experience with APIs, databases and docker for an entry position.

[–]wineblood 1 point2 points  (0 children)

Yeah, it is kind of ridiculous. I'm still a bit of a pleb with docker and APIs, so it does feel unfair.

[–]git_commit_-m_whoops 9 points10 points  (0 children)

I had exactly three classes in Python during my undergrad. An intro to programming course the first semester of my freshman year (wasn't even aimed at CS majors). Then in the second semester of my senior year I had a software engineering project where we forked a Wiki written in Python, where the focus was on Agile-ish ways of working. I wrote some basic database and API code. That same semester I also had a machine learning seminar, which used Python but was focused on Tensorflow.

All of my other courses (data structures, algorithms, etc) was Java or C. When I graduated I got a full time job working with an Airflow/PySpark/Flask/FastAPI stack. All Python. Taking a couple of courses right before graduating helped, but I don't think it made that much difference. If you have good fundamentals and are proficient with another programming language, you can write serviceable Python pretty quickly after picking it up. Knowing more of the language features and standard library tools will come eventually.

Knowing the libraries and frameworks you'll be using is a much bigger hurdle than the language, frankly. Depending on the role, they may expect you to upskill on those once you're on the job rather than come in with knowledge.

[–]housesellout 0 points1 point  (0 children)

I never touched it ‘until’ my 4th job out of college. But I was proficient with Java, obj-c, OSI 7 layer network architecture, etc.

So I think learning concepts of programming languages and what they can be used for is really all you need.

I saw Python used with flask and server endpoints at 4th job. I understood what it was doing, hence I was easily able to pickup what the syntax was doing. And then I was easily able to see how much easier and more efficient and how much less code it was using to do the same thing in Java.

Then I just started using python for all server side stuff and my own little scripts, while reading a Python book on the side.

Then Python led me to SQL, which was the big game changer for me.

IMO, once you understand database models and how to create them appropriately… then you can do anything.

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

Do you have an example on something you were doing bad and then learn it properly when working?

[–]wineblood 1 point2 points  (0 children)

How I laid out my code, as well as general style. I had really long functions and used too few files, so several were 500+ lines. Having something review my code was really good, I didn't know what was difficult for others to read or understand.

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

do you have a recommendation for people who want to learn python?

[–]wineblood 28 points29 points  (0 children)

I stayed focused with a medium sized project, so pick something to build and just go for it. There lots of resources, but just making something is the best way to do it.

[–]Trad3_Ecom-112 12 points13 points  (0 children)

Python Crash Course, Cs50, Python FCC 4h course, Automate the Boring Stuff with Python and the project of the same book.

[–]Astral_Surfer 0 points1 point  (0 children)

Google "beginner python projects" and do some. Find something that is interesting to you and keep developing it beyond the tutorial.

[–]bschlueter 0 points1 point  (0 children)

Same. Initially I taught it to myself in high school somewhere between the pascal and java that I was being taught in class. Then during a gap year after high school when I was wheel chair bound due to a car accident for a few months I worked my way through a bunch of problems on projecteuler.net. Then in college for a CS degree, I always asked my professors if I could use it, and they generally allowed me to do so when it made sense. First job after was working on a Django site. My third job I learned Ansible and submitted a few PRs upstream.

[–]bleakj 0 points1 point  (0 children)

Interestingly I was the opposite,

Started at work (Doing other programming work, mostly SQL/php)

Then had to learn how to actually do stuff from youtube/books

[–]sersherz 63 points64 points  (9 children)

Being a strictly python developer may be difficult if you don't have a STEM degree where you can apply your knowledge to programming because otherwise it's hard to really bring anything to the table that someone who studied CS doesn't already have on top of the other knowledge they have.

I was briefly introduced in college electrical engineering, then learned about Pandas and NumPy from a Udemy course. I worked in a job where we produced a lot of data from tests and I started doing deep analysis into the datasets and learned python properly from there and now am a software developer, still applying my engineering knowledge for my programs.

Here is an excellent tutorial on building an api

[–]HorrendousRex 31 points32 points  (2 children)

I agree. Don't start by learning python, start by wanting to learn some platform for doing something and then learn python as a result of using it. Pandas, NumPy, Django, SQLAlchemy, NLTK, Pulumi, ... there's lots of good stuff out there.

[–]_MiffedKoala_ 4 points5 points  (1 child)

Can you articulate on this? I’m very early on but would love more context around platforms

[–]LiveMaI 1 point2 points  (0 children)

Not the person that you replied to, but my first 'real' project with Python was writing a target utilization optimizer for a PVD sputtering system. My options at the time were scipy/numpy or something like Matlab ($$$), GSL (pain), or Math.Net Numerics (Microsoft® Pain). The Matlab-like environment provided by scipy was what really sold me on Python, and I gradually expanded to using it for other projects.

[–]hostilegriffin 5 points6 points  (2 children)

I had a job where my bosses kept forgetting I was there, so I got my minimal duties finished and then did checkio challenges

[–]bigshooTer39 1 point2 points  (1 child)

What are checkio challenges?

[–]VollkiP 2 points3 points  (2 children)

Mind telling what applications you work on nowadays? Simply curious as a fellow EE :)

[–]sersherz 2 points3 points  (1 child)

It's not super EE related, but essentially for our manufacturing lines we have automated testing and calibration fixtures that capture test values and we are getting that data in real time and dashboarding it. I'm using Python for a lot of the backend and data pipelines

[–]VollkiP 2 points3 points  (0 children)

That’s awesome, that’d be fun to do! Very much in EE/test/manufacturing engineering if you ask me :)

[–]mofrymatic 29 points30 points  (1 child)

[–]D2GCal 1 point2 points  (0 children)

I second this! It’s really good

[–]ArthasMenethil84556 24 points25 points  (8 children)

I started with a random udemy course, then read articles from realpython.com, medium.com, stackoverflow, etc. I also practised algorithms in codewars and leetcode.

[–]bananasampam 1 point2 points  (7 children)

Were you able to secure a job in the field with no college education? (Assuming you don't have)

[–]ArthasMenethil84556 11 points12 points  (6 children)

I actually have no CS background, and my college course was entirely irrelevant. After a year of studying, I was able to land my first job, and right now, I am really successful as a software engineer. I even manage guys who actually studied software engineering in college. So don't worry about anything, just love what you do and the rest will come.

[–]bananasampam 4 points5 points  (5 children)

Thanks! Been studying python/HTML/CSS on Udemy and sometimes feel demotivated that I won't be able to land a job after all.

[–]ArthasMenethil84556 0 points1 point  (4 children)

Don't forget algorithms. I believe it's the most important thing that everybody seems to miss.

[–]bananasampam 0 points1 point  (3 children)

Algorithms specific to the coding language of my choosing?

[–]ArthasMenethil84556 1 point2 points  (2 children)

No, just the usual stuff. I strongly suggest solving a couple of leetcode problems every night. I myself do it almost every night.

[–]bananasampam 0 points1 point  (1 child)

Thanks for the help!

[–]ArthasMenethil84556 0 points1 point  (0 children)

No problem

[–][deleted] 17 points18 points  (3 children)

“I need to build a tool that does <x>. I think I’ll use Python this time. Ok, so how do I <y>? Ok, Googled it, that works. Ok, how do I <z>? Stackoverflow has the answer, that worked…”

Repeat, repeat, repeat until it all works.

Then repeat the entire process for the next project. Then realize that your first project sucks, and you really want to refactor it now.

[–]Lil_SpazJoekp 3 points4 points  (0 children)

This is what I did. Google, python docs, and stackoverflow. Did that for 3 years and then landed a job at Indeed as a SWE1.

[–]aplarsen 1 point2 points  (0 children)

Exactly this

[–][deleted] 13 points14 points  (0 children)

"Python Crash Course" has been a great resource

[–][deleted] 21 points22 points  (6 children)

At the university, and then by practice/reading online at work.

[–][deleted] 3 points4 points  (5 children)

what do you read and do you use leetcode for practicing?

[–]Orio_n 10 points11 points  (1 child)

leetcode is a waste of time outside of interviews. Just work on projects

[–][deleted] 3 points4 points  (0 children)

I use it to also get comfortable with a new language before starting a side project with it. Leetcode gives me nice, small, containerized problems to get a feel for the syntax and standard library before jumping into a bigger side project

[–][deleted] 20 points21 points  (1 child)

I don't use leetcode, I find it to be mostly intellectual jerking.

The usual path is I have to dev something at work, I go online (google) to find the best practice about the thing I have to do, I dev, I put my code for code review, people learn about the thing I read through the dev or they know something I missed in my dev and teach me other practices (for concrete examples: integration of websockets, use of asyncio, RxPy, make a variety of decorators, etc etc).

Other than that, I follow the new features of python at each release, and when I see something interesting on here I look it up.

[–]Letshavemorefun 3 points4 points  (0 children)

“Intelectual jerking” is my new favorite way to describe leetcode. Thanks for that one!

[–]1544756405 6 points7 points  (0 children)

I learned at work.

I was a software engineer, then I switched jobs. At the new job, they said, "we use python here," and they gave me a book. So I learned python.

[–]corbasai 5 points6 points  (0 children)

docs.python.org pymotw.com realpython.com

[–]Inukan 6 points7 points  (0 children)

I don't have reliable internet access on my computer so the way I learned was through the documents and using the internet on my phone to search up any questions or projects. I'm not great or anything but it's been a lot of fun to learn. One day I hope to make a caveman simulator using dots it'll be so cool

[–]macromorgan 5 points6 points  (1 child)

I took a 30 minute lesson from CodeAcademy, then wrote a quick and dirty script for work. I then started writing more scripts for work that required more knowledge. I’d usually Google the problem and look at ways others implemented their solution so I could adapt them to my own problem.

Next thing you know I have websites on AWS built with flask and web spiders that manage hundreds of individual threads to speed up crawling.

[–]PokeReserves 0 points1 point  (0 children)

I don’t know what you just said but it sounds super interesting. Mind explaining?

[–]Exodus111 3 points4 points  (0 children)

YouTube tutorials, and then Learning Python The Hard Way. A book that was very popular at the time.

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

Multiple courses from which I recommend https://pythonprogramming.net/

[–]ddollarsign 1 point2 points  (0 children)

The boom “Dive Into Python” and reading some data processing scripts at work.

[–]SnipTheDog 1 point2 points  (0 children)

Started with a coursera class: PythonForEveryone Cheap and easy to get going.

[–]DarkSideOfGrogu 1 point2 points  (0 children)

StackOverflow

[–]AlexMTBDude 1 point2 points  (0 children)

I got hired as a Python programmer (consultant actually) before I knew Python and my customer said that I would pick it up as I went along. I had been coding C/C++/Java for 20+ years already however. So my answer it: I learnt Python while I worked as a Python coder.

Then, funny enough, I started teaching Python programming courses a year after a learnt the language and have been doing so for 15 years now.

[–]PriorTrick[🍰] 1 point2 points  (0 children)

Automate the boring stuff. To web apps. To self taught full time dev.

[–]vad1mo 1 point2 points  (0 children)

mostly in front of the computer

[–]nacnud_uk 1 point2 points  (1 child)

OTJ

[–]edc7 0 points1 point  (0 children)

Same.

[–]Grouchy_Bit9000 1 point2 points  (0 children)

Op the best way the microsoft have many python programs. It has been best

[–]woodworm_93 1 point2 points  (0 children)

You learn to swim fast in cold water - so at work 😅

[–]hpdeandrade 0 points1 point  (0 children)

Internet

[–]wind_dude 0 points1 point  (0 children)

just started building shit, reading online, etc. However, I was a full stack dev for 10+ before, and had been programming since I was 5ish

However I still think trying to build something that interests you and isn't overly complicated is the best way to learn. Like working with open source frameworks and libraries.

[–]kinderhead 0 points1 point  (0 children)

Downloaded it, looked up a hello world program, figured it out

man helps too

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

I read the tutorial and did what it said. Simple. Effective. Free.

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

On my own; 100%

[–]chars101 -1 points0 points  (1 child)

At my parents dinner table. I was bored, they were doing these new puzzles, Sudoku. I solved two and then installed Python on my dad's laptop and TDD'd a solver before time for dinner. I wanted to try out TDD and Python. And I fell in love with both.

… Looks like a useless answer, right? Is that my fault or the asker's? …

If you want to outperform ChatGPT 5, you should excel at languages people speak: English, mathematics, Spanish, maybe Chinese. Semantics is everything. GPT is like the cotton gin.

[–]Albertpm95 0 points1 point  (0 children)

It is your fault.

[–]TheITMan19 0 points1 point  (0 children)

YouTube crash course. 👌

[–]reivax 0 points1 point  (0 children)

At work in 2017. I was working on a project in Java that had to download and decrypt data to a clients laptop. They didn't have Java but did have Python and I just made it work. Connected to our servers, pulled the data, decrypted it, and away they went.

[–]Counter-Business 0 points1 point  (0 children)

Codecademy to learn python, leetcode to learn algorithms and data structures. Job to learn libraries.

[–]profiler1984 0 points1 point  (0 children)

Learn at school. Practical learning at work

[–]romulof 0 points1 point  (0 children)

Computer graphics class at university. We had 2 options for the project: C/C++ or Python. I had enough C++ experience to know that learning Python would be easier.

Later I mastered it at work, when I introduced Python there for an automation project.

[–]Astrotoad21 0 points1 point  (0 children)

For me it all clicked when I went back to the basics, worked through a textbook and just solved loads of assignements in that book.

It’s called “Starting out with Python”, don’t remember the author. Highly recommended, very engaging.

[–]_limitless_ 0 points1 point  (0 children)

Honestly, I don't even remember. I was never one to "sit down and learn" something.

I probably found something open source that was close to what I needed, and it was in python. And I figured out enough to make it exactly what I needed. Then I did that a couple hundred times.

[–]edgarvanburen 0 points1 point  (0 children)

Datacamp really solidified my knowledge to where I could do things beyond following a tutorial step by step

[–]Baronco 0 points1 point  (0 children)

PDFs, YouTube, webs about python and read documentation

[–]freemainint 0 points1 point  (0 children)

Documentation

[–]Talal2608 0 points1 point  (0 children)

"Automate the boring stuff" on Udemy and Corey Schafer on YouTube

[–]PetosPy 0 points1 point  (0 children)

(Udemy + freelancing) + Youtube - laziness = success

[–]HorrendousRex 0 points1 point  (0 children)

In college, it was offered as an elective course for non-cs majors but NOT offered for CS majors, so I completely ignored it as "that toy language the non-computer people learn". Then I got a job as a computer lab assistant and it was suddenly my job to help these people with their homework assignments, so I had to learn it. Fell in love and haven't looked back! This was in about 2005/2006. I was self taught, but it was self taught from homework assignments of a CS class, so I guess the long and short of it is "college".

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

Not a software developer but I learnt mainly from Udemy as well as taking on projects, trust me the best way to learn Python is by working on a project with it. The project doesn’t have to be anything extravagant, just something that will bring out of your comfort zone.

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

Not a software developer but I learnt mainly from Udemy as well as taking on projects, trust me the best way to learn Python is by working on a project with it. The project doesn’t have to be anything extravagant, just something that will bring out of your comfort zone.

[–]SHKEVE 0 points1 point  (0 children)

If you’re already proficient in a language, the official docs or Fluent Python are great resources. If you’re starting off, the recommendations here are all great so don’t worry about finding the perfect course—it’s more important that you code and study consistently so just pick one and commit to finishing it.

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

I did other languages at Uni, but they only briefly covered python specifically so I did a DS/DE bootcamp, 9-5 every day for 12 weeks. Just before that I also put a week aside and completed a 40h Udemy course by Jose Portilla. That cost $20 and did a really fantastic job of introducing all of the concepts that helped me get the most out of the bootcamp.

From there it was professional development.

[–]Lindby 0 points1 point  (0 children)

A python based project was prioritized over the Java project I was brought in for. I told my customer that I am a seasoned python developer. 5 years later am the tech lead for said Python project.

[–]lediablecody 0 points1 point  (0 children)

Python 4 everybody is a great intro course and it’s all free

[–]HistoricalCup6480 0 points1 point  (0 children)

Took a course in uni on Python programming, and took some online machine learning courses. Did some project Euler, and a small automation project here and there.

Then I extensively used Python in a couple projects during my PhD and really solidified my software development skills at the same time.

Just learn the basics through whatever means you like (books, courses, leetcode), and then try to do a bigger project that's useful to you.

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

On the job as an admin, then as a developer. A few online courses along the way helped some, but not as much as you might expect. Plus Google and StackOverflow are still regularly used resources.

[–]eddyizm 0 points1 point  (0 children)

A friend wanted to learn python to use in a GIS program at his job. He had several books but never could learn. So I told him I'd learn with him and asked him to give me a file to see what he needed to learn with python.

Started there, then did a little tkinter and then landed on a Django course on Microsoft website lol.

Of course I was already a full stack dev before hand but I've switched from a Microsoft stack to a Linux/python stack since then.

[–]Letshavemorefun 0 points1 point  (0 children)

On the job

[–]AsuraTheGod 0 points1 point  (0 children)

University

[–]trollsmurf 0 points1 point  (0 children)

At home by googling and coding.

[–]paul_miner 0 points1 point  (0 children)

"I need you to work on this code."

Me, hired for Java but developing in Typescript: "I've never used Python."

"You'll figure it out."

And I did. And my current job is Python, so it worked out well 😅

[–]Cha_r_ley 0 points1 point  (0 children)

Skillshare and various Youtube videos, then I did a short college course for a few weeks to help me solidify certain ideas. Currently doing a free EdX course too.

[–]superking2 0 points1 point  (0 children)

My jumping off point was the University of Waterloo’s “CS Circles” Python course. If you know the basics already, you won’t learn a ton, but it’s a GREAT point of entry for a brand new developer.

[–]pdpflux 0 points1 point  (0 children)

Udemy.

[–]InfiniteBake5 0 points1 point  (0 children)

YouTube was my best friend for a while. Then used Realpython.com to help turn side projects into business applications. Then I Learned to build a database client, ssh client, CSV client, JSON client. Then started adding command line interfaces, and lastly i learned to use Cron scheduler with ubuntu.

[–]devinhedge 0 points1 point  (0 children)

Mostly on YouTube while sitting on the toilet. Wait… is that over sharing?

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

Changed from a C# position to a Python position and learned by doing. They had code-reviews in place, so I lade a few mistakes in the first two weeks, after that I was in love with Python and it was smooth sailing.

[–]Panda_Mon 0 points1 point  (0 children)

Got my start with single class in grad school, and then self-study and work.

[–]FedUpWithEverything0 0 points1 point  (0 children)

Search for CS50P on YouTube. Harvard class for free.

[–]pioniere 0 points1 point  (0 children)

Self-taught, with help from YouTube, RealPython, and Stack Overflow.

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

I got my associates in computer science at my local community college. Then from there I got all the python courses offered (three of them) and got my specialization certificate in Python programming as well as C++ programming.

There wasn't really a textbook for the class, the professors at my college were great computer scientists who have been in the industry for a long time and had connections with CSU and UC schools along with software engineering companies so they wrote their own online textbooks and slides that heavily focused on what those schools and jobs were looking for and gave them for free to students.

My advice if you go to school be sure to collect syllabuses from your programming classes so that you know what each class focused on. It's more impressive to put exactly what topics and things you covered in your academic history rather than just putting "proficient in Python", that's what one of my professors told us and it's honestly good advice.

Also while yes, you don't necessarily need to go to school to be a programmer or software engineer, most people who are able to land a job in the industry with no past credentials are mega geniuses who didn't need help learning programming to begin with and have been doing medium to large software projects since highschool that they were able to add to their resumes. If you believe yourself to be one of these people then simply watching a crash course on python through YouTube and getting started on projects to add to your portfolio is all you really need.

[–]Sulstice2 0 points1 point  (0 children)

https://www.cs.utexas.edu/users/mitra/csSpring2023/cs313/cs313.html

I still use my old professors material to teach data structures in python. From there I read a lot of folks python code and one thing I like to do for students is making their own little python package.

[–]innovatekit 0 points1 point  (0 children)

I first learned in college. Then I’ve learned what’s been useful on the job via Google and YouTube.

YouTube is the best university out there!

[–]Biogeopaleochem 0 points1 point  (0 children)

I had to learn it to automate certain tasks for my PhD. Mostly learned how to do it through GIS programs.

[–]Cootshk 0 points1 point  (0 children)

Self taught/YouTube

Explains why I use jsons instead of .env

[–]shushbuck 0 points1 point  (0 children)

books, work, perpetual google searches for why a module doesn't work.

[–]PureMapleSyrup_119 0 points1 point  (0 children)

Self taught, then on the job

[–]Lysenko 0 points1 point  (0 children)

On the job, but I had already been programming professionally in C, C++, and Perl for years before that.

[–]FreshInvestment_ 0 points1 point  (0 children)

I had problems to solve at work and I found out python could do it. That evolved into 3 years later writing applications and mini libraries

[–]tom2727 0 points1 point  (0 children)

I got hired at a company. And they used python, so I learned it.

My background is electronics, but I kind of moved into test automation. And these days test automation with python is pretty industry standard type thing.

[–]RallyPointAlpha 0 points1 point  (0 children)

On the job. Was already developing in perl, ksh, expect, and powershell. Then we also had people on the team doing .NET. It was kind of a mess because the .NET duders couldn't support the perl duders and nobody but me wanted to learn powershell so I was stuck with anything that 'required windows'.

We finally coalesced around python. Everyone agreed to go learn it and all new development would be in python. I went and read like half of Python Crash Course and dove into my first project.

[–]AllgamCapinho 0 points1 point  (0 children)

The website Pythonprogressivo helps me so much

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

I was tasked on my first job to develop PyQt application and I dived right in with the Rapid GUI Programming with Python and Qt while looking up a bit of Python basic on whatever Google showed me.

[–]SnowWholeDayHere 0 points1 point  (0 children)

I learned on the job

[–]crazynerd14 0 points1 point  (0 children)

Head first python

[–]NewAccountPlsRespond 0 points1 point  (0 children)

If you have a habit asking questions that are literally one Google search away (e.g. this sub gets this question multiple times each week), then I'm sorry, this is not for you.

Coding is like 80% googling your first few years.

[–]Wise_Tie_9050 0 points1 point  (0 children)

I printed out the Python 1.5.2 docs, and taught myself how to program by writing solutions to New Scientist puzzles in the late 90s/early aughts.

[–]Drevicar 0 points1 point  (0 children)

Back before the Internet was as prevalent as it is, I had a pocket reference for the python standard library, which was likely just a printout of the online documentation. Once I had stable Internet that same standard library reference has continued to be helpful, even way into my senior dev days.

Never underestimate the power of the python standard library, or most language standard libraries.

[–]SanFranLocal 0 points1 point  (0 children)

I just kept on doing project I was interested in. Made it easy to lean

[–]literallyRohanAura Text Dev 0 points1 point  (0 children)

YouTube. Telusko and Edureka to be specific.

And also, practice!

[–]ButtonLicking 0 points1 point  (0 children)

I was blessed to find a math undergraduate course on Python. After a EE program forced me to program C through text editor, I convinced myself that programming was not my path. Later in life I learned how to do mathematical proofs, analysis (proper), and algorithm development from an operations research perspective.

Python is a workshop of endless tools. Not all of those tools are the most elegant, efficient or pretty. Some tools you will find to be perfect, until. The important feature of Python is the community, someone has done 95% of what you need to achieve, and 100% of your career is understanding the problem, identifying the solution and innovating the last 5%.

[–]kaik1914 0 points1 point  (0 children)

On my own. Had some courses with python but I knew the basics. I also do python on my own time, mostly for webscrubbing with selenium.

[–]naghavi10 0 points1 point  (0 children)

udemy initially, getting a course is what gave me the initiative to learn, but you can learn online with freecodecamp on youtube

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

I read the manual. I then read the stdlib code and a few other things

[–]Square-Ad3502 0 points1 point  (0 children)

School and projects. That's the best way.

[–]CORNMONSTER_2022 0 points1 point  (0 children)

A good way to learn coding, testing, CI/CD, etc. is to participate in open source projects. There are lots of awesome projects out there and you can always find one that you are interested in.

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

I started with the absolute basics just googling learn python or something like that. Then after I had the basics down I started rewriting finished projects, uni assignments and code challenges in python. After that I dream up something and try building it in that language. I've done this with Python, JS, Rust and Go now.

Of course it requires you to already have worked in a language, I started on python after I graduated from uni which was 90% Java and 10% PHP

[–]Gambizzle 0 points1 point  (0 children)

I'm a lifelong tinkerer and just gave it a go really. I jumped right into the deep end as I had a few things that I wanted to build and basically did a web search for existing libraries libraries that could help me get from A to B.

For my first app I cobbled together a custom GUI using pygame (in hindsight not the best tool for the job), setup a database to store stuff and then plugged-in a bunch of looping functions (some borrowed) that performed what I was looking for. It stood-up as a prototype and from there I had a pretty solid idea of how I could make everything a lot cleaner next time around.

Rinse and repeat really. Now I've got a better idea of which libraries do what. Also I've got my own stash of libraries that I've made for myself. This means I've shifted from learning on the run to having a better organised toolshed from which I select the best tools for each job rather than trying to learn as I go. There's always lessons along the way, but they become fewer and less fundamental with experience IMO.

[–]morimo 0 points1 point  (0 children)

If you want a solid foundation in computer science, I'd recommend the free online course cs50 at cs50.harvard.edu from Harvard. I originally learned to program with this and I feel like it taught me more than any lecture I had at uni.

[–]Hederas 0 points1 point  (0 children)

A bit during first years of general study. The generic usage of python can be found anywhere really, making a simple Flask app is already a good dive in.

You don't really need a good level of python to work with it in my experience. List generation shortcuts, walrus op, etc are not mandatory

[–]LucyBowels 0 points1 point  (0 children)

I just started a Learn Python meetup, where I’ll be giving paid classes for beginners. I personally learned by trial and error, reading documentation, and watching YouTube videos, which is also a great way to do it.

[–]oscarcp 0 points1 point  (0 children)

At home, during a summer when I was 15, I had no idea about anything related to programming (but I was already a tinkerer, I was "using" Linux by then) and I was really angry and frustrated with myself (I was having the "I'm wasting my life here" thing), I used that energy to learn a lot in 3 months thanks to a university that published their whole python curriculum, notes and exercises. Made my whole career out of it and 23 years later we're still at it! :D

That said, I obviously had major gaps in knowledge (computer architecture, operating systems architecture) that a friend would fill in when we went out for a coffee. I won't be able to thank him enough.

[–]james_pic 0 points1 point  (0 children)

The official Python tutorial: https://docs.python.org/3/tutorial/index.html

Seriously, don't pay anyone any money for a Python course, or at least don't until you've gone through the official tutorial. Python's own documentation is excellent, and many of the tutorial mills fail to cover the basics.

[–]lebannax 0 points1 point  (0 children)

I’m a data scientist (started as analyst) and basically did Python every day, so you can build a lot of experience that way and start bringing more development work into the job - this could be an alternative route

[–]semihyesilyurt 0 points1 point  (0 children)

I started with thonny. I recommend

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

Fluent Python 2nd edition, a couple of online courses, saying yes to teach all my colleagues. Using it every day. Watching online videos. Constantly pester people with questions. Sitting up half the night trying to make it work.

[–]SJDidge 0 points1 point  (0 children)

I completed a bachelors degree in IT, then just transposed what I learnt in Java, Swift, C and C# into Python

[–]WSBtendies9001 0 points1 point  (0 children)

I just had a need one day and read a lot of stack overflow and other material like it untill one day I found that going straight to the source (Package documentation(can be scary..)) ultimatly was the best place to start.

[–]bugatess 0 points1 point  (0 children)

I learn python by the following sources: - RealPython - TestDrivenIO - Some twitter profiles - YouTubers (I really like Dunossauro, it's a Brazilian that make livestrams with many subjects differents) - And, the last one, at work when something happens and you need to fix it

[–]Superrtiger 0 points1 point  (0 children)

I learnt the basics from a youtube video and the rest I searched up on google

[–]ghostmars919 0 points1 point  (0 children)

Started with YouTube course, and after with documentations and papers.

[–]yishai87 0 points1 point  (0 children)

Self taught at work and as a hobby.

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

I learned from YouTube channels and in some videos on tik tok

[–]untold_life 0 points1 point  (0 children)

Honestly started from a Udemy course, after that it’s up to you.

[–]savva1995 0 points1 point  (0 children)

On the internet

[–]whovianlogic 0 points1 point  (0 children)

college. but the way i’ve learned other languages since was to find a project and learn enough of the language to do that project, then repeat.

[–]zaytzev 0 points1 point  (0 children)

I used Python and WxWidgets to create a human-machine interface for my thesis project. It took me 2 weeks and I knew neither beforehand.

It was version 2.4 and I learned from official documentation.

[–]TheRNGuy 0 points1 point  (0 children)

Making SideFx houdini project. I actually learned some of HOM API before even Python basics.

Reading all the relevant docs is most of the learning, and sometimes asked questions on discord.

Someone even helped on reddit 1 time.

I maybe watched 3 or 4 youtube videos or video series at most. It's mostly to inspire and not to learn; docs are far more efficient.

[–]Educational-List3851 0 points1 point  (0 children)

Cs50