Hello.
I've experimented with a lot of different languages, but I'm not a master of any of them. I don't know any math, really… beyond algebra. I've been reading for a long time about computers and programming, but don't really feel like I know very much. I have tried more than 5 distributions of Linux, but never stuck with any of them longer than Ubuntu. I thought about trying Debian for awhile, but I ran out of CD/R's before I burned an installation and haven't gotten around to buying any since. I'm using Windows right now, after over a year of nothing but Linux being on my computer. If anyone can come up with a list of the best free books or tutorials on general security/hacking for people who don't know *very *much about anything I'd really appreciate it. I've been googling for quite a while, off and on, and haven't really found any real quality free books on general security/hacking for people who don't know *very *much about anything.
I agree with spyware(except the need to use an expletive in relation to a language)
Also,you should stick with one language.(even if it seems like you are stuck)
If you really want to mess with your brain, I would recommend "Brainfuck".:)
But most importantly,stick with what you like,every programming language has its advantages and finally its up to you to decide what you are comfortable in. (again,that does not mean changing it every few hours).
I like Visual basic,cause its easy to link with databases. (I NEVER pursued it,only did a few tiny progs for school)
Also,you should try and make code that can be easily compiled and run on Linux/Unix,which is why many people use GCC standard code(C).
And I would say the same with resect to the O.S.,I like using linux but usually program in windows cause most of my client base(victims/friends) use only windows…however,I recommend Backtrack.
Not because of the tools(Never got around to using any of them),but because it has great graphics,is the only one from amongst all the Linuxes I have tried(other than xPUD) to have recognised all my devices and is a fully featured live O.S.
Visual C# is good(this is second hand experience,so DONT rely on it completely). But I tend to avoid any programming products from Microsoft,they are usually too big. I like C# cause its simple,has a lot of power,etc. But I would still recommend using GCC or MINGW(C/C++) If not for anything else,then for the ability to compile the same code on a Linux.
spyware wrote: I'd advise you to learn C + perl/python instead of learning bullshit languages like visual basic.
How is any language a bullshit language? If Visual Basic fits his needs then it's a fine language.
I think it's about time that people start to realize that there's no such thing as "better" languages than others. Every language is good at what its designed for.
Let's take a simple example, when it comes to gamehacking, people usually go for C++
Now lets take some examples of things you might have to do: Creating fake stacks as calling a function directly doesn't always work out too good and JMP into the middle of one, sometimes you have to overwrite gamecode in your own callbacks, stack modifications, the whole nineyards really.
This would mean that C is obviously a ''better'' language than C++ in this factor, as it's closer to the memory and C++ takes over memory functions that might come in handy.
With other words, the language you use, should simply fit your needs. So stop forcing people into languages– that fit yours.
MoshBat wrote: I have a stack of wood to cut, and my tools are a saw and an axe. As I'm not very accurate with an axe, and the end result would be inconsistently, and badly, cut wood, I'm going to choose the saw, even though the axe may get the job done faster, with less effort.
The correct response would be to learn how to use an axe properly. Especially if the saw can only cut wood that comes from Microlog.
I believe that if the OP wants a real "programming experience" and "learning" he should go for languages such as C/C++ rather than Visual Basic. Long time ago, when i didn't know any programming languages, I'd simply get my visual basic and start programming things. I made browsers and some other things i wouldn't be able to program on any other language.
Visual Basic has many details that teach newbies new codes and syntax, and also, help professionals to get the job done faster.
Conclusions: I believe that if the OP wants to learn more about programming, it would be interesting that he learnt some C/C++, perl, python or java before. But if he aims towards making programs fast or developing graphical interfaces, it would be cool to learn VB. If he wants to learn and deliver graphical interfaces, than he should take a look at Qt.
I've read a free book and did the example code in the free book for both Python and Perl. For Windows, I can't see not using VC++, VB.NET, Visual * Express, *.NET, whatever… just so I can switch back to Linux and not have to switch to another language. It doesn't seem worth it to me… I wouldn't say it's objectively not worth it, but still…
chess_rock wrote: Conclusions: I believe that if the OP wants to learn more about programming, it would be interesting that he learnt some C/C++, perl, python or java before. But if he aims towards making programs fast or developing graphical interfaces, it would be cool to learn VB. If he wants to learn and deliver graphical interfaces, than he should take a look at Qt. I own C in a Nutshell, I've read free books on C++ and a commercial book on it as well a long time ago. I've read at least a full free book on Python and Perl. The only language in your list I have had practically no experience at all with reading or writing is Java. It seems like VB.NET or other Visual * Express languages are good for Windows programming. I just don't understand someone pointing out that it only works with Windows if the point of installing it is to write programs for Windows. I don't really want to master 20 different languages, so I don't know what to learn really. But for Windows programming I can't see using Microsoft's software as a mistake…
I would very much appreciate it if you could explain why you don't think it is a good choice… Do you think learning one language is a good idea, so knowing one language for Linux/Windows is the obvious thing to do? Why would software made by Microsoft for programming Windows be at a disadvantage to software made by anyone else for programming Windows? NOTE: Even if your explanation is very short, I'd still appreciate it…
Also, I want to point out that I didn't read to include my name in my thread title… I just read it. Also: 2) How did you find the site? I googled and found hackthissite.org, then I found the link to this site there and like it better than hackthissite.org.
NOTE: I did read the general forum posting rules.
BaburuBoburu wrote: I would very much appreciate it if you could explain why you don't think it is a good choice… Do you think learning one language is a good idea, so knowing one language for Linux/Windows is the obvious thing to do? Why would software made by Microsoft for programming Windows be at a disadvantage to software made by anyone else for programming Windows?
When we choose a programming language, our objective is to choose one language that is portable, since this will enable us to work with almost any OS. Second, we choose popular languages, since popular languages are much more needed by enterprises than are unknown, or not very common languages. I ask you something to make it clear… Would you rather program in C/C++, or in D? Third… We choose fast languages.
Visual Studio has great languages for you to learn. Those include C/C++, C#, J#, Visual Basic, etc. But if you learn languages such as C#, you'll be locked into windows. That is for sure bad, since you would violate the need for a programmer to have a portable and popular language. I know C# is a fast language, but you would end-up being a windows only developer.
We criticize the choice of VB since that is a limited language. VB is not as powerful as C/C++, and is mostly used for fast development of simple programs.
BaburuBoburu wrote: Going by what I've read, I would agree that it seems like Python or C/C++ would be the best portable languages…
C/C++ are the most powerful languages in the list. Python was programmed if i'm not wrong in C, so, it is a bit slower than C and C++. Talking about portability, Java wins, since it runs in a virtual environment that is common for every single OS. So if you wanna go for a more powerful language, C/C++ are for you. If you want a portable language, than Java is for you. If you want a simple language to develop programs fast, than, keep in mind python. It's your choice.
I know that the OP has apparently finally made his choice, but I have to comment here.
chess_rock wrote: I know C# is a fast language, but you would end-up being a windows only developer. This is plain wrong. C# is cross platform as it is an interpreted language in a similar way to java, so if he wants a portable language, with the whole .NET thing since he seemed so hung up on that, easily made GUIs and OOP, he might as well go for C#.
Also, what's with the constant perl or python? Why hasn't anyone recommended php to this poor sod? Last I checked there was nothing wrong with php.
Oh and let's not forget:
BaburuBoburu wrote: Going by what I've read, I would agree that it seems like Python or C/C++ would be the best portable languages… No. I can see the confusion here since people go on and on as if C/C++ were portable languages. Sure, in a sense they are, but it depends on what you want to get done. Once you reach an intermediate level of knowledge, or just happen to find something special to do, you will run into problems with portability. This isn't just the system() part of it, but there are a lot of things one might want to do that is OS specific, meaning that you would have to write specific code for either platform. You can of course make one portable code by the use of preprocessor directives, but you would still have to write the code for any OS that differs for it.
I messed around with PHP just a little bit before I reinstalled Linux… It doesn't matter too much. Like I said, I have "C in a Nutshell" and I know a lot about it. I just really don't want to spend a lot of time with C++. I figured Visual Basic for Windows, but the more I think about it I'm going to stick with Linux for now and learn Python. If I'm using Windows and feel like programming, I'll still probably stick with Visual Basic though.
EDIT: Everyone always says "the most powerful language is C/C++".
- I'm not sure what you mean, and I'm sure it takes a long time to explain if the explanation isn't "You have complete control over what you're doing." or something along those lines. For most people, it's probably important… for me it's not, and I'm never going to be a professional or anything anyways so I have to sort of balance out power and flexibility with being able to do things.
- I find it hard to understand that so many people look at so many languages as an easier or cute/quirky alternative to using C or C++… again, it probably takes a long time to explain. I'm assuming it does because I've read it on different sites and forums quite a few times and I've never really seen an explanation. The most used explanation I've ever seen is a list of video games and professional software written in C/C++. It seems to me that because everyone uses C/C++, everyone thinks everyone should use C/C++.
COM wrote: I know that the OP has apparently finally made his choice, but I have to comment here.
[quote]chess_rock wrote: I know C# is a fast language, but you would end-up being a windows only developer. This is plain wrong. C# is cross platform as it is an interpreted language in a similar way to java, so if he wants a portable language, with the whole .NET thing since he seemed so hung up on that, easily made GUIs and OOP, he might as well go for C#.[/quote]
Damn, my mistake. I don't know much about C#, but i've heard from many developers of that language that it aims basically towards windows. My ignorance. I'll google more about that. I should've known more about that before making such assumptions.
chess_rock wrote: [quote]fuser wrote: I'll write a new one, honest.
I'll be waiting then :) Few are those who like java. Actually, you're in extinction kinda. Tell us more about you, so we'll be able to tell your story to our grandchildren xD[/quote]
that is, if anyone would want to admit that they're your kin.