skysight-inc/HackerNews huggingface dataset:
[..] An analysis last month by Consumer Reports shows that hood height for passenger trucks increased 11 percent since 2000, generating larger blind spots directly in front of the truck.

That has coincided with a 46 percent rise in fatalities over the past decade. [..]
"Our conclusion, in consultation with those experts, is that Russia needs more Internet access, not less."

♥
Fifteen minutes to get up and running with Ubuntu or Mint if you stay focused. A lot of people don’t realize that LibreOffice, Steam, and Discord are all fully usable on Linux these days.
Unless you are joining as a SVP at least, this idea makes no sense.
Then it's also not fine for you to leave your house because even if you are vaccinated you can still spread disease. With modern technology, there's no need to leave the home for anything but work and some essentials. So if you have this technological-integrationist view on vaccines then you might as well self-ban from any sort of outside recreation or public gatherings since you would be putting others at risk.
> The LFS system will be built by using an already installed Linux distribution

It would be totally cool if there wasn't a chicken-and-egg problem with LFS, imho. I've tried to cross-build it from OpenBSD but failed miserably.

https://trac.clfs.org/wiki/download if anyone else wants to attempt this
Still looking forward to a solution for _ITERATOR_DEBUG_LEVEL in release builds with modules, VS DevCommunity ticket does exist.

Currently it appears anyone that cares about bounds checking and iterator validation in release builds, has to keep using global module fragments.
I'm not sure that COVID anti-vax is a good example of Darwinism. Out of the 950K deaths from COVID in the US, only 6K are under 30 years old - hence less likely to have reproduced.
> Waiting until you have money to spend it slows everything down.

Which is probably a good idea for most people and most situations.
You've described an existing approach actually, and unfortunately there is a big caveat. Duolingo and many other applications use gated or timed content windows in order to increase retention and form stronger long term habits.

The TL;DR of that loop, is that in order to achieve your goals within the app you'll have to come back later to do so, which sets up a daily usage habit.

The Sims mobile for example, you can't just keep playing the game, you have to constantly check back in to see how your timed tasks are going. For DuoLingo, you run out of hearts as you get questions wrong, so you have to keep checking back to see if your hearts have replenished in order to finish the lesson you were on.

It might genuinely be healthier, I think that would need to be studied, but it's not out of the kindest of their hearts that they do it, it's just another way to keep you on the app, albeit over a longer period of time.
>How opamps work and how they're used to make a differentiator.

An op-amp is just a very high gain amplifier. It senses the difference in signal levels and just amplifies that difference by a large amount, usually between 1000 and 10,000,000 times.

The first op-amp circuit you usually use is a negative feedback linear amplifier. In this circuit, the positive input to the op-amp is simply grounded. The input voltage is put through a resistor R1 into the negative (AKA inverting) input. The resistor limits the current into the negative input to Vin/R. As soon as the voltage on the input becomes non-zero, the output of the op amp becomes a quite large signal, of the opposite sign. If you feed a small amount of that signal back to the same negative input, (through a feedback resistor R2) the signal will rise until the feedback current balances out the input current.

Now it's not exactly in balance, as there is a very small deviation that has to drive the amplifier to keep its output up, but for most uses the higher the gain of the amplifier, the lower that deviation has to be.

This circuit has a gain of -R2/R1

If you replace the input resistor in the above circuit with a capacitor. It will pass a current proportional to the change in voltage/time and the capacitance. If you feed in a steadily rising voltage, you'll get a current into the negative input of the amplifier that is proportional to the derivative of the input voltage, the feedback current will balance this out, and you'll thus end up with a scaled up derivative of the input.

This circuit has a gain of dv/dt * -R2/(1/c)

If you start with the first circuit and replace the feedback resistor with a capacitor, you'll find that the output has to rise at a rate proportional to the input voltage to balance the input, making an integrator. This only works up to the limit of the output voltage, and there may be a small amount of uncorrected input bias.. to counteract this, a large resistance will be placed in parallel to the capacitor, to keep the output from becoming pegged with no input.

This circuit has a gain of -Integral(Vin)* (1/C) / R1

Notice in all of these equations, the gain is the ratio of the -feedback impedance/input impedance

Does that make sense?
I've never heard it used that way but it makes sense. Thanks!
Two beers a day is very, very dangerous according to my girlfriend, a social worker.
I would love to hear your profitable idea, seriously. I am looking for a new business.
> It is a seriously argued theory that the 70s - 90s crime wave in the USA is a consequence, at least in part, of mass lead poisoning.

I knew about this which is why I'm wondering about everyone. Is the boomer generation actually mentally damaged and that's why we are where we are today?

I wonder if I should hope that the next generation of leaders will be more calm and rational.
Sorry why is Redis riskier?
Most of us do still like each other, if we can get past the mediation of our conversations by platforms and the kind of tribalism it inculcates. I just wrote this rant here. It's hard to put into words what I see happening, but I'm trying desperately because I think there needs to be a framework for understanding it. Which I'm not eloquent enough to state, but I hope people can build on these simple statements like "Most of us still like each other".
https://news.ycombinator.com/item?id=30584851

The machine thrives on fear. Twitter is a rage machine... its function is to generate tribal anger and mass hysteria, and its mechanism and chief innovation for doing so is shortening the language. When everything is a soundbite, nothing real can be expressed, only affiliation with one group or another. Any thought that tries to explore both sides of a conversation and weigh their relative merits requires more characters than Twitter allows, and that's by design. We sleepwalked into this.

/Rant. About your point about enjoying killing and carnage, it was also something Hannah Arendt talked about extensively, and we can see it on both sides of the political spectrum in America now, both "mobs" of totalitarian/authoritarians. It's the end equilibrium of the totalitarian state to have generations of killers weaned on brutality who enjoy it for its own sake, and in theory the normalization or stabilization of a state which breeds those minds is the most frightening thing for the future of humanity. Nazi Germany was almost there.

I'm still trying to formulate this. But I've begun to come to the conclusion that the only important thing is to stop thinking in terms of who's right or wrong. The only way for civilization forward is to re-introduce the civic principle, to enforce the rules of debate; to ingrain the reflexive ability to absorb the other person's point of view and see them as a human like yourself; even if you believe they are wrong. The ability to put their wrongness into context so you can accept it and treat them as an equal before you go about dismantling their arguments. Without that, we're just bloodthirsty savages. And that, sadly, seems like the way it's going.
Food Protectionism Is Spreading as Hungary Bans Grain Exports
That's the hard science of etymology for you.
>Still, the download model is clearly headed toward obscurity. In 2020, revenue from downloads fell by 18% across the entire music industry according to the RIAA, and it accounted for just 6% of total recorded music revenue.

Considering the options to buy and download music keep disappearing every year, I am not at all surprised.

I love buying music. I'd buy more CDs if I could because I absolutely love physical media. But these days, when I find an artist I enjoy, odds are I simply am not able to buy their music. Most of the time you'll only find them on streaming services.

Having been burned many times before by streaming platforms that simply take away content I like overnight and without warning, being able to pay for an album and keep a copy of it under my control is infinitely better.
While it's not exactly the same, there's an app called "Self Control" on macOS that blocks selected websites for chosen amount of time, and after it is engaged it is virtually impossible for you to disable the block until the timer runs out. I use it a lot.

[0] https://selfcontrolapp.com
Haha thanks love this explanation!
I would argue that one of Go's strengths is its resistance to bad code.

Sure, you can still write gross Go. But I'll take gross Go over gross C++, gross Haskell, or gross Python any day.
Can't wait to read a copy. The title is great. I knew exactly what this was about before I clicked through.

I've also enjoyed your blog over the past few months, especially your post on the Eytzinger Layout [1], which we've implemented for TigerBeetle's new deterministic LSM-forest [2].

I can also understand your decision to write the examples in C++ given all the legacy code that's out there and given the easy access to std lib examples which are often not optimal. However, if I may make one suggestion it would be to take the extra time now to rewrite the examples in Zig — it's a clearer, simpler, newer language that makes sense for high performance coding for the next 10-20 years. It has a great approach to SIMD intrinsics and shares many of the same performance values as your book. For example, the std lib ships with SoA that can be used to generate SoA layouts at comptime.

As an orthogonal language, it's also brilliant for book examples, notably very readable, and also guaranteed to compile on the first attempt—it will make the examples more engaging and accessible, to bring the cool performance ideas across cleanly to your readers, without abstraction overhead, unnecessary complexity or usability issues.

From a community point of view, I think that this change would also find you a very engaged, supportive and concentrated systems community right from the get go.

[1] https://algorithmica.org/en/eytzinger

[2] https://www.youtube.com/watch?v=LikJDDhwmXA
Out of interest, which Linux phone did you try?
Se also have zero euro notes in Europe, but it's for a totally different goal.
I'm a broad enough polyglot, and I find myself writing quite a bit of go.

I don't think go is a good language. It's not enjoyable to write. It's annoying to read. It doesn't bring me happiness.

Compared to rust, it has a ton of severe flaws. It doesn't have mutex guards, so manually releasing mutexes is the norm. Every error is returned as the 'error' interface, so your compiler can't tell you what types to check for (not that there are sum types anyway), nor can the function signature, and error handling in general is a total mess as a result. It's easy to mess up ownership with a few things, especially channels. It has its share of footguns and warts. It made the million dollar null mistake. It feels like writing code while hobbled with its intentional avoidance of macros, type-level abstractions, and a number of other "features".

But, compared to rust, it has a vibrant ecosystem of fairly mature libraries. If you want to, for example, speak some slightly obscure protocol, or interact with a somewhat unusual API, you'll usually find a pure go library that some pour soul has hacked out, one line at a time. In rust, you might find a half-completed nom parser some college kid wrote started and abandoned, if that.

There are other languages with this property (of libraries already existing for anything you might want to talk to), but these other languages are javascript and python, so if you want some semblance of speed and some semblance of a static type-system, Go's a good compromise between library support and static typing.

It's because of this reason that I begrudgingly use Go, even though as a language, I find rust, (modern) C++, and haskell to all be generally more pleasant to write and read.
> Pre-ordering / financially supporting the book. Due to my unfortunate citizenship and place of birth, you can’t — that is, until I find a way that at the same time complies with international sanctions, doesn’t sponsor the war, and won’t put me in prison for tax evasion.

> So, don’t bother. If you want to support this book, just share the articles you like on link aggregators and social media and help fix typos — that would be enough.

This breaks my heart. Supporting justified sanctions is one thing. Witnessing how sanctions are affecting a civilian as an individual is another.

I hope those sanctions keep piling up (as they’re among the very few things that are actually capable of ending the war) so people like Sergey can once again live a normal life.
I formerly worked at Stripe -- last day was less than a month ago.

In summary, culture is downstream of hiring decisions. If a company is doubling headcount each year, then after two years 75% of the population will be new. If the newcomers' culture is different from what old-timers prefer, then attrition increases, which further skews the demographics.

This effect is strengthened when the hiring pipeline is focused on alumni from specific companies. For example, if you hire three layers of management from Amazon, and they replace tenured engineering leadership with newly hired ICs from Amazon, your team's culture will become that of Amazon.

Some blog posts I've found to be relevant to current circumstances:

* https://danluu.com/people-matter/

* https://steveblank.com/2009/12/21/the-elves-leave-middle-ear...
Cryptic names like "jnc" and "jc" is the huge hindrance in understanding it. It would be so much easier if it was just called what it did instead of an acronym.

"jump_if_condition_is_met" or "jump_short_if_not_carry" (or which ever one it maps to) is much better and clearer than "jnc"
https://archive.ph/Khjcs
"C/C++ Users Journal" - https://en.wikipedia.org/wiki/C/C%2B%2B_Users_Journal

You are certainly acquaited with it.
I tend not to run stuff locally due to the complexity of setting up whatever is being tested. This goes especially for bug fixes and 3rd party integrations.

I do however check out code locally. Online code review only shows what's been changed and I often find subtle issues in the code that wasn't changed. In short I'm trying to ask myself: What's missing in implementation?
>The fact that Microsoft is too lazy to implement a solution that effectively implements their desired policy isn't material to what the actually implemented policy enables

This implies that at some point someone would be able to say, we have tried to implement a policy, we have spent this many man hours of engineers, we have had 5 different solutions that were broken through, at some point these things must become hacking.
There is a legal concept called adverse inference. It is based on the premise that you wouldn't destroy evidence that would be beneficial to you. In addition to any punishment the court may decide, they introduce the spirt of the destroyed evidence and treat is as materially detrimental to your side.
I agree with "Corruption is often a symptom of underlying issues and not the cause", but not the first part.
I can't say about whole world, but if members of society have a decent social ensurance for the tough times, sphere of influence of corruption should go down, like in Nordics. Does it remove corruption entirely no, does it make less rampant yes.

Would be nice to have a systematic study correlating availability of social protection vs prevalence of corruption and it's overall impact.
I started working on a website to store cooklang recipes, what I miss is the possibility to link other recipes as ingredients, I wonder if it would be possible
Huh? My version never returns a pointer to space that was already allocated because it never deallocates anything. So the objects are ALWAYS disjoint from every other object. Or are you concerned that they are aliased with the static 'data_storage' char array?

More context around your quote:

> The lifetime of an allocated object extends from the allocation until the deallocation. Each such allocation shall yield a pointer to an object disjoint from any other object.

https://port70.net/%7Ensz/c/c11/n1570.html#7.22.3

In context, I take that to mean that all allocated objects must be disjoint from one another throughout their lifetime. It wouldn't make sense otherwise.
That’s not what they are talking about.

https://en.wikipedia.org/wiki/Big_Five_personality_traits
You could always move there to keep from having to spend $2.99 every now and then, if it is that big a worry.
This sounds like a plausible factor but on the other hand, people who use Tor might be more security conscious and/or tech savvy, frequently run in a sandbox VM - and those unpatched vulnerabilities might get burned sooner if used on them. Any evidence or data would be interesting to see of course.
Everyone knows you gotta keep your peepers minty fresh
Anti-capitalism isn’t enough for you to sell as an alternative. We really don’t have a serviceable alternative ideology given the tendency for communism to fall under control of a few men same as capitalism. The Reddit subs can point out some of the problems with Capitalism but not alternatives.

At some point the only option will be to use something like an rPi with a Linux and only interact with the culture made from the next punk movement. Or, targeted violence somewhere. But where.

I think both 1 and 2 are ripe for action. The right person can explain that the assumptions we’ve been sold about capitalism no longer resemble truth and we need to change the rules so they do.
First of all, drinking alcohol every day is too much if you count your alcohol units.

Second, first you start with a drink every week, then every day, then every hour,... that is how you develop your addiction.

Third, what you suggest is moderation drinking. People who are addicted to alcohol argue that it does not work and complete abstinence is the way to go.
I prefer the Modernist Cuisine Format:

http://modernistcuisine.com/wp-content/uploads/2014/06/Colon...

It's the best I've seen for being able to easily follow along. I also really appreciate their diligence with scaling factors since that tends to be a huge pain point for me with other recipes.
I agree, the current implementation is really not sufficient, at least for this. I played around with lazy iteration a while back and found the current restrictions would make working with it an annoyance.

I've placed some thoughts in the Readme [1] so I don't forget. Hopefully at least some of the restrictions will be dropped.

1: https://github.com/urandom/iter
Rule by law countries use corruption charged as a way of getting rid of people they want to get rid of. If everyone is corrupt, then they all have that noose on their neck and so won’t step on toes they shouldn’t. Then the officials need only worry and get rid of those who aren’t corrupt (leading to a survival bias effect).
> Certainly, there are some chapters expressly dedicated to MASM functionalities, so those are wasted.

Not for the legions of developers doing Windows and XBox games.
I personally can’t stand the language itself but after using it a bit more I do see the appeal. A single install gets you a whole environment to compile / run / test / format backend code without dependencies. Compiler is really fast too (at least compared to Rust or Swift).
> I think the worst ones for me right now are YouTube and hacker news.

Same thing.

If anything, any strategy I tried just made me replace awful content with more quality content.

But you can still be addicted to "good" content. And it’s harder to block because the FOMO is harder with sites like HN and interesting YouTube content.
I think it's a Family Guy episode where the callout also gets called... names in reply to the announcement.
> Are there people with experience in a wide variety of languages that prefer Go?

I have a great deal of experience (decades) with assembly, C, Lisp, ML-style derivatives (Standard ML, OCaml, Haskell), shell script. Since Go is already 12 years old now and I've been doing it since day one, I guess it also belongs in this category.

I am very fluent in Rust, Prolog, Coq, Agda, Idris, Lean, Ada, Erlang.

I even have some professional experience with C++, Java, C#, Python, Objective C, Swift, APL, R, Julia, Matlab, Fortran.

And yes, Go is my language of choice in the domains where that makes sense, like servers and command-line tools.

> For example, the chainable methods are nice, but comparing to JS looks more like ES5 than modern code.

I don't know anything about JavaScript (except that I don't want anything to do with it), but the code in question is a far cry from idiomatic Go code.

> Do you find Go preferable to other languages for solo projects?

Absolutely, when that makes sense. For example, Go is a lousy language for writing a compiler in, I'd prefer to use OCaml for that. That being said, I wrote a couple of compiler targets for Go in Go. Even though ML-derivatives are a better fit for writing compilers, there's a much greater value in having the Go compiler itself written in Go.
All first letters (WLLPBMVE) sounds like some system dll name or running service.
The original font had the additional constraint that it had to be legible after “graying out” characters by AND-ing their pixels with a 50% gray grid (the screen was black and white, so that’s how you got gray)

That’s why characters in Chicago 12 (http://kare.com/apple-icons/) have ‘fat’ stems (https://en.wikipedia.org/wiki/Typeface_anatomy)

I don’t think there was much room for making lowercase l different from both uppercase L and uppercase I while keeping the font look nice.
Does Israel even use the oral vaccine? As far as I know all countries that have the basic infrastructure that is needed for the injection one, use that one.
You never could implement malloc() in C anyway, because the language lacks the ability to manipulate the MMU.
Consider yourself lucky to be on a team where people are competent at testing the features they create.
> It happens when there is no downside to it.

That is a bit simplistic. The penalty for corruption could be death, definitely a downside, but an official will only be singled out for punishment if they displace someone more powerful. Corruption as such thrives in countries without strong rule of law (where laws might be harsh but are applied arbitrarily).
I was illustrating how most of them aren't clutter. They do different things. This list just goes further to show that point - all the text related units refer to different aspects of the text, and they all need root and local versions. Same for screen space units like vw, vh, and so on. Any unit where you can't derive one from another means you need both.

There are some where you can do that. Absolute lengths like mm, cm, inch etc could just be one unit. Same for deg, rad and turn. Mostly though, CSS units are very well thought out, and it's easy to understand why the length units are included (USA vs metric).