Which language would be best
I'm just starting out here, and after doing a few challenges I've become interested in encryption. I'd like to write an encrypting/decrypting program with input fields for the code desired to be encrypted/decrypted and a scroll-down menu for types of encryptions, but I'm not all that familiar with many programming languages. Which language would you suggest to be best to write a program like this?
Thanks.
Compromise wrote: Python + gtk or Qt.
To the OP: this is your best answer.
Honestly- language doesn't really matter as it's what you write that makes the program run, not how you write it. Sure, each language has its advantages and disadvantages, but those really only come into effect when you're talking about giant big-time projects of which this one is not. I say Python for its ease of use, although its lack of a switch/case could be annoying here.
It all depends.
Possible languages could be:
Windows: VB, C++, C#, Python, Perl, Java
Linux: C++, Python, perl, Java
Web: PHP/HTML/MySQL, Java
If you wanted it to run cross compatible with several operating systems, C++, python, Java, and perl would be the best ideas. If you wanted it to be for yourself, then choose your primary operating system. If you wanted it to be for many others with a quick lookup, such as a database, making a website would be great. PHP, Python, and Perl have great encryption capabilities. C++ will take more work, but is more powerful than the other languages.
Now that I have shed light on each, you should be able to decide.
bl4ckc4t wrote: Possible languages could be:
Windows: VB, C++, C#, Python, Perl, Java
Linux: C++, Python, perl, Java
Web: PHP/HTML/MySQL, Java
The boundaries between Windows/Linux/Web are much more relaxed now than they have been in the past couple of years. Your list would make more sense like this:
Windows/Linux Desktop Programming: C++ Desktop/Web Programming: C# (Mono/ASP.Net), Python (Django), PHP (PHP-GTK), Perl (CGI)
No one programs in Java because it sucks.
Though I use PHP exclusively now and would obviously do an encryption program in it, I have to agree with everyone else in the thread that Python would be the easiest path. Also, if you're doing a GUI (which you're not necessarily obligated to), I'd recommend GTK as the most logical UI library.
To recap: Python +1
fashizzlepop wrote: I'd say PHP would be a really good one to use. It already comes with a lot of encryption functions and it has good string manipulation features. Other than that I would say Perl, but Python just as well.
I totally agree with fashizzlepop here. If you look it up on w3schools, you'll see a lot of string and crypto operations in php, from transforming a string into an array to md5 encrypting. It may not be as powerful as C++, but it is extremely easy to use.
fashizzlepop wrote: I'd say PHP would be a really good one to use. It already comes with a lot of encryption functions and it has good string manipulation features. Other than that I would say Perl, but Python just as well. chess_rock wrote: I totally agree with fashizzlepop here. If you look it up on w3schools, you'll see a lot of string and crypto operations in php, from transforming a string into an array to md5 encrypting. It may not be as powerful as C++, but it is extremely easy to use. I'd agree 100%, except for the fact that there is a bit more of a learning curve with PHP (compared to Python) because you have to become familiar with the basics of web development. I still think that added time would be easier than trying to do it in Perl. Simply put, you have to really want to learn a language you don't want to learn in order to learn Perl.
If he's intending to do web development in the future, anyways, then PHP is the best choice. Since he chose to learn Python already, though, I doubt it. :)
define wrote: I still think that added time would be easier than trying to do it in Perl. Simply put, you have to really want to learn a language you don't want to learn in order to learn Perl.)
Unless of course you WANT to learn Perl, like me. :P
But I agree, Perl is probably not the best choice for him.
@ op:
You could do what you want in javascript and make your GUI with HTML tables. If the first post was all you really want to do, then I think this is the easiest way to do it. There's nothing wrong with learning python or c/c++, but it's more work. And the languages aren't really designed to do what you're doing (web stuff). It really sounds to me like it would be a huge distraction.
If you haven't studied JS yet, I liked the book "JavaScript: The Good Parts". it's on this site for free as an ebook, just search "javascript". http://www.51cnnet.net/
The second link might be a little off topic, but java script is more versitile than most people think. http://video.google.com/videoplay?docid=6147596885524966661&ei=IldBS67nDY-SqAO4t_DXDg&q=shmoo+con+javascript&hl=en#