Bitcoin Forum
December 24, 2024, 11:51:31 PM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 [3] 4 5 »  All
  Print  
Author Topic: What programming language to learn?  (Read 14453 times)
Jointops420
Full Member
***
Offline Offline

Activity: 132
Merit: 100


View Profile
July 11, 2011, 12:08:22 AM
 #41

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 Offline

Activity: 28
Merit: 0


View Profile
July 11, 2011, 07:22:00 AM
 #42


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 Offline

Activity: 73
Merit: 10


View Profile
July 11, 2011, 07:55:13 AM
 #43

C++. Accept no substitutes.
aeroSpike
Newbie
*
Offline Offline

Activity: 41
Merit: 0


View Profile
July 11, 2011, 08:06:16 AM
 #44

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 Offline

Activity: 52
Merit: 0


View Profile
July 11, 2011, 08:52:54 AM
 #45

+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
Sr. Member
****
Offline Offline

Activity: 321
Merit: 250

Firstbits: 1gyzhw


View Profile WWW
July 11, 2011, 09:01:37 AM
 #46

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
Hero Member
*****
Offline Offline

Activity: 1036
Merit: 502



View Profile
July 11, 2011, 09:02:27 AM
 #47

For a beginner I would recommend Ruby because it's human-centered, while most other languages are machine-centered.

phungus
Full Member
***
Offline Offline

Activity: 128
Merit: 100


I'm doin' fine on cloud 9


View Profile
July 11, 2011, 11:32:18 AM
 #48


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 Offline

Activity: 56
Merit: 0


View Profile
July 11, 2011, 11:38:59 AM
 #49

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 Offline

Activity: 1680
Merit: 1035



View Profile WWW
July 11, 2011, 02:27:03 PM
 #50

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 Cheesy
dserrano5
Legendary
*
Offline Offline

Activity: 1974
Merit: 1030



View Profile
July 11, 2011, 05:31:06 PM
 #51

I'd go for Perl. 90% of what you want to do has already been done and is available from CPAN.
mouse
Newbie
*
Offline Offline

Activity: 56
Merit: 0



View Profile
July 11, 2011, 05:49:02 PM
 #52

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 Offline

Activity: 1974
Merit: 1030



View Profile
July 11, 2011, 06:24:10 PM
 #53

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 Offline

Activity: 208
Merit: 100


Risk-hedging platform for cryptocurrency investors


View Profile WWW
July 11, 2011, 06:32:24 PM
 #54


ampkZjWDQcqT
Member
**
Offline Offline

Activity: 70
Merit: 10


GNU is not UNIX


View Profile
July 11, 2011, 07:37:33 PM
 #55

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. Angry!. 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 Offline

Activity: 1680
Merit: 1035



View Profile WWW
July 11, 2011, 08:07:39 PM
 #56

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. Angry!. 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 Smiley
99Percent
Full Member
***
Offline Offline

Activity: 411
Merit: 101


🦜| Save Smart & Win 🦜


View Profile WWW
July 11, 2011, 08:14:37 PM
 #57

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
Full Member
***
Offline Offline

Activity: 168
Merit: 100


View Profile
July 11, 2011, 08:28:36 PM
 #58

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
Hero Member
*****
Offline Offline

Activity: 812
Merit: 1001


-


View Profile
July 11, 2011, 08:35:55 PM
 #59

and my favourite is erlang , though in the end it all boils down to 3 logical operations, so, who cares...

-
ampkZjWDQcqT
Member
**
Offline Offline

Activity: 70
Merit: 10


GNU is not UNIX


View Profile
July 11, 2011, 09:36:39 PM
 #60

[...]

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 Smiley

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!.
Pages: « 1 2 [3] 4 5 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!