Coding/ Programming help. Created 9 years ago2015-02-23 14:32:39 UTC by zeeba-G zeeba-G

Created 9 years ago2015-02-23 14:32:39 UTC by zeeba-G zeeba-G

Posted 9 years ago2015-02-23 14:35:43 UTC Post #324368
I'd like some advise to be pointed in the right direction as to where to begin learning coding and programming. Tbh I don't even know proper terminology.

I want to begin extremely bare bones basic. Whether I learn to code something complex like a basic game in the future or simply stimulate my mind attempting to learn anything involving coding/programming, I would like to be pointed in some direction as to where to begin.

A guy at a book store yesterday recommended I check out w3schools.com which I will but any help in which languages I should start out in I will appreciate.

I want an intuitive language/ languages and I want to begin with the utmost simplest language to understand something as simple as 0=off, 1=on or even more basic than that.

This is probably due to showing friends my levels for half life and them replying, wow you make games? And I say, no I use an editor to make levels for a game that already exists.

I've been vaguely exposed to stencyl but would like to begin somewhere much much more basic with out block code plugins.

Thanks for the help!
Posted 9 years ago2015-02-23 15:33:14 UTC Post #324369
Zeeba!
So the most basic form of programming is Scripting - which you already do.
Scripting and triggering in Hammer/Sledge for Half-Life is already programming. Don't let anyone tell you it's not. So you already have experience with 'boolean logic' (1's and 0's... On or Off, True or False) Think of a trigger_once being a variable with a value of "False". Once the player walks into it, that variable becomes "True" and things happen; such as turning on a light, or opening a door, or firing a multi_manager.
Expanding on that, A multi_manager can be thought of as a function; Once fired, it triggers different events at specified times.

Multi_sources are boolean conditional statements; they evaluate any number of inputs and are 'false' until all the inputs are 'true' (or 'on' / 'triggered').

The hardest thing about jumping in (in my experience) is overcoming the syntax of a new language - it's even harder when you're learning new concepts like loops, logic, structures and variables.

Once you get a firm grasp on programming as an idea, it's much easier to learn a new language/syntax/whatever.

So If you want to make games with code, you probably want to jump straight into C++. It's one of the most common languages and it's prominent worldwide.

w3schools is good, but might I recommend a more game-orientated approach.
Check out 3DBuzz.Com's C++ intro course. It takes you through not only the C++ syntax, but the general Idea of coding.

Aside from that, why not head to your closest bookstore and drop a few dollars on C++ for dummies?

Regardless of where you go to learn, the road is tough. You'll be thrown into the barebones introductions and you'll learn to print things to console, declare and use basic variables, then you'll probably move onto basic loops and functions. It's all very boring stuff and it takes a while to learn but stick with it. There's nothing like a poorly-written SDK (cough - Half life - cough) to turn someone away from coding.

I code regularly in C, and have a few dozen hours of C++ experience. I'm always here to help.
Good luck!
Tetsu0 Tetsu0Positive Chaos
Posted 9 years ago2015-02-23 20:39:38 UTC Post #324372
My suggestion would be to start with something like JavaScript rather than C. C has some pretty difficult concepts that you shouldn't worry about until later (e.g. pointers, memory allocation). JS is easy to pick up because you can just open the dev tools in your browser and start running stuff.

The best resource I know of for learning JavaScript (and programming in general) is Eloquent JavaScript.

Once you're familiar with the basic syntax, you can then move on to any number of languages, because a lot of them share similar syntax to JS and C. Be aware that JS is a much higher-level language than most, so there will be some differences with how stuff is done. But the core concepts remain the same. I'd personally recommend C as a second language, and to avoid C++ because it has lot of extra crap that is quite difficult to understand (dynamic casts, smart pointers, templates, classes).

Most importantly: w3schools is widely considered to be an out-of-date resource for programming. It's fine if you use it every now and then (old information is usually still good information), but do not use it as the basis of your programming education. Find something different. I've heard similarly bad stuff about the "[x] for dummies" books, but even if they aren't bad, I wouldn't recommend spending money on a physical book when much better resources are available online for free.
Penguinboy PenguinboyHaha, I died again!
Posted 9 years ago2015-02-23 20:50:12 UTC Post #324373
Thanks for the help. Just looking into it to stimulate the old meat computer, and maybe i'll have some fun doing so. I'll check out your recommendations when I get home. <-In response to Tet, let me read your response Penguinboy :D.

Ok, thanks Penguinboy! Yes I'm looking to begin with something super basic, intuitive and rudimentary. I've read a few [X] for dummies books and they are ok, but tend to deviate from the topic on the title quite a bit. I'll look into JS and browse the net for help before purchasing anything.
Posted 9 years ago2015-02-24 04:15:03 UTC Post #324375
One of my first proper incursions into the world of code were in QBasic. While such a thing is probably pretty outdated, I do believe that console-based software is pretty transparent for the very basics of programming, because you can focus on proper syntax, logic and control structures without yet worrying about the graphical part, which can be a bit confusing when you don't know anything. After you get the above right, moving on to a GUI-based platform like Visual Basic or C# should be the next step.

This is, of course, from my personal experience. Lots of people hate console-based programs because they're ugly and want to move on to the pretty stuff right away. Then fail miserably. :P
Posted 9 years ago2015-02-24 06:23:55 UTC Post #324380
thought not technically a "programming" language, HTML and CSS are good coding languages to start off with, its quite easy to pick up
Posted 9 years ago2015-02-24 08:52:27 UTC Post #324382
what about programming contest on twhl? :]
Posted 9 years ago2015-02-24 09:52:07 UTC Post #324384
I'd be up for that. I wonder if anybody else would be though :P
Penguinboy PenguinboyHaha, I died again!
Posted 9 years ago2015-02-24 10:45:19 UTC Post #324385
That would most certainly depend upon the complexity of the goal :P
Jessie JessieTrans Rights <3
Posted 9 years ago2015-02-24 10:51:21 UTC Post #324386
There's free resources like Codecademy that'll essentially take you through the basics.
AJ AJGlorious Overlord
Posted 9 years ago2015-02-24 13:06:01 UTC Post #324387
PB is right start off with high level languages.
If you are going to go the JS route also take a look at node.js which will allow you to run JS code in a command line on a pc instead of a browser which is sometimes useful.
Im not sure how people feel about PHP, but that is how i started, very easy to get into C oriented language, not strict meaning you can reuse the same variable for many types of data it can contain (what ive found that strict languages are very frustrating for new people).

Then there is Python, the only thing i know and what i like about it, is it teaches how to ident your code properly.
rufee rufeeSledge fanboy
Posted 9 years ago2015-02-24 17:28:52 UTC Post #324389
Visual Basic seems appealing to me as I am extremely visual and can generate general graphics at ease.

I will check out Code Academy as well. Thank you everyone for all of your recommendations!

Doesn't blender use python? Might be worth looking into that. I love blender's weight paint and bone system for animating models though for more geometric/ orthogonal brush models I model them in rhino and import to blender.

Yes in a year I would be overwhelmingly excited to join such a competition, but not until then.

Any other recommendations as to visually interpretive coding languages that can be paired up with other programs?

Stencyl is a great example of a visually interpretive platform. Should I go out and invest in adobe flash? etc.

Of course much more research will be done on my part before I dive right in.

Maybe at my coding "climax" I could make a working bow and arrow in half life. ;) I also really want to focus on web design as I am starting a website to sell furniture. My friends and, well everyone recommends I research wordpress.org/.com.

I want my website to be more than average though. I'm thinking of designing it as a "house" that you enter and can walk through the house viewing furniture. Maybe with video clips or even some type of light 3D engine with imported models.
Posted 9 years ago2015-02-24 20:58:17 UTC Post #324390
Then javascript is what you want. There are awesome tools made with js these days, three.js (for 3d graphics) angular.js (one page applications) and many more.
rufee rufeeSledge fanboy
Posted 9 years ago2015-02-24 22:45:10 UTC Post #324393
Thanks for the help! Now I know where to begin.
Posted 9 years ago2015-02-24 22:48:15 UTC Post #324394
Sory for double post, sometimes when I hit post and it takes long to load I hit it again and it usually loads. Otherwise I usually lose my post. But every once in a while... :zomg:
Posted 9 years ago2015-02-25 10:51:53 UTC Post #324401
http://www.cplusplus.com/doc/tutorial/
http://www.learncpp.com

i suggest C++, C# or Java

also avoid video tutorials
Posted 9 years ago2015-02-25 11:00:10 UTC Post #324402
All of which are hard for a new programmer.
rufee rufeeSledge fanboy
Posted 9 years ago2015-02-25 11:16:34 UTC Post #324403
All of which are hard for a new programmer.
User posted image
when i was 15 i started with c++
Posted 9 years ago2015-02-25 11:22:36 UTC Post #324407
Still can't wrap my head around it. Just not a thing i recommend to a beginner.
rufee rufeeSledge fanboy
Posted 9 years ago2015-02-25 14:25:37 UTC Post #324408
Ninja's example should have just included "using namespace std" to simplify the cout instruction.

cout is short for Console out, it just prints information to the console.
It really is what everybody starts with.
Tetsu0 Tetsu0Positive Chaos
Posted 9 years ago2015-02-25 16:48:44 UTC Post #324411
I never liked cout. I prefer printf();

Not that I used either outside schoolwork in these fancy Windows days.
Posted 9 years ago2015-02-25 18:32:27 UTC Post #324412
Ninja's example should have just included "using namespace std" to simplify the cout instruction.
That's a matter of preference. I much prefer Ninja's style. You shouldn't use "using namespace std" in header files and so it's more consistent if you also don't use "using namespace std" in the regular code files.
cout is short for Console out, it just prints information to the console.
The "c" stands for "character" according to Stroustrup. And while it can print to a CLI console, that's not always the case. It all depends on what system you're on and how the program is used. It's the "standard output stream".
Oskar Potatis Oskar Potatis🦔
Posted 9 years ago2015-02-25 18:34:14 UTC Post #324413
I stand corrected.
This probably isn't the thread for it, but I wonder why you would want to declare "std::" more than once. I'm not very experienced TBH so there's a lot I don't know
Tetsu0 Tetsu0Positive Chaos
Posted 9 years ago2015-02-25 18:52:57 UTC Post #324414
Still can't wrap my head around it. Just not a thing i recommend to a beginner.
I agree. While C++ is a fantastic language and I recommend every programmer to learn and master it at some point, it's complicated and it allows the programmer to shoot himself in the foot in so many different ways. It's best to start with something simpler.
This probably isn't the thread for it, but I wonder why you would want to declare "std::" more than once.
You wouldn't want to. But you get used to it. Consistency makes the code easier to read. You can't put using namespace std in the header files because then you'll force your own programming decisions on everyone that uses your header files (directly or indirectly) and that's never popular. See the top answer to this SO question for a good explanation.

@zeeba-G: Stackoverflow is a good QA site for programmers.
Oskar Potatis Oskar Potatis🦔
Posted 9 years ago2015-02-25 19:45:29 UTC Post #324415
Interesting read Potatis, thanks.
I'm now cursing my professor
Tetsu0 Tetsu0Positive Chaos
Posted 9 years ago2015-02-25 21:21:23 UTC Post #324416
I say start with Visual Basic .NET, learn the absolute basics such as variable declarations, arrays, creating methods and functions, classes, properties, expressions and all that good stuff.

Once you master that you can switch gears and pick a different language.

Follow these sets of tutorial video's by Bob Tabor on Channel9:
Visual Basic Fundamentals: Development for Absolute Beginners

This guy really does a good job at explaining all the in's and out's of Visual Basic and Object Oriented Programming in general.
The Mad Carrot The Mad CarrotMad Carrot
Posted 9 years ago2015-02-26 20:06:47 UTC Post #324441
Thanks for the help, will check out soon as I get done working in the garage. ;)
Posted 9 years ago2015-02-28 16:17:43 UTC Post #324468
I mean you can start on C / C++ or whatever to begin with, but IMO that's an unnecessary step for a beginner.
To actually get your head round the principles of object oriented programming, i'd recommend doing java first

now this is edinburgh university's site which, if you follow the lectures and do the exercises, you should be able to be very confident in java by the end of it. The site is freely accessible by google so it's not a leak or anything like that.
Instant Mix Instant MixTitle commitment issues
Posted 9 years ago2015-03-01 20:18:53 UTC Post #324489
Heya!
I've actually just started learning C++ really, really, recently. I've started with C++ for dummies, and it's quite good. It only covers the basics, but the really complex stuff (If ya get what I mean :P). It goes over making super simple programs which require some basic maths, teaches you some variables, and some other cool stuff. If you want to you can check out their site at http://www.dummies.com/how-to/content/an-introduction-to-c.html.
RollingBarrel RollingBarrellearning in progress
Posted 9 years ago2015-03-27 20:41:06 UTC Post #325052
I've been following along code academy and it's been a lot of fun so far. I will check out angular.js as soon as I get somewhere.

One example was to type in a field that if equaled true that my name equalled 7 or more characters then it says a message that your name is long. Of course I wanted to program the code to actually ask you to enter your name in and it to decide if it equalled Boolean true or false and had multiple answers to respond with. I feel like I'm creative enough to learn a lot with js and then possibly other languages. Thanks for the help so far.

My friend showed me processing and I installed it but instantly lost interest in it since it's not entirely directly js.
You must be logged in to post a response.