3 ms·
Modern React is a "full-stack" framework - with the current recommended implementation being NextJS. If you build on NextJS you will get the entire tailwinds o
by rohan_ 2y ago
Modern React is a "full-stack" framework - with the current recommended implementation being NextJS.
If you build on NextJS you will get the entire tailwinds of the industry behind you. Having Cursor write a full-stack app that leverages server components alongside client components is a 10x velocity unlock that you won't get if you bifurcate your codebase (as is the rails model)
Typescript is going to be the language of AI engineering, (with Python being the language of ML engineering).
Rails is a fundamentally unserious framework:
1. It lacks LSP (any modern language should support this, think "clicking" a function call to go to it's definition)
2. it lacks type-safety (do you really want to write unit tests to enforce contracts and expectations in your code? or just use the type system?)
3. Object-Oriented-Programming is a failed paradigm for modern web development
4. elite engineers will not want to work for you
- RadiozRadioz 2y ago> any modern language should support this It seems that people who use Visual Studio Code expect LSP to exist for every language for some reason, then blame the language itself when it doesn't, as this commenter did. It's strange to me. It isn't that the language doesn't support VSCode, the problem is that VSCode doesn't support the language. VSCode is the bad thing, not the language. > elite engineers will not want to work for you Engineers who care more about the specific web technology being used rather than solving the problem don't sound like "elite" engineers.
- rohan_ 2y agoYour comment is profoundly ignorant. The Language Server Protocol is a standard across all modern editors. It's the reason for the resurgence of Neovim. It is absolutely the responsibility of the language to provide a language server. > Engineers who care more about the specific web technology being used rather than solving the problem don't sound like "elite" engineers. Naive
- RadiozRadioz 2y agoEnlighten me, elite engineer. Why does liking NextJS make you elite? > standard across all modern editors This is incorrect. It is Microsoft's open standard that _some_ modern editors have chosen to implement. For example, JetBrains IDEs & Sublime text have no native support, only limited support only through extensions/plugins. > It is absolutely the responsibility of the language to provide a language server. Actually, it's absolutely the wild west. Most LSP implementations are not made by the language's foundation, including those of the most popular languages: https://microsoft.github.io/language-server-protocol/implementors/servers/ https://microsoft.github.io/language-server-protocol/impleme... Again, this is an extremely recent standard, 2016, that services some text editors. This is not something foundational for all language authors. My main point is: If your editor experience is bad when using Ruby, then your editor is bad for Ruby. Regardless of if your editor uses LSP or something else. The language itself is not at fault.
- nona 2y agoBut there is LSP support? See: https://shopify.github.io/ruby-lsp/#with-vs-code https://shopify.github.io/ruby-lsp/#with-vs-code There's also (the older) solargraph.
- mgriepentrog 2y agoThe statement that Rails is an "unserious" framework is not true. There are many multi-million/billion dollar companies built with Rails: Shopify, GitHub, Chime, Gusto, GitLab, and Basecamp/Hey, to name a few. 1. It does: https://github.com/Shopify/ruby-lsp https://github.com/Shopify/ruby-lsp 2. It does have a type system, just not a _static_ type system. You can declare/annotate methods using RBS/Sorbet, just like TypeScript. 3. I don't care what paradigm is being used if it solves my problem and I can be productive in it. 4. I wouldn't want to work with them either.
- ajsharp 2y agoI hate to break this to you, but typescript ain't type-safe. There's a lot I like about typescript, but your runtime is still node, so any "type-safety" is mostly illusory. Not to mention every typescript codebase I've ever looked at includes a copious amount of Any, so...there's that. Also, typescript has OOP support for a reason -- lots of typescript codebases make copious use of classes. Javascript tried to remain mostly functional for a long time, and people kept trying to make class-based OOP, so, they added it. Finally, React is not a full-stack framework -- it's a framework for generating UIs. It has recently added support for server-side rendering, and NextJS has added support for that, but Rails and NextJS are very different. Rails is batteries included, NextJS is bring your own [everything] that happens on the server. YMMV/to each their own/etc etc etc, but referring Rails as "fundamentally unserious" (github, stripe, shopify, i could go on) reflects the opinion of someone who either has an axe to grind with ruby/rails, or is willfully ignorant of it's capability.
- gls2ro 2y ago> Object-Oriented-Programming is a failed paradigm for modern web development This seems to me more like an opinion based on personal flavors than an industry statement. There is no clear winner between OOP and FP. Both are fine and models (thus a bit far away from reality) of an outside world that has a fair part of randomness and increasing complexity. Moreso more languages are implementing properties from the other paradigm. Also if you think FP is modern you are mistaken. FP is at least as old as OOP if not a bit older. Take a look at when LISP was released and when the first OOP language was released.
- megacha0s 2y agoAre you an elite engineer? I bet your great to work with lol