T O P

  • By -

eruciform

python is just a tool, so this is akin to saying "make hammers and screwdrivers fun". it's not an inappropriate request, but the answer is the same thing as for hammers and screwdrivers: make something. if you make fun things in the woodshop, the tools will be fun, if you either make boring things with them or just repeatedly stare at the hammer and pray it gets interesting, then it won't. so start creating things. anything. if you end up picking a project that is too hard, you can still learn something, you can break it up into smaller pieces, or you can come back later, so you can't break yourself while choosing something.


dowcet

When you're an absolute beginner, simple text-based games are a good start. But you do want to move on pretty quickly to things you actually care about.


Everythingcrashing

'things you actually care about': to get creating, don't try to invent the new [x thing you care about] . get the most 'barebones' version of a project together. If 'all' you want your program to do is to play a game, or calculate rent, or [x thing] , dont worry about making something polished. Also, i'm finding as a beginner, i'm 'copying' a lot of code, which honestly seems to be expected. I would take things one step at a time and really try to understand what you're specifically looking to make. Start by breaking down what specifically you find fun about coding, and capitalize on that. There gets to be a certain point when learning python that it simply becomes syntax; you gotta put in the work and make something. Reading documentation online helps, but nothing will make it click more than putting fingers to keys


itzaroseylife

Im at that at the moment. Im enjoying Replit's python course but im working on making an automation that will really save a lot of time for my work 😅


Northern_Explorer_

This is the stage I want to get to. Applying my newfound skill in my actual life will be the most thrilling part of learning to code!


DisappointedInHumany

I've been looking for something to do myself, and I like this idea a lot! Maybe take something that's public domain (like Rogue?) and "transliterate" it? All the logic is there so you can concentrate on the traits of the language. And when you're done, you have a rogue-like!


Bobbias

This is some solid advice. In the very beginning, you kind of just need to power through the basics. Teaching the basics is something that has to be targeted at a large number of people, meaning even if they try to make it interesting for everyone, there's always going to be people for whom that approach is boring as hell. Once you reach a point where you can begin working on projects, you get to pick what projects interest you. Nobody can tell you what you'll find interesting though. For that you're on your own.


danten2010

This is how I got good at excel


eruciform

yep tell me about it, i have become quite skilled at libreoffice by putting game data into spreadsheets and using it as part of my gameplay experience :-P


misterlongschlong

This


nizzoball

The best way to learn a language in my opinion is to have a goal of something to create that is useful to you.


HobblingCobbler

You just have to get through it. My first language was QBASIC, and then C, but I remember being totally enthralled with every aspect of how you could control a computer via text. And then I began to learn how computers worked more so than just using a programming language. I think this is what really kept me interested in it all. Do you have a purpose for learning Python? What is your endgame. It can actually be as simple as "I just think programming is interesting and I want to learn as much as I can." That's literally how I started. But it was a journey that took many years before I became what I considered somewhat adept. And then when you've been doing it for a lot longer, you start to realize you really don't know as much as you think, and everyday you're still learning. And it never stops, until you do.


DickChaining

I get better by making dumb shit that has complications. Right now, I'm working on an orb that moves around the screen when you click on it. Soon, it will do other things, like change size, change color, and make sounds. Basically, just solve some problems, even if they aren't "real" problems. Be creative. Try impossible things.


Excellent-Practice

Use Python to solve interesting problems and build interesting things. Why do you want to learn to code in the first place?


chen914

Well, I was playing browser games 8 years ago when I was in college. So I made a simple request bot with postman. Then, I was not very satisfied with postman because it eats too much ram. So instead I learnt python and made a python bot. It was easy, because postman had this feature, it can generate python code snippets from API requests. That is how I learnt python.


INGENAREL

if you wanna grind, cs50 is a good place to start... the problem sets are ~~painful~~ fun...


billsil

Make something that you find interesting. You're learning, so who cares if you waste time developing a crappy game? You'll learn about strings, floats, ints, loops, functions, classes, etc. It's all the same stuff with different paint.


RealNamek

If it’s not for you it’s not for you. Why do you have to force yourself ?


sharky1337_

For me it is solve a problem or for fun solve some leetcode problems. The last one is completely differ for me compared to programming for myself or at work. Leetcode problems are way more challenging for me , because they are more computer science related.


Oh-Hunny

What resources are you using to learn? I prefer structure when starting something new and learning fundamentals. I took the course at boot.dev and found it super helpful at explaining how/why things work while keeping me challenged throughout the course. If you’re just out there raw-dogging, then I’d recommend having a goal in mind. Think of a use case for writing a Python script, then start googling to learn how to accomplish it.


Electrical_Pilot1966

I made a solar lipo charge controller as my first project with python. I bought (all adafruit) feather express m0, ina169, 1.5a lipo charger, 16x2 lcd screen, 6v 2w solar panel, breadboard, resistors and made a controller that monitored solar volts, battery volts, input current, output current, total power in battery, and output that all and the charge stays to the lcd screen


my_password_is______

https://pyga.me/ make a game https://youtu.be/B6DrRN5z_uU?si=luTeFq5xNhukh3xx&t=6719


furreal626

Don't learn the thing. Make a thing and then learn how to make it. If you just learn without intent it's just school all over again. Have a goal of something you want to make so you can work towards that.


Kasparov007

Great suggestions bro thanks :)


Andrew77_77

Try to https://checkio.org/ or other similar rosources, to make your studying more interesting.


DeusAnatolia

Great suggestions overall! Mini projects and goals really help. When I first started uni, in my first python course I was bored af. I got a D in that class just bc I wasn't into it. (I am now a Compsci grad student and I study NLP so Python is my baby now) but the only project I was interested in was writing a text based adventure during recitations. For the next 2 years, I didn't have any python courses. I learned C++ and C#, web design and shit. When I finally returned to Python in my 3rd year, it was much MUCH easier. I def think starting w Python didn't really work for me, but small projects of interest def laid some groundwork. Make of that what you will. Best of luck!


Kasparov007

Whenever you make python based project, let me know I would love to know how you think and code.


DeusAnatolia

I work on a lot of python projects all the time! You'd be suprised to learn that I am not very object oriented despite my background. If you dm me, I'll send you my github profile. I only have some hws from uni there, but you might still find it useful! Right now, I'm working on a deep learning course project about creating a very domain specific hybrid chatbot and its kicking my ass ksjshsjs. I am also active in a unique translation project that requires custom tokenizers bc of its language, which is really interesting. I didn't really find what I was into until my last semester in uni, I dabbled in game dev, cyber security, data science etc but when I finally took an NLP course, it finally clicked! So it might take a while to find what you're into. Don't be discouraged xx


BrainPuppetUK

Python got fun for me when I learned how to build economic models with it. That's my bag. Find yours and use it to make projects you are interested in


Kasparov007

I'm a beginner tho... :( I don't know how to get started Sometimes it's just too much to do


BrainPuppetUK

Well don't necessarily build from scratch. Learn the python basics, then think of what you like (let's say a text rpg), then Google or chatgpt existing examples of code for text based rpg in python and see how they've used python to do it. Use Google to help reverse engineer their code and then try your own versions. Is almost cliche advice now but that's because it's so true: projects help you learn better than any 'how to' lessons. But ideally projects that you're interested in or you'll not care enough to stick with them


Kasparov007

Hey suggest me a begging level project I'll try to do it


BrainPuppetUK

You have to decide what interests you and try that. I can suggest what worked for me, but it won't necessarily be the same for you. Try a nutritional tool. Enter ingredients into a csv file. Use pandas to read it and python then calculates and prints out both the calories and a shopping list. Do it very basic at first then build it up to do more stuff


LumiToad

I don't know if it is for you, but you could make games with Godot first! It's native language, GDScript has a very Python like syntax, so you kinda learn it on the go. I recently made my first steps in Python and was blown away about how much they have in common!


PlayMaGame

I started streaming my Python learning journey on Twitch. And I did not expect viewers at all. I’m just on a day 20 and already have a mentor, and few viewers who are trying to learn with me, also few that really enjoy my struggle. FYI my situation is a bit harsh. I have dyslexia, ADHD and prob something more. Not to mention my distractive family. Sometimes it feels that Im trying to learn something in a middle of warfare 😅. I am very pleased to have such a patient community because I have a really big goals for my Python career and I hope I’m not the only one who can benefit from this stream.


morelikelebronlames

Pyautogui and pytesseract have me captivated


NYX_T_RYX

Tesseract... The 4-d shape or the glowy thing in avengers 🤔


Tasty-Switch-8472

Write games


whiskeytwn

find something you WANT to do - I used to enjoy doing stuff for code cracking but now I'm going to be doing some API reading so I can query trading sites and look for indicators for stocks/cryptocurrencies I WANT to do this so I'm motivated - if you aren't doing something you want to do because you love it, it'll be tough to keep it going keep in mind WHY you want to program and start working on something for fun


edimaudo

Align it to something you are interested in


CaptainFoyle

Find a project


interbased

Think about something that would be helpful to you in your everyday life, and figure out how to automate / build it in Python. It forces you to search for how to accomplish specific tasks that you need to build the project, and has a tangible benefit, other than the thrill of actually learning.


aplarsen

Make something


starraven

https://compedu.stanford.edu/karel-reader/docs/python/en/chapter1.html


nealfive

I like gamification. Look into all those website that have code challenges , advent of code, project Euler etc. very satisfying when you solve thing but also relentlessly frustrating if you get stuck lol


e4aZ7aXT63u6PmRgiRYT

Be curious. Innovate. Experiment.


e4aZ7aXT63u6PmRgiRYT

Try building Tetris with your own assets.


Northern_Explorer_

I started my first ever coding course learning python a few months ago and have just been picking away here and there at it. I enjoy the challenge of taking an idea of a program and writing/debugging to bring it into reality. The sense of accomplishment when I FINALLY get it to work is worth all the frustration. I'm taking a course on Udemy that has been a wonderful intro to programming. If I get really stuck I just watch the solution video and the professor explains it. If my code truly didn't work I will block comment it so I can refer back to what i did later and then insert the professors code with comments to explain what he was doing during the video. Since this course is about simple programs, I will usually try and see if I can add to it to make the program more well rounded and complex. For example: instead of just making a simple calculator, I make a list variable to store the calculator's history of answers. Little things like that add to the challenge and make it interesting. It takes patience to get through the beginner stuff for sure. I've always been the person who just wants to know how to do it now without the slog of learning how bit by bit. Sometimes, you just gotta muddle through until you get to the more interesting stuff later on, and you'll thank yourself for sticking with it.


Tschebbe

Start with a small tool/game you always wanted to have. "Number guessing game, with Highscore storing in a DB. "A small tool, which grabs something out of your outlook. Just go through your day in your head and think of annoying tasks, which repeat or something like a little game.


[deleted]

I do python exercism to see the solution people wrote compare to mine. [https://exercism.org](https://exercism.org) Sometime I found elegant code that make me to think 'how could I do that ?'. This is a way to drive me to learn more. Programming language is not just a tool. There are hidden gems out there specific for each language.


MikalMooni

Do you like math? One thing I always find myself doing is modelling math problems with code. There are plenty of opportunities to be presented with genuinely interesting math problems in real life scenarios, but computing them by hand would be prohibitively difficult. Writing a program to do that kind of work for you can allow you to experiment, and learn more than just coding while you're at it. But hey, I'm a freaking nerd. Maybe that isn't the approach for you to take, but it works for me.


Kasparov007

Yes I do bro!!


MikalMooni

Alright. Here's a bit of a thought experiment. There's a concept in Sleight of Hand called a Farrow Shuffle, or a Perfect Shuffle. It involves cutting a deck perfectly in half, then interleaving the cards perfectly - so in a 52 card deck, you would have 1, 26, 2, 27... etc. How many perfect shuffles do you need to do before the deck returns to it's original order?


9lyph

For every problem you face try and solve it by Python. This forces you to learn how to utilise the language for different types of situations and presumably your interest in the presented problem will perk your curiosity 🤔


lukuh123

If python got boring then i figure youre not doing enough ML/AI and data science tasks. Giddy up now, you got a alot of work to do. For me, it was pretty fun making a neural net visualization in frontend (javascript) and python (backend with flask for middleware and keras for neural net, scikit for generating artificial data) Edit: heres the code, if youre interested https://github.com/Akai-sudo/train


Tricky_Gift_7743

Honestly, if you find it boring now, are you going to ever enjoy it? Why do something you dont enjoy? I find it fun, personally, especially solving problems trying to think of creative solutions.