Wow, I didn't buy this because it seemed a bit grim for my tastes, but it looked very impressive when I came across it a few months ago. Wild that it's one person's passion project.
Hey I had an example URL in a README.md with github.com/yourusername. I think this is going to bite me in the ass if anyone checks the commit that fixes it.
But why do you need a car in Singapore? I can't take my kid to school or buy groceries without a car here, it is a basic necessity and I hate it. But you have amazing transit and high density.
Tourists get this impression by staying in the city centre. However, if you live in an outer neighborhood, what would be a 15 min car ride can easily become a 40 minute journey on public transport if you have to walk to the train station, take the train, and perhaps take a bus for the last mile. Now imagine you have a kid in tow or an elderly parent.
Yes, public transit is not a necessity here like in the States, but it's a nice convenience to have, and plenty of people are wealthy enough to pay for it.
When we optimize Ruby for performance we debate how to eliminate X thousand heap allocations. When people in Rust optimize for performance, they're talking about how to hint to the compiler that the loop would benefit from SIMD.
Two different communities, two wildly different bars for "fast." Ruby is plenty performant. I had a python developer tell me they were excited for the JIT work in Ruby as they hoped that Python could adopt something similar. For us the one to beat (or come closer to) would be Node.js. We are still slower then them (lots of browser companies spent a LOT of time optimizing javascript JIT), but I feel for the relative size of the communities Ruby is able to punch above its weight. I also feel that we should be celebrating tides that raise all ships. Not everything can (or should be) written in C.
I personally celebrate any language getting faster, especially when the people doing it share as widely and are as good of a communicator as Aaron.
Node uses V8 which has a very advanced JIT compiler for the hot code, which does a lot of optimizations for reducing the impact of JS's highly dynamic type system.
The claim that Ruby YJIT beats this is not supported by the data to put it mildly:
Not at all saying Ruby's compiler is more capable, more that typical Ruby code is easier to optimize by their JIT design than typical JS, largely because Ruby's type system is more sane.
The whitepapers that inspired Ruby's JIT was first tested against a saner subset of JS, and shown to have some promising performance improvement. The better language/JIT compatibility is why the current Ruby JIT is actually showing performance improvements over the previous more traditionally designed JIT attempts.
JS can get insanely fast when it's written like low level code that can take advantage of its much more advanced compiling abilities; like when it's used as a WASM target with machine generated code. But humans tend to not write JS that way.
Agreed about Go as well, it tends to be on the slow side for compiled languages. I called it out not as an example of a fast language, but because it's typical performance is well known and approximately where the upper bound of how fast Ruby can get.
I did a quick search for the white papers and couldn't find them. Would you be kind enough to leave a link or a title? It sounds interesting, I'd like to read more.
For Ruby, it's code where variables and method input/return types can be inferred to remain static, and variable scope/lifetime is finite. From my understanding, much of the performance gain was from removing the need for a lot of type checking and dynamic lookup/dispatch when types were unknown.
So basically, writing code similarly to a statically typed compiled language.
I’ve only seen a handful of people use it for local development but I’ve seen plenty of people use it for servers in production. Look like the latest cpython has a JIT built in. It would be cool if it saw the same gains that ruby did.
Looks the the one at that link does unless there's some newer versioning thing I'm not aware of. The top results seem to be comparing pypy 3.10.14 and ruby/yjit 3.4.1.
Not only, you are missing Vignete, and our own Safelayer (yes I know it isn't public).
However exactly because of the experience writing Tcl extensions all the time for performance, since 2003 I no longer use programming languages without JIT/AOT other than for scripting taks, or when the decision is external.
The founders at our startup went on to create OutSystems, with many of the learnings, but using .NET instead, after we were given access to .NET during its "Only for MSFT partners eyes" early state.
That just because someone is a plutocrat doesn't make them experts in all things. We should not idolize celebrities and not accept their hot takes wholesale. Be wary of ultracrepidarians.
> That just because someone is a plutocrat doesn't make them experts in all things.
Of course. This is why you go to a university to learn to analyze the evidence for a claimed statement as scientifically as possible instead of practicing hero worship.
Google, the ad-monopoly pretending to be a competitive "tech company" to avoid scrutiny of it's monopoly [1] had a dizzying array of "tech products" it generated to maintain this subterfuge.[2]
Other companies, buying into the marketing smokescreen that they were a "highly competitive tech company" and not a search monopoly figured that 'cargo culting' their OKR process would help obtain the super-profits of they craved.[3]
The statements of departing Googlers during the successive waves of layoffs in '23 and '24 supported the hypothesis that GOOG suffered from having people just meeting their OKRs for products no one wanted or needed, and without any external guidance of profitability or customer feedback.
Just say no to OKRs. They won't give your company the monopoly it wants.
There's a famous theory that Gantt charts were actually created to keep decision-makers on the dark while Gantt could have some freedom to manage in a way that worked instead of letting they dictate some way that doesn't.
Taylorism was, of course, something that Taylor never believed in. That's no secret, as he spoke against it several times. Most personal "ism"s are like that. (What he actually preached was something very different.)
It's almost completely settled that current form "agile" was created by people that sold books and courses, and had not interest nor any professional experience in making teams work better.
And I guess the list goes on, but I don't remember more. But surprisingly, the guy that invented stack-ranking apparently believed it was really great.
I'd not be surprised if this activity is quite limited in Singapore given that they have been under a tight microscope lately. Money laundering used to be their business but now they are rich and make money "legitimately" and within the "international" framework.
To be fair, having an industrial district doesn't preclude tariff laundering either. If you're trying to pass chinese goods as singaporean, you'd want your address to be a factory, rather than an office in a business park somewhere. Even if that wasn't a consideration, at the very least you'd need warehouse space to repackage/reship goods, so you'd need to rent out a warehouse/factory anyways.
reply