skysight-inc/HackerNews huggingface dataset:
> hype that brew, buildkit, linuxkit, etc all seem to get

I'm not that much in devops/containers guy, bit I'm not aware about linuxkit alternative in the Linux world, care to elaborate?
Isn't making accusations of theft and industrial espionage is unpleasant? This kind of accusation in the industry crops up time and time again and I don't think it should be accepted unchallenged, neither between small companies, or large ones.

I've seen this claims so many times, people claiming some investors took their deck and gave it to their portfolio companies, people claiming another company copied them. The instances where this actually happens usually occurs when an already proven market product is copied (e.g. look at FB copying Snapchat recently), I've never seen it with a pre-success product.

Think of it this way, if I had the idea for capacitive touch smart screen phone in 2004 and met with Apple, could I claim they stole the iPhone from me? There is so much more to an iPhone than just the 'idea'.

Now, if you have some non-obvious algorithm, which if you asked a senior engineer to design, could not come up with it in a few weeks, my opinion would be different. Like if you invented a fundamental new type of homomorphic encryption, which, could be explained on a single page, but enables a fundamentally new type of distributed computing.

There are indeed, some ideas which are very 'dense' in value purely by their description alone, but they're few and far between.

In any case, online forums are rife with people making conspiratorial claims, in economics, in politics, everywhere, and I think a technical community like HN should demand a higher degree of evidence.
Only gripe is that their medical care surely can't be that good relying on natural "medicine". Though of course, they all qualify for medicaid
> What share of profits though?

The share that goes into your yearly salary, bonuses, raises, and benefits (like the 401k match you disregard).

They owe you nothing else, and each employee is free to ask for more or leave for greener pastures if they are unhappy.
Making Buildings Smarter
For a quick args reminder, without having to dig through man pages, try tldr: https://tldr.sh/
Hard Disk Drive (HDD) vs. Solid State Drive (SSD): What’s the Diff?
I’m still amazed that we consider a 1-2h commute acceptable.
That's why it stuck half way, most likely. Shredders are unreliable but I wouldn't call them complicated. Small ones are expense and it only had to work once.
Gotcha. I guess I was thinking about the new FIDO standard on the new Yubis.
Well, occasionally you'll run across stuff like this. Because there is a deep correspondence between functions, types, and logic and Haskell has a rich academic tradition that extends alongside its more pragmatic engineering tradition, you get these curious examples of folks transcribing mathematical or logical ideas into code.

We don't use loeb very often (and it's not the abstraction of choice to build a spreadsheet; a memoized comonad is still quite popular idea there), but moeb (or rather, rewriting it as fix) comes up with recursive uses of functions and can be quite elegant.

In cases like this, you can imagine to recognize perfomance benefits on instances of moeb, and if you can have you optimizer turn other loops into something like moeb then you can optimize a wide, wide range of problems. It's a mistake to think it's "meant" for anything. It's almost a joke of a name, Löb's theorem is about how self-referential systems can't be sound.

It's worth noting though that the story doesn't end there. There is a kind of extraction of `fix` (moeb id) that can be expressed at the level of types (often called Fix). Fix has lots of uses (because recursive types are our bread and butter), but one of the most interesting is called "Recursion Schemes." In recursion schemes, we recognize that by assuming certain specific properties of a data structure (usually, that it is a functor), we can generalize it and then use that generalization to write functions to recurse along that data structure without ever writing recursive code along the data structure!

It's wild, but functional programming really can slice stuff apart in a way that nothing else reliably does. Imagine if instead of you having to write a unique foldl/reduce (or unfold, or even more esoteric things) for your data structures, you could simply get it for free if you write a single function to explain the recursion termination and make your data structure a functor.
This is really cool.

My own ideology is likely incompatible with this sort of living, but I fully support it!

I live about 90 minutes SW of East Wind. This truly is one of the most beautiful areas of the country, and a great place to live a rural life.
Go's scheduler is not preemptive, which means that sometimes Goroutines can hog the processor. If loops don't contain function calls, or allocate memory, or other preemption points, they can prevent other goroutines from running. A simple example is:

package main
func main() {
go println("I ran")
for {}
}

If you run with:

GOMAXPROCS=1 go run main.go

It will never print the statement. This doesn't come up frequently in practice, but Linux does not suffer from this case.
From what I hear from the soldiers I know: far too many.
Is there a reason why we don't see many hosted webmail clients? Something like gmail but for anything else?
If they have $600MM revenue, then even applying a modest 5x multiplier would give them a $3B valuation right? And 10x might be closer to what they might actually fetch if they were to ever sell.
> I wonder what the natural limit for this sort of arrangement is.

For communal arrangements like this, I think the generally accepted value is around 200. See "Dunbar's Number": https://en.wikipedia.org/wiki/Dunbar%27s_number
Something designed by humans can have design flaws.
When your assumption is also your conclusion, you have what's called a "circular argument".

It's obviously true, but says nothing about anything outside itself.
I'm sure an active lifestyle leads to less money spent on medical care, but the much larger reason would be the expected youth of their members. All the photos were of apparently younger healthy people. When they start getting older, medical issues will show up and the cost of medical care would skyrocket. Now it's pretty clear to me that in the us we should provide medical care as a basic human right for all citizens. Their annual cost of $686.82 per person is probably less than my monthly cost for a small family.
Yeah, but why? That sounds awful
I would not consider that acceptable. I guess the assumption is that you would commute into Toronto for work. But that is not what I was talking about. I meant that there were places close by that one could have a life. For example, Kitchener-Waterloo, London, Hamilton. All these places have way more affordable housing and job opportunities.
TypeScript, Flow, and ReasonReact all support defining types for props. React PropTypes are completely optional and only give warnings in development, so I you’re using a language or language extension with compile-time type-checking you shouldn’t need PropTypes.
I recognize that it's a very different philosophy, but first-class support for interpolated HTML made porting existing applications very easy in Vue.
Sure, you can have millions of 1MB stacks, but unless you have terabytes of RAM performance is going to suffer.

If you write your app with more explicit state rather than implicit state (bound up in the stack), such as by writing a C10K style callback-hell, thread-per-CPU application, you're going to get much much better performance. The reason is that you'll be using less memory per-client, which means fewer cache fills to service any one client, which means less cache pressure, all of which means more performance.

The key point is that thread-per-client applications are just very inefficient in terms of memory use. The reason is that application state gets bound up in large stacks. Whereas if the programmer takes the time to make application state explicit (e.g., as in the context arguments to callbacks, or as in context structures closed over by callback closures) then the program's per-client footprint can shrink greatly.

Writing memory-efficient code is difficult. But it is necessary in order to get decent throughput and scale.
This is a really ideal use for advance medical directives to allow people to choose what kind of care they want before they lose their cognitive abilities.

For example, for myself, while I'm young and healthy, I want the world to know: if I get dementia someday, LIE TO ME. Lie your ass off. If I can't think for myself, I just want to be kept happy in a blissful illusion. If you can get an AI robot to keep me as a pet, that would be ideal.
There is no regulation requiring private pilots obtain insurance. Such a requirement comes from the bank whose loan made it possible to acquire said plane; and most any airport with hangars will require evidence of it. I'm not sure what buying insurance does. It certainly provides no standardization of rules or training.

Have you read any FARs? There are FARs for flying kites and ultralights. What about any of that do you think is so complicated? Feel free to use a regulation in FAR 91 as an example for something onerous that insurance can obviate. One of my favorite regulations in these UAV conversations is:

§ 91.119 Minimum safe altitudes: General.
Except when necessary for takeoff or landing, no person may operate an aircraft below the following altitudes:
(a)Anywhere. An altitude allowing, if a power unit fails, an emergency landing without undue hazard to persons or property on the surface.

There is no reason at all why a drone should ever hurt someone, other than sheer incompetency and lack of imagination. Now where are you going to get that imagination? And how are you going to obtain competency? Insurance doesn't get you either of those things.
Always been a fan of MailChimp, kudos to them for bootstrapping all the way to this point. Few can say the same. They started out building a product for their website customers and brought some wit and life to an unsexy market.
If it put the forum at risk, they wouldn’t put the “web” link after the title of the post, which basically accomplishes the same thing. This kind of thing is officially sanctioned.
When I was at google people were against building a censored search engine for China, this caused a lot of arguing before they pulled out the first time.
Shutting down consumer Google+ is the least important part of this post. Hardly anyone used that. The privacy changes they are making for everything else are much more important. More granular control of app permissions is a big deal.

Overall I'm not sure how to feel because I didn't realize how bad it was. How many apps have required access to my contacts for legitimate reasons, and I wasn't aware I was providing access to our interaction data?

> Finding 4: When users grant SMS, Contacts and Phone permissions to Android apps, they do so with certain use cases in mind.

> Action 4: We are limiting apps’ ability to receive Call Log and SMS permissions on Android devices, and are no longer making contact interaction data available via the Android Contacts API.
When you have terabytes of RAM you want large pages anyways.
>identifies the shape of people within its 140-degree field of view and pans and zooms to make sure they’re all always in the frame.

Assuming the videos produced can go places other than just Facebook I could see this being useful for youtubers and other people who produce videos on their own. Or at least, the autopan/zoom technology will be useful but possibly in another device.

No more interrupting your yoga demonstration to move the camera because your head is now out of shot.

No more realizing that half of your face was periodically out of shot during the 10 minute review/monologue/whatever that you just finished recording.
Worksnaps Download
When I have my occasional frustrations with tech or the world, this is exactly the sort of place I'd love to escape to! Though I'm probably getting a bit old for dropping out. :)
So, as long as I'm in my drone, it's fine. If I fly FPV, though, woah hold on, too dangerous!
> In established engineering disciplines a 12% improvement, easily obtained, is never considered marginal

That's right, but "improvement" doesn't necessarily mean performance. Adding a GC would yield more than 12% reduction in vulnerabilities and bug count, which are also "improvements".
Surely there (should be) a duty of care over other people's data - and the loss here is actionable and costly.

I am a great believer in regulation through being sued to smithereens
Maybe I was being too Socratic? But, philosophy/logic was never my strong suit. Perhaps that's why I'm an engineer flirting with mediocrity...
> The engine in any normal car is totally incompressible

This is just an interesting aside note, but my mother was recently involved in a frontal collision while driving her 2016 hyundai i30. In what was approximately a 60-70 kph impact with another car, it was enough to shatter the aluminium engine block in several places, and the engine sort of crushed flat.

I'd never seen a block do that before, at least not in a relatively low speed collision. Wish I'd taken some photos of it. But it made me wonder if modern cylinder block design incorporates any failure points in their design for such a scenario...

Of course maybe it could have just come down to the randomness of crash dynamics.
Maybe because of international date lines, one person's Saturday is another's Friday, so different days means someone is always working?
>. Average time on market is up to about two weeks.

Still insane.
What percentage of Intel users do care about running deep learning system. And of those users, how many care it as little to not get a GPU for that. Both Intel and AMD processors can never come close to GPUs for deep learning operations like matrix-vector multiplication.
I wish non-css animations were easier!

If you have any animation where you want to tween the state yourself (say changing position as a function of time), then that requires updating the state at 60fps or whatever requestAnimationFrame goes at.

It feels philosophically wrong to do that under the declarative paradigm of react. React is supposed to be responsible for taking the state and "transitioning"(or diffing) the dom to the new state. By doing the tweening myself, it feels like I am polluting the state with a lot of transient junk (like current progress time, start/end keyframe states, entering/exiting elements, etc). This is especially bad if you want to be a redux purist and throw all my state into a global state! But at the same time I don't know where else I can put it.

I've completely avoided doing anything more complicated than a CSS transition since coming to react (long ago, which also means there could be better 3rd party libraries that solves this problem now that I don't know of). But is there a better way to make this work out of the box?
App Store is the primary package manager on Mac (which can be used from CLI). Homebrew is the defacto standard complimentary package manager on Mac. Whether you like the fact it is the defacto standard or not is irrelevant.
It might not be the official package manager, but what was claimed is that it is the primary package manager. I’d wager that Homebrew is more used than... I don’t even remember what you mentioned as the other one as I’ve never heard of it before and have never used it.
I'm pretty sure that for $10 billion, they could have gotten whatever certifications they needed by plowing resources into it. Elon Musk went through the same to get government contracts that certification requirements tailor made for Boeing/Lockheed.

Corporations are not people. Judge them by their actions, in the end, what matters is what happened, not intent. Almost every public institution's actions are always ascribed by some as driven by money or power, or others by high minded values.

The employees at a company can have high minded values. Even the company culture can have high minded values. But in the end, financial decisions made by companies are amoral, and what matters is, what the decisions actually were, not whether the executives were pressured into it, because ultimately, there is pressure on all sides from all stakeholders.

Giving up on $10 billion, no matter how you slice it, is a huge hit. They could have fought for it, but decided not to, based on whatever pressures they were reacting too. That's a win.
Stack copying strikes me as oh so wrong...

Anyways, allocating frames or stacks on the heap doesn't seem like it should require teaching the GC all that much. They would essentially be objects of such a class that the GC can traverse them... just like a normal stack (from current frame through return closures), which it already has to know how to do. Their location shouldn't be so important.
> The trend in the new economy is for a large percentage of people to be discarded like rubbish

This trend started over a century ago. As mass production took over, skilled labor (artisans and tradesmen) were replaced with people who may as well have been machines (for all their employers cared). Scientific management led to a hyper-micromanaged workforce (at least as a goal) where each worker was instructed in the most efficient way to do their job and weren't expected to deviate.

Interestingly, Taylor saw some of the same things Deming did but came to very different conclusions about how to resolve the issues. Taylor effectively worked to disempower workers (failing to recognize that this was also what led to their demotivation and poor performance) while Deming worked to empower workers (recognizing that this led to pride in their work and better performance).

The problem has been that, while Taylorism has been discredited for nearly a century, his influence remains. It moved from the factory floor into the office.

"If only you devs would do everything right, we could always ship on time with zero defects." -- An almost verbatim quote from a former supervisor, not ironically

Many people in management roles are woefully underprepared for it. They operate under the same flawed belief as Taylor: If only the stupid employees would do precisely what the smart people wrote down in the work instructions (NB: often not actually written down, or not matching reality if written down) then this company would be awesome. Why is it so hard to do a travel voucher (ignoring that the employee travels once every 2-3 years and the voucher forms have changed since the last time)?

> Executives are rewarded for doing things this way because it superficially looks like they are saving money, but the resulting productivity cut ends up reducing profitability.

From understanding Lean, there are costs you can cut (things which aren't value added), and costs you oughtn't cut (or shouldn't cut much). But it's easy to recognize when someone is doing work which directly adds value (writing a line of code, properly aligning the mold and the sheet metal). It's hard to recognize indirect value and costs. I had (but removed, it got long) an analysis of how much we lose in my office to time spent managing travel each year. The swing would be from losing over $100k/year to making over $100k just by hiring one full-time travel specialist (we don't charge the customers for the time spent dealing with travel agents so the engineers' time is lost revenue, a single in-house travel specialist could handle the local office with ease and free up those engineer-hours to be charged to the customer for actual work).
You're not getting married to them. You can leave if what you said is true. And can read former employee exit reviews
90k is considered very low today overall. The average new grad gets like ~150ish, give or take 20. If you get a big signing bonus like they do at Facebook it goes up to 225k+ TC for the first year. My friend graduating this year just signed an offer for ~210k first year at a trading company.

It’s definutely worth it to chase the money out of undergrad IMHO.
I agree, it is a good example, and hey I learned something.

I really appreciate that you're taking the time to respond to all the feedback in this thread and wade through everyone's nitpicks. Looking forward to more articles.
It does make sense. These are all techniques for dealing with async events (I/O). Thread-per-client, cooperative multitasking / co-routines with co-routine-per-client, ... all the way to C10K-style thread-per-CPU callback hell.
Make Your Career in Data Management and Data Analysis with Advanced Excel Course
Domainking Affiliate Reviews, How to Join and Make Money with Them
All of these can be formulated by MIPS, so I didn't understand the point either.
And now, let's repeat the Non-Conformist Oath!
By the way, with backblaze you can specify your own key. They just can't help you if you forget, and you loose all your data :)
Why some people don’t tip their Uber drivers
The "Real Name" policy at the start was a huge mistake that hurt them. Early adopters were overwhelmingly digital natives who immediately felt the product wasn't for them.
Yes, with a per capita expenditure of $700 it's safe to say they aren't covering any serious illness. "Our costs are low because we have a healthy lifestyle" -- more like the costs are low because no one has any serious illness like cancer.
they are close to releasing desktop based application.
Author here, thanks for reading through the paper.

I think the confusion is because I wrote the pseudocode in a functional programming style so there are a few keywords being used which are causing confusion. ( Which i mentioned in the paper. )

The insert function uses the left.key and right.key to calculate the minimum distance for the key to be inserted.
And there is a cond statement which will execute only of the conditions.

And the pseudocode I wrote was in a functional programming style so the arguments in both the functions are same, just the name of the last argument is different, i.e root and leaf as I wanted to imply pattern matching happens.

The interesting part of the paper is that it outlines a new way to create a Sparse merkle tree, which inherently becomes ordered due to the insertion algorithm used. This ordered property is exploited to find the non-membership proof in a new way which does not require empty hashes and is compact. History independence also follows from the insertion algorithm used.

I'll be releasing an implementation for this paper soon so the proofs can be checked empirically as well.
Many journals also have a 10 page maximum. This is why one occasionally sees multiple versions of a paper.
Say you write a server, one thread, one client at a time. Easy peasy, terrible throughput and performance. Well, making it thread-per-client is trivial! Easy peasy, much better throughput and performance, but terrible at scale.

Now you want to scale, so you need to abandon the thread-per-client, everything-is-synchronous-looking model and start doing async I/O the hard way (perhaps with await, perhaps as callback hell). That's a huge refactor / re-write exercise.

But you'd be surprised how many thread-per-client apps exist. It's so easy to write them...
Another interesting things about Japan's traffic lights: as far as I can tell, they don't detect whether cars are waiting for the light. Last time I visited, I was waiting for ages for the light to change along with other cars, and light wouldn't change early even if there were no cars going through the intersection.
Thank goodness, not another overnight success story:

Mailchimp, named after their most popular ­e-card character, launched in 2001 and remained a side project for several years, earning a few thousand dollars a month. Then in 2007, when it hit 10,000 users, the two decided to commit full-time.