4 ms·
Interesting you should mention this. I've really enjoyed and really hated programming over the course of the last 15+ years. A low point for me was Java, Spri
by geebee 10y ago
Interesting you should mention this. I've really enjoyed and really hated programming over the course of the last 15+ years. A low point for me was Java, Spring, Struts, Struts 2, Wicket, Tiles, Hibernate, JPA, iBatis, Ant, Maven...
Interestingly, Rails (along with a few other really good technologies, such as django) came along and, with a loud crashing sound, swept everything off the table. It's been a lesson for me. First, have the conviction to keep doing things the "old" way if the new way seems to be a churning mess. Second, realize that things may not settle down, they may be completely swept aside instead.
This is how I feel about javascript for the moment. I actually don't think the churn will resolve. It's more of a feeling, so I can't blame anyone for dismissing the rest of what I have to say... but I just sense that, like the J2EE world, that something is going to sweep this all aside.
To go even further out on a limb, I believe that (buzzword alert) languages transpiled to isomorphic javascript will play a huge role in this.
I truly don't believe that because Javascript runs so well in the browser, and if you have to use javascript you may as well write the backend in javascript, means that languages like ruby and python are destined for legacy or niche status. It is immensely reasonable to prefer to code web apps in ruby or python. I think that the dominance of JS will be a temporary situation, and that various technologies that allow people to code for the web in a consistent, relatively simple, straightforward way, in languages that are not JS, is likely to emerge over the next 5 years.
I'm only keeping a toe dipped in the JS waters right now, because I really do need it for some things. But I've decided to drop out of the JS churn (I do recognize that for the next few years, there will be amazing opportunities for people who are willing and able to keep up with it). Just like I wish I'd had the conviction to stay out of the nuttiness of J2EE a decade ago, I'm trying hard to position myself so that I don't have to get swept up into the JS vortex.
- marcosdumay 10y ago> This is how I feel about javascript for the moment. I actually don't think the churn will resolve. I still hope we'll see large adoption of WebAssembly (or WebAsm, or something like that) and get actually good frameworks for creating pages, that actually integrates the frontend with backend (instead of just using the same language), interpreting our templates into something dynamic. I hope in a few years we can start retiring JS like we are doing wit PHP now.
- rch 10y agoWebAssembly does seem to have a promising future, with the caveat that it needs to get traction beyond the web to really take off (which is the goal - https://github.com/WebAssembly/design/issues/249#issuecomment-119020064 https://github.com/WebAssembly/design/issues/249#issuecommen...).
- marcosdumay 10y agoIt's an interesting goal, but I'll disagree on that "needs" part. It can be widely successful just by being some VM you cross-compile to when you want your code to run on a browser.
- bphogan 10y agoThis is the hope I have too. Nicely put. I have been coding in JS since JS landed in a browser and right now it's just too much, with a new build system every six months, to new libraries and frameworks. This continous evolution is necessary because JS wasn't designed to do the things people are using it for 21 years later. So I've been looking at Elm. A lot of people really don't like the syntax. But if you get past that, there's a lot of things there. There's a great architecture, a sane package manager, static typing, and all the other things people bolt on. And it sounds like while it currently builds JS, it's going to move towards WebAssembly when that's more widespread. Even if Elm doesn't become "the next big thing", maybe it'll spawn something that is. I hope Elm, or something like it, does sweep the table clean.
- noelwelsh 10y agoI'm mostly agreed with you. I believe that functional programming is the next paradigm shift in programming, and that shift is happening now. I'm not sure if something like Purescript or Elm will be the future of JS, or some bastard combination of Typescript and future enhancements to JS. History suggests the latter, unfortunately.
- sotojuan 10y agoYou can get quite far with TypeScript. RxJS, Cycle, and xstream (all functional libraries) are built on it and its source code doesn't use classes at all. It's no PureScript but there's no need to conflate it with OOP.