skysight-inc/HackerNews huggingface dataset:
Anyone who’s adequately informed about spiritual matters is able to identify “machine elves” as demons who still seek to rule humans as in times past and desperately try to hide their identity. I’ve heard they get extremely angry and transform into malicious monsters if you interrogate them about the truth of Jesus Christ. Doing that will guarantee a bad experience. People shouldn’t be doing drugs anyways.
Single point of reference, but my 1985-built house was constructed at a much higher standard than my 2010-built house.

The properties of wood and physics have remained surprisingly constant over the decades.
Snowflake’s Shares Soar in IPO
> It would be cheaper to get a mortgage, but I fail the "affordability" tests

I naively thought that these affordability tests would involve looking at whether my take home income minus my monthly costs was higher than the monthly cost of the mortgage. That sounds like a reasonable definition of "affordable", right? We can account for increases in interest rates too.

In reality, the amount of ridiculous hoops that need to be jumped through to quality as being able to "afford" a mortgage is silly, and it never used to be like this. Current employment contract less than a year old? Denied, even if you've been at the same company longer than that. Contractor without 2 years of Ltd company history? Welp. Want to use help to buy? That'll limit your pool of potential lenders even further.
But that's exactly what Apple wants. They want you to invest your time in their ecosystem because that prevents you from spending time in other ecosystems. Every thing they do that makes it more work for you to make an iOS or MacOS app is time you won't be spending making things for other platforms including the web.

plus, they get the added bonus that they can demand you pay 30% of various transitions that they couldn't demand if you just left it a website that happened to be PWA

Their incentives are entirely aligned not to support the latest web standards and not allow any other browsers on iOS to add them
Cool. It would be interesting to compare benchmarks the RPC latency under heavy load for pb-jelly compared to other RPC methods.

Rust has such great support for performant zero copy serialization and de-serialization in various formats (bincode, message pack, cbor, bson). Seeing this for protobuf feels very encouraging.
Fixing Random, Part 1
Voting is great, but it’s not enough to punch a ballot every few years. We need to be exerting a sustained pressure on our local and national representatives to support and pass legislation. We need to put public pressure on corporations to make changes. Look at how the BLM movement has gotten companies to commit to making changes. We need citizen leaders to provide vision and hope.
Show HN: Used it, liked it, joined them. Low-code process automation platform
What I find infuriating is when an admin gets the bright idea to block all connections from IP's that are in mail dnsbl's. It's a great way to alienate people from using your services. I can't remember which company was doing it, but a customers API calls to a vendor failed because the vendor blocked the IP, which was blacklisted somewhere.

Here's the kicker: The server wasn't even used to send mail and hadn't been for a long time. So we had to apply for a delisting from a mail blacklist for a server that didn't send mail so that a customer could use an API.

The admin thought they were being clever, but instead they were just being difficult.
Reminds me of this movie illustration the complexity and human collaboration required to produce a pencil: https://youtu.be/IYO3tOqDISE (6:33 in total; it’s a bit “dreamy” sometimes but still worth a watch, you can skip the first minute).

Basically entire human civilization is based on collaboration, learning from and relying on each other (among other things). The process kickstarted with developments in agriculture, freeing up Human Resources to work on other things. We’ve been perfecting this for a few thousand years, of which we’ve been automating things using software for only 50 years (being generous here). Give it some time - with the current rate of development we may not need another thousand years to improve software development to near perfection as well ;-)

(Or more pessimistically: there’s still a lot of hunger in this world so even after a few thousand years we’ve not even perfected the most basic of human needs - doesn’t bode well for something as fancy as the typical glorified beans counter that is most enterprise software...)

Disclaimer: This video is typically used as a pro free markets argument to illustrate the level of cooperation required to produce even the simplest things, arguing that such collaboration is only possible by free actors in a free market - that’s not the point here but still interesting tangent to think about in this context.
which quickly became Visual Smalltalk Enterprise, which you can ask various companies about how that went commercially.
It seems to turn every male into an Indian.
Same here- looks incredible but no face found :(
That's not what the word 'opinionated' means here. It's not any one person's opinion; it's that the project overall takes a stance on an issue rather than leaving everything open for everyone else to figure out. It provides clarity and direction compared to the more difficult situation where every library is completely general. No ego involved at all.
It's hard to describe a complex program with one word but I would argue they are at least more informative than "modern". Unless you're intentionally using old technology or going for a "retro-style", pretty much anything written in 2020 could be described as "modern".

The alternatives listed as just examples, I would need to understand the program better to come up with a truly apt adjective.
The point isn't masks per se. Masks do in fact slow transmission, but there are multiple strategies which can work if everyone abides by them. But that's the issue — people won't agree to even the simple rules, no matter how inoffensive, because the breakdown in social trust is so profound, and so the whole system suffers.
Right !
Good write-up, definitely stuff that applies to everyone. Even if you're already familiar with it, a refresher might be helpful.

A couple quotes stood out to me:

> you need only to moderate the intensity and frequency of pleasant stimuli to ensure that the opponent processes do not build up

This is an essential skill for any long term self-medicating person to acquire. The dosages of the mind altering substances I regularly take to stave off the darkest depths of depression have not increased in years.

> exposing oneself to the forbidden fruit without partaking can often be more effective in extinguishing addictions than merely abstaining or avoiding the addictive stimulus

This is also a valuable tool, and indeed can make you feel like you're rewiring your brain. It is very much intertwined with delayed gratification. How long can you go without, even though you don't have to? Can you make yourself fully indifferent?

An issue I don't think was dealt with here is how to break out of a cycle once you've learned to make it sustainable. I've gotten really good at treading water, but a lot worse at challenging myself when it's not required. I'm hoping it's just the craziness of 2020. I'm fearing it's a more lasting change-- I've become more pessimistic about the future of the human race in general, so my efforts don't seem to matter as much.
Protobuf does not provide any type safety whatsoever. The name of the type of the message is carried in a side-channel, and the interpretation of that name is completely up to the endpoint that deserializes the message.
I have not posted on this account for many months for non tech topics, because discourse on HN has taken an unfortunate turn over the last few years. This is a fantastic example of it, (the greying of this comment) and so incenses me that I'm willing to speak up in defense of it.

There are active measures to _prohibit boycott of israel_ in the US. This is A Fact. [0] Multiple states, as well as the ACLU, have issued rulings declaring this unconstitutional, but it blazes on. [1]

We are being pushed to give up FUNDAMENTAL LIBERTIES with almost no meaningful awareness, and anyone who speaks against it is immediately labeled an antisemite. As someone married to an orthodox jew, I will say openly: the fact that these are scary moves is even discussed within _our family_ and is by no means a dogwhistle for hate, so why is it so aggressively silenced outside?

[0] https://en.wikipedia.org/wiki/Israel_Anti-Boycott_Act
[1] https://www.aclu.org/blog/free-speech/congress-laws-suppress...
code generation is great for sharing data models and writing clients for services without dependencies
We're not even arguing about whether people are the cause... we're arguing about if people are allowed to call someone with a penis 'He' or not.
Even with pratt parsing? Or using other method?
18-29 year olds are sort of between generations but largely fall into Gen Z; certainly they're the youngest end of Millenial, and can not really be said to have endured the 2008-2011 recession as they were not working at that time.
The closest I've found is a local public television station that has a block of PBS Newshour, Newsline, DW News, BBC World News, and France 24. It'd be nice if they had Al Jazeera, or even a few more broadcasts from other parts of the world, but I imagine English language broadcasts are rare in certain places.
> I really want to love tools like i3 or awesome, but I always go back to Gnome because it juts gets stuff done. I liked Gnome 2, I like 3

My approach is to use the window manager best suited for the task, but all at the same time.

That means for my highly structured multi-desktop, multi-git-workspace programming tasks I use i3, which is ideal for those.

However for my less structured tasks like writing or consuming documentation, email, and personal web browsing, I use a more conventional, less constrained desktop environment (i.e gnome), which is more ideally suited for those tasks.

If I'm willing to abuse the term window manager a little further, Vim running inside i3 serves as a third window management environment I run in parallel, optimized specifically for code editing.

The trick is that I use i3 in its own separate Linux desktop window (In my case running on a remote machine, but you could just as well do this running in a local VM). this allows me to have both environment successful on the same screen at the same time.

This also has the added benefit of making it very easy to find my code editing window among the tons of other windows I have open.
That's interesting! One thing I was surprised about is that they don't address optimizing the palette and dither pattern across time (b/c most gifs are animated). This feels to me like it would be really interesting and a hard problem for traditional algorithms. They do mention it as a possibility for future work at the end tho.
They also seem to have separate losses for the palette net and the dither net instead of just adjusting both to optimize a general image quality metric (although it does look like they have some kind of perceptual loss, it's just not the only objective)
... good enough for me. I'll add whatever flags I need and begin depending on it in production code.
Lack of Wayland support is the single thing I have wish it had.

Gnome is so smooth on Nvidia in comparison but in every other way I prefer and still use cinnamon
I’ve thought about this a lot. My parents had 2 TVs in a house of five(and one was junk). We had stick on vinyl floors, and a cheap white appliances. Counter tops were linoleum, and we had 1.5 baths. I cut the lawn, and we went shopping in stores. We took two vacations requiring planes for the first 13 years of my life. Most vacations were camping. We rarely went out to eat. We didn’t have computers. We had 1 corded phone in the house.

This is in stark contrast to my house. We have two iPhones and get new ones every 2-3 years. We have two iPads, 3 computers, and gadgets galore in a house of 4. My countertops are stone, my appliances are stainless. We go on vacations yearly that require planes and hotel, and used to eat out often. I have a house cleaner, and pay for an expensive gym.

I realize I may not have the house my parents have, but I have nicer things. I make more money but I spend it very differently then they did. There was basically nothing we bought that compares to an iPhone every 2-3 years. I know so many people who travel regularly, and don’t seem to realize this was rare 15 years ago. I really feel we spend our money differently.
Perhaps I misunderstand the text in the README. Who is "we" in this case? Is the software writing its own README?
I think we need to do more than just vote.

You're absolutely right: voting is a necessary, albeit insufficient, step towards fixing many of the challenges we face.

However, the vast majority of people who happen to read my comment on here will, at best, only vote. I don't want anyone to skip out on the very important and relatively easy step they can take just because voting isn't a silver bullet.
Some context:
I recently joined the team as a product manager after using Neaktor as a back-office for my own project(had to put it on hold for now).
We had some success in Eastern Europe and now I think we are ready to try it out with English speaking users and looking for beta testers.
We are still ironing out some translation/localization issues.
As a non-american the USA-Israel relationship it is interesting and weird. As an outsider an ignorant about foreign policy it seems like they are the same country, or Israel being something like an overseas american territory and not a country in itself.

And I wonder, do israeli people feel the same connection with the USA?
Running JupyterHub with Istio on Kubernetes – A Troubleshooting Journey
I believe this shared motif is some default mode pattern matching in our unconscious mind.

i.e. We have a built in "entity" template and DMT puts us in such a state that we fill in that template
The question is why. It doesn't seem to have anything to offer in performance or price/performance vs. even mediocre products such as Redshift. Am I missing something?
This sounds super interesting and is exactly what I'm interested to hear more about. Where can I read more on this?
Currently the price/sales ratio is at 170.
https://news.ycombinator.com/newsguidelines.html Off-Topic: Most stories about politics...
While Tree-sitter is heavily influenced by Wagner's thesis, our error recovery strategy actually uses a novel approach, so it is fair to question whether Wagner's would have different properties.

For error recovery, Tree-sitter is currently optimized for some goals that are a bit different from the goals of a single-language IDE like Rust-Analyzer:

* Like RA, we want to minimize the impact of syntax errors on basic features like syntax highlighting and symbol name extraction (which are important to GitHub, and in lightweight text editors like Neovim and Atom).
* Unlike RA, I wanted to avoid requiring grammar authors to think about error recovery at all.
* We needed to tightly control the performance cost of pathological error recovery cases, like parsing a large Ruby file as Go (either accidentally or adversarially).

My understanding is that Wagner's thesis is mostly concerned with "history-sensitive" error recovery in an IDE: using earlier syntax trees as an additional input to the error recovery process in order to better understand the user's intent when editing.

I think this idea makes a lot of sense, but it doesn't address cases like Matklad has prevented here, where the IDE is presented with already-invalid file.
Fair enough. May I suggest that it is the depreciation of the family unit that may be causing this. Generally, in my experience, jerks had crummy parents. I don't know the solution, but maybe instead of treating young pregnant couples as sacred, we should make having children a privilege, not a right, and make them work for it. But I wouldn't know how to do that.
The packaging for a bottle of soda wouldn't double the cost. Soda was distributed in glass bottles which cost more to transport, yet prices weren't nuts back in the day. Most of the cost of soda is sugar. The markup on soda (whether sold in containers or from a fountain) is astronomical.
Reminds me of my favorite Wikipedia article: https://en.wikipedia.org/wiki/List_of_lists_of_lists
It's the only real alternative implementation (and more precisely, a fork of upstream protobuf), _and_ there is strong cooperation [1] [2] between both projects to maintain a level of interoperability.

And, it's not even protobuf I have a problem with - but things like HTTP implementations. There still isn't a canonical HTTP client/server implementation for Rust, while in Go basically everyone just uses `net/http`, or something that builds on top of that. Same for cryptographic primitives, TLS, context, ...

[1] - https://docs.google.com/document/d/19kfhro7-CnBdFqFk7l4_Hmwa...

[2] - https://github.com/gogo/protobuf/issues/386
I'm not endorsing the stupid stuff that Apple has been doing in the article, but for your case, I don't see what they should have done differently.

Maintaining backwards compatibility for every app is a big technical requirement, and Apple chooses to spend their efforts elsewhere. Microsoft takes the opposite route because they have many enterprise customers who have to keep using an internal CRM that was last updated in 1994 and all the developers have died.

If you want your OS to support abandoned apps, then you should definitely choose Microsoft. But most people have other priorities.

Similarly, keeping devices on old OS versions has a cost too. They could be insecure, opening users to the risk of compromise of their personal data. Newer apps will not work. Having a significant proportion of devices that have not bothered to upgrade stops developers from using the newest OS features (for an extreme version of this phenomena, remember ie6).

Apple prioritizes getting users and apps on the latest OS releases over perpetual support of abandonware. The proportion of users who need to support abandoned software is probably tiny compared to those who can benefit from OS updates. It's a conscious choice, and other vendors choose differently.
relevant:

parser recovery in codemirror6 (inspired by tree-sitter but adapted for IDEs):

https://marijnhaverbeke.nl/blog/lezer.html

a standalone incremental JS parser with error recovery:

https://github.com/escaya/escaya
I work on the protobuf team at Google, and I'm a big fan of Rust, though I haven't written much actual Rust except a bunch of Project Euler solutions.

For protobuf in C++, we've been moving more and more in the direction of using arenas for memory allocation. When you parse a protobuf, it creates a tree of objects that are usually all deleted at the same time. Freeing an arena is much, much cheaper than traversing the tree of objects and calling free() on each one.

My dream has been that Rust protobuf could support arenas as well as C++, but use Rust's type system to make it all provably correct at compile time (in C++ the lifetime management is inherently manual and unsafe). For absolute top performance, arenas will always beat trees of unique pointers (which I think corresponds to Rust's Box<> type).

I don't know Rust's type/lifetime system well enough to know if this is possible. I was looking recently at arenas in Rust and I noticed that Rust's version of placement new seems to be stalled:

"Unfortunately the path forward for placement new in Rust does not look good right now, so I've reverted this crate to work more like a memory heap where stuff can be put, but not constructed in place."

https://docs.rs/light_arena/1.0.1/light_arena/

Does anyone know more about this?
It doesn't appear to do well with glasses or baldness.
Agreed. As much as I would hate it as someone who utilizes their services, Netlify should look for an exit. AWS is probably the best bet. Between services such as Github Pages, Vercel, and Firebase there’s a lot of competition.
More context is helpful here. "We take an opinionated stance that every module should be a crate, as opposed to generating Rust files 1:1 with proto files."
Usually the lossless encoding is offloaded to a standard entropy coder, e.g. arithmetic, ANS, etc. because these approach the theoretical minimum rate given by the source entropy pretty closely, so there wouldn't be a point building a fancy differentiable replacement.
A little exaggerated. From the 90's there were a couple (Janus, Meridian) at about $600 a seat.
Stongly disagree, as much as this example is hilarious and toching, it really isn't typical.

Many non-dev folks around me have resolved windows errors by typing the error message or code into google - if they are spesific and well written, they enable you to do that!
Timeline and geography doesn't work out for your hypothesis. The Green Revolution began in earnest in the late 50s; at that point, the post-war expansion in the U.S. was alread 10-15 years old and slowing down. It also started in developing nations like Mexico, India, Bangladesh, and the Philippines - there's perhaps some influence through international trade, but if that's the cause you'd expect Mexico and India to be the geopolitical superstars rather than the U.S.

The timeline does match up with the Marshall Plan and redevelopment of Japan. A much simpler explanation is that the U.S. was the only nation whose capital stock remained intact after WW2. This allowed us to produce high-value goods more efficiently than everywhere else, which allowed us to export more, which led to a strong currency and ample buying power on world markets. Post-war unionization also spread the fruits of this productivity to society as a whole, rather than concentrating it among capital owners.
In the UK, they refer to defined contribution and defined benefit as pension.

In the US, pension is short for “defined benefit” pension, which is an annuity beginning at a specified retirement age. The liability for providing that benefit does not lie with the recipient of the defined benefit, but with the employer (or government).

A defined contribution pension is one where the recipient of the benefit owns and controls the assets that will be used to pay the retirement benefits, hence the recipient is liable for making sure to have sufficient savings and the right investments to be able to pay themselves in retirement.

In the US, social security is the defined benefit pension available to everyone provided by the federal government.

However, it is prudent to expect defined benefit pensions to decrease in value as the retirement ages are increased, and benefit amounts and future value of money are decreased due to slowing economic growth in most developed countries.
Ask HN: How to move from being a programmer to a software developer?
Hi HN,

I'm building a startup that is gaining traction. I've been the only coder to this point, and now I am looking to hire others.

However, while I am a fairly proficient Ruby developer, I don't feel I am a good "software developer". I have no experience sharing code writing with others. I write tests and decently "clean" code, but it could always use improvement. I have a basic understanding of Git and Github.

What else can I do to become a better software developer and work efficiently with other developers?