• Activity
  • Votes
  • Comments
  • New
  • All activity
  • Showing only topics in ~comp with the tag "programming languages". Back to normal view / Search all groups
    1. Does node.js have a future?

      I've been toying with the idea of adding node to my arsenal of programming skills but unable to decide if the payoff is worth it in the long run. Right now, PHP+Bootstrap suffices most of my needs...

      I've been toying with the idea of adding node to my arsenal of programming skills but unable to decide if the payoff is worth it in the long run.

      Right now, PHP+Bootstrap suffices most of my needs when it comes to app development as a freelancer. As for JavaScript, I've always treated it as a language meant for client-side scripting and nothing more than that.

      Now, as much as Node and npm narratives have become the biggest chatter of the day, I'm still not sure how much of that really translates into jobs or freelance projects or even real world industrial usage for that matter.

      As far as I know, about 80% of the web is still powered by PHP and while JS certainly tops the TIOBE index, we don't know how much of it can be attributed to Node.js and how much to frontend JS technologies like jquery and react?

      There is no doubt that for many folks, npm has become a critical part of webdev toolchain today (though the actual utilitarianism of some popular libs like babel and webpack is questionable IMHO). But when I compare Node with the established "run of the mill" languages like PHP, Python or even Ruby, what Node really lacks is proven works and street cred. Where is the node's equivalent of say sqlalchemy or rails or flask or laravel? Are there standard database drivers to access mysql or mssql or sqlite, for eg? Where are the open source folks in Node.js producing equivalents of WordPress and Magento and Drupal?

      And what about the enterprise usage? The big ones are all obviously wedded to either Microsoft's .NET or Oracle's Java stacks. But among the smaller startups, how much mindshare do you see Node getting where it already has to compete with these other languages?

      I understand that at a theoretical level, the event based async threading model of Node.js is truly innovative and since most typical CRUD apps spend most of their time waiting for an sql query to perform or network resource to be fetched, async should be the hot cake compared to synchronous programming. But that doesn't work out in practice for some reason. If that really were the case, 80% of web apps would have been powered by Node instead of PHP today, right?

      7 votes
    2. Honest Question: Why did PHP remove dynamic properties in 8.x?

      I understand PHP has had many criticisms in the past but I'm not sure the existence of dynamic properties of instantiated objects was ever one of them. In fact, dynamic properties are pretty much...

      I understand PHP has had many criticisms in the past but I'm not sure the existence of dynamic properties of instantiated objects was ever one of them. In fact, dynamic properties are pretty much the hallmark of most interpreted or dynamic programming languages. Python allows it all the time and so do many others like Ruby, Perl, etc.

      I don't know what PHP developers achieved by removing dynamic properties feature from the language but one thing that resulted out of this is that many applications based on widely used veteran PHP frameworks (such as CodeIgniter and CakePHP) came to a halt all of a sudden due to an error like this after upgrading to PHP 8:

      A PHP Error was encountered
      Severity: 8192
      Message: Creation of dynamic property CI_URI::$config is deprecated
      Filename: core/URI.php
      Line Number: 102
      Backtrace:
      File: C:\xampp\htdocs\inv_perpus\index.php Line: 288 Function: require_once
      

      The influence of Corporate IT in various open source foundations is pretty well known and also well known is the extent to which corporate greed goes to achieve its interests and objectives across the world. The only way to assuage this uncomfortable thought (at least in this particular case) is to ask if there was any technical merit at all in removing dynamic properties feature from a dynamic programming language?

      I for one couldn't find any such merit here.

      12 votes
    3. Learning new programming languages with limited time: Rust, golang, or otherwise?

      I want to learn a new language that I can use for personal projects. But I want to pick the right one for me, given the fact that learning it will be a time investment and I don't have a ton of...

      I want to learn a new language that I can use for personal projects. But I want to pick the right one for me, given the fact that learning it will be a time investment and I don't have a ton of time for "fun" stuff these days.

      I've spent a decent amount of time tinkering around with Rust and my experience has been decent so far, if I'm trying to filter it through the lens of the current Rust craze. It just seems that the code has a somewhat... ugly(?)... aesthetic to it? I'm not willing to cast it aside yet and I think the "ugliness" just comes from me not really recognizing the syntax very well.

      I started looking at golang and was immediately interested in the marketing message of it being "a better C". Aside from Hello World, I haven't done anything else with it.

      Some random notes/points about my experience and what I'm looking for:

      • I am very accomplished with PHP, quite accomplished with C, somewhat accomplished with C++ and Python. Of those, I find Python to be too "free and easy", PHP (Symfony specifically) and C++ to be so OOP-oriented that I just end up writing a bunch of boilerplate, and C is just... C (I'd rather pull out a tooth than have to work with C strings).
      • Aside from the obvious pains of C, I think it's the most fun of the bunch. I don't know why I think this, because again, I absolutely hate C strings.
      • I appreciate the package management and ecosystem of Rust, from what I've seen. C-with-Cargo would be awesome.
      • The older I get, the more I appreciate strong typing.
      • I like a language that allows me to systematically and logically organize my code into various modules, directories, etc. This is where PHP/Symfony shines in that there's a place for everything, as opposed to a bunch of .c and .h files all dumped into a folder.
      • Ideally, I'd like something that can compile into a binary that doesn't require JVM, etc.

      I'm open to suggestions outside of Rust and Go... those are just the ones I've been seeing mentioned the most over the past decade.

      26 votes
    4. Is there a programming language that brings you joy?

      Just for a moment, forget all of the technical pros and cons, the static typing, just-in-time compilation, operator overloading, object orientation to the max... Is there a programming language...

      Just for a moment, forget all of the technical pros and cons, the static typing, just-in-time compilation, operator overloading, object orientation to the max...

      Is there a programming language that you've just found to be... fun?

      Is there one that you'd pick above all else for personal or company projects, if you had your druthers, because you would simply be so excited to use it?

      And then, is there something missing in that "fun" language that's preventing it from actually becoming a reality (i.e. small community, lack of libraries, maintenance ended in the 80s, etc.)?

      50 votes
    5. I want to learn Android (with Kotlin) ... should I focus on Jetpack or the old XML style?

      I am an experienced programmer (mostly M$ stack -- C#, etc). I started learning mobile Android development a few months ago, learning both Kotlin and the larger Android development environment at...

      I am an experienced programmer (mostly M$ stack -- C#, etc).

      I started learning mobile Android development a few months ago, learning both Kotlin and the larger Android development environment at the same time. I got bogged down in tutorials and guides, because half of them teach Jetpack Compose methodology and half teach XML layout ... and, often enough, don't bother to mention which method they're using.

      Which should I learn first? I am initially interested in learning Android dev for my own hobby/fun/side projects, but I would--ultimately--like to be able to put "Android developer" on my resume.

      Jetpack definitely looks better, more modern, more OO, and I expect it will eventually become the new standard ... but that could still be many years down the road. Also, while it might be "better"--especially for larger projects--it also smells more complicated.

      So, ultimately, I guess I should learn both if I actually intend to become an Android dev ... but I should definitely get comfortable with one, first ... so, which one?

      11 votes