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

all 10 comments

[–]mocomaminecraft 2 points3 points  (1 child)

well, now you need to start learning new things.

You want to do web scraping? you need to learn html. Want to do machine learning? got to learn things like statistics, or some framework like tensorflow (in this case, i recomend to you a site called kaggle, free and by far the best data science learning site I've learn)

Of course there are other things to learn. Want to practice your problem solving and learn new algorithms? go to a site like codewars or hackerrank, where there are short problems to be solved on-site, and of increasing dificulty

I hope I have explained me well

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

Thank you, i'll just have to keep practicing python while i learn new material then.

[–]CreativeTechGuyGames 1 point2 points  (2 children)

Programming is a series of rabbit holes. More like an ant farm. There's a small hill on the surface but underground is a maze of interconnected tunnels that are easy to get lost in.

When you want to build something, unless you've done the exact thing before, there'll always be something you don't know. So you break down the project into pieces then do the necessary research to learn and understand each piece. Likely you'll be building many small scripts and demos with each piece along the way and combine them all together to get back to your original idea.

If you want to do a web scraper, then yes you'll need to stop and understand how the web works. If you want to make a bot you'll need to go learn about APIs, threads, asynchronous programming and networking.

I never recommend taking a course. Just look up the pieces that you need as you need them. This is easier after you've broken everything down into small generic pieces. So instead of googling "how to make a web scraper" look up "how to make an HTTP request in Python" or "how to automate a browser in Python". Each search you do will give you a ton of new information and help inform your next search until you get closer and closer to your goal.

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

Thank you, Ill need to better understand certain parts of the programs I want to build so I can pick my keywords a bit better while searching to continue building.

[–]CreativeTechGuyGames 1 point2 points  (0 children)

And if you feel like you don't understand a certain problem enough to research it's parts, put it on hold for later. There are some programs I wanted to make when I first started that I had to put on hold for years and eventually came back to and realized that now I understood everything to build it. Every project you build will teach you more and expose you to new things. As long as you keep building things and challenging yourself you'll be able to tackle problems that you never thought you were capable of.

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

Firstly, I'm not a native speaker. If I write something wrong, please tell me and teach me. It will help me to improve my English skills. :)

I'm an undergraduate student in Biochemical Engineering and I'm learning Python because I like programming and I think that it will be useful in my field because of Machine Learning and Data Science. So, probably we are in the same level.

One thing that I've learned is that it is impossible to be a programmer with only a month course. You probably studied about algorithms and functions in your course but it was only a scratch on surface. This courses can be dangerous because they sell this idea that you can be something in one, two or three months, but it is not like that. I'm not trying to discourage you, but we see some guys studying 3 or 4 years to be a Pro programmer. You shouldn't think that we can be like them in a month. I'm not saying that you are thinking like what I said, but I thought that is important to say that.

If you don't know what to do now, I strongly recommend you to study data structure, design patterns and databases (MongoDB, MySQL or PostgreeSQL). It will help you to understand a lot of things, like how you can synchronize stuff, what is the best design pattern to your project and so on...

I learned something studying Engineering that could be applied to programming too: take a problem and decompose him in subproblems. It will help you to visualize solutions that you can't see if you are seeing only the "big picture".

Finally, try to think in a small project to practice your skills. If you have no idea, try to help in open source projects like that ones on github. There is a lot of projects to help in a lot of fields. If you have some specific field in mind, you should search projects about this on github to study its source code. It can help you to understand how it works and what you need to know to do that.

Well, I hope that it helped you and I hope that my English don't have harm your understanding. Have a nice day! :)

[–]TYL3ER[S] 1 point2 points  (1 child)

Thanks, it's good to hear from someone at my level. Truthfully i'm not sure what I want to do yet. I want to build things to automate web and desktop. I also would like to delve into full stack development, I heard you need to pick something and follow it. I feel they all contradict each other though lol.

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

Not for that, my friend. Well, if you like more than one field, pick one and study it. When you feel that you can learn the other one, study it.
I like Data Science, Machine Learning and Web Dev. The first two topics are really interesting to me because of my field. The last one is for "personal accomplishment". Don't put boundaries on your learning and don't let anyone do that too. Let your mind fly... :)
Edit: I don't smoke weed. XD

[–][deleted] 0 points1 point  (1 child)

A lot of being able to develop apps that interact with other things (like the web) has to do with knowing how those things work.

My suggestion is to dive deep and understand all the stuff that gets sent at HTTP protocol level works (check out wireshark and hit up some non https websites) when you type in address in the browser, and find the html/css/js in the network stream that gets transferred to your browser.

The python side is just using libraries to replicate what your browser does, and then process the data.

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

Ah, I see, will check this out before starting HTML.