(shouting)

Good ways to practice programming

here's a good place for FRIENDLY, ENJOYABLE, and otherwise very GENERAL discussion!
Post Reply
S.N.N.
Posts: 561
Joined: 14 years ago
Location: Ontario, Canada

Good ways to practice programming

Post by S.N.N. »

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!
User avatar
Clamestarebla
Clamkind Arch-Highlord
Posts: 230
Joined: 10 years ago
Location: The Void
Contact:

Re: Good ways to practice programming

Post by Clamestarebla »

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.
Image
Image
Image
Image
User avatar
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

Post by pholtos »

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.

ImageImageImageImage
ImageImageImageImage
ImageImageImageImage

I do LPs, check them out if you'd like.

Currently playing:
Image

The 500 char limit is evil. :P
User avatar
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

Post by Ashan »

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.
Image
Image
Image
Image
Image
Image
User avatar
Ivy
Posts: 2389
Joined: 10 years ago
Pronouns: any
Contact:
https://ivy.talkhaus.com/

Re: Good ways to practice programming

Post by Ivy »

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)
User avatar
FrozenQuills
hehe haha 2024
Posts: 843
Joined: 9 years ago
Location: my skull

Re: Good ways to practice programming

Post by FrozenQuills »

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.
Image
Image
avatar by crayonchewer!
Image
Image
Image
SMBX Tileset Compiler and Separator
The boss entry that made me eat a shoe.

5th place counter: 5
(SMBX Forums CC11, SMBX Forums CC12, Endgame Madness Contest, SMWC Kaizo Contest 2016, SMWC 24hr Contest 2018)
User avatar
ohmato
hey idiot
Posts: 792
Joined: 9 years ago
Location: location, location
Contact:

Re: Good ways to practice programming

Post by ohmato »

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.
Image
Image
Image
Image
Image
User avatar
Sasquatch
Don't mess with sasquatch
Posts: 165
Joined: 8 years ago
Location: Boggy Creek

Re: Good ways to practice programming

Post by Sasquatch »

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.
Ashan wrote:I'm sure you if asked suckhacker he'd be more than willing to help you out.
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.
User avatar
Hoeloe
A2XT person
Posts: 1022
Joined: 12 years ago
Pronouns: she/her
Location: Spaaace

Re: Good ways to practice programming

Post by Hoeloe »

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.
Image
Image
Image
Image
Image
User avatar
Arctangent
squawky
Posts: 699
Joined: 9 years ago
Pronouns: she/her

Re: Good ways to practice programming

Post by Arctangent »

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.
User avatar
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

Post by Ashan »

Sasquatch wrote:
Ashan wrote:I'm sure you if asked suckhacker he'd be more than willing to help you out.
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.
Image
He also specifically makes anti-SNN posts
Image
Image
Image
Image
Image
Image
User avatar
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

Post by KobaBeach »

Ashan wrote:He also specifically makes anti-SNN posts
and anti-deepay posts

don't forget about anti-deepay posts
Image #1 mega cd enjoyer AND "making fun of"-er Image
MaGL Patch Collection / vg backlog spreadsheet / animu list / mcmangos / steam
Image
Image
Image
Image Image
oogggghhhh games aren't art Fuck You Roger Ebert *kills him with a hamemr*
User avatar
Ivy
Posts: 2389
Joined: 10 years ago
Pronouns: any
Contact:
https://ivy.talkhaus.com/

Re: Good ways to practice programming

Post by Ivy »

yeah but Deepay doesn't look at this forum anymore
3DS FC: 2793-0650-7690 | Switch: SW-2766-9108-9399 | Steam: ivysaur1996 (ivy)
User avatar
spittySynthyHands
A Projection of Memory onto Reality
Posts: 71
Joined: 9 years ago
Location: The Wired

Re: Good ways to practice programming

Post by spittySynthyHands »

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.
For more información please reread this post.
User avatar
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

Post by Whimsical Calamari »

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.
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.
spittySynthyHands wrote:A few pointers:
HAH
ImageImage Image ImageImageImageImageImageImage
Post Reply