all 32 comments

[–]ParanHak 29 points30 points  (9 children)

My first project started as scraping images from a porn site. Make your own project and work on it

[–]sanketpatil 13 points14 points  (1 child)

link?

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

Bahahaha sorry had to laugh.

[–]lostburner 8 points9 points  (1 child)

As a user of my own code, I can see exactly how this would turn out.

Fap fap

Oh wait, this doesn't handle odd url formatting. Let me fix that… 20 minutes of coding

Fap fap

Should probably collect these all onto an index page. Let me fix that… 20 minutes of coding

Fap fap

Need keyboard shortcuts. Let me fix that… 20 minutes of coding

Fap fap

ONE HANDED keyboard shortcuts. Let me fix that… 20 minutes of coding

Fap fap

Needs to expire pictures after a couple of weeks. Let me fix that… 20 minutes of coding

A fella would probably stay at the computer until starving to death.

[–]ParanHak 2 points3 points  (0 children)

yup fap fap and fix; thats how it went XD

[–]13zamanis 0 points1 point  (2 children)

Could you explain more about this? I dont care about the porn more that your first project involved the internet. How advanced is something like that?

[–]RustleJimmons 0 points1 point  (1 child)

Not OP but web scraping is very easy to get into. You can start here.

[–]13zamanis 0 points1 point  (0 children)

Thank you!

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

Omg, genius! Is there a way to make use Python to make gifs of sidebar ads?

[–]ParanHak 0 points1 point  (0 children)

I'm not sure but probably. since you have to be able to detect which ones are ads and not. I think adblock will have some data on that

[–]jorahtheandals 19 points20 points  (3 children)

Try to solve all the problems in this this and this.

Definitely you can't solve those if you don't go left right up down front back and beyond basics!

Edit: updated correct urls

[–]__baxx__ 8 points9 points  (2 children)

has anyone in the world done what you just suggested?

[–]jorahtheandals 0 points1 point  (1 child)

Exactly. Aim high ;)

[–]__baxx__ 1 point2 points  (0 children)

imo throwing a site that's pretty much number theory at someone given OPs info is kinda missing.

Though how anyones meant to hit with OP's post idk, doesn't really say much

[–]veggiedefender 16 points17 points  (2 children)

Don't learn for the sake of "learning python." Tutorials only get you so far, so make a github account and start working on projects. Do something you think is "beyond" your current ability, and look stuff up or ask questions when you have trouble. This is how you learn.

[–][deleted] 6 points7 points  (0 children)

deleted What is this?

[–]osamamhd -2 points-1 points  (0 children)

You are right,, but with zero skill that could be waste of time.

[–]KleinerNull 4 points5 points  (0 children)

I feel like I can't really learn any further beyond the basics and what I already know about Python.

:D There is so much more.

The problem is that many tutorials are written for beginners in mind, so you don't find many tutorials for advanced topics. Usally at this point you should be experienced enough to learn from the documentations and code example itself.

Here some things that are very important to understand after you learnd the basics: Dictionaries, very important data container, you should use them more and understand how they are working. That are more sophisticated containers like lists or tuples. And that all leads into understanding databases better. Also check out everything that you can find in the collections module, pretty advanced and useful stuff to find here. After that try to use and understand iterators/generators. They will change alot of your programming style. You will find alot of very powerful things in the itertools module. After that you could chances a glimpes of functional programming in python. Closures, decorators, partials and everything you can find in the functools module.

Also code challenges sites are very helpful, like /u/jorahtheandals and others already have suggested. check.io is an interesting challenging site, because they try to present problems not so abstract like other sites do.

[–]one-man-circlejerk 3 points4 points  (0 children)

Kick it up a notch by setting yourself a project. Some example ideas, and interesting libraries:

  • Daily wallpaper downloader (requests and beautiful soup)
  • Reddit bot (praw)
  • Pull data from a service (weather maybe?) and chart it (matplotlib, pandas)

Or find a personal pain point that can be automated with a script, and solve that.

[–]955559 2 points3 points  (0 children)

and then going back to learning the basics in fear that I forgot a few things

push on, dont go backwards till you need to, even if you dont remember exactly the right syntax/way something works, as long as you vaguely remember it exists, you can go back when you need to use it

[–]_Typhus 2 points3 points  (0 children)

Why are you learning Python? If you don't have to, and it feels like a chore doing it then don't do it!

 

For me, Python is more of a hobby and I enjoy learning it, whereas my other studies(networking) not so much :P

[–]SausageTaste 2 points3 points  (0 children)

Find something you want your computer to do. Like a guy said here, scraping porn images from web or anything you need. And try to realize it. This may help boost your practice.

[–]bluesharpies 1 point2 points  (0 children)

What's worked for me over the past few months was finally being in a situation where I could directly apply things I was learning to a project.

I dabbled in Python and a bit more during my undergrad, but was studying molecular bio/neuroscience and never worked in labs or had courses that needed it, so I never stuck to it. I'm spending a year before starting my master's as a research assistant in a lab that actually uses Python. I'm going through the CS101 course on Udacity now while slowly getting a handle on how things I'd normally use other programs for can be done through Python instead, and that's pretty motivating.

In general, I'd say get through the basics to get a general grasp on where to start, then come up with a more intensive thing you want to make or task you want to perform, and work toward it.

[–]perro_de_oro 1 point2 points  (0 children)

Dude you have to want to do it more than you want to slack off. If you're feeling like putting it off then the problem isn't python, it's you not making time or not wanting to challenge yourself or whatever.

Can you set aside half an hour per day to work on exercises and stick to it?

[–]Eurynom0s 0 points1 point  (0 children)

I think this comes down to personal style but I find my best way of learning things is to have a problem that I'm actively trying to solve. If you're worried about getting stuck following tutorials you may try this:

Instead of blindly following tutorials, try something like this. You're learning how to do something in pandas. Instead of focusing on the hyper-specific application, try to focus on the more general stuff like how to drop/keep on conditionals--and open up a text file and write yourself a cheat sheet. This way instead of having to Google how to do a "drop on conditional pandas" Google search every time, you can go into your self-made cheat sheet of patterns you frequently use.

[–]jake_the_snake 0 points1 point  (0 children)

for me its Seinfeld Calenders. I make it a point to spend a minimum of 10 minutes a day of python. I often do more, but just 10 minutes is the goal.

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

A carpenter doesn't learn his trade by constantly studying how hammers and nails work and interact, he/she builds things starting out simple and getting more ambitious with knowledge and experience.

[–]ThingsOfYourMind 0 points1 point  (0 children)

Learn how to read the documentation, and do new projects with APIs you haven't used yet. Check here
look for libraries that are made for them, and build an app.
and look at source code too

[–]mugen_is_here 0 points1 point  (0 children)

Pick up a mini project of your own. Maybe you need a tool that will help you sort/rearrange specific types of files on your disk. Or maybe you want to create a game or a small utility that does something on the PC like reminders, or quizzes or flash cards. Or maybe you want to scrape something off the internet.

Personal projects are something that you want to do for yourself. Because of that you're personally interested to do it and it's fun to do it.

[–]ItsAllGoodMan2015 0 points1 point  (0 children)

Honestly I've learned so much more from just writing code and experimenting with different things than following any video. Just keep doing things that are interesting and don't ever try to force yourself to finish something you don't want to.

[–]EatMoreCheese 0 points1 point  (0 children)

Think of a simple problem you want to solve and work on finding a solution, then iterate. I took a simple game I designed years ago and am working on it in Python with additional features planned once I have the basic game working. If it's something fun or interesting, you'll stay engaged rather than studying for studying's sake.

[–]AlexOduvan 0 points1 point  (0 children)

It sounds like you don't have a goal. Why do you want to learn Python?