Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411423 Posts in 69363 Topics- by 58416 Members - Latest Member: JamesAGreen

April 18, 2024, 03:42:22 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsPlayerGeneralabout programming
Pages: [1]
Print
Author Topic: about programming  (Read 1140 times)
zoidganesh
Level 0
*


View Profile
« on: September 12, 2019, 07:35:16 PM »

I just wanted to ask on here since I don't know any other programmers. I am still very new to this, only been programming for about 8 months primarily on python. As I've been learning I can understand everything on its own, I Know how the individual functions all work and can make simple codes; but when I try and use them to make a larger piece it's like my brain doesn't understand them and how they go together. So my question is: how long did it take you all in order to see how all the code comes together? I really enjoy learning programming and all that comes with it but I do kind of feel hopeless.
Logged
DireLogomachist
Level 4
****



View Profile
« Reply #1 on: September 12, 2019, 10:26:00 PM »

Honestly it takes your whole life...

As a software engineer, being able to hold the whole of a thing in your mind a skill you learn over years.
And even then, it's all compartmentalized and organized to make that easier

That module is the engine, that there is AI, that's graphics, etc.

Good organization of your scripts, functions, and everything else is really the backbone of good programming.
Logged


Living and dying by Hanlon's Razor
ThemsAllTook
Administrator
Level 10
******



View Profile WWW
« Reply #2 on: September 13, 2019, 04:00:33 AM »

Yeah, I feel like it's more like you develop a set of habits and conventions to help you navigate when you can't ever see the whole thing at once. Understand just enough at a time to work on what needs to be done, and trust your past self to have done something sensible with the parts that don't fit in your working memory. You'll totally run into lots of situations where you find code that you've written a year or more ago and not have the faintest idea how it's actually supposed to work. Embrace refactoring, and realize that if your old code looks bad, it's partially a good thing, because it means you've improved your skills since you wrote it.
Logged

risen28
Level 0
**


View Profile WWW
« Reply #3 on: September 17, 2019, 09:23:12 PM »

I am not sure of your journey One thing I can agree on is you will never know anything and always be learning and referencing. If you are failing to put bigger pieces together and you know your syntax then id say you need more work on your logic abilities but most likely more experience with understanding the concept of the language ( the bigger picture ).

I think months is quie a short time to expect to be on that kind of level. As for your question it depends on the hours you put in, how you work, do you try to figure out bugs on your own before hitting stack overflow ?

For me sitting with a bug for 4 hours trying all kinds of solutions and learning more about the language in that manner was way more fruitful than hitting stack overflow and copy and pasting. What im trying to say here is when you write your own stuff and it gets hard to piece together you are in the learning zone...what you do with that is up to you, but i promise you if you work through it youl come out the other side MUCH more knowledgeable about the language than if you gave up in the first hour and searched the net. I understand though that time is not on our side, deadlines ect ect so its a difficult one.
Logged

If there is no enemy with , the enemy outside can do us no harm.
Daid
Level 3
***



View Profile
« Reply #4 on: September 17, 2019, 10:54:14 PM »

As with any skill, start small and grow slowly.

You won't be able to write a full complete game with your own game engine when you start out. It's much easier to start on small things. Personally, I learned a lot from modding games. In my day that was UnrealTournament (the first version) nowadays there are a lot of games that have modding capabilities.
In general it's a less daunting task, as you don't have to grasp how the full game works and how to build a full game. Just how to modify parts of it. And then you slowly learn how more and more is put together.

Two games that I know off with great modding support are Factorio and KerbalSpaceProgram. Both allow mods that are just data files, but also mods that contain code. Although coding for Kerbal is a bit more difficult due to the lack of documentation.
Logged

Software engineer by trade. Game development by hobby.
The Tribute Of Legends Devlog Co-op zelda.
EmptyEpsilon Free Co-op multiplayer spaceship simulator
Mark Mayers
Level 10
*****



View Profile WWW
« Reply #5 on: September 17, 2019, 11:16:16 PM »

I just wanted to ask on here since I don't know any other programmers. I am still very new to this, only been programming for about 8 months primarily on python. As I've been learning I can understand everything on its own, I Know how the individual functions all work and can make simple codes; but when I try and use them to make a larger piece it's like my brain doesn't understand them and how they go together. So my question is: how long did it take you all in order to see how all the code comes together? I really enjoy learning programming and all that comes with it but I do kind of feel hopeless.

Just keep programming as much as you can, over many years.

It's like learning an instrument. You won't become Eddie Van Halen overnight. Just keep at it.
Logged

Desolus Twitter: @DesolusDev Website: http://www.desolus.com DevLog: On TIG!
miki
Level 0
**


View Profile
« Reply #6 on: September 17, 2019, 11:47:06 PM »

I am not going to answer your question directly because I believe you are asking a wrong one(for one part because everybody is different & in different circumstances and for another because it appears to me that maybe you might be approaching programming in a way that mystifies it due to lack of programming experience; when, from the logic part, there is really not much to it - at least for simple projects that could very well be a complete video game). Actually, when making your video game, if you decide to use 3rd party graphics library you might find that you are spending more time learning about that library than you have spent on learning the programming.

I am oversimplifying things here but programming is just a bunch of simple steps (think single command of your programming language as a single step and think of functions as a named groups of single commands isolated to a separate command block for easier reading).
Functions would also generally perform a single task that is used frequently throughout your program and it is you who decides which part of the task is placed in a function, how the function is called and how much or little each function does.

You will learn as you go and the best way to learn is by giving yourself a simple goal and figuring out obstacles you encounter, along the way, one at a time.

My suggestion to you, that can help demystify programming, is to set of to create a very simple game in python (a single square being controlled on the screen by the player, picking up red squares and keeping track of number of the red squares picked up and keeping record of the high score) - doing so you would ideally be compacting logical parts of the program (many single commands) to a single line of code (function names) and your program's main part might end up looking like this:

start of execution:

   Init()
   MainLoop:
      Movement()
      Collision()
      Draw()

end of execution.



And at the end, you are the architect of your program - you are in charge; you decide how to segment and implement the task that your program is required to do (it really becomes a thing of simple common sense - no need to think more of it that it really is). As long as you follow your common sense then any way you implement your program is the correct way.

« Last Edit: September 17, 2019, 11:54:54 PM by miki » Logged
DjangoDurango
Level 1
*



View Profile WWW
« Reply #7 on: September 18, 2019, 08:56:51 AM »

I ain't a serious programmer or nothing, but I'mma just throw out something a little more practical that helped me bridge that gap.

Download Unreal Engine and start using Blueprints.

I know you're using Python and learning a whole other engine is a pain in the ass, but I'm serious. I took several classes on various coding languages (which all more or less use the same logic), I took two classes about GameMaker, and I just Could Not wrap my head around programming when it came time to deviate from the examples in the book.

But using Unreal's Blueprints finally made all of that make sense. Seeing all the code in flowcharts like that and how all those individual objects connected to each other made all the pieces fall into place and I understood. The gap between theory and practice was bridged. And I took that understanding over to GameMaker and made an actual game with it. A small game, not very good, but I applied that new understanding, I built new functionality that wasn't present in any example (or at least I didn't look any examples up), wrote it in GML instead of drag-and-drop, and it worked.
Logged
michaelplzno
Level 10
*****



View Profile WWW
« Reply #8 on: September 19, 2019, 03:37:12 PM »

For me as a serious code guy, syntax was secondary to solving algorithm problems etc. If you can't run the code in your head that might be a bad sign. Then again, a lot of game code isn't too complex so you don't have to be super serious to do some meaningful things.

Just FYI, not everyone was born to be a coder just like not everyone was born to be an artist and so on. Some people have aptitudes for a lot of different things.
Logged

Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic