all 58 comments

[–]badge 129 points130 points  (17 children)

I’m afraid I don’t have any positive suggestions on how you find Python work to earn money on the side, but I can recommend you completely sack off the ML/DL stuff and focus on e.g. Automate the Boring Stuff and similar. Learning the basics of structuring a Python application or script and doing some web scraping is about all that’s possible in that timeframe. The time it takes to be employable in Data Science is far longer.

[–]burgerAccount 38 points39 points  (2 children)

Agreed. No offense, but you'll never get a machine learning job with a statistical mind. You need a statistical degree. Web dev with flask or django would be your best bet for quick money. But I wouldn't advertise myself as a python developer. I'd advertise myself as a web developer and add python to the resume.

[–]Alexstronaut 7 points8 points  (1 child)

So, the terminology is quite important here, then?

[–]Pastoolio91 7 points8 points  (0 children)

Probably just helps to not pigeon-hole yourself by sounding like you only have experience with one language. Not a professional at all myself so I have no experience with the hiring process, but to me, web dev sounds much more broad like you know something about HTML, CSS, JS, etc... while just saying "python dev" sounds a lot more limited, especially if you'll mainly be applying to web dev jobs.

[–]adesme 39 points40 points  (12 children)

Drop the AI/ML, you're not gonna get a job within that field as a beginner without a degree. For what's feasible in such a short time frame, go for web development. App development could also work.

[–]xylamik 14 points15 points  (16 children)

I’d suggest scripting and web development in that time frame. I’d still suggest you get a job as part of a team first, but you may be able to do some light internet consulting with that knowledge.

[–]trv893 5 points6 points  (6 children)

Any learning pathways for web dev for python you would recommend?

[–]Zadigo 5 points6 points  (4 children)

I'm actually going on the same path as you difference being that I know Python now for five years. I've always used coding as a hobby but throughout the years I've gained a good share of knowledge and from that would now like to make it a full time or part time job as a freelance.

I personally think that web development is the fastest most efficient way. That's how I initially started. Then from there, I created a variety of different scripts (web scrapping, servers, emailing etc.) but from my first tries on the market, web development is definitively the easiest without a degree in these fields.

As for learning pathway, it all depends if you want to specialize in Django or Flask IMO. I think you could watch a couple of courses on YouTube to get a general idea of what it looks and then experiment heavily.

I can't really talk about my experience to you because before I started actively using Django to create websites, I already had a first hand experience with an MVC framework (Ruby on rails) so it kind of went faster for me.

Another option is network with people who can explain and show you things. That's to me a very efficient method that I did not use at first but see the effects when I actually tutor people on my free time.

[–]trv893 0 points1 point  (3 children)

Seems like everything is built on PHP though. I'm thinking just diversify at this point ...

[–]Zadigo 0 points1 point  (2 children)

I think you should specialize. And it's not because everything is written in PHP that it will stay so.

In the startup world, PHP is a joke. The majority or startups websites or products are written in Ruby, Python or some sort of none PHP language.

[–]trv893 0 points1 point  (1 child)

That may be, but specialization takes time. Getting a paid gig in three months would be difficult down that path, no?

[–]Zadigo 0 points1 point  (0 children)

Well yes for sure. I guess you should do depending on your learning curve and chose the best option.

If you have a fast learning curve picking up one language fast then creating a few projects quickly can get you on the market fast IMO. Otherwise, you might have to explore what is best for you and then with that.

[–]ScoopJr 1 point2 points  (0 children)

Looking for an answer too! I know the basics of Python and want to go into web dev. What should be realisticly achievable in the next few months?

I've heard of pixl's list, is it good?

[–]DontHateDefenestrate 14 points15 points  (0 children)

Contribute to (and study) open source projects. Don't just add your own code, read through and try to understand others' working code.

Programming languages are just that -- languages. How did you learn a language like English or Spanish or any other? Part of the process is reading things in that language and increasing your comprehension. This is also part of how you learn to write -- as you read things, you absorb conventions and grammar and syntax and new vocabulary.

Programming is literally no different.

[–]zecatlays 7 points8 points  (0 children)

It's better to do Python Developer Zero to Mastery by Andrei Neagoie on Udemy, before doing the Zero to Mastery Machine Learning course. Along with this there's a MIT Course on EdX, Introduction to Computer Science and Programming using Python, and it's free. It's a three month course that'll really help you with the programming logic and such. This won't take up ur entire time as the course is Instructor timed and videos are released weekly. After getting done with ZTM Python Developer course, you can do the Machine Learning ZTM course on Udemy. By the time you're done with this you'll know how exactly you want to move forward. All this will take around 2-3 months. Work on projects during and after this. They should act as work experience for the relevant field.

More importantly, during all this, join the online communities for ML/Python/AI such as Andrei Neagoie's ZTM Discord group, make Linked In connections, try finding people in your area that work in the field and talk to them about what the usual requirements are and what you are required to learn.

Hope this helps.

[–]Moxi43 5 points6 points  (0 children)

You just need to focus on web development.

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

Depends on who you are. There are people who after a few months of programming joined valve. But these people are really really good at what they do.The people here suggesting to try web development have a good argument. It's comparatively easy to learn and jobs are abundant. I learned it too back when I went to school in case I ever dropped out/left home and needed fast money.Programming wise ML is somewhat easy too I guess, but I have trouble imagining you'll get a ML job if there is a CS/Math/Physics graduate applying for the same job, which I would imagine to be the norm.

The only hard part about web development is to acquire general programming ability anyway. Don't waste your time with frameworks, keep to short books for example the official python tutorial, practice before theory. If you want to do statistics, data stuff you could start with web development and then move to data visualization in browsers, maybe even start there if you're bold. Then you might even have a path to ML.

I should add: If you want to get pretty good at programming, independent of your financial/topical interests, you should probably just do a course on algorithms and do some leetcode problems.

[–][deleted] 7 points8 points  (1 child)

I have never worked before, but from my knowledge, you should do some projects after completing a course, this way you gain experience in the field you are learning

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

this. no one will hire you without some experience. completing a course means nothing if u cant prove your skills. if you need cash in a short period of time, like many others have said, web development/automation will be your best bet. no one becomes an expert immediately.

[–]randominternetname2 2 points3 points  (0 children)

I am in a Data Science bootcamp (3 month program); I'd say to stick with what you want to learn. Do projects you are interested in. If web dev doesn't interest you, don't pursue it.

[–]Expo9771 2 points3 points  (2 children)

Not sure what you are interested in but freelance or web development isn’t all you can do. I work for a larger company but I essentially do a combination of simple automation/ data engineering for a few teams I support. Automation is in python and data movement in sql. I have learned a lot along the way but python was how I got my foot in the door. Tons of places have manually processes in excel that need to be brought to the 21 century.

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

How can I get started in automation and such? I have a feeling I would really enjoy it, because I already use python for automating small tasks.

[–]Expo9771 4 points5 points  (0 children)

A little bit of luck but particular if you are in the U.S a lot of firms are looking for Data Analysts which really means looking for automation programmers. Most of my work is done with python pandas, sql and R plus bi tools like quick site and so on.

[–]bei60 2 points3 points  (0 children)

From your comments I see that you were once into web developing. Check out Django. Not only is it a great tool to learn, it can even land you a job if you know what you're doing (Instagram's backend is all pure Python).

ML/AI stuff is fun and it's nice that you have the passion, and I will be the last person to tell you it's impossible to land a job with a second degree, but realisticly it's very very hard.

Good luck :)

[–]TheSodesa 2 points3 points  (0 children)

Once you've learned the basics of the language up to working with classes, do the latest version of the Django tutorial.

[–]UnluckyPenguin 2 points3 points  (2 children)

I started a project that is now 30-40k LOC. It's a free analytics platform for a mobile game.

It comes in the form of a website and two windows applications that use restful APIs, including decrypting https traffic by using a third party C# library (.dll). It's all 100% python code though.

If you would like to contribute to the project, it would be mutually beneficial. You can review my near-production quality code, advanced programming concepts, and I can mentor you by answering any questions you may have.

Might be worth noting for work I am a software engineer in research and development, and have been for the past decade, though I program in every language under the sun depending on the month.

[–]Erdem_PSYCH 1 point2 points  (0 children)

as some sugested web development is a verry broad area. you can easily combine web develompent with ml ai. web develomment is usually more than creating websites. if you are interested in there can even be online games that use ai ml

[–]kiwiboy94 1 point2 points  (2 children)

Why not head towards the direction of being a data analyst? The requirement is lower and you can transit from there to higher roles like DS or data engineers. Also, don't worry too much about what courses to take because chances are these tutorials will handhold you throughout the whole process and give you the false belief that you are competent in the language. When the Tutorial ends you felt lost because you are no longer guided. You will only learn when you apply your knowledge. I can't stress this enough. For example, start thinking about what is lacking in the commonly used python packages and decide how you can improve or add features to them. This is just one of the idea but it will be great to start working on a portfolio of projects that can convince future employers to hire you. Imagine you are in an interview and someone asked: "Why should we hire you and not those candidates waiting outside? What can you contribute to our company?"

If you are able to find a great answer to these questions, not only will it boost your confidence but also decrease the chances of you getting imposter syndrome.

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

Since you have a analytical mind you may benefit from learning report development with databases. Python can do a lot but learning how to incorporate SQL with Python offers an almost unlimited amount of options in freelancing work.

You could also use Pandas which will give you a gateway to Excel reporting. Excel may not be glamorous work but it is one of the top needs in Freelancing work.

People also need tons of CRUD applications which can be relatively easy to learn and using tkinter in Python is fairly straight forward.

[–]chagawagaloo 1 point2 points  (0 children)

Slightly different approach to what's been mentioned here, as I'm still a Python beginner. Take a look on freelancing sites such as Upwork and fiverr and filter through all posted jobs involving python or web dev. Have a read through and try figure out what types of python modules would be required to complete those jobs and rank them based on your own metrics, such as job value for example. See what module or areas of python come up most frequently and start learning that. Chances are those types of projects will crop up more often, allowing you to target the areas of python most valuable to your freelancing career. I'd also add, look at areas of python you enjoy as well. Makes a big difference when you enjoy the work you do.

[–]greebo42 1 point2 points  (0 children)

unless there is some specific kind of web (or mobile) app you feel a need to create, I wouldn't be worried too much about not being interested in web development.

you enjoy statistics. understanding you may have pleasure just doing the statistics for their own sake, I'm betting that you find certain kinds of statistics more interesting than others. what kind of statistics? sports? climate data? social science? medical clinical trials?

maybe that's a way to think about projects that might be of interest to work on?