Good ways to practice programming
Good ways to practice programming
Talkhaus seems to have some pretty code-savvy people, so this seems like a good place to bring this up.
I've dabbled in coding in a number of languages for years now. The ones that immediately come to mind are C++, C#, QBasic (don't laugh), Python, and most recently VBA (mostly because I'm creating on some Excel macros for work). A common trend is that I always either lose motivation, or get bored early on and never get beyond a beginner level in the language.
My question is simply this: what is the best way to practice programming, and what are some good techniques to staying motivated in it? Does it boil down to making a bunch of random programs for shits and giggles, or is there a better way? I don't have much of a problem understanding the logic and math behind coding - instead, it's a problem finding ways to continue to grow with a language. I'd love to be able to make somewhat productive apps/programs/whatever, but getting there seems to be tough.
Thanks!
I've dabbled in coding in a number of languages for years now. The ones that immediately come to mind are C++, C#, QBasic (don't laugh), Python, and most recently VBA (mostly because I'm creating on some Excel macros for work). A common trend is that I always either lose motivation, or get bored early on and never get beyond a beginner level in the language.
My question is simply this: what is the best way to practice programming, and what are some good techniques to staying motivated in it? Does it boil down to making a bunch of random programs for shits and giggles, or is there a better way? I don't have much of a problem understanding the logic and math behind coding - instead, it's a problem finding ways to continue to grow with a language. I'd love to be able to make somewhat productive apps/programs/whatever, but getting there seems to be tough.
Thanks!
- Clamestarebla
- Clamkind Arch-Highlord
- Posts: 230
- Joined: 10 years ago
- Location: The Void
- Contact:
Re: Good ways to practice programming
Little thing I used to do with C++ is go to this website, pick a random function or macro, and build a silly thing that would include it. Or I'd take an old program I've made and try to make it better/more complex. Dunno if it could work for you but that sort of thing keeps me into programming so to each their own I guess.
Train harder, run faster, be stronger, better, evolution never over.
- pholtos
- Loves adorable things.
- Posts: 1663
- Joined: 15 years ago
- Location: One of the States in the Center of the U.S.
Re: Good ways to practice programming
Well from my limited experience (I managed to take enough classes for a minor) start by learning static programming methods, then learn dynamic. Of course I think there are way more qualified peeps here than me so only take my advice with a grain of salt.
Host and Organizer of the Rando Pokemon Tournaments. Completed: I, II, III, IV, V
Dealer of the Pokermon Discord Tourneys.
I do LPs, check them out if you'd like.
Currently playing:
The 500 char limit is evil. :P
Dealer of the Pokermon Discord Tourneys.
I do LPs, check them out if you'd like.
Currently playing:
The 500 char limit is evil. :P
- Ashan
- The world has become a place
- Posts: 2825
- Joined: 14 years ago
- Location: Canada
- https://ashan.talkhaus.com/
Re: Good ways to practice programming
I'm sure you if asked suckhacker he'd be more than willing to help you out.
I haven't done ANY programming since the semester ended. I really need to do something soon cause I feel I'm already forgetting things.
I haven't done ANY programming since the semester ended. I really need to do something soon cause I feel I'm already forgetting things.
- Ivy
- Posts: 2389
- Joined: 10 years ago
- Pronouns: any
- Contact:
- https://ivy.talkhaus.com/
Re: Good ways to practice programming
I'm on the same boat as you. But this fall I'll have a legit course in C# or C++ (idk which quite frankly) which will force me to learn!
3DS FC: 2793-0650-7690 | Switch: SW-2766-9108-9399 | Steam: ivysaur1996 (ivy)
- FrozenQuills
- hehe haha 2024
- Posts: 843
- Joined: 9 years ago
- Location: my skull
Re: Good ways to practice programming
I suggest looking into open source projects or reading up on topics like data structures, algorithms, etc. Learning new languages helps too but learning about what you can do with programming helps even more (like AI or computer graphics).
I also think that making a game (not just plopping down things with a level editor but actually programming some parts of an engine or scripting new mechanics) helps a lot. That way you can see and have fun with your own progress.
Creating your own website and making some small service out of it is good practice too for similar reasons.
Once you start programming in ways that solves problems, makes life easier, or makes life more enjoyable, it becomes way more interesting, and you'll grow with whatever languages you end up using in order to make it happen.
I also think that making a game (not just plopping down things with a level editor but actually programming some parts of an engine or scripting new mechanics) helps a lot. That way you can see and have fun with your own progress.
Creating your own website and making some small service out of it is good practice too for similar reasons.
Once you start programming in ways that solves problems, makes life easier, or makes life more enjoyable, it becomes way more interesting, and you'll grow with whatever languages you end up using in order to make it happen.
avatar by crayonchewer!
Re: Good ways to practice programming
Explore the documentation, see what's available. The way I learned Win32 platform coding in a few days was just by reading MSDN and seeing what I can do. Sky's the limit.
Re: Good ways to practice programming
The only language I have any real level of experience with is HTML (I know, how noobish.) I dabbled in Java script and dipped my toe in C++ in high school, but I really didn't go anywhere. Like anything in life, I guess, learning is a two component process- learn how to do something and then actually try to do it.
I'm currently learning ASM to improve my SMW hacking skills. However, that's utterly useless beyond the realm of SNES hacking and programming.
I'm currently learning ASM to improve my SMW hacking skills. However, that's utterly useless beyond the realm of SNES hacking and programming.
The dude's name seems like it implies that he 'sucks at hacking', at least that is how I read it (and from the few posts of his I've seen, he appears to also suck at trolling). Whatever you do, I would never take programming advice from a known troll, even someone supposedly experienced like arbe.Ashan wrote:I'm sure you if asked suckhacker he'd be more than willing to help you out.
Re: Good ways to practice programming
One suggestion I would have is to pick one language and learn that, but which language you pick is important. I would start with something simpler than C++, as that gets pretty complicated pretty quickly, but at the same time I'd also start with a typed language like Java or C#. I've seen a lot of people try to learn programming with an untyped or ducktyped language, only to get extremely confused later on because they don't really understand what types are and why they are important. The problem with untyped and ducktyped languages is that the types of objects are still important, they just tend to be hidden from the user, and that can get very confusing if you're not familiar with types to begin with.
There are two ways I learn to program things. First, pick data structures or algorithms and learn how to implement them. For data structures, try implementing things like Linked Lists, Queues, Stacks, Double Ended Queues, etc. Those aren't too complex, but should be really good for learning some more complex things. From there, try implementing some sorting algorithms. Those vary from simple to quite complex. After that, move onto trees and graphs and their respective search algorithms.
Secondly, if you start losing steam with that, find a program or something that you want to build (as a game designer, I always found simple games to program), think about how you want to build it, cut it down into a bunch of small problems, and implement each separately. The benefit of this approach is that it tends to feel less pointless than just learning, as you get something out at the end. This is how I learned my first programming language.
It is important, though, to try and maintain "good practice" as you learn. Believe me when I say that unlearning bad practice is a lot harder than learning good practice in the first instance.
There are two ways I learn to program things. First, pick data structures or algorithms and learn how to implement them. For data structures, try implementing things like Linked Lists, Queues, Stacks, Double Ended Queues, etc. Those aren't too complex, but should be really good for learning some more complex things. From there, try implementing some sorting algorithms. Those vary from simple to quite complex. After that, move onto trees and graphs and their respective search algorithms.
Secondly, if you start losing steam with that, find a program or something that you want to build (as a game designer, I always found simple games to program), think about how you want to build it, cut it down into a bunch of small problems, and implement each separately. The benefit of this approach is that it tends to feel less pointless than just learning, as you get something out at the end. This is how I learned my first programming language.
It is important, though, to try and maintain "good practice" as you learn. Believe me when I say that unlearning bad practice is a lot harder than learning good practice in the first instance.
- Arctangent
- squawky
- Posts: 699
- Joined: 9 years ago
- Pronouns: she/her
Re: Good ways to practice programming
What really helps me with learning languages is to have something I want to make, be it a simple concept or something like a state table for a game. Not only does this aid me in learning how to use the language, but it also gives me insight on how the concept is done and how it can be optimized for whatever I want to use it for.
- Ashan
- The world has become a place
- Posts: 2825
- Joined: 14 years ago
- Location: Canada
- https://ashan.talkhaus.com/
Re: Good ways to practice programming
Sasquatch wrote:The dude's name seems like it implies that he 'sucks at hacking', at least that is how I read it (and from the few posts of his I've seen, he appears to also suck at trolling). Whatever you do, I would never take programming advice from a known troll, even someone supposedly experienced like arbe.Ashan wrote:I'm sure you if asked suckhacker he'd be more than willing to help you out.
He also specifically makes anti-SNN posts
- KobaBeach
- screw it lion time. we are so f***ing back
- Posts: 7125
- Joined: 11 years ago
- First name: David (evil)
- Pronouns: he/they
- Location: Portugal
- https://koba.talkhaus.com/
Re: Good ways to practice programming
and anti-deepay postsAshan wrote:He also specifically makes anti-SNN posts
don't forget about anti-deepay posts
#1 mega cd enjoyer AND "making fun of"-er
MaGL Patch Collection / vg backlog spreadsheet / animu list / mcmangos / steam
oogggghhhh games aren't art Fuck You Roger Ebert *kills him with a hamemr*
MaGL Patch Collection / vg backlog spreadsheet / animu list / mcmangos / steam
oogggghhhh games aren't art Fuck You Roger Ebert *kills him with a hamemr*
- Ivy
- Posts: 2389
- Joined: 10 years ago
- Pronouns: any
- Contact:
- https://ivy.talkhaus.com/
Re: Good ways to practice programming
yeah but Deepay doesn't look at this forum anymore
3DS FC: 2793-0650-7690 | Switch: SW-2766-9108-9399 | Steam: ivysaur1996 (ivy)
- spittySynthyHands
- A Projection of Memory onto Reality
- Posts: 71
- Joined: 9 years ago
- Location: The Wired
Re: Good ways to practice programming
The best way to practice programming is to program things, somewhat similar to how the best way to get good at math is to math things. So, yes, it does boil down to programming a bunch of random things.
A few pointers:
0.- Get very good at one language first, and then try learning others. Most common languages are actually related to Algol, and hence share much of the same Syntax and Idioms. If you get really good at one of these, the rest become relatively trivial to learn.
1.- Pick one project you want to do, and get to work on it. Looking up how to do things as you are doing them is good for you. Eventually doing things in a language will become second nature to you, and you'll be making productive things at the same time.
2.- If you can't think of anything to work on, (like me), but you still want to practice, try a site like Project Euler, or any of the kinds of programming challenges out there.
A few pointers:
0.- Get very good at one language first, and then try learning others. Most common languages are actually related to Algol, and hence share much of the same Syntax and Idioms. If you get really good at one of these, the rest become relatively trivial to learn.
1.- Pick one project you want to do, and get to work on it. Looking up how to do things as you are doing them is good for you. Eventually doing things in a language will become second nature to you, and you'll be making productive things at the same time.
2.- If you can't think of anything to work on, (like me), but you still want to practice, try a site like Project Euler, or any of the kinds of programming challenges out there.
For more información please reread this post.
- Whimsical Calamari
- i am the one that sings the chorus when you hum in the shower
- Posts: 1057
- Joined: 10 years ago
- Location: IT CAME FROM OVER THERE
Re: Good ways to practice programming
Well, the direct application of that variant of ASM is useless in applications outside the SNES, but the concepts inherent in learning low-level programming like that are incredibly useful in writing fast code.Sasquatch wrote:I'm currently learning ASM to improve my SMW hacking skills. However, that's utterly useless beyond the realm of SNES hacking and programming.
HAHspittySynthyHands wrote:A few pointers: