Live data from Hacker News

Is Rails still relevant in 2018?

blog.eq8.eu

151–160 of 346 posts

Re: Is Rails still relevant in 2018?

#151
post #65
post #35

Earlier quoted context omitted.

"C++ in 2018? SURE (You masochist)" I know this is tongue in cheek, but if one is doing anything related to real time graphics programming I'm not aware of any good alternatives.

Depending on what libraries you need, Nim and D seem like decent alternatives.

"Nim ... seem like decent alternatives."

Note that I specified real time graphics development as the focus area here for C++. While I don't want to get into platform wars, on that front Windows is a really strong contender, for various ecological reasons.

Nim does not seem to be well supported on windows [0]. The typical cyphers for poor windows support in open source projects, that seem to hold true for Nim, are that:

a) No mention of MSVC support as a compiler option b) Installer does not install the complete required language runtime, and the end user must hunt the missing DLL:s by themselves. c) Need to manually configure various paths

While these are not a technical blocks, they imply strongly that Windows support is not one of the key priorities for the project. "Here you go, have a nice language - and oops, good luck debugging our runtime". Whereas in industrial quality setups that have lot of users you can pretty much expect it to work out of the box.

[0] https://nim-lang.org/install_windows.html

Re: Is Rails still relevant in 2018?

#152
While I've done a lot of work in .NET and PHP, I've used Rails as my go-to tool for over 10 years, since early 2.x days. I got moved into a new role at the beginning of the year. I was in the middle of rewriting yet another legacy Java web app in Rails. Some jerks got involved, and I was told that I could no longer use Rails because I was the "only one" in my 38K-employee company that used it. I said that Rails was the most productive thing I've seen in programming in 15 years, and asked why in the world "we" wouldn't hire for that skillset. We "moved on" in the meeting.

Predictably, I was forced into using "Java" for my current project. After some experiments with Grails, I settled on Spring Boot, and Angular. However, I'm stuck trying to build a CRUD page with a dropdown list of options for a nested, associated model. There's no example of nested models in the official docs, and every tutorial on the internet 1) wants to spam me about emails, books, and classes, and 2) stops short of showing an actual, working example an editing component with a nested model. Combine this with the fact that searching for anything on the stack leads to examples from AngularJS 1.x, 2, 4, 5, and 6, and now they've just released 7. And even if you stick to the 2+ series, you have NgForm, Reactive, and Dynamic templates to sort thought.

If you'd have asked me if I thought finding good examples of this would be easy before I started, I would have called you crazy for suggesting that it would not have been. Yet, here I am, months into this project, and it's a daily struggle to find good examples of some of the most basic things I took for granted in Rails. Just yesterday, I found a SO Q/A that spoke exactly to the situation I'm trying to code at the moment, and the very-highly-upvoted solution simply does. not. work. At this point, I still don't know why.

I sat down the other night while I watched a movie, and got more done in Rails -- just for the fun of it -- in a couple hours than I've gotten done with Spring/Angular in a couple weeks. You want a dropdown list of associated models in an edit page in Rails? That's, like, 1 line of code in 3 source files, and you can find examples of it in the official docs, and hundreds of good web pages about it. In Spring/Angular, I need a dozen more source files to describe the interfaces and objects to the compiler, setup repositories and controllers, models and components, and THEN write the template.

There's absolutely no comparison in development velocity between Rails and Java, and I will fight anyone who says otherwise. I could have had a working site up and running in Rails in the time it has taken me to bootstrap a development environment and get some models created in Java. (Manifestly not true, but that's how it FEELS at the moment.) I'm wondering what I'm missing. How is this the stack that seems to have absolutely captivated online discussion of programming for the past couple years? Maybe Angular WITHOUT Spring is really great?

My personal belief is that, just like some people gravitate to Windows, and some to Mac(Linux/Unix), there are people who just _like_ how Java works, and some who like Rails. Some people like to specify absolutely everything in code, and some people like letting the framework do the boring parts for them.

The bottom line is that I still don't know what stack can even hold a candle to the productivity of Rails.

Re: Is Rails still relevant in 2018?

#153
post #131

Rails really nailed the problems of web development as it was 10 years ago by (rightly) pointing out that 97.2% of web projects were all about making an application server talk nicely to a relational database and then generating a front end that reflected the data model and that had javascript that Just Worked (everywhere). Web dev is in a different place now. Developers don't generally install and maintain applicati…

> Just the idea that a Danish web consultant could hack together something that became popular and which then allowed him to literally retire and become a racing driver before he hit 30 should inspire us all.

While being successful in all those aspects, DHH is still very active in the development of the framework. He is currently also the CTO at Basecamp. Not really what I would consider being retired.

Re: Is Rails still relevant in 2018?

#154
post #141

Earlier quoted context omitted.

I blame the coding practises of the rails devs, not the gem itself. Grepping can be a successful strategy, esp. when you know what you are looking for and you can search the database column in the code

I can't in all honesty understand why you wouldn't just Google "rails login current_sign_in_ip", the top three hits for which would probably all put you on the right track. I would say grepping through the code of third-party libraries would be something I'd do only in desperation when working in an unfamiliar codebase. But hey, each to their own!

Oh, don't worry, I did Google that. Just didn't work because none of the results helped or put me on the right track or were just plain too confused to be understandable.

Re: Is Rails still relevant in 2018?

#155
post #66
post #58

Earlier quoted context omitted.

> I'm not aware of any good alternatives. Vulkan/C? Metal/ObjC†/C? From C libs you can probably get to bindings to other languages like D, Haskell, Rust, Go†. † depending on your definition of "real time" (soft vs hard), both kernel-wise and GC-wise.

"Vulkan/C? Metal/ObjC†/C? " Vulkan and C are a sane option. Although, with C and linear algebra one starts to miss C++ operator overloading and existing libraries like eigen [0] or glm[1] with their graphics and computational geometry targeting API:s really soon. If one deploys only to OS X/IOS, Metal and ObjC, sure. "From C libs you can probably get to bindings to other languages like D, Haskell, Rust, Go†." With th…

For Rust, there's [1] for OpenGL and [2] for Vulkan.

I don't know about Vulkano, but Glium is much more pleasant to use than the raw OpenGL API.

[1] https://github.com/glium/glium

[2] https://github.com/vulkano-rs/vulkano

Re: Is Rails still relevant in 2018?

#156
post #35

I mean... Let's pause for a minute and remove the year, and remove the language / framework. What are we trying to accomplish? If we know something really well and there are enough developers to support an ecosystem and the talent pool in your is big enough just use whatever you want. PHP in 2018? SURE. C++ in 2018? SURE (You masochist) Rails in 2018? Youre damn right I would. GO in 2018? OK. Fine. Whatever. This is…

"C++ in 2018? SURE (You masochist)" I know this is tongue in cheek, but if one is doing anything related to real time graphics programming I'm not aware of any good alternatives.

I write integrated servers with the web server, the database server, a video server, and a facial recognition application all bundled together in C++. The application screams: try 1/16th the memory footprint of a traditional multi-server Internet application, it is 4000% faster, and can run on a $100 Intel Compute Stick. Try this in any other language...

Re: Is Rails still relevant in 2018?

#157

Earlier quoted context omitted.

If you say you can pick up Java/Spring/Angular in 2 weeks... Sorry; I just don't believe you.

For a recent developer - no, it’s impossible. For anyone who wrote code for 10+ years, picking up a new language and framework is typically piece of cake (I’d say 80 hours is more than enough). Complexity comes from learning a new domain - a web developer can’t learn mobile, game engine, or HFT development in two weeks, but that doesn’t have to to do with languages or frameworks.

I'm 49 years old, and I've been programming since I was 10, on a Vic 20. I've been doing web development for 20 years, from Frontpage to PHP to Rails to .NET to Java. Picking up .NET wasn't terrible, but I've been at the Java/Grails/Spring/Angular stuff for MONTHS, and I'm just barely getting off the ground. I guess I'm just old and/or stupid.

Re: Is Rails still relevant in 2018?

#158

Earlier quoted context omitted.

There's absolutely nothing wrong with C++ if you use a small subset of it, like for example Carmack did in Doom 3. The only problem that arises with C++ is when people want to use EVERYTHING in the language, because if it exists, it has to be in my project, right?

If you're using a small subset why on earth is it the right language? I had the misfortune to try to mentor a new quant who felt they had to write C++ "for speed" . But refused to use the STL as they were going to use a subset. So they wrote Fortran-like C++, array as the only data structure, bad lookup algorithms and leaked like a sieve. Things are in the language for a reason - if you've got the issue then you use…

Are you a quant? What do you use instead of C++? Python/cython? I’m not convinced C++11/17/20 cannot be used in quant but I am not in the business (i’d Love to though).

Re: Is Rails still relevant in 2018?

#159
post #66

Earlier quoted context omitted.

"Vulkan/C? Metal/ObjC†/C? " Vulkan and C are a sane option. Although, with C and linear algebra one starts to miss C++ operator overloading and existing libraries like eigen [0] or glm[1] with their graphics and computational geometry targeting API:s really soon. If one deploys only to OS X/IOS, Metal and ObjC, sure. "From C libs you can probably get to bindings to other languages like D, Haskell, Rust, Go†." With th…

For Rust, there's [1] for OpenGL and [2] for Vulkan. I don't know about Vulkano, but Glium is much more pleasant to use than the raw OpenGL API. [1] https://github.com/glium/glium [2] https://github.com/vulkano-rs/vulkano

The sentence in the top of the readme for the github repo is: "Glium is no longer actively developed by its original author."

Which links to: https://users.rust-lang.org/t/glium-post-mortem/7063

Which pretty much states that Glium is not a really long term viable solution at the moment.

I've toyed with cool open source libraries for 20 years. I'm too old to get caught up with something new and shiny only to find out it wasn't structurally sound.

That is why C++ is a good choice. It has huge traction. The ecosystem is basically bullet proof. It has lot of practical libraries that are so well used that while not bullet proof themselves, it is likely they will stay alive as long as you need to compile your code.

Re: Is Rails still relevant in 2018?

#160
post #35

Earlier quoted context omitted.

"C++ in 2018? SURE (You masochist)" I know this is tongue in cheek, but if one is doing anything related to real time graphics programming I'm not aware of any good alternatives.

I think he means "C++ in 2018" to build a standard webapp, which definitely is masochistic because you can be much more productive on e.g. Rails. Just like how using PHP to build a real-time graphics engine is also probably masochistic.

People who don't know say these things. Try writing web applications in C/C++, it's a deluxe development situation. Where do you think web browsers come from? Everyone afraid of C/C++ are shooting themselves in the feet.
Post reply on HN