Hacker News new | ask | show | jobs
by allan_wind 3384 days ago
No.

I wrote a small Rails project a while back and along with it small non-Rails utility that made used a couple of generic modules (mail, config). Both the Rails project and the utility bit-rotted faster than anything anything that I ever written. Ruby, the language, is pleasant, and you can write beautiful, terse, expressive code. Functional constructs are nice, etc. Soured me on Ruby, I am afraid. I liked Perl too, and Ruby is not that different.

Python... I don't care for the significant whites space. lambda is crippled because it has to fit into a single line, tertiary operator is weird, and compressions reads backwards to me. Haskell has the same problem. It is nice how you can start with a class, then wrap attribute access later. Writing a simple new style class is verbose. The version 2 to 3 was rough, not sure if it's done by now. There is a lot of libraries, some parts of the standard library are nice.

JavaScript to me is mess with classes being bolted on, different ways to build an object, different ways to handle errors, different ways to handle callbacks. The write it once and run it either in browser and server ignores that version differences (i.e. what is the crappiest browser you have to support), and in general that environment is different. node.js with the async is an interesting experiment. To me it becomes difficult to read and reason about. To me, it was surprisingly difficult, to write a small sync util in node.js. There is a metric ton of libraries. I quite like JavaScript, but to me its becoming complex (as in C++) instead of burning off the bad parts (as in C). The language will be around "forever" due to the web, so that is what I use if possible.

1 comments

While I'm nowhere near a 'fan' of JavaScript, I do feel like defending it by pointing out that there's a difference between the language and the browser issues. The latter are maddening and the former is less bad when you separate the two.

That said, while I personally fell JS is decent with the ES6/ES2015 additions, I do share your worry that it erred on the side of complexity by adding a shit-ton of stuff that maybe should have been more carefully considered. It appears modern JS is and will become the kitchen-sink language, which I suppose is fitting.

But once again, that's still pretty cool. I love how I can introduce someone to programming using JS nowadays and actually be able to teach a whole bunch of different syntactical concepts. I also love how what you can do with JS directly impact the one thing most of us are constantly staring at (web pages). All in all I think things turned out better than I expected as far as the web ecosystem goes. Programming wise. Don't get me started on my worries about the increasingly walled-garden world we appear to live in...