So many Web designers put zero thought into how their page looks when it is not loaded or not scrolled exactly past the trigger. So many sites say "0 happy customers", because someone thought showing incrementing numbers is cool. On this page, it opens up with a "100%" loading indicator, for a site that appears to have no interactivity that would require JS, just to show a pointless animation.
Not long ago I was looking through programming language sites to figure out how to best introduce the language I'm working on.
ruby-lang.com stood out with a text in a big font:
Ruby is...
Followed by a paragraph about what makes Ruby special. I think that was an exceptionally simple and natural way of introducing something as complex as a programming language.
We went from a world where you had tremendous computational biodiversity, where your potential users could be running SPARC, POWER, VAX, PA-RISC, MIPS--to name a few--to one where it's almost certainly just x86-64 or Arm. Yet somehow, the Ruby community (and Python as well) think it's acceptable to have a standard implementation that does neither AOT nor JIT native code compilation, despite V8 (JS) being 17-years-old, and less popular dynamic languages managing to pull it off (e.g., Lua, SBCL, or Pharo/Squeak).
The Ruby (and Python) communities need to be told firmly that a JIT--and not as an experimental or secondary option--is table stakes for a runtime in 2025. Doesn't matter that you have a hip website with cartoons of "furbabies" and diverse, disembodied faces, with the number of white faces kept to a socially-conscious limit of 1 in 10, or how supportive/wholesome/creative the community supposedly is. No JIT = no greenfield projects. Make it clear that you'll use JavaScript (or something that transpiles to it) because of V8, or Go, Rust, Zig or something else.
Refreshing and delightful! I know how the home page looks doesn't reflect the programming itself, but this design really makes me want to try Ruby again :)
> I know how the home page looks doesn't reflect the programming itself
It does reflect what the language creators pay attention to. Way back when, when I was undecided between learning Python or Ruby, after visiting countless resources I noticed Ruby websites in general looked way nicer and clearer than Python websites, so I picked Ruby. Now, years of experience with both languages later, I have zero doubt that to me that was the right choice at the time. I would’ve been frustrated with Python to no end.
I no longer need either language regularly, but given the choice again I would not hesitate to go for Ruby.
All that said, I do agree with some other comments on the thread regarding the disappointing reliance on JavaScript here. Should just be static.
Meta, but it's kind of ironic that the main Ruby language website shows a "0%" Ruby symbol with javascript deactivated, and doesn't even show the code examples, which are all just links to some sandbox anyway.
It annoys me so much when developers think they can do it better and link with JavaScript. Interactions (like opening a dialog) witj JS - yes. Navigating to sites/positions in-site - that is just dumb. So many pages break the "open in new tab" behaviour with this implementation.
I like the design and content. Being able to immediately try a language online is huge
But there has to be a way to load that content in a progressive manner. Loading a static version first and then hydrating the content if you need interactive actions
Nice! There is a Japanese feel to the lead graphic, their prevalence of cartoon imagery, that one might not recognize without having traveled in Japan.
Is the design debate public? I'd imagine it would make great reading.
Why would a language need testimonials? (And why would you choose DHH, a white nationalist, for that)
This reads to me like a desperate grab for attention. Ruby has not been relevant for years. The ecosystem is much less developed than python; go (or even node or python) is better at simple web servers; python or lua beats it at scripting, and I don't think anyone would build a serious application in ruby.
So, in order to show a single download link it needs to load an animation with visible loading progress even on a gigabit connection. It takes a few seconds to appear. All to show a scaling animation that can be achieved with a couple of lines of CSS.
Same for absolutely static code examples that take a few seconds to load and shift the content away.
You are a rare species, on the verge of extinction.
Unfortunately, most people today probably don't care about what you're talking about. (I do, but I've decided not to comment on it anymore, because it would probably drive me crazy :)
Tailwind maps directly to CSS (well, it is pure CSS) and doesn't require a loading progress for a one-line animation: https://tailwindcss.com/docs/animation
So many Web designers put zero thought into how their page looks when it is not loaded or not scrolled exactly past the trigger. So many sites say "0 happy customers", because someone thought showing incrementing numbers is cool. On this page, it opens up with a "100%" loading indicator, for a site that appears to have no interactivity that would require JS, just to show a pointless animation.
Not long ago I was looking through programming language sites to figure out how to best introduce the language I'm working on.
ruby-lang.com stood out with a text in a big font:
Ruby is...
Followed by a paragraph about what makes Ruby special. I think that was an exceptionally simple and natural way of introducing something as complex as a programming language.
We went from a world where you had tremendous computational biodiversity, where your potential users could be running SPARC, POWER, VAX, PA-RISC, MIPS--to name a few--to one where it's almost certainly just x86-64 or Arm. Yet somehow, the Ruby community (and Python as well) think it's acceptable to have a standard implementation that does neither AOT nor JIT native code compilation, despite V8 (JS) being 17-years-old, and less popular dynamic languages managing to pull it off (e.g., Lua, SBCL, or Pharo/Squeak).
The Ruby (and Python) communities need to be told firmly that a JIT--and not as an experimental or secondary option--is table stakes for a runtime in 2025. Doesn't matter that you have a hip website with cartoons of "furbabies" and diverse, disembodied faces, with the number of white faces kept to a socially-conscious limit of 1 in 10, or how supportive/wholesome/creative the community supposedly is. No JIT = no greenfield projects. Make it clear that you'll use JavaScript (or something that transpiles to it) because of V8, or Go, Rust, Zig or something else.
Refreshing and delightful! I know how the home page looks doesn't reflect the programming itself, but this design really makes me want to try Ruby again :)
> I know how the home page looks doesn't reflect the programming itself
It does reflect what the language creators pay attention to. Way back when, when I was undecided between learning Python or Ruby, after visiting countless resources I noticed Ruby websites in general looked way nicer and clearer than Python websites, so I picked Ruby. Now, years of experience with both languages later, I have zero doubt that to me that was the right choice at the time. I would’ve been frustrated with Python to no end.
I no longer need either language regularly, but given the choice again I would not hesitate to go for Ruby.
All that said, I do agree with some other comments on the thread regarding the disappointing reliance on JavaScript here. Should just be static.
Meta, but it's kind of ironic that the main Ruby language website shows a "0%" Ruby symbol with javascript deactivated, and doesn't even show the code examples, which are all just links to some sandbox anyway.
It annoys me so much when developers think they can do it better and link with JavaScript. Interactions (like opening a dialog) witj JS - yes. Navigating to sites/positions in-site - that is just dumb. So many pages break the "open in new tab" behaviour with this implementation.
wow that loads slow
I like the design and content. Being able to immediately try a language online is huge
But there has to be a way to load that content in a progressive manner. Loading a static version first and then hydrating the content if you need interactive actions
Nice! There is a Japanese feel to the lead graphic, their prevalence of cartoon imagery, that one might not recognize without having traveled in Japan.
Is the design debate public? I'd imagine it would make great reading.
The top right character definitely looks like Matz!
I wonder why Sandi Metz is missing in the testimonial section. One of the most influential persons in software analysis and design in the Rubyverse.
Very nice, my nature-lang references the old ruby design, now maybe I can reference the new one.
Why would a language need testimonials? (And why would you choose DHH, a white nationalist, for that)
This reads to me like a desperate grab for attention. Ruby has not been relevant for years. The ecosystem is much less developed than python; go (or even node or python) is better at simple web servers; python or lua beats it at scripting, and I don't think anyone would build a serious application in ruby.
You know you support developer happiness when your testimonials include a far-right supporter.
Well well well. Now can we stop arguing about ruby death? It is even got a site redesign! What a fresh look. Previous design was from 2005?
So, in order to show a single download link it needs to load an animation with visible loading progress even on a gigabit connection. It takes a few seconds to appear. All to show a scaling animation that can be achieved with a couple of lines of CSS.
Same for absolutely static code examples that take a few seconds to load and shift the content away.
Why?
You are a rare species, on the verge of extinction.
Unfortunately, most people today probably don't care about what you're talking about. (I do, but I've decided not to comment on it anymore, because it would probably drive me crazy :)
The site is for developers and most of the rare species are developers.
The designer fail to target their audience.
> couple of lines of CSS
This is bit too much to ask. Just check the source it is swollen with Tailwind.
Tailwind maps directly to CSS (well, it is pure CSS) and doesn't require a loading progress for a one-line animation: https://tailwindcss.com/docs/animation
Sure but if someones duplicates 50x this:
> flex-shrink-0 transition-transform duration-300 hover:scale-105 w-[160px] h-[144px] 2xl:w-[200px] 2xl:h-[180px]
just to avoid CSS, not sure they would bother with CSS animation.