skysight-inc/HackerNews huggingface dataset:
My experience with recursion schemes was mixed. I applied Matryoshka[1] to a problem involving an algebra of boolean operations on polygons. The implementation was elegant in so far as the essential recursion was lifted out of many separate functions and consolidated. Recursion is always a tricky thing to get right so using recursion schemes avoided an entire class of errors and the implementation was rock solid.

The challenge became one of communication. Whereas looping and branching structures are considered fundamental building blocks recursion schemes are not. Team members immediately hit a wall when encountering ana/cata/hylo/*-morphisms. It's like taking a walk through your neighborhood turning a corner and finding an alien artifact. It's also a case of "the math people got there first" ie: the nomenclature hurts rather than helps understanding. Many times during conversations I wondered how branching and loop control structures were received when introduced decades ago. Were they dismissed or embraced and how much of this was because they were given nice names (if/else/for/while)?

In hindsight I'm disappointed that I wasn't exposed to recursion schemes as an undergrad. Recursion schemes are exactly the kind of abstraction found elsewhere in computer science. Also I would also love to see a language with recursion schemes given the same first-class support as the branching and looping constructs we see in almost all languages today.

[1] - https://github.com/slamdata/matryoshka
These days parrots can talk like humans but humans will not RTFA.
I think the concept can be applied in context at a broader level. In Einstein’s time, there was no Internet full of distractions, apps, notifications, email, etc, and TV and radio was there but not nearly as compelling as it is today. So one could argue that the activity of sitting around thinking about nothing for a while (aka being bored) was baked into the normal daily experience. It’s only in modern times do we need to invent the “activity” of mindfulness to regain that pattern.
Just when I think it's impossible for an HN thread to be sidejacked into an aesthetics discussion. Well played, HN.
Parrots are extremely social. Their colonies are complex. They have relatively large brains.

I’ve never owned, but have friends who do, and parrots seem like more work than most pets.

https://www.nytimes.com/2016/03/22/science/parrots-are-a-lot...
Much of the criticism relating to psychology is the difference between the expectation of the hype and the correctness & context of the models & research; such as applying the success & authority of other fields of science.

What may apply in one context does not apply in another context. Fundamental matters such as qualia vs quanta also apply. For example, one person may act differently in the same situation depending on how much energy one has & what mood that person is in.

In chemistry, one can create systems of limited scope (a single chemical reaction). In psychology, it's inherently more difficult to isolate variables (in some contexts it's impossible) due to the complexity of the essence of the domain & the limited information within the model definitions. The more information required of a model, the more expensive it will be to apply.

Another issue is the domain language is always changing. Disorders are recategorized on a yearly basis. Some disorders also act as a catchall for symptoms which may have different causes.

One can also argue that the expectations of others (e.g. the greater society) is "sick" & projects it's sickness onto individuals that do not fit it's criteria of "good" behavior. Despite the numbers, there's going to be unavoidable subjectivity & cultural/individual presuppositions in the sciences.
Parrot time can also just be letting him sit on my shoulder while I am writing or coding, or make sure he is near us when we watch a movie after dinner. I didn’t intend to say that I have to be scratching his head a few hours a day, although he would be fine with that. Also my wife doesn’t work and our parrot is near her desk at home during the day. He basically likes to have someone in the room with him.
Syntactically, Matlab is closer to traditional languages. Where it excels at math is that you can do all sorts of things like solving matrices automatically. APL can invert small matrices, but can't automatically find the best way to solve it like Matlab will do. APL has great mathematical notation, but is missing the math libraries you typically need to do real math work (optimization solvers) which Matlab has via toolboxes and Mathematica has builtin.
Rebranding is cheap these days.
They don’t use those instructions because unsigned integers in C are supposed to wrap.
Meanwhile France is 80% nuclear power mix, and contained costs by building fleets of similar reactors. US construction industry is the issue here.
> It was a free download for decades before being open sourced.

And it was always the support contracts even more than the hardware sales that kept them going. Starting to nickel and dime for software licenses too wasn't an option on the table for them.
why do you think that’s likely? seems a stretch to reach that conclusion.
Top Hot Consumer Trends for 2019
The same concept was also a part of one episode of Origin, the show by youtube.
Ask yourself why you want to it?

There so many excellent systems available that are most likely better than whatever you write and which are available for use right now.
Care to share one of those rankings? I looked at quite a few and couldn’t find any ranking Indianapolis in the top 20.
On a related note, can someone elaborate on the performance of using sockets. I would assume given that it's on the same machine that there wouldn't be that big of a performance hit. Especially if the data being passed was done in big chunks to avoid the overhead of whatever protocol was being used.

I know it's not the point of the article, i am just wondering about it for curiosity's sake.
An alternative explanation I've read for that chart is that fewer people need to search for it - the app is already installed.
Airbnb and Slack are considering untraditional IPOs
A digital assistant becoming a bird's companion feels like a perfect Disney/Pixar plot. It must either have been rejected previously or be in the works.

Spoiler: the bird accidentally resets or damages the assistant, but manages to get it back up, perhaps with the unwitting help of another digital assistant.
On Reddit, vigilante detectives are uncovering crowdfunding scams
In the states, if you're known for scientific misconduct, will you get a job at a a state school?
Creating an empty iterator of a certain type in Rust
I could not possibly disagree more strongly. Linux's kernel has some problems but it is mostly ok. Userspace is where everything has gone horribly horribly wrong in Linux.
That's not the way the Facebook user base and revenue has moved. But of course, why would anyone already on Facebook search for it?
Or maybe not.

https://www.pymnts.com/news/security-and-risk/2018/consumers...
Pre 3.5.0 zookeeper reconfiguration of a running cluster was also much harder - that was a significant discussion point on Kubernetes when we had the etcd vs (anything) discussions early after open sourcing.

I still think etcd total ordering over history also made reasoning about changes in the system while we were writing the first versions of the controllers and caches and list-watch loops. ZK had partial order, and I was leery of that at the time.
There are many games for cats on tablets. Scratch the mouse/fish etc. From what I've seen on YouTube cats love it.
You're not the only one.

Some time ago I worked with a bunch of people who staked their careers on moving everything to AWS and converting it to serverless architecture. Here is just one example of how fishy it was. They used Dynamo. During presentations to the outgroup, they constatly praised Dynamo as being flexible, scalable and fast. However, internally they constantly struggled with various limitations of the database, from limitations of indexing to not being able to get certain types of metadata.

My point is, the architecture they were designing was heavily bent around Dynamo's strength and weaknesses. Considering how extreme and peculiar those strength and weaknesses are, switching to another database would require heavy re-engineering of the rest of their architecture, much more so than, say, switching between Oracle, MS SQL and Postgress.
For Windows and Macs I've found Backblaze to be the best there is.

Their $5 a month plan for unlimited storage makes sense if you have more than 1TB of data to store and is a set and forget tool.

If your backups will be smaller than 1TB it's much cheaper to use Backblaze B2 or Amazon S3 for storage.

You can set up an automated full system backup using scheduled jobs via either duplicity, borg, duplicati or duplicacy. All of them are great tools. I've yet to try out restic.
Hmm, http://elefen.org should work.
Really? It doesn't take much to see that he used the opposite of that advice in order to make sure he was attentative to new hires insights and to criticism's about his own code.

Everytime someone comes up and says his code sucks he remembers being a young engineer admonished for making someone's code better, and instead of getting defensive, he listens.
As far as “bottlenecks”.

Almost all applications have data separate from code. Most implementations don’t run their applications on the same server as their databases.

Most app servers shouldn’t be “caching state locally” anyway. Once you do that it makes scaling horizontally harder - you have to
Implement sticky sessions.

And in all practicality, I would assume that most people are using EBS for their storage which is network attached storage.

Two lambda backed microservices work together just like any other microservices - via known urls and over https.
No, it is also about writing fancy stuff in your CV.
I think “bdfl” and “exclusive corporate sponsor” are 2 distinct issues. I was addressing “bdfl vs. democratic leadership”. I personally don’t think it matters where the bdfl is employed in the early days of a project, there are examples of wildly successful projects with and without an exclusive corporate sponsor.
Also, make full disk clones using something like Clonezilla or Macrium Reflect. That way you can return to a fully function system without the need to reinstall or re-setup everything on your system.
have done.
Microsoft Surface Go with 128GB SSD, 8GB RAM Launched in India
I agree with this. They are punishing those who are using fake CVs, falsifying data, fake resumes. We don’t have much of a problem here with that and it’s easy to do solid background checks and ethics are just higher. In that environment this may be a great solution. They aren’t arresting or jailing anyone and this in my opinion is an ample threat to prevent would be borderline cheaters to think twice.

There is far more temptation to cheat when money, job, promotion is on the line and you have no social welfare to fall back on. False scientific data worsens the country’s image and threatens lives etc.

We have our own deep deep problems with research but that’s another discussion.
They were “independent” countries, so they had more freedom. Of course, no travel to the West, lots of bullshit, but still free. Countries incorporated in Soviet Union were blindly following orders from Moscow.
Properties are not the same thing as attributes though. If `A.b` is a property (has a __get__ method associated with it), then this could easily break your code because `A.b` is supposed to change values. If it's an attribute that stays the same, then yeah I'll grant you that it could speed things up if it's being accessed frequently in a loop. There's not really any way for Python to tell if it can be optimized statically.

https://ideone.com/4R0suA
I also like to follow #3 for a full system backup. Additionally, I take this onto a drive that I can just drop into the laptop and be running again instantly. Some pros and cons of the approach:

Pros:

A. I do not have to trust the restore process. That is an issue specially with #1, where testing whether a restore will actually work is hard [1]. I have had cases when I had successful backups but when needed, the restore gave an instant non-helpful error message and the support staff was equally non-helpful. They already have the EULA set to save themselves under such scenarios.

B. I use two hard disks ideally bought at two years offset wrt each other. Hard disks have a life of typically four years. When the laptop drive fails, I swap it with the backup drive and go buy a new drive to use as backup from that point on.

Cons:

A. Process is time-consuming. It is also error-prone, so presents a large cognitive load. As a result, I always use #1 as the regular backup method, on local drives or cloud.

B. The system would sometimes fail to "boot" from the backup, but this has always been just a matter of fixing the master boot record using Windows disks, stressful and time-consuming nevertheless. Theoretically, Windows piracy prrotection can also trigger from the hardware change, but it never has since there is some allowance for exactly these type of fair situations.

[1] Even with #1, the local backup method I use is uncompressed copies of the files, so that the restore process is plain file copying also. There are many free tools to manage this incrementally like FreeFileSync, Syncback Freeware, etc.
> For the longest time I assumed MS would buy Ubuntu.

Microsoft was apparently one of the candidates that was in talks to buy Red Hat.

https://www.businessinsider.com/red-hat-deal-talks-with-amaz...

According to the article, they eventually dropped out because of anti-trust concerns.
Well, you can expect it might take some time to gain adoption for an idea which has such a profound and extensive impact on many areas of life, and not just software.

Bitcoin has changed the way the world thinks about money in just 10 years. I wouldn't call that lagging. It seems to me that it is leading.
Maybe "hates" isn't the right term regarding literary subtlety. Perhaps, "cannot comprehend" would be better:

https://news.ycombinator.com/item?id=18689608
When I think about those I consider A players in the C# world - Anders Hejlsberg or Jon Skeet - I absolutely do not see them capable of that behavior.
>you have to Implement sticky sessions.

There is more to the world than serving HTTP requests.
The social score in China is even worse than in Black Mirror, it defines everything you can access from bank, education, job, health, transport , social relationships, etc.

It is not a legal score, it is a social score (both in theory and in practice)

I completely agree that it is stupid to send non-dangerous people to jail, but we should punish them with fines and possibly specific job restrictions decided on a per-case basis by a tribunal if there is a clear danger, but not by restricting their every aspect of their private, public, social and professional life.
MNT Reform: A Modular, Open Source DIY Laptop
You can list multiple scripts:

use utf8 ("Greek", "Cyrillic");

This took me a while, but I see how my original post was ambiguous.
The pre-requisite here is that you first enumerate a fully complete spec of all behavior that your clients believe it should have. This seems too high a burden for what you're trying to achieve.

My experience has seen it work well as either 1) bottom-up: pick a small enough section of the codebase such that you can fully understand it, then rewrite just that piece, repeat until complete to get an exact copy of your existing application or 2) top-down: you write a new application from scratch completely, starting with understanding what your business's goals are and how to best serve your clients
>Cloudflare workers are already more like “shipping code to data.”, or " the customer" in this case.

That's shipping code further from the data, unless you store all of your data on your customers' hardware.
I was classically autistic, but identified eventually that if I was supposed to do something (use green fingerpaint) it created a strong anxiety response, but if I was simply allowed to do something (fingerpaint however I wanted to) there was no anxiety.

I learned to put dishes away by just putting one away, or moving a group from one spot to another, then making another move, but never saying "I'll put them all away" as that created anxiety.
Golang interfaces
Implementation details, not conceptual ones
No, it just had a very potent effect once we placed it on the floor near them. Particularly on the male who was the larger, dominant cat of the house. There were two mature siblings from the same litter, a large male and petite female.

They were both excited as usual at first, but then the male became very aggressive. Ferociously, with all his claws out, he hunkered low straddling the sprig, digging all claws deep into the carpet while systematically ripping every bud from the sprig using his mouth, and eating them.

The female ran to the furthest bedroom and hid.

He foamed from the mouth, and became somewhat feral for the next ~20 minutes. Not towards the people, just kind of on display to nobody in particular. It was fascinating to watch.
> as far as I know we were the first people to release an open-source set of differentiable solvers using reverse-mode adjoint sensitivities

Would the DifferentialEquations.jl work in the Julia community qualify? As I understand it for the pure Julia solvers you can run them through autodiff to differentiate with respect to the parameters. Chris Rackauckas has talked a lot about how cool it is that he can take his solvers that were not written to be AD-aware and use somebody else’s AD package that’s not specialized for diff eqs, and combined you get differentialable diff eqs.
So, in my examples, nothing forces you, in the strictest sense, to take the bus instead of walking. And in Chess nothing forces you in the strictest sense to not make a move that immediately loses.

So perhaps loosen your grip and understand what the OP was saying?
I made same mistake, I saw how old system underperformed and that I could make it better, faster, more stable and bring higher profit.

When I presented that my boss, next I know I’m in room with HR, my bosse’s boss and technical lead (who was practically executive director), to my surprise boss started conversation with “your actions concerning me...”
they told me to give all the related code, documents and remove everything from my computer. After that incident I never got promoted, my annual bonus was always 50% of everyone’s. No one in the team wanted to talk to me, I was excluded from any design meetings. Eventually my whole team got promoted to principal engineers and all new comers were one level above me. That was the worst 4 years in my life ( I had to work for them because of the work visa)
You're not the only one, the paper mentions this too :)

> As a result, serverless computing today is at best a simple and powerful way to run embarrassingly parallel computations or harness proprietary services. At worst, it can be viewed as a cynical effort to lock users into those services and lock out innovation
I'll give you two reasons:

1) It's not your code, it belongs to the company.

2) If you can't accept changes to code you worked on (NOT "your code"), you're unlikely to improve.

I agree these are not absolutes. It might be that you understand the subtleties of some particular device / library / whatever much better than other people, and their changes to the code you wrote with those quirks in mind are bad because of their lack of depth. Talk to them, or better yet use meaningful names / comments in the code so that they understand why you wrote it that way.
I am using Zoolz lifetime plan with 1TB space for backup (due to compression, it is handling about 3 TB of data), bought for about the price you have mentioned for year with Backblaze. It is working great so far. Restore takes several hours to start, but works fine. Their desktop app is nicely designed though is buggy.
What sort of research do you want to do that you're afraid might result in punishment?

Or put another way, what do you think a government agency might see as misconduct that you see as legitimate?
If the request never has to leave the process, that means there isn't anything the third party API is doing that persists state or calls out to another backend. In that case, wouldn't it just be better to import this third party API directly as code and call it for significantly better reliability, performance, and reduced complexity?
I was wondering this too. Though it used to be you could monetize programming languages more readily. I wonder as databases approach a commoditization point if the DB market becomes more like the programming language market.

Right now turnkey hosting is the main way of making money. But if open source push button distributed database in an arbitrary cloud happened (via easier containerized orchestration than currently exists) we wouldn’t really have much of a hosted database market. Then database open source might start to look more like programming languages and less like money making entities unto themselves. Honestly this is probably the bigger threat to the Mongos, Confluents etc than anything else. And why AWS pushed proprietary tech like lambda.
Sight-reading is a great analogy because as with music, in order to stay fluent and make one's performance (or sight-reading) easy, one has to stay in constant practice.

I'd argue that much less of this is required for languages like Lisp, unless, of course, you step away from practicing reading English, in which case maybe the very English-like programs of Lisp will start to seem foreign to you.
I see what you mean but I didn't have a problem with the non-technical usage of 'reverse' taking it to mean 'reverse the progression' of type-2 diabetes. Perhaps 'neutralize' would be a better choice.
The advice was so bad that it helped him not make that mistake. It was so bad it was good
This is just a reflection from recent work on interpreter internals, but I figured it could be relevant to someone walking the same paths.

Allocating registers for all local vars statically means scopes have different sizes, which in turn complicates slab allocation and/or reuse. In return for being easier to reason about (except for the main scope issue) and saving space.

I opted for a fixed number of linearly assigned registers per scope in Snigl [0]; once the limit is reached, remaining variables are stored in a table. Which means I sort of get both, since additional scopes may be added using {} (it could make sense to add a scope: keyword to Python) if that becomes an issue.

It's all compromises, all the way down.

[0] https://gitlab.com/sifoo/snigl
Yeah, force might be a strong word but I think for some it indeed creates social pressure and fear of repercussion if they dont friend people they "should be" connected with because of social structures, etc.
Probably not but you can still buy train tickets, get a mortgage, and live in Manhattan if you make some other career work out for you.

That's what's disturbing here, the link to this other system that is, in itself, nightmarish.
I've seen it happen more often at a startup than at the giant company I now work for. There are some people who will act like that no matter the circumstances.
> Iglu pays all of your personal income tax, social welfare contributions, visa application fees, etc.

That 7.5% includes both company and personal taxes, SSO, etc.

My visa application fees are about $70 a year now, they're inconsequential. I realise this isn’t viable for some - I started on a business visa and it was a lot more work and money each year.

> because it was a lot easier

I'm sure it is easier, particularly if you're a foreigner without any kind of ties to the country (e.g. no spouse+family to trust/rely on). But it's definitely more expensive if you're intending to operate for more than a year or two, and expect to have reasonable income.