skysight-inc/HackerNews huggingface dataset:
> maybe we should leave operations to operation teams at this point and just be developers

The whole misconception about devops, imho, is that people mistakenly expect everybody to do everything: operations people writing code (have you seen code written by an operations engineer?) and developers maintaining services and infrastructure (have you seen an infrastructure designed/maintained by a developer?).

The whole point of devops is to enable ops and dev to collaborate. Articles about setting up kubernetes are mostly pointless. I've been there, and getting a cluster up in a basic way is as simple as pointless. The complexity is somewhere else.

People willing to advocate about kubernetes should assume a cluster is already running (developers who don't want to get into operations can either download minikube or get a managed instance off digitalocean, google cloud or amazon aws) and start from there, but teaching about the applicative side of k8s: how do I run my workload on a k8s cluster? How do I expose it? How do I get the scheduler and affinity/antiaffinity to work with me instead of agaist me ? How do I manage storage? How do I get traffic routed to my application? How do I observe my application ? How do I poke it with a stick when it's not working as expected?

It's fine not to know everything.

It's fine to read just enough to understand what's going on, but then letting someone else handle the problem.
Making code search useful (comparing GitHub to Google)
> Changing to a BTreeMap instead of a HashMap in the LRU cache to optimize memory usage.

Collections are one of the big areas where Go's lack of generics really hurts it. In Go, if one of the built in collections does not meet your needs, you are going to take a safety and ergonomic hit going to a custom collection. In Rust, if one of the standard collections does not meet your needs, you (or someone else) can create a pretty much drop-in replacement that does that has similar ergonomic and safety profiles.
That sounds amazing, I have always wanted to visit Japan! A change of scenery, and especially international travel I've found to be a great palette cleanser. Have a great trip and try to not think about work!
For now, you can't do much with Bitcoin besides buying drugs and paying ransoms. But people expect it to become more important in the future, and that's the main reason why they buy Bitcoin.

So, it is like 99% speculation and 1% "internet money", a big part of that 1% is for illegal activity.
I think flight gear is probably the best open source one.
It's hard to see this as anything other than creeping fallout from tech's willingness to accomodate requests & demands from China over the last decade. What's the difference between complying with China's demands that you share encryption keys or scrub search results and letting Russia push pre-installed apps on your users? Can the US forbid end-to-end encryption? Can China? Can France?

If the UAE government tells Apple to pre-install Totok or GTFO, who really thinks that Apple isn't going to GTFO? What about the FBI asking for a backdoor in iMessage?

The binary choice here was between letting authoritarian governments push restrictions or not. Now that pretty much all of tech has started down this slope it's hard to see where we could draw a line in the sand.
Reminder, Stanford is taking down this course on March 26th, 2020. They let you download courses that are setup for download (this course is not, unfortunately).
Same. It was incredibly slow and loved to eat most of a GB of memory if I left its tab open. I once had it pop up a "would you recommend this product to others?" form that managed to introduce ~3 seconds of input latency on each keystroke for its text feedback area. Which, as you'll recall, is a basic HTML element you shouldn't need Javascript intercepting input to in the first place without one hell of a good reason. I was... not kind.

IIRC they had a blog post up about their brilliant NIH Javascript UI framework and if you are familiar with that kind of thing you could read between the lines and generate some good guesses about what was wrong with it.

Not that Jira is a ton better, especially with each heavier-and-worse-than-the-last redesign. Friggin' "web apps".

[EDIT] and for all that the workflow wasn't any better than anything else as far as I could tell. Our PMs who lived in it loved the draggy-droppy interface and hotkey-heavy workflow, but again, everyone (of their competitors) has that too. To me it always felt like working on someone else's messy desktop shared over VNC. I was afraid to touch anything for fear of accidentally performing some kind of write operation without noticing, and fucking things up.
How loud do all the software developers need to yell "use paper ballots" before people figure out that electronic counting (for quicker results) isn't a terrible idea, but electronic records and simply adding more technology to the system makes voting confirmation and integrity weaker.

This app had no reason to exist - there isn't a reason why they couldn't use almost any other approach to collect the results for publishing - there are very few numbers to keep track of and people are only looking for provisional numbers on election night anyways.
Learn to ride a motorcycle. It will change your life and make you happier. It’s not cheaper than therapy but definitely more fun.
You are misunderstanding what a full solution means and what the article is saying.

There are a systems of equations that allow us to model flight. But they are NOT a full model of flight characteristics, as a consequence of, like mentioned, lack of a full solution to the Navier Stokes equations

> The solutions of those equations and the output of the CFD simulations yield pressure-distribution predictions, airflow patterns and quantitative results that are the basis for today’s highly advanced aircraft designs. Still, they do not by themselves give a physical, qualitative explanation of lift.
"record" is used in the Haskell world, for example. Also ATS.
That's because that's about the level of "communication" that most physicists can manage with other humans.

Sorry. It's a lazy dunk. And an unfair one. But when someone tosses it up, I need to slam home the lob.
Humans and many other animals have a persistent world model. My eyes+brain reckons things don't disappear instantly even when I don't have a direct line of sight.
"Scale" in this case is 1,681 precincts, each with a handful of users (the election officials). I'm not sure that was the issue in this case.
It's extremely baity.
I worked with Scala fans, and with non-fans.

Fans love it because they code in VIM. Non-fans tend to have better tools and thus find Scala's tools very very lacking.
> It’s crazy that Java is still trying to catch up to Scala,

Or Haskell etc... Plenty of languages have product types.
>My toenail clippings have an inherently deflationary nature.

how can they be deflationary (unless you're dead, or don't have toes) when they're growing 24/7?
This isn't really "scale."

It needs to record something like a dozen numbers from each of the ~1,700 caucuses in the state. You could have used Excel as the database here with no problem.
I believe that your comment is spot-on. As one part of the population goes further and further towards living in a world where we get everything we need from a smartphone, another part of the population has figured out that this is the road to misery and is running quickly in the other direction, embracing stoicism, cold showers, and Crossfit workouts.

A podcast I listen to calls this "ordinary misery" and stresses the need to bring as much of it into our lives as we can stand.
Ask HN: What to do improve spoken English?
I keep thinking about grammar rules and words when speaking in English.
I get the joke, but c’mon...
It'd be cool to look at more signal statistics from the CPU plot.

It appears that Go has a lower CPU floor, but it's killed by the GC spikes, presumably due to the large cache mentioned by the author.

This is interesting to me. It suggests that Rust is better at scale than Go, and I would have thought with Go's mature concurrency model and implementation would have been optimized for such cases while Rust would shine in smaller services with CPU bound problems.

Great post!
Isn’t the better solution for that just improving game performance. If we can run Skyrim on refrigerators surely triple A companies can get out of their gross 200gb downloads and 16gb of ram usage for their games if properly incentivized...
> Why do people still dredge up Google's historical "don't be evil"?

Historical? It's not like it was 50 years ago.
If you think that's bad, how do you feel about the RNC outright cancelling primaries https://en.wikipedia.org/wiki/2020_Republican_Party_presiden... even in cases where there were at least two serious opponents?
WombatOAM seems similar:

https://www.erlang-solutions.com/products/wombatoam.html
This is one of multiple, we did not blog about this one, but switching a Python http service for analytics ingest that was purely CPU bound to rust resulted in a 90% reduction in compute required to power it. However, that's not too interesting because it's known that Python is slow haha.

We have 2 golang services left, one of them has a rewrite in rust in PR as of last week (as a fun side project an engineer wanted to try out.)

Additionally, as we move towards a more SOA internally, we plan to write more high velocity data services, and rust will be our language of choice for that.
Query your data lake directly from Slack
Minor nitpick: That already happened, Limbo is what happened when Bell Labs wrote Java.
I'm not sure what you mean by standard collections, but BTreeMap is in Rust's standard library.
Building UIs Using Android Jetpack Compose
> enum was always a reserved word in Java

Nope, i had to patch a bunch of codes because enum was not a reserved keyword until it was introduced in Java 5.
> extraordinarily unlikely if SHA256 is not itself completely broken (moreso than SHA1 already is

I was hoping I captured that by saying "very rarely". However, if SHA1 collisions can be made willingly, doesn't that mean that one can also willingly make a SHA1 hash that matches with the prefix of an existing SHA256 hash?
> As a friend from out that way put it, "its harder to be a consumer there, but easier to be a human".

This rings true but it depends on what kind of human you are (I lived in Montreal for many years and enjoyed it there, but did not see myself living there long term). It's easier to be lower middle class, an artist, a student, a chef, a government employee, etc. in Montreal, but if you're at all an ambitious human, Montreal has less for you.

Apart from the universities (there's one that is highly-ranked internationally), it's not the kind of city that attracts go-getters (exceptions exist of course -- the tech scene these days, though still not comparable to major U.S. cities, is much different from when I was there).

Montrealers feel less of an economic struggle (more joie-de-vivre and love of the simple life, rents are controlled, CoL is low), but the existential struggle to fit in (if you're not pur-laine Quebecois), to find community (if you don't speak French at near native levels) and to find meaningful work (if you're at the top of your profession) is far more pronounced if you're ambitious.

Being fully human (for me) means being able to express myself in one's work and having good relationships. For many Americans, finding these things in Montreal may be more challenging than say a place like Toronto.

On the other hand, Montreal is a way more interesting place to vacation than Toronto.
I have a lot of trouble finding first principles resources. For instance, I'm trying to build up my expertise in business intelligence / analytics. I have found it basically impossible to find anything that isn't at the "for dummies" and / or temporarily dominant technology level. Do you have strategies for finding these kinds of books?
Great Lakes Tectonic Zone
Go has a tool for this job.

https://golang.org/pkg/sync/#Pool
and London Cabbies
Quite a lot of reasons. I assume you asked that because you're thinking it's used to gather information on its users. That could be one of the many reasons. At least initially it was because Mozilla/Firefox didn't want to adopt a multi-process architecture.

In terms of strategic reasons, as a company that depends on people browsing on their websites other reasons are obvious: avoid lock in that could be pushed by third-party browser makers/competitors (say IE becomes the most popular and it implements proprietary extensions that work only on their websites[1]), ensure there exists a fast secure browser so that people can keep browsing even if everyone else stops making good browsers out there.

[1] Now before you go ahead and point out how Google proposes HTML/HTTP features that get implemented in their browsers and on the server side, all such features have public specification and source code, so anyone else could implement them too. This is very different from the IE days of yore, where MS was extending IE through ActiveX. ActiveX was developed in house and they were releasing binary plugins/SDKs to develop ActiveX plugins, effectively maintaining full control over it (one would have to develop ActiveX compatible technology from scratch if they wanted it open source, with Chrome all they have to do is fork the source code).
That would imply a drastic change to the language design. Essentially you are asking for 2 code generators (one for code managed by the go runtime and one managed by the programmer). It might be possible but it's most likely not gonna happen.
> If a player turns on a wallhack, what signal can the server use to figure out what's going on?

Don't take this the wrong way...but, is this serious?
I just checked, I see it on Chrome when fetching resources from google.com, youtube.com, gstatic.com, and googlesyndication.com.
How are you studying corporate finance? What are the canonical / first principles books?
Clearly not, if people are willing to hand out the same thing on paper. But they're not, for various reasons..
Location: Southern California
Remote: Yes
Willing to relocate: Yes
Technologies: Ruby/Rails React/Redux
Résumé/CV: Email for resume
Email: admin@knucks.io
"The leadership team is clearly professional and tech-savvy.."

And yet they failed miserably.

I'm so sick of this attitude. Leadership never takes the fall, it is always the underlings who get the blame.

Their important high visibility project failed. The leadership failed. When you fail, that means you did not perform in a competent way.
I had an extra Linode instance (Nanode 1GB: 1 CPU, 25GB Storage, 1GB RAM) laying around that I'd previously tried to manually set up a mailserver on. So I just reset it to the OS/version Mailinabox specifies, ran the install script and followed the rest of the instructions (https://mailinabox.email/guide.html)

It really doesn't need much, and the guide is very complete. Took me a Thursday evening plus some waiting for DNS propagation.
What if we use the exploit to add the new data but keep the sha1 the same? :)
Hazelcast/Hazelcast: Open-Source In-Memory Data Grid
I just tried it now on google.com, and it sent it in 6 requests. You can ctrl+f in developer tools in Chrome.
Bypassing CORS checks by "hiding" X-Client-Data: https://chromium.googlesource.com/chromium/src/+/f3ceca9d0fd...
The atrophy of personal cooking in the United States is a broad and pretty well documented phenomenon: "The percentage of daily energy consumed from home food sources and time spent in food preparation decreased significantly for all socioeconomic groups between 1965–1966 and 2007–2008" [1]

* https://www.theatlantic.com/health/archive/2019/10/work-its-...
* https://www.washingtonpost.com/news/wonk/wp/2015/03/05/the-s...
* https://hbr.org/2017/09/the-grocery-industry-confronts-a-new...
* [1] https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3639863/
It does sound like Discord's case was fairly extraordinary in terms of the degree of the spike:

> We kept digging and learned the spikes were huge not because of a massive amount of ready-to-free memory, but because the garbage collector needed to scan the entire LRU cache in order to determine if the memory was truly free from references.

So maybe this is one of those things that just doesn't come up in most cases? Maybe most services also generate enough garbage that that 2-minute maximum doesn't really come into play?
> conspiratorially, meaning speculatively

I'm only claiming that it is a convenient coincidence and I tend not to believe in those. I'm not talking absolute corruption. But I believe there is a buddy-buddy effect at the very least
Yea, exactly—you kind of answered your own question: I'm mortal. So like Bitcoin, there is a finite amount they will increase. That makes it a great investment opportunity, right?
Did they mention how much they were paying to content creators?

( Sorry dont have the time to read through it right now )
Air Travel and Disease
What are you defending or advocating here exactly? Are you justifying the forced detention by police of 9 year olds for participating in a school play?
I made this myself, feel free to provide any feedback or suggestions!

https://drive.google.com/open?id=13IHeFemwCxMYvpbadUM5d_8fLV...
I think that Googles' push is even worse. Just think about how many possible devices Microsoft could target back in the days. 300-500 million devices maybe?
Google not only invaded desktops in the past decades, but completely owns the Android platform, which comes bundled with Chrome and Google as the primary search engine. Desktops with Chrome plus the Android platform must be far more than 2-3 billion devices.
Whatever software you buy, there are usually some kind of minimum system requirements listed so people don't run it on some ancient potato and complain how it doesn't work.

It uses ~220Mb of RAM in total.
Replatforming to solve this problem was a bit silly in my opinion. The solution to the problem was "do fewer allocations" which can be done in any language.
It comes from a desire to run in the exact opposite direction as the JVM, which has options for every conceivable parameter. Go has gone through a lot of effort to keep the number of configurable GC parameters to 1.
> The reason behind this is so they could report total turnout numbers, something which was not previously reported.

No, the reason is because multiple campaigns (who tend to have precinct captains report the first and second alignment numbers and track how they are doing internally) complained about apparent inconsistencies in the final results in 2016, so the DNC required the additional figures to be tracked and reported officially with paper trails to provide transparency and confidence in the integrity of the results.
A BTreeMap should typically have O(n) memory usage, whereas a HashMap (depending on load factor) will usually have O(kn) memory usage, where k > 1. This is because a HashMap allocates the table into which it will store hashed values upfront (and when the load is too great), so it can't anticipate how many values may be added nor what sorts of collisions may occur at this time. Yes, collisions are typically stored as some allocate-per-item collection, but the desire of a HashMap is to avoid such collisions. A BTreeMap allocates for each new value.

Note that this explanation is a bit handwavy, as both data structures have numerous optimizations in production scenarios.
The 65816 was designed to Apple specifications which explains the annoying 64K blocks etc.

IMHO multiplexed address isn't a problem as it's simple logic to fix but having to keep track of 64K segments is more painful
Structs in other similar languages, for example, C#
Definitely. Like a good set of tools in the workshop, I love to buy new spirits every time I have a cocktail night with friends. I have a liquor cabinet full of strange aperitifs and whiskeys. It's very fun to learn. I should find an app that lets me build a virtual liquor cabinet and gives me ideas for new drinks that I can make with what I have.
ML definitely doesn't. Not a hierarchical system at all. There have been AIs which work like hierarchical control systems, but ML systems are almost the anti-pattern to that.
Thank you for putting this issue to rest. Now that you’ve emphatically declared your personal speculation to be true, I’m sure everyone else will stop with all their silly speculation.
Runbox.com
I was mostly curious about how wc handles spaces and whether ignoring non-ascii spaces brings me closer or farther from what wc does. So I focused on that, and this specific printable characters handling didn't caught my eye.

On a meta level, I wasn't even considering that the notion of a word might be different from "a sequence of characters that aren't space characters".

Live and learn indeed.
C# records:

https://github.com/dotnet/roslyn/blob/features/records/docs/...

It's a struct or class but you only define the data members and the compiler auto-generates boiler plate like constructors, equality tests, etc.
I used to subscribe to the pop Austrian hard money ideology. Watching cryptocurrency devolve into a HODL cult and gambling casino is one of the things that changed my mind. I saw by watching the evolution of Bitcoin that Keynes was right, at least about that particular topic. Everything Keynesian and modern monetary theorists said would happen happened, and for easy to understand reasons. In science we call that a correct prediction.

What I saw in 2017 was a giant bubble driven by the greater fool theory followed by a complete abandonment of cryptocurrency as a payment method. This abandonment actually coincides with the bubble as this boom-bust cycle made it very inconvenient to use as a currency.

All this accomplished was to make early adopters rich at the expense of later adopters, like any Ponzi. (Again I don't think it was an intentional scam, but unfolded as a Ponzi for structural reasons.) Today I am hard pressed to find anyone who accepts Bitcoin for anything but drugs and black/grey market stuff, and those people have a special need that overcomes the currency's downsides as such.

Today the cryptocurrency world seems like nothing but scams and even those are fading away. Most articles I see about it are scammy.

Bitcoin is very unlike gold. Gold costs little to nothing to maintain while BTC has a huge electricity cost. That must be slowly consuming the actual value in the ecosystem. Eventually nothing will be left but Tethers and other fictional tokens. When those collapse the music will be over.
checked in objects in a sync pool gets cleaned up on GC. It used to clean the whole pool, but now I think it does half each GC cycle. If you want to say "objects checked in should live here forever and not free themselves unless I want them to" sync pool is not the tool for the job.
Excellent write up, and effective argument for Rust in this application and others. My cynical side sums it up as:

"Go sucked for us because we refused to own our tooling and make a special allocator for this service. Switching to Rust forced us to do that, and life got better"
Well, this response sounds a bit more measured than what you originally wrote but it is still seems a bit weird. For one thing, sometimes people consume less just because they do not need as much in a particular year. E.g., a person might buy a new car every ten years. Is he poorer in the nine years that he did not buy a car than in the one year that he did? That the amount that a person consumes may fluctuate is not very important nor should anyone start panicking about it nor as a signal that it is necessary to go into some fierce kind of competition.
I was in the shower this morning thinking about how I would solve this, and something like this is exactly what I would have done. Use simple, familiar, battle tested technology to do the heavy lifting.