Jump to content

intro to programming


Guest Halabrad

Recommended Posts

Guest Halabrad

I am interested in learning some basic programing languages/coding, with the interest in pursuing a career in the pen testing/cyber security field down the road. I am also very new (as in new born baby virgin new) to programming so I will be starting from scratch. I know that taking college classes would probably be the best way to achieve this, but it's too late to sign up for classes, and I figured I could give myself a little knowledge before hand.

 

I was just wondering if anyone out there might have any advice as to what i should start with. I've done a little digging, and it seems like python and/or ruby are good starter languages as well as learning how to run/use linux. Should I focus on anything (else) in particular with any of these choices? I also picked up a book about html5/javascript. I know they aren't used in the same capacity as python/ruby, should i wait until after i get some basic understanding of python/ruby before I add it html/javascript, or can i go

Link to comment
Share on other sites

Guest RET.CW4.ThievingSix=US=

I never took a single class in programming, so i can't really say if college classes based around programming are worth it. Honestly there's so much information on the internet that you could learn everything you need to know programming-wise before you go to college. What i found useful from the classes i took, was the structure, logic and tips/tricks that are handy to know.

 

If you're interested in web-based security testing, HTML is handy, because its simple and a good foundation to producing web content, which is useful when security testing websites and servers. PHP, CSS and Javascript all follow on from HTML as what i consider to be "advanced" web-dev, but the basics still apply. For learning HTML, http://www.codecademy.com/tracks/web is great, for web based security, http://www.hackthissite.org/ is where i learnt a lot of tricks, but is not necessarily beginner friendly.

 

Python is a good beginner language, honestly i never liked ruby(not sure why :D). Though it is mostly a starting point, you will undoubtedly have to learn C later on. Again the interactive tutorials http://www.codecademy.com/tracks/python. This is a handy book http://learnpythonthehardway.org/book/ alongside the official python tutorial http://docs.python.org/3/tutorial/. I also found this pretty cool http://projecteuler.net/.

 

If you can get Python and HTML down, the others will flow on, and it will be mostly looking at syntax books for other languages because the logic is fairly similar. I learnt HTML first, then C++ and Python. What you want to be getting out of learning a programming language is the control structures, logic and structuring of your code and problem solving. That's why i enjoy "learn as you build" type tutorials such as project euler.

Link to comment
Share on other sites

Guest RET.Maj.SKI=US=
I had programming classes in college. FORTRAN and Assembly Language. I have never used either of them out in the real world. They did however teach me the methodology of programming. If you count what I do for the clan, I can at least cause Chaos in about 6-8 different programming languages. Once you learn basic logic and structuring, all you need to learn is the syntax of the language you are using. Pick a language and go with it. And as the SGM said, learn as you build is the best approach in my opinion.
Link to comment
Share on other sites

Guest Halabrad
Thank you all very much for the advice. I am currently building a super basic javascript based game on codecademy as well as printing out some material on ruby
Link to comment
Share on other sites

Guest RET.LT.Padarom=US=

I've never taken any classes in programming, but have experience with some languages (including Visual Basic, Java, C#, Python; I have the best skills in C# and Java) which I learned by myself just out of curiosity.

I recommend web services like http://www.codeacademy.com where you are able to learn languages like Python and Ruby, as well as web languages (HTML, CSS, PHP, JavaScript, ...) in a good way. I think Python is a beginner friendly language and can lead to experiences you need when learning other languages later on. If you're interested into web programming, definitely try out the web coding courses.

Even though I love programming, web coding is even more fun to me.

Link to comment
Share on other sites

Guest MAJ.Spartan-S63=US=

I'm going into a CS program this fall in college. I've self-taught myself since seventh grade, took a couple Java (yuck) classes my high school offered and passed (and got credit for) the AP Computer Science exam this past year. I'm usually an odd one out when I believe your first language really should be C/C++. I think everyone's foundation needs to be in C/C++ because it teaches the fundamentals of memory management and other concepts that I think are hugely important to learning how everything works. It's not just learning the syntax, it's knowing the language quirks and what's happening (or at least having a really good guess) under the hood when the compiler/virtual machine/whatever compiles or executes your code.

 

I would personally encourage you to learn C++ as your first or second (if you learn Python first) language because it's a lot easier to learn a low-level language and work up to higher levels than it is to start in the high level and work your way back down because a lot of the things Python, Ruby, C#, or Java do for you that you have to do yourself in C++. It's like learning how to do it the hard way before you can take the shortcut because otherwise you'd never understand why you were taking the shortcut.

 

That's my personal opinion on the matter.

Link to comment
Share on other sites

Guest RET.Maj.SKI=US=
it's knowing the language quirks and what's happening (or at least having a really good guess) under the hood when the compiler/virtual machine/whatever compiles or executes your code.

 

I agree with the Captain ... Machine/Assembly Language should teach you everything you need to know to get down to the nuts and bolts of it. :)

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...