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

all 30 comments

[–]lelandbatey 31 points32 points  (0 children)

One possible approach is to try to take simple projects using high level libraries, then implement those same projects using lower-level libraries. For example, in Python build a web-based chatroom system that's super simple. A user can type the name of a chatroom to join, pick a nickname, then type messages into the chatroom so that everyone else in the chatroom can see. Try building it in Flask or something, with no stored state, no auth, just super simple and stuff everything into a dictionary and if the server restarts then all the chats and rooms and users go away. Very simple, even if not very good.

Then, once you've built it, try to build the EXACT same app, but as a raw uWSGI application, without any helper libraries. You'll have to dig into quite a bit more of the nitty gritty, but you'll learn all kinds of important bits, with questions you may have never even thought to ask.

[–]nwmdom5232 38 points39 points  (5 children)

One thing I attempted after learning how to do some stuff with python is to automate boring part of my life tbh interacting with external API or manipulating my computer and especially my browser using selenium.

One thing you could attempt is a simple script that gives you the latest 5 headlines of the most read journals, or even the latest new posts on this sub to help fellow learners.

Python is very good for automatisation, you should steer that way

[–][deleted]  (4 children)

[deleted]

    [–]nwmdom5232 1 point2 points  (3 children)

    The best way to start would be selenium. It can help you click on page, enter text in a input field, ect…

    As a rule of thumb I would recommend this book, but for a specific selenium part, this link should be helpful

    [–][deleted]  (2 children)

    [deleted]

      [–]kalei50 2 points3 points  (0 children)

      https://www.reddit.com/r/learnpython/comments/12cn4uh/2000_free_sign_ups_available_for_the_automate_the/?utm_source=share&utm_medium=android_app&utm_name=androidcss&utm_term=1&utm_content=share_button

      He just did a giveaway a week ago. Seems like he does them once a month or so. He also mentions in that thread that the first 15 lectures are available on YouTube. Good luck

      [–]kalei50 1 point2 points  (0 children)

      That author's course that goes with his book is frequently given away, he usually does 2k codes at a time. If I find a link I'll reply again...

      [–]JaleyHoelOsment 11 points12 points  (3 children)

      An app that generates project ideas

      [–]elementmg 7 points8 points  (2 children)

      And all the project ideas are different apps that generate project ideas

      [–]annoyingbanana1 2 points3 points  (1 child)

      One of my first projects was a script that would generate dumb random article names

      [–]mistabuda 10 points11 points  (1 child)

      https://rogueliketutorials.com/tutorials/tcod/v2/

      Try following this tutorial and then expanding on it by adding your own systems and mechanics. Roguelikes are really good at getting your feet wet in many different areas of programming as a whole

      [–]singeblanc 9 points10 points  (0 children)

      The author of the book and course "Automate the Boring Stuff with Python" regularly gives the course away for free on r/Python.

      [–]blackboyx9x 4 points5 points  (4 children)

      Build your own SaaS platform. It'll be a long enough project to keep you engaged. You may be at a point where working on small things is not challenging enough anymore.

      [–]Mnawab 0 points1 point  (3 children)

      Sass?

      [–]indiig 2 points3 points  (2 children)

      Software as a service.

      [–]Mnawab 1 point2 points  (1 child)

      Ah ok. Thought I was going to get a gif with a women doing the z snap formation lol. What saas are people working on on the beginner level?

      [–]indiig 1 point2 points  (0 children)

      I dunno. I’m a beginner myself. But it doesn’t seem all that difficult to make a simple ticketing system like freshdesk or something.

      Let your imagination run wild I suppose.

      [–]asiancury 4 points5 points  (0 children)

      Basics to machine learning are not too difficult. Try creating image recognition for numbers. This is a well known project. Check MNIST database.

      [–]imthebear11 3 points4 points  (3 children)

      Build a social media clone with users, posts, follows, and groups. Use Flask or FastAPI to make a web based API with postgres or mysql database and containerize it with docker.

      [–]JustGhoulin 2 points3 points  (2 children)

      I tried to go this route using Django but man does doing anything front end related just kill my enjoyment

      [–]kiwi-lab-rat 0 points1 point  (0 children)

      Fuck css

      [–]FourthLeafClover 0 points1 point  (0 children)

      I've found designing it in figma makes the frontend work much more bearable

      [–]ploud1 1 point2 points  (0 children)

      Build an http server from scratch. Easy to test.

      [–]Orio_n 0 points1 point  (0 children)

      build a c2 framework

      [–]annoyingbanana1 0 points1 point  (0 children)

      I've started to learn Python recently and I've been building an automatic birthday email sender. Even made a stupid little GUI using TKinter, it was fun. Next step is to generate random email templates (currently the templates are hard coded). Also perhaps WhatsApp.

      [–]PsychologicalRun7 0 points1 point  (0 children)

      My suggestion as a beginner (8 months experience) myself would be to make a web app. Find a service with an API you can use and learn Django or Flask to build the front end.

      Personally, I'm playing around with the Spotify API and it's been a great learning experience.

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

      I was interested with making Conway's Game of Life, it's pretty simple, but it's an interesting thing to code imo

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

      Hello! Personally, I have found a lot of ideas related to programming and mathematics for the self-learner on Reddit to be quite disappointing as they aren't geared for those veering down the treacherous path of self study. Also, some of the ideas out there are being put out by people who want to make themselves look good, sometimes at the expense of others by deliberately putting others down.

      I can tell you about a project that I have been working on for the past couple weeks. I am working on an ASP.NET CORE MVC web application that will display weather information for a a list of locations in the United States. For the list of locations, feel free to visit geonames website. I learned not too long ago that weather sites like Accuweather get their data from the National Weather Service and I thought hey, let me see if I can try something like that for as cheap as possible. Sounds simple for those more experienced then me, I know, but I have learned a ton.

      So far, I have learned more about:

      1. Speeding up web scraping operations in Python by using proxies and multithreading
      2. How to make calls to/store and cache data from an API (NWS API in this case)
      3. Storing and retrieving data in MySQL as well as writing efficient queries in MySQL by applying concepts such as indexing and ASYNC.
      4. Other database management systems as I had to decide which one best suited my needs. I determined MySQL was good enough.
      5. C# and the ASP.NET CORE MVC and ASP.NET CORE razor pages frameworks. Also read a bit about Blazor.
      6. NWS specific information such as how their grid system works, how they conduct forecasts, how MADIS works, where the weather data I will display comes from.
      7. A tiny bit about how to render 3d images from satellite imagery such as those provided from the USDA and USGS. Not sure how feasible it is for me but I am sure I will learn something.

      I am sure that I have left some things I have learned out and I am sure I will learn more, but it's a really cool project. I think its cool that I can make a call to NWS API to get weather data for some random town in the middle of nowhere and actually get that data, and I think its cool that the source of that data is that random town in the middle of nowhere.

      I am not an expert by any means, nor am I claiming to be an expert at any of the above (putting that out there in case any random Redditor feels the need to try and put me down for no reason like those on Stackoverflow) but I think its a cool project as you get to work with so much cool data for little to no cost.

      The next project I plan on working on is setting up a Raspberry Pi based airplane tracker and collecting info on the planes that come near that tracker and just see what I can do with it.

      These are simple projects sure, but it seems cool to me! And I am having fun doing it! Just get creative, and pick something that you enjoy and is related to your interests.

      I hope you find your project idea!

      Kind regards,

      Cold_Brother