HN user

0x000000E2

105 karma
Posts0
Comments33
View on HN
No posts found.

Meanwhile, Java has incredible support for several kinds of profiling for a decade.

This is the reason I don't liKe Go: anything Google deems unimportant (like generics or packaging) either take many years or never happen. The whole language reeks of such zealotry. In fact there's many Google projects where I've seen popular GitHub issues linger for many years because the core devs just don't care about usage outside big G.

Google generally does a bad job of open source stewardship and Golang is no different.

It's a shame but not a surprise that outside companies who have married their horses to Google and Go find themselves fighting hard just to have decent tooling that virtually every other language has.

Yes, it goes back to ES3.

Babel does have a neat automatic polyfill system typescript doesn't. But both can target real old JS versions. Most JS packages you'll find on NPM are still ES5.

Transpilers are quickly making JS a compiled language where the bytecode format is ES5 :)

Newest gen Ryzen laptops are different. They're significantly more energy efficient than older AMD and any Intels. The energy efficiency of new AMD processors is something like 50% higher than Intel.

Couple other things working against laptops. The screens are big and usually not OLED. They use forced cooling. And on cheap laptops the batteries are real tiny. As little as 40 watt hours, around 2.5X the size of phone battery.

Energy efficiency of new Ryzen is probably better than Android ARM CPUs, similar to IPhone or M1

House and auto prices are up because demand is historically high. Same thing happening with travel trailers, chips, gas, and remodeling supplies. It's all people doing stuff to avoid COVID. Even groceries, since most people aren't going to restaurants and packaging for retail vs commercial foodstuffs is very different.

True inflation the value of the dollar vs other currencies would drop, and it hasn't. The demand for this stuff and price increases and shortages are worldwide.

Worldwide price increases are a shortage, not inflation. Inflation is just the messaging from dishonest right wing news trying to cast a bad light on the historic economic recovery under Biden and hoping people won't do their own research.

Is this their way of saying that people don't want to go back to starvation wages and managed to find better jobs post COVID after being laid off?

This is basically McDonalds - "We laid our employees off during an economic disaster, now they won't come back without better pay :'("

Every labor shortage = employers not paying enough.

Inflation my ass

When they need to handle UPD and TCP. Cloudflare's web application firewalls run at TCP and HTTP layer and use tuned Linux kernels for processing, not DPDK and userspace TCP as some think

Their line rate stuff for flood mitigation uses DPDK or similar

Old Babushka proverb, if complicated explosion related plumbing is working as intended, best not to completely rework it for sake of changelog.

Aye, but everyone stuck with that proverb for too long. Then Musk appeared and he doesn't seem to care that his test rockets explode. He revels in it.

To me it's the classic startup vs giant corporation. The bigger you are, the harder it is to change course. And exploding rockets look bad to management. The same reason so many companies are still on IBM mainframes running FORTRAN.

SLS is an insurance policy against SpaceX. But it's being managed by the same old wasteful monopolies as always, plus plenty of government mandated pork.

NASA nah, they transitioned to third party launch providers many years ago. They like making space vehicles more than rockets. The SLS, yes, that's a classic pork project.

ULA is the real problem. The government allowed all the launch providers to merge into one with no domestic competition. Think space Comcast. Other countries allowed the same. Nobody innovated for decades. Russia and US ULA are flying rockets from 50 years ago with minimal updates.

^^ this is huge. I was looking at CPU's for a ML recently and Intel is out of the question. Chips with enough lanes to hit full speed on 4 GPUs + SSD cost twice as much as AMD.

This may even apply to high end gaming machines. Soon as you have 2 SSD's or video cards you will exceed link budget on most Intel CPU's and everything slows down.

It also happens to routers. 10 gig NICs plus attached SSD storage, over link budget again.

Intel's stupid market segmentation is biting them in the rear

I'll add that with DPDK you end up needing your own TCP stack if you're doing anything above layer 3.

TCP is a beast with opportunity for countless subtle bugs. The Linux kernel is perhaps the best implementation there is. Many userspace implementations are simplified and missing features.

Even giants like Cloudflare use Linux kernel for routing when they need to operate above layer 3. They only use DPDK for very low level features.

DPDK has its place but for most use cases you need to man handle TCP and you're better off using kernel packet handling for that

I've given up on Xsense distros and use OpenWrt. It's Linux based so Wiregaurd is in kernel and easy to setup.

I keep trying to get people to try it out :) . I left pfSense community years ago when drama started and it became clear somebody was commercializing it.

Linux based distros have better features and hardware compatibility these days anyways. BSD is slowly dying (at risk of downvotes here)

There's a lot of JIT's using LLVM for code generation. Including some shader compilers, Azul's JVM, and I believe Safari's JS.

DynASM is another popular library, used by Lua and others.

Crane lift was originally designed for WASM but Rust developers have taken a liking to it

My favorite flavor of code-gen is within VM based languages though. I'm most familiar with Java, where there's a rich set of libraries for generating code at build and run time. Codegen within JIT'ed languages is really cool because the new code is patched into the existing code with profile guided optimizing compilers.

A lot of popular libraries use it. And it's nice to know it's there if you need to build up say a deserializer or rules engine with maximum performance.

I've heard the anecdote many times that the idiomatic way of writing Rust tends to also be performant. I've spent some time fiddling with C code to reuse buffers and avoid copies, make loops amenable to auto vectorization. Many times my first try in Rust will still be faster. In C reusing memory over and over is dangerous and confusing. In Rust it's the default because you use borrowing and transfer ownership.

My guess is that little time was spent optimizing the C++ and Rust codebase, and Rust performs better because the code doesn't do copies.

By the same token, I think most uses for C++ these days are nuts. If you're doing a greenfield project 90% of the time it's better to use Rust.

C++ has a multitude of its own pitfalls. Some of the C programmer hate for C++ is justified. After all, it's just C with a pre-processing stage in the end.

There's good reasons why many C projects never considered C++ but are already integrating the nascent Rust. I always hated low level programming until Rust made it just as easy and productive as high level stuff

IMO it's not true. If it wasn't for rampant NIMBY in Cali developers would gladly replace low density housing with skyscrapers.

There's less space but you can always build up. But none of the Cali cities allow this. That's why despite California's huge population you don't see any cities with skyscrapers and traffic is so bad.

Building upwards also solves the transportation issues.

Look at places like Tokyo and Singapore in comparison to Cali coasts. They're are all space constrained but these places managed to fit 20X the people in the same space and they still don't have Cali level traffic problems