Jointops420
|
|
July 11, 2011, 12:08:22 AM |
|
This has been a very helpful thread, cheers. I have been into computers for nearly 20yrs, I got formally edumacted at TAFE with networks 10years ago, learned more of my fellow students than the slow feed from the teachers. I had a choice at the time to go with networking or do coding now I wish in hind site I choose coding. Theres just so much skope for bitcoin with the much needed applications for commerce or solo workers that will need new/newer programs for a long time yet. This has been so helpful to hear everyones preferences, I choose Python to learn after a bit of extra reading.
|
|
|
|
vectorvictor
Newbie
Offline
Activity: 28
Merit: 0
|
|
July 11, 2011, 07:22:00 AM |
|
There are 3 main programming paradigm's that I’m aware of: procedural, object orientated, and functional. I'm going to suggest you start with Object Orientated. For that, I'm going to nominate Java or Python.
Does not quite follow. Python supports all three paradigms (although the functional aspect has been somewhat nerfed in recent versions). Python is easy to learn, very clean (even pretty), has incredible libraries ("batteries included"), and is supported by an awesome community. It plays well with others (e.g. you can use inline C for huge speed boosts in critical sections). It is a terrific scripting language and glue language, and doesn't look like line noise (yes, I'm looking at you, Perl). I've written programs in at least 22 languages. When I have a choice, I now choose Python for quick coding, C / C++ for heavy lifting (i.e. computationally intensive stuff). Scheme (a very clean dialect of Lisp) is beautiful and powerful, and I would use it more often if I had my druthers (plus, thinking in Scheme makes you smarter). Web programming is a mess. If you really need to do it, maybe try Javascript and HTML5, and just skip all the mistakes of the last 20 years. Obviously, I have a strong bias toward "clean" (the concept, not the language:).
|
|
|
|
befuddled
Member
Offline
Activity: 73
Merit: 10
|
|
July 11, 2011, 07:55:13 AM |
|
C++. Accept no substitutes.
|
|
|
|
aeroSpike
Newbie
Offline
Activity: 41
Merit: 0
|
|
July 11, 2011, 08:06:16 AM |
|
PHP can do ANYTHING!
Yeah right. Write a driver in PHP, or an Operating System. And even for what PHP is designed to do there are much better solutions.
|
|
|
|
ElectricMonk
Newbie
Offline
Activity: 52
Merit: 0
|
|
July 11, 2011, 08:52:54 AM |
|
+1 Ruby
^^^ That stuff is pure ^^^
Why don't you go build something interesting for Bitcoin in SproutCore
It's a mantra of the Pragmatic Programmer that you should learn a new language every year. Never found the time myself.
|
|
|
|
bitplane
|
|
July 11, 2011, 09:01:37 AM |
|
I'll also say Python, firstly because it's my favourite language, secondly because OP says he/she was a BASIC programmer and Python reads like BASIC but introduces more complex programming structures.
I wouldn't recommend Lisp unless you want to become a computer scientist or to write programs in Emacs. Most people learn to program so they can achieve things, not for the art of programming itself. Python is a language that gets stuff done in very few lines of code, which is what most people want/need.
|
|
|
|
chickenado
|
|
July 11, 2011, 09:02:27 AM |
|
For a beginner I would recommend Ruby because it's human-centered, while most other languages are machine-centered.
|
|
|
|
phungus
Full Member
Offline
Activity: 128
Merit: 100
I'm doin' fine on cloud 9
|
|
July 11, 2011, 11:32:18 AM |
|
I learned Perl in the early 90's and never felt the need to learn anything else, but I'm a sysadmin.
It has the Catalyst framework for MVC web apps, and it has POE for an event driven framework.
There's lots of sample code and tons of good books. Lots of tutorials.
Perl code can look messy if the person writing it is a mess. This is the same for any language.
It's not the best or the fastest but it works for pretty much any situation just because it's been around for so long and is on pretty much every 'nix box and can be put on Windows easily too. CPAN modules are easy to download and install.
Also, pretty much every web host in the world supports Perl.
It also support object oriented programming semantics, of course.
|
I can do stuff
|
|
|
relative
Newbie
Offline
Activity: 56
Merit: 0
|
|
July 11, 2011, 11:38:59 AM |
|
master C++. you can learn almost any other language within an hour after you've done that. (except maybe functional languages like Haskell)
|
|
|
|
Rassah
Legendary
Offline
Activity: 1680
Merit: 1035
|
|
July 11, 2011, 02:27:03 PM |
|
Var'aq. Learn Var'aq. http://freshmeat.net/projects/varaq/ Then you can program Bitcoin in Klingon, making it an intergalactic currency, not just an international one
|
|
|
|
dserrano5
Legendary
Offline
Activity: 1974
Merit: 1030
|
|
July 11, 2011, 05:31:06 PM |
|
I'd go for Perl. 90% of what you want to do has already been done and is available from CPAN.
|
|
|
|
mouse
Newbie
Offline
Activity: 56
Merit: 0
|
|
July 11, 2011, 05:49:02 PM |
|
I'd go for Perl. 90% of what you want to do has already been done and is available from CPAN.
Quotes collected by Bruce Eckel: Python is executable pseudocode. Perl is executable line noise. Perl is like vice grips. You can do anything with it, and it's the wrong tool for every job. Perl is worse than Python because people wanted it worse. Larry Wall (Creator of Perl), 14 Oct 1998 I would actively encourage my competition to use Perl. Sean True, 30 Mar 1999
|
|
|
|
dserrano5
Legendary
Offline
Activity: 1974
Merit: 1030
|
|
July 11, 2011, 06:24:10 PM |
|
Quotes collected by Bruce Eckel:
Any (preferably recent) opinion from yours? Obviously you haven't seen much Perl code. In any case, I'm not following this argument. Just gave my opinion and that's all.
|
|
|
|
Djao
Full Member
Offline
Activity: 208
Merit: 100
Risk-hedging platform for cryptocurrency investors
|
|
July 11, 2011, 06:32:24 PM |
|
|
|
|
|
ampkZjWDQcqT
Member
Offline
Activity: 70
Merit: 10
GNU is not UNIX
|
|
July 11, 2011, 07:37:33 PM |
|
I wouldn't recommend Lisp unless you want to become a computer scientist or to write programs in Emacs. Most people learn to program so they can achieve things, not for the art of programming itself. Python is a language that gets stuff done in very few lines of code, which is what most people want/need.
That's an horrible advice. !. Software quality is decaying because now days the average programmer don't cares enough to properly learn the underlying theory required to make quality software. Instead they just want to "achieve things" or "get things done", as if to acquire knowledge wasn't an achievement in itself. Ignorance of the principles of your work is not an option. Please don't incentive new programmers to continue polluting the software collection with crap.
|
If you found my comment useful please express your gratitude by doing an action of similar magnitude towards a better society. Thanks you!.
|
|
|
Rassah
Legendary
Offline
Activity: 1680
Merit: 1035
|
|
July 11, 2011, 08:07:39 PM |
|
I wouldn't recommend Lisp unless you want to become a computer scientist or to write programs in Emacs. Most people learn to program so they can achieve things, not for the art of programming itself. Python is a language that gets stuff done in very few lines of code, which is what most people want/need.
That's an horrible advice. !. Software quality is decaying because now days the average programmer don't cares enough to properly learn the underlying theory required to make quality software. Instead they just want to "achieve things" or "get things done", as if to acquire knowledge wasn't an achievement in itself. Ignorance of the principles of your work is not an option. Please don't incentive new programmers to continue polluting the software collection with crap. Lucky for you, the main pushers of "Get things done" are companies that need to get the software coding done as quickly as possible for as little money as possible. That means that the "get things done" development is pretty much limited to pay-for software. Your freeware/GNU stuff is still safe
|
|
|
|
99Percent
Full Member
Offline
Activity: 411
Merit: 101
🦜| Save Smart & Win 🦜
|
|
July 11, 2011, 08:14:37 PM |
|
Has anyone mentioned Free Pascal? It has an IDE and it can virtually do anything and natively with practically any CPU or O/S. For GUI applications you can use Lazarus IDE and practically most widget sets. Its fully open sourced.
It has a rich ancestry with Delphi and Turbo Pascal, with tons of open source libraries.
Easy to learn, readable code, object oriented, and simply rock solid fast compiled native executables like C, or C++.
I am thinking of making a bitcoin client port to Lazarus, if only I had some time...
|
|
|
|
SmokeAndMirrors
|
|
July 11, 2011, 08:28:36 PM |
|
You can clearly get an idea from this thread that the language is entirely up to you.. Not everyone will agree that there is a "best" language, ever.
Pick one and have fun with it. If you get bored or don't like the language, on to the next one.
|
Help Bitcoins by buying clothes, technology, books, etc. through people/stores that accept BTC. This will increase overall value of BTC as well as mitigate unnecessary bank transaction fees.
My address - 1EM9HGg1SEa5Bux1rVEPxGqGSfNTTc9EkC
|
|
|
Vladimir
|
|
July 11, 2011, 08:35:55 PM |
|
and my favourite is erlang , though in the end it all boils down to 3 logical operations, so, who cares...
|
-
|
|
|
ampkZjWDQcqT
Member
Offline
Activity: 70
Merit: 10
GNU is not UNIX
|
|
July 11, 2011, 09:36:39 PM |
|
[...]
Lucky for you, the main pushers of "Get things done" are companies that need to get the software coding done as quickly as possible for as little money as possible. That means that the "get things done" development is pretty much limited to pay-for software. Your freeware/GNU stuff is still safe The GNU project is about free software, free as in freedom, not freeware. Big companies have been involved in the development of free software including parts of the GNU operating system like the GNU compiler collection. Does it exist a company interested in spending as much money as possible?. There exist crappy free software. Software ought to be free, both wonderful and crappy. Also, the problem with free crap isn't nearly the same as with proprietary crap. If you don't know what you're talking about it's better to get informed first, that way you can make more beneficial comments. I this case, a quick check of the site of the project you was to comment about would have sufficed.
|
If you found my comment useful please express your gratitude by doing an action of similar magnitude towards a better society. Thanks you!.
|
|
|
|