Live data from Hacker News

Which is best coding language?

news.ycombinator.com

11–16 of 16 posts

Re: Which is best coding language?

#13
Why do you want to code and what do you want to code. Want to do front end web development? Choose JavaScript. Want to write Windows desktop applications? Choose C#. Want to do data analysis? Choose Python. Want to develop a novel way of solving PDEs? Choose Julia, and so on

Learning to program in a vacuum can be a real chore. Much better to pick and problem you want to solve or a concrete thing you want to develop and then pick the language that makes doing that thing the easiest.

Re: Which is best coding language?

#14
1) Pretty much any programming language you've heard of is probably capable of solving most of the problems you're likely to want to solve.

2) Some programming languages are better choices for solving certain problems than others. Python for instance has a wide range of Machine Learning libraries that are very important for anything to do with analyzing data: though you can certainly use many of those tools from other languages. JavaScript is the language of the browser and basically is a necessity for building dynamic websites, and also has some great advantages on the server with Node.js.

3) For most people, IMO either JavaScript or Python is a fairly safe bet, depending on what you want to do. Personally I'd recommend JavaScript just because you can start using it in the browser right away without necessarily requiring too much complicated setup and you can get an instant visual feedback more interesting than just seeing program output in a file or terminal.

Re: Which is best coding language?

#15
The one that is most comfortable for you to use is the best coding language.

Having said that, you need a project of some kind. Any kind at all. It doesn't matter what that project is, because you will throw it away, and more than once. And that project will show you how to code, and along the way you will find your best coding language.

So start your project. Oops you don't know how to do that. So learn how that part is done. Then progress further. Oops, you don't know how to read a file. So learn how that is done, then progress further. And keep on doing this, tiny bites at a time of the project until one day the project is done.

So you look at that project. Along the way you have discovered new and better ways of doing things. Ways that are better than how you coded that part of your project. What to do?

So .... Throw that first project away. Now, rewrite it using all that new knowledge that you have picked up along the way. And you look at that project again, with even more understanding of how to code. You know what? I'll throw that project away again. It wasn't as good as I could have done it.

So you rewrite that project a second time, again including the new ways of doing things that you have learned since doing that project the second time.

Are you game enough to look at that project the third time? Because almost certainly you can now see better ways of doing things that you keep learning all along the way in doing that silly little project three times.

I have a silly little project like this. It is an emulator of the first Z80 computer that I first assembled from a huge box of components way back in the late 1970s. That emulator has progressed over the years as I have rewritten it probably more than a dozen times, and it has got more and more complex, more and more visually attractive over those dozen or so iterations.

Is it the same silly little project it started out being? In some ways, yes it is still the same. On the other hand, it is a completely different 'kettle of fish'. Along the way, I have learned about programming in three different families of Operating Systems. I have learned about two or three different ways of emulating hardware, I have learned how to convert a text-interface into a graphical interface.

And I discovered the programming language that 'works best for me': 'C'.

When I first looked at 'C' I didn't like it at all. Back then I was happier using Z80 and/or 8086 assembly language. That changed about the time I moved from MSDOS to the UNIX family of Operating Systems.

Post reply on HN