Author Topic: Theory about popularity of languages  (Read 45296 times)

Krice

  • (Banned)
  • Rogueliker
  • ***
  • Posts: 2316
  • Karma: +0/-2
    • View Profile
    • Email
Theory about popularity of languages
« on: September 15, 2014, 08:31:09 AM »
When I have searched for some other language (than C++) to learn I have noticed how difficult it is to find good tools for those languages! I think it may be an important reason why some so called better languages never became popular or more popular than they should be. C++ has had great tools in past and present, especially IDEs which are anyway a thinking man's solution to programming.

Some (or more like most) languages have roots in hacky environments like unix/linux with complex setup rituals only few people are willing to withstand, and of course pesky GPL issues making developers not sure how they can release their programs (or even make profit). And if there is commercial software it may be too expensive just to try out the language and see if it's any worth in serious game programming.

mushroom patch

  • Rogueliker
  • ***
  • Posts: 554
  • Karma: +0/-0
    • View Profile
Re: Theory about popularity of languages
« Reply #1 on: September 15, 2014, 12:55:08 PM »
Spending a lot of time thinking about learning programming languages and worrying a lot about "tools" available for those languages is the mark of a dilettante. If you know what you're doing, considerations of what programming language to use and so forth are of marginal importance.

Krice

  • (Banned)
  • Rogueliker
  • ***
  • Posts: 2316
  • Karma: +0/-2
    • View Profile
    • Email
Re: Theory about popularity of languages
« Reply #2 on: September 15, 2014, 01:14:18 PM »
If you know what you're doing, considerations of what programming language to use and so forth are of marginal importance.

Not. I remember when I first started to use Visual C++ IDE. It was much better than anything else before that. It makes a big difference in productivity.

mushroom patch

  • Rogueliker
  • ***
  • Posts: 554
  • Karma: +0/-0
    • View Profile
Re: Theory about popularity of languages
« Reply #3 on: September 15, 2014, 01:27:10 PM »
Yes, it would seem the use of IDEs has multiplied your productivity by at least a factor of 10.

Cfyz

  • Rogueliker
  • ***
  • Posts: 194
  • Karma: +0/-0
    • View Profile
    • Email
Re: Theory about popularity of languages
« Reply #4 on: September 15, 2014, 03:26:51 PM »
While it greatly depends on what you are learning a new language for, I agree that language ecosystem does make a difference. For example, despite the fact that D is a great language by itself, it's unlikely to be used as a main programming language for a complex commercial system. Thinking too much is obviously not good, but it is better to have a clear image of what language can do offer you and what it can not beforehand.
« Last Edit: September 15, 2014, 03:28:56 PM by Cfyz »

AgingMinotaur

  • Rogueliker
  • ***
  • Posts: 805
  • Karma: +2/-0
  • Original Discriminating Buffalo Man
    • View Profile
    • Land of Strangers
Re: Theory about popularity of languages
« Reply #5 on: September 15, 2014, 06:50:21 PM »
I'm sure which tools are right depends on the tastes and abilities of the individual programmer. Personally, I've glanced at a few IDEs, and always go "bleh", feeling much more comfortable using a simple text editor (emacs  :-*) and keeping sources and notes in one big messy directory tree. I see how that may be keeping me back, I'm probably comparable to a Go player who refuses to play pincers, because "I understand extensions better". But I would find little meaning in life if I wasn't allowed to cater, at the very least, to my own stupidity.

As always,
Minotauros
This matir, as laborintus, Dedalus hous, hath many halkes and hurnes ... wyndynges and wrynkelynges.

AgingMinotaur

  • Rogueliker
  • ***
  • Posts: 805
  • Karma: +2/-0
  • Original Discriminating Buffalo Man
    • View Profile
    • Land of Strangers
Re: Theory about popularity of languages
« Reply #6 on: September 15, 2014, 07:09:00 PM »
Then there's this:
Quote
Some (or more like most) languages have roots in hacky environments like unix/linux with complex setup rituals only few people are willing to withstand, and of course pesky GPL issues […]
- which kind of seems to oppose the rest of your argument. Just because something goes over your head, doesn't necessarily mean that it is stupid ;) As I insinuated, my limited experience with IDEs has left me viewing them as having complex setup rituals and pesky issues (I much prefer something that's both easy to set up and flexible, ie. developing in a bare bones Linux system and releasing under the GPL). But I've cultivated enough humility to avoid assuming this makes me smarter than people who use such tools, and who are demonstrably my superiors when it comes to these things. I know for a fact that you're talking out of your ass when making comments about for instance Linux, so why even bother?

One thing I've found to be extremely important myself, is official documentation that is exhaustive, while just covering the basics.

As always,
Minotauros
This matir, as laborintus, Dedalus hous, hath many halkes and hurnes ... wyndynges and wrynkelynges.

Bear

  • Rogueliker
  • ***
  • Posts: 308
  • Karma: +0/-0
    • View Profile
Re: Theory about popularity of languages
« Reply #7 on: September 15, 2014, 08:17:16 PM »
I dunno.  I've been on both sides of the fence with IDE's. 

I remember getting started in programming using an IDE.  I didn't know anything at all except the language, and the IDE took care of everything else.  So I was able to function, and the idea of just picking up an editor and writing code  - and figuring out what to do with it to build a project, and how to run and debug and examine variable values in the middle of a run and everything else without the IDE - was a hill I didn't need to climb right then; I was too busy figuring out data structures.

But a year or two later, I found that I had a need for data files built in parallel with each build of the project, and the IDE I was using didn't give me a way to do that...  And a little while later I got handed a codebase that built seven different programs depending on the make target, and the IDE could not figure it out at all.  And then there was a misbegotten IDE for some system I was working on that could not work on anything *except* windowed programs dependent on gnome and using autoconf, which meant importing megabytes of dependencies I didn't want for functionality I didn't need ... and bit by bit, I just sort of fell out of the habit of using IDE's. 

I got no religious objections to them, and I remember how much I needed them at one time, and there's nothing wrong with them...  but now that I know other ways to do the things they do, they just seem .. kind of superfluous I guess.  They don't save me any effort any more over using makefiles and the command line.

Eben

  • Rogueliker
  • ***
  • Posts: 339
  • Karma: +0/-0
  • Controversializer
    • View Profile
    • SquidPony!
Re: Theory about popularity of languages
« Reply #8 on: September 15, 2014, 08:41:37 PM »
I have a lot of experience using IDEs and using plain text editors, sometimes without even copy-paste or undo functions. For anything that's going to be over a couple thousand lines of coded an IDE is waaaaaay better for me.

One of the key things is that the IDEs I use, NetBeans and Visual Studio, come with a full selection of debugging tools, refactoring tools, and profiling tools. This allows me to find and fix problems and keep my source code clean as requirements inevitably change.

For me the primary reason to use a language of your choice once experienced is to pick the one you are most comfortable solving certain kinds of problems with. While I usually pick Java due to my experience, I'll use JavaScript if duck typing is important for a project or C++ / C# if tying directly to hardware is important.

The primary reason to pick a new language should be what libraries are available and what the support system for it is like. Which is why C++, C#, Java, JavaScript, and Python are all excellent choices. Other languages, like Go, might be excellent in their core functionality but without a large support system it can be really tough to avoid implementing the wheel all over again.

Side note: unlike other languages, I learned Java first in an IDE and found that it giving me hints about my code as I worked and code completion suggestion for the standard library I learned enough that when I moved to a terrible plain text editor for a robots project I had no problem rough coding. For me at least, learning in an IDE first enhanced my learning abilities rather than stunting them.

Cfyz

  • Rogueliker
  • ***
  • Posts: 194
  • Karma: +0/-0
    • View Profile
    • Email
Re: Theory about popularity of languages
« Reply #9 on: September 15, 2014, 09:34:10 PM »
Regarding IDEs, I believe their main purpose is not building the project or helping typing the code but managing and editing what you already have. When you have multiple projects of substantial size, you really start to appreciate code indexing, navigation and contextual processing. Some of the rather mundane tasks look ridiculous without proper tools.

AgingMinotaur

  • Rogueliker
  • ***
  • Posts: 805
  • Karma: +2/-0
  • Original Discriminating Buffalo Man
    • View Profile
    • Land of Strangers
Re: Theory about popularity of languages
« Reply #10 on: September 15, 2014, 09:45:06 PM »
On a related note – and probably making a fool of myself in light of my previous comments  8) I'm considering starting with Java to write something for Android devices. Would Eclipse IDE be a good place to start? I don't know Java or C/C++ from before, the only language I've learned to any noticeable extent being Python.

As always,
Minotauros
This matir, as laborintus, Dedalus hous, hath many halkes and hurnes ... wyndynges and wrynkelynges.

Krice

  • (Banned)
  • Rogueliker
  • ***
  • Posts: 2316
  • Karma: +0/-2
    • View Profile
    • Email
Re: Theory about popularity of languages
« Reply #11 on: September 15, 2014, 09:58:42 PM »
I know for a fact that you're talking out of your ass when making comments about for instance Linux, so why even bother

Actually I'm not. Many RL developers are biased towards open source/linux ideology, so they probably can't see the big picture. I don't know for sure if there is something in this, but it looks like good IDE will attract more developers compared to "linux-like" installation procedures and using text editor for writing the source code.

Cfyz

  • Rogueliker
  • ***
  • Posts: 194
  • Karma: +0/-0
    • View Profile
    • Email
Re: Theory about popularity of languages
« Reply #12 on: September 15, 2014, 10:17:43 PM »
Quote from: AgingMinotaur
Would Eclipse IDE be a good place to start?
Take a look at IntelliJ Idea. Our Java developers (like, a dozen of them) say it is superior to Eclipse.

Paul Jeffries

  • 7DRL Reviewer
  • Rogueliker
  • *
  • Posts: 257
  • Karma: +1/-0
    • View Profile
    • Vitruality.com
Re: Theory about popularity of languages
« Reply #13 on: September 15, 2014, 11:18:56 PM »
On a related note – and probably making a fool of myself in light of my previous comments  8) I'm considering starting with Java to write something for Android devices. Would Eclipse IDE be a good place to start? I don't know Java or C/C++ from before, the only language I've learned to any noticeable extent being Python.

I use Eclipse; it's OK.  There are some things I don't like about it but that's mainly because I'm more used to Visual Studio, if I had used it first I probably wouldn't be too bothered.  I've also tried out NetBeans in the past for Java, but settled on Eclipse I think mainly because it seemed more stable and the android emulation tools were slightly more advanced, although this was a couple of years ago so that opinion may be out of date.

tuturto

  • Rogueliker
  • ***
  • Posts: 259
  • Karma: +0/-0
    • View Profile
    • pyherc
Re: Theory about popularity of languages
« Reply #14 on: September 16, 2014, 03:40:53 AM »
I'm sure which tools are right depends on the tastes and abilities of the individual programmer. Personally, I've glanced at a few IDEs, and always go "bleh", feeling much more comfortable using a simple text editor (emacs  :-*) and keeping sources and notes in one big messy directory tree.

I wouldn't call emacs a simple text editor, it's closer to an operating system really. However, I have heard that it has a package (several actually) for editing text :P (I use emacs a lot and really like how extendable and configurable it is).
Everyone you will ever meet knows something you don't.
 - Bill Nye