Need help.... I'm tired of being a script kiddie!

Chronomaly

Member
OP
Newcomer
Joined
Jan 18, 2017
Messages
24
Trophies
0
Age
26
XP
61
Country
United States
I'm tired of having to rely on everyone else's programs to do things. When I think of homebrew, I think of entire user bases contributing to projects for the general public.
Now, I want to stop mooching off of others, so i created an account.
Fresh out of HS, so ive git nothing but time on my hands for now.... So, how can get started on my own projects and stuff? I also have other questions:

1)what's the best language for a beginner to learn? I've heard Python is good, but can anyone comfirm?

2)I also heard that Linux is the best to start from because its virtually limitation-less (compared to windows/Mac)

3) is it best to learn c or c++ first?

4) is it best to take a course to learn a programming language, or is it best to just teach myself?

5) best place to find open sourced projects?

Now I know, I have a dream of being a real hacker, which would take YEARS of learning, but what's also the best way to reverse engineer? Or will the former teach me how?
I want to actually have a presence in the hacking community, ya know?
 
Last edited by Chronomaly,

Zenior_X

Active Member
Newcomer
Joined
May 6, 2015
Messages
29
Trophies
0
Age
34
XP
103
Country
I started coding at university, and they taught me C and Assembly at the same time I was learning about CPUs, then I started with Java and Python (OOP). So I would recommend you to start with C as you learn the basics of coding, the concepts (variables, loops, functions). And then switch to Java or Python as you'll learn how OOP works.
 
  • Like
Reactions: Chronomaly

Chronomaly

Member
OP
Newcomer
Joined
Jan 18, 2017
Messages
24
Trophies
0
Age
26
XP
61
Country
United States
I started coding at university, and they taught me C and Assembly at the same time I was learning about CPUs, then I started with Java and Python (OOP). So I would recommend you to start with C as you learn the basics of coding, the concepts (variables, loops, functions). And then switch to Java or Python as you'll learn how OOP works.
So are you recommending I go to college to learn this better?
 

Chronomaly

Member
OP
Newcomer
Joined
Jan 18, 2017
Messages
24
Trophies
0
Age
26
XP
61
Country
United States
Well, you can learn by your own but it's not that difficult. At a college you can learn too. You just have to choose. :)
Might go to college then. And what about #2? Is Linux best to start with, or does OS simply not matter?

--------------------- MERGED ---------------------------

Also, what would be the name of the course that teaches those languages?
 

Zenior_X

Active Member
Newcomer
Joined
May 6, 2015
Messages
29
Trophies
0
Age
34
XP
103
Country
Might go to college then. And what about #2? Is Linux best to start with, or does OS simply not matter?
2->Use linux, once you get use to it you'll know why
3->C is better for beginners
4->If you decide to learn by yourself I would reccomend you to use a book.
5->If you want to read code from open source projects ou can go to github
Finally about hacking. You don't learn how to hack something just by coding, you need to understand how the machine you want to reverse ingeneer works, is composed etc.
 
  • Like
Reactions: Chronomaly

Chronomaly

Member
OP
Newcomer
Joined
Jan 18, 2017
Messages
24
Trophies
0
Age
26
XP
61
Country
United States
2->Use linux, once you get use to it you'll know why
3->C is better for beginners
4->If you decide to learn by yourself I would reccomend you to use a book.
5->If you want to read code from open source projects ou can go to github
Finally about hacking. You don't learn how to hack something just by coding, you need to understand how the machine you want to reverse ingeneer works, is composed etc.
Gotcha, thanks for the help. But I'm looking up colleges too RN, and I was wondering, are these languages more web-based, for like websites, or can I also use these for writing computer software?

HTML5, CSS3, JavaScript, Java, jQuery, Node.js, Responsive Design, Heroku, Git, User Authentication, React.js, MySQL, MongoDB,
 

Zenior_X

Active Member
Newcomer
Joined
May 6, 2015
Messages
29
Trophies
0
Age
34
XP
103
Country
Gotcha, thanks for the help. But I'm looking up colleges too RN, and I was wondering, are these languages more web-based, for like websites, or can I also use these for writing computer software?

HTML5, CSS3, JavaScript, Java, jQuery, Node.js, Responsive Design, Heroku, Git, User Authentication, React.js, MySQL, MongoDB,
Unfortunetly I still have no knowledge about these yet. I know Java and yes, you can write computer software with it.
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,321
Country
United Kingdom
1) Languages are better and worse at different things. You can however do a lot with python on every level really. You might also want to learn some php and some mysql (and htaccess and general server configuration)
2) There is a lot Linux can do that Windows can not, especially for some of the slightly more exotic aspects of networking, but for my money there is not a lot in it if you are just learning you way about. Definitely learn Linux at some point but I am not sure if it would gain much to add in learning a new OS at the same time.
3) Arguments for and against both really. I would lean towards C++ but maybe not sweating too much of the differences between it and C.
4) Many can teach themselves, many can not.
5) For hacking or generally? For hacking then look at whatever open source disassembly and analysis tools are going http://www.radare.org/r/ is a good start and before long you will probably want to look at something like https://www.kali.org/ and similar things.

Also it is not using premade tools that makes you a script kiddie, it is only using tools and not knowing how the underlying stuff works that makes you a script kiddie. Most of coding, and engineering at large, is about not redoing work that others have already done. Similarly you need not be able to code to contribute -- writing documentation, testing, making guides and more are all useful things which nobody wants to do and benefit far more people than getting the basics of programming down and maybe fixing a small bug, optimising a small section or adding some comments.
Reverse engineering? Usually by doing. Coding won't inherently teach you it but it will not hurt. You might also like things called hackmes. Various ones exist (online, windows based, mobile, electronics even) and are made to allow people to pull things apart and figure out how they work, often in some odd way.
 
D

Deleted User

Guest
I know I'm a bit late here, but I'll offer some suggestions on some languages:

1. Python: This was actually my second language, after BASIC. The formatting can take some getting used to, but it helps reinforce clean code. It's Object-Oriented, and there are plenty of useful libraries for the language that you can mess around with.

2. C: It's definitely harder than Python, but is also more lightweight and allows you to perform some low-level functions. Memory can be a pain to deal with, and pointers can be a bit confusing for beginners. Most of the hacking tools in the 3DS scene (or in any hacking scene, really) use C. I'd advise you do a language like Python or Lua before tackling C. Speaking of which,

3. Lua: It's relatively light, and has an easy learning curve. Lua is particularly useful in scripting in games. Games like GMod and TF2 use Lua for bot scripting and the like.

4. Ruby: I'm still learning this one. However, from what I've heard from others, as well as from what I've learned so far, it's a powerful tool, allowing rapid prototyping and generally fast development. It's also fairly easy to pick up. Ruby is sometimes used in web development
(i.e. Ruby on Rails).

5. Brainfuck: The only true programming language. True programmers use this language. /s
 
  • Like
Reactions: Duckling

Chronomaly

Member
OP
Newcomer
Joined
Jan 18, 2017
Messages
24
Trophies
0
Age
26
XP
61
Country
United States
I know I'm a bit late here, but I'll offer some suggestions on some languages:

1. Python: This was actually my second language, after BASIC. The formatting can take some getting used to, but it helps reinforce clean code. It's Object-Oriented, and there are plenty of useful libraries for the language that you can mess around with.

2. C: It's definitely harder than Python, but is also more lightweight and allows you to perform some low-level functions. Memory can be a pain to deal with, and pointers can be a bit confusing for beginners. Most of the hacking tools in the 3DS scene (or in any hacking scene, really) use C. I'd advise you do a language like Python or Lua before tackling C. Speaking of which,

3. Lua: It's relatively light, and has an easy learning curve. Lua is particularly useful in scripting in games. Games like GMod and TF2 use Lua for bot scripting and the like.

4. Ruby: I'm still learning this one. However, from what I've heard from others, as well as from what I've learned so far, it's a powerful tool, allowing rapid prototyping and generally fast development. It's also fairly easy to pick up. Ruby is sometimes used in web development
(i.e. Ruby on Rails).

5. Brainfuck: The only true programming language. True programmers use this language. /s
Lateness dosent bother me.
But what is brainfuck?

--------------------- MERGED ---------------------------

Never mind, just Googled it.
But what would be the best for let's say, a multiplayer game? Or something as simple as a save editor?
 

ScarletDreamz

[Debug Mode]
Member
Joined
Feb 16, 2015
Messages
3,967
Trophies
1
Location
/dev/sda1
XP
4,380
Country
United States
Lateness dosent bother me.
But what would be the best for let's say, a multiplayer game? Or something as simple as a save editor?

You can always start with C#, i normally use C# as well as Unity since it has all already embed into it, you can get also a good Engine, Unreal, Havok, Or even something like RPGMaker or Game Maker.
 
Last edited by ScarletDreamz,
  • Like
Reactions: Deleted-414155

Sketchy1

gbatemp's shadiest warez dealer
Member
Joined
Aug 9, 2016
Messages
1,553
Trophies
0
Age
25
XP
651
Country
United States
Its probably best to learn Python because its simple yet powerful, then c, then c++.
Technically c++ was supposed to be the successor to c, but The reason I say c before c++ is because a large portion of c++ is the same as c, so learning it after shouldn't be to hard.

Don't get me wrong either; c is very very very NOT dead, its still widely used anyway.
 

The Catboy

GBAtemp Official Catboy™: Boywife
Member
Joined
Sep 13, 2009
Messages
27,908
Trophies
4
Location
Making a non-binary fuss
XP
39,173
Country
Antarctica
First, get yourself a Linux distro. There are literally hundreds of them, but most of them are the same damn thing. Once you get the feel for that, you are ready for your journey.
Good place to start looking at Linux Distros would be here
http://distrowatch.com/
I've used that site for years for distro hoping.
 
D

Deleted-414155

Guest
ik I'm late. If any help, I started of with c#. I'm not a expert at it, but ik my ways around. But I use C# for developing software and etc. I tried python, but didn't like it. Not saying it's a bad language, it just didn't fit me I guess. C# isn't that hard to learn. But you got to take your time. But like I said, I aint a expert, I just know my ways around and stuff xd
 

sarkwalvein

There's hope for a Xenosaga port.
Member
Joined
Jun 29, 2007
Messages
8,506
Trophies
2
Age
41
Location
Niedersachsen
XP
11,221
Country
Germany
Even later, but:

1)what's the best language for a beginner to learn? I've heard Python is good, but can anyone comfirm?
I think Python is great for learning, go for it. After that try learning some C and C++.

2)I also heard that Linux is the best to start from because its virtually limitation-less (compared to windows/Mac)
I would say go for Linux, but not beacuse of it being limitation-less, but because it usually pushes you to use tools appropriate for programming and gets you away of bad practices.
OSX is also good. It is really easy to get libraries/components in Linux or OSX, using either the integrated package manager (apt-get / yum / etc in Linux) or the ones readily available in OSX (e.g. brew).
Having a UNIX environment makes it easy for a lot of projects to compile and work, because the toolset they require is already available in those systems.

Windows is IMHO not so good for learning programming, but of course it can be used.

3) is it best to learn c or c++ first?
If I were you I wouldn't learn C or C++ alone on my own, not as a first.
It can be done, but you may end with very bad practices, the language doesn't enforce you to make the things right.
PS: If you were asking if it is best to learn EITHER c or c++ first, go the way you like. There are two different ways of progamming that apply to C and C++, thinking about procedures or thinking about objects, you should learn both in any order you want (I would go procedures/C first, but whatever, I'm old and I learned procedural first). Learn to understand the difference of the two ways of thinking... Don't program C++ as if it was a procedural instead of object oriented language (it will let your, as it is mostly backwards compatible with C, but you're missing the whole idea of the language.).

4) is it best to take a course to learn a programming language, or is it best to just teach myself?
It is best to take a course, totally. Specially for C and C++, and try to learn how to code well in a maintainable and readable way.
Python generally enforces you to have at least a couple of good habits in writing it or it will just complain and fail to work. The documentation and tutorials -usually- make you program it in an appropriate way. It would be OK if you want to learn Python on your own.
But IMHO, if you are learning a first language, it is always better to take a course or two.

5) best place to find open sourced projects?
I don't know... github?... google?
They are all around. First look for tutorials and project.
Perhaps look for projects based on specific libraries, like pygame, or complete engines like RenPy.

Now I know, I have a dream of being a real hacker, which would take YEARS of learning, but what's also the best way to reverse engineer? Or will the former teach me how?
I am not actually a hacker, but I will tell you what I think about it.
For hacking it is good to know the underlying of things, go as near to bare as possible.
It would be great if you learn about protocols, libraries, calling conventions (specially C based calling conventions), how stacks work, etc.
Learning C/C++ in the low level (regarding pointers, calling convention and the stack, etc.) will probably give you some knowledge in that direction.
Other than that you should learn about how things compile and work in the processor, e.g. how is the stack and registers used during a function call.
 
Last edited by sarkwalvein,

grossaffe

Well-Known Member
Member
Joined
May 5, 2013
Messages
3,007
Trophies
0
XP
2,799
Country
United States
Listen to sarkwalvein. There is no one correct way to go about learning this stuff, but I think his suggestions here are pretty on point. For your first programming language, you really should learn it properly so you can learn the best practices and build upon that as you move further. If you start with a kernel of bad practices, you're gonna have a bad time as you progress.
 

AuburnSounds

Member
Newcomer
Joined
Feb 21, 2017
Messages
7
Trophies
0
Age
36
Website
www.auburnsounds.com
XP
58
Country
France
1)what's the best language for a beginner to learn? I've heard Python is good, but can anyone comfirm?
Anything can be used for starting, I would advise the one you want to use most.
Every programmer I know has used something quirky, outdated and personal at one point.

2)I also heard that Linux is the best to start from because its virtually limitation-less (compared to windows/Mac)
Same answer, use what you want if it's for starting. Mac has a unix core so it can be used a bit like Linux.

3) is it best to learn c or c++ first?

I encourage you to learn top-down ("I need this now so I learn it now") to avoid "preemptive" learning .
So I'd say to make a (simple) program for some external goal, and to learn the relevant piece of language as you go.

That said, the basis of knowledge in C will help you in many other language ("C family"), because:
- its operator precedence is reused
- the integer handling/promotion is still one of the best
- it is a stepping stone to learn languages in this family
The basics matters a lot and learning C is a good investment.

That said #2: learning Scheme with SICP book will be an even better investment in the long run. It was the canonical way of learning programming until recently at MIT (they went with python afterwards because "programming workplaces are hellish anyway so better train people for big mess"). I wish I had learn this way.

4) is it best to take a course to learn a programming language, or is it best to just teach myself?
I think it's best to make something that requires you to know the language. At one point, you will want the books and documentation, it will come naturally.

5) best place to find open sourced projects?
Github? Find threads on the Internet that recommend interesting source code.

what's also the best way to reverse engineer? Or will the former teach me how?
I want to actually have a presence in the hacking community, ya know?

It can help to actually know assembly programming to reverse engineer, but it is essentially its own discipline.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users