5 Replies - 1958 Views - Last Post: 13 May 2014 - 10:27 PM
Programming / hacking
Posted 10 May 2014 - 02:52 AM
Im gonna try and make myself quick.
I have lately become very interested in programming and everything that has to do with hacking and game hacking. I have started out with C# like two weeks ago and I spend around 2-3 hours per day, each day, on programming. I have around 4-5 printed books as well as tons of ebooks and tutorials on the internet and I spend normally around 1-2 hour on reading and 1-2 on writing code.
The thing is that I find this really fun, like i have never felt so stimulated as i feel when i read about or do programming. It is very challenging and it takes alot of energy doing this, which is why i dont spend more time than 3-4 hours per day. After all, i have a full time job to take care of, so i guess the time and effort i put down is quite good.
The reason why i started with this is because i have felt so bored and frustrated lately. I have felt like i just wake up, go to work, come home, eat and sleep, and i do this all the week and on the weekend i go mindlessly partying and then i just repeat the same thing.
So instead of just playing games and just spend time on boring stuff I started to read some books etc about programming to give it a try, and I got really caught into it. Like i said, its easily the most fun and stimulating thing i have ever done in my life, I rather spend my weekend (like today) on reading about programming and learning instead of going out.
This is also the reason to why I am doing this thread.
There are alot of skilled programmers/hackers here and I obviously want the same knowledge as you possess. My question to you is how did you become so good? Where did you learn everything? How long did it take to become a good programmer?
I am 20 atm and I aim going to the university in Jan 2015 which is in a little more than half a year. I wanna study something that involves programming so I wanna get as good as I possible can until then. I think Im learning quite fast, i dont really consider myself a natural, but I do think I learn it fast. I have always been good at logical stuff and even if im learning it step by step the things I learn feels so logical! Its beautiful how logical it really is.
Thing is, I wanna learn so much. I wanna learn not only C#, but also C++, C, Perl, PHP, Python etc. I wanna learn everything there is to learn about assembly and machine language and how a CPU truly works (down on the low levels with cache, registry etc). I wanna learn Linux and Kali/Backtrack and learn how to use exploits and further in future I wanna learn how to make my own exploits, I also wanna learn game hacking, to make my own aimbots etc. I dont plan on become a hacker that does things for malicious purposes, I just wanna learn it for the knowledge, I wanna truly understand how a computer works, I wanna understand how the process in the CPU works on detail level, from the moment it gets the instruction and executes it, how does the computer go through the code of instructions bit by bit? I wanna get a higher understanding of how everything works, almost everything in our society runs by or in connection with computers, if you truly understand and know how it all works, then you have a great deal of power. And I want that.
As you can see, there is alot that I wanna learn. And the biggest problem I have, which is why I am contacting you, is that I wanna learn it all at once. So once again, how did you learn all that you can? In what "order" did you learn all this? And what order do you think I should learn all the above?
For example, since I have already started with C# and purchased material and stuff Im gonna stick to it, atleast until I know it on a decent level. But after that, what should I learn? Should I go over to C, C++ or some other language? When should I learn assembly, and at what time would it be good to start learning Linux and everything it has to offer (bash scripting etc)? I know it will take like 5+ years until you are considered a good coder, unless maybe you are a natural, so I know that learning all this stuff will take a huge amount of time. But as I said, this is the most fun and stimulating thing Ive done, so I dont really see what else I would do with my time.
I live in Sweden so english is not my native language, Im sorry if the text is a little bit disjointed.
Replies To: Programming / hacking
Re: Programming / hacking
Posted 10 May 2014 - 03:16 AM
From the long paragraph you posted you seem very motivated to enter the computing and programming world, I wish you a good luck
This is a very controversial question, but in my opinion the common order is as follows
HTML and CSS
This post has been edited by TgaJava: 10 May 2014 - 03:16 AM
Re: Programming / hacking
Posted 10 May 2014 - 04:38 AM
I learnt programming via hacking. It was not until my late 20's that I went to uni and got a formal computer science degree, By that time i had been working as a computer programmer for almost 10 years. OMG uni was a bore.
Its now 33 years since I started programming and I still spend many hours every day coding. It has been and will continue to be a life long obsession for me.
Re: Programming / hacking
Posted 13 May 2014 - 12:49 PM
wish good good luck for you
but be careful the first fight with programing will be with your mood and
" you should learn everything before doing anything"
not mean to disappoint you but not get shocked with it
Re: Programming / hacking
Posted 13 May 2014 - 10:27 PM
It's really brilliant to see such a fierce determination to learn, so thanks for that.
There will always be more to learn, and the more you learn, the more true this becomes. Think of your knowledge as a sphere located in a space. The contents of that sphere is what you know, the stuff outside it is the stuff you don't know. As you learn more, of course, the surface area of that sphere - the point of contact of your knowledge and the rest of everything - grows. That area, the surface of the sphere, is approximately "that portion of your ignorance that you're aware of". The more you learn, the more things you'll discover, and since you're a curious and interested person that means that the more you learn, the more you'll find yourself keenly aware of your ignorance.
This is a beautiful thing, of course, because it means that from now until the day you die, you'll be constantly presented with the greatest ongoing pleasure a human being can have, which is learning new stuff. And the more you go on, the more fun this is. So that's okay.
The trouble is not letting yourself get swamped by it. And that takes some discipline. One trick you might adopt is simply keeping track of the things you want to know about. As you read, as you work, as you talk to people, you'll find that you're constantly presented with things that you don't know about. These might be technologies, they might be techniques, they might be algorithms or concepts or people or eras of history, or any sort of thing. Keep a notebook with you, and write these things down as you come across them. This is a record of things that interested you enough to at least make a note of them once. Now you can prioritize them, and cross them off the list, which feels good. Of course, in the process, as I've said, you'll probably add several new items for each thing you cross off, but that's still a good thing.
What order should you pursue them in? Well, partly that's up to your curiosity. You're the one who needs to be satisfied here. What are you most driven to learn about? That might be a good place to start. Other people might give you suggestions, and reasons for those suggestions, but when you have an hour to read up on something, it's up to you to determine what that's going to be.
Based on what you've said, I guess you might find it useful and rewarding to spend the time between now and school learning as much as you can about C programming, the design of unix-like operating systems, and computer architecture, but if you attack the problems that most stimulate you, that's probably going to get you the most pleasure and the most knowledge.
One thing I'd suggest: don't worry so much about learning lots of different languages. They'll come. Learn one language well, then learn another language well, and then you'll find that you're able to move into other languages without much trouble. You would benefit a lot more from learning about language design and compiler construction at this stage than you would from learning some arbitrary language.