skysight-inc/HackerNews huggingface dataset:
Wasn't supposed to come across like that. The sad part is that Google has enough grip on e-mail to halt adoption of any standard; GMail has been around for 16 years, you'd expect some kind of standard to come out of it to support modern e-mail features. Developers not having a choice doesn't make it less wrong.

JMAP has been around for 5+ years, and specs published last year by the IETF: https://tools.ietf.org/html/rfc8620 and https://tools.ietf.org/html/rfc8621
> Where do Disney, Apple, Google, Microsoft, et al stand on this?

IBM dealt directly with Holocaust organizers, Apple benefits from forced Uighur labor at its iPhone supplier factories.

It is a good rule of thumb to assume that companies will _always_ stand on the side of making money.
Zerynth (Python on microcontrollers for IoT) raised a €2 M Round A investment
If somebody has gone to the effort and expense to listen to a physical record, they probably aren't going to want to scroll around on their phone to see digital liner notes. The physicality of it all is a big part of the appeal of vinyl.
Best practices for clean coding in JavaScript
I'm surprised port knocking never really caught on. Does anyone know of it being used in production anywhere?
My understanding is that federal public defenders have a really good reputation. It's at the state level that they're given obscene workloads and laughable salaries. Forget superstar salaries, funding adequately-sized PD offices would be a massive improvement over the status quo.

Ordinarily, it wouldn't cost that much to have a decent public defender system. Unfortunately, the entire system is built around people pleading to charges, and if every single defendant had high quality representation, the resulting flood of actual trials would paralyze the system.
I assume this is because null is false-y in many other languages, and can be used in switch/if statements and so on. Rather than having to be treated like an error.
I wrote a debugger plug-in a long time ago that used MIDI - it was actually quite useful.
But isn't the whole thing "now oil and oil-based-products are bad" kind of unfair to all the developing nations? We, the rich western countries, we're able to profit of the non-sustainable benefits we got from fossil fuels and their products, while a large part of the earth's population didn't profit nearly as much as we have.
This is a line of thinking I've seen underrepresented in a lot of the discussions about the environment and the future of our planet and species in general.
Show HN: Reliably Generate direct MP4 links for any YouTube Video
This blog just screams fake.
So you're saying checked exceptions are perfectly fine.

I'll write my library code with checked exceptions. You call my library code in one of your methods. The compiler tells you to do something about the possible failure. If you want to handle it there, you handle it with a try{}catch{}. If you don't, you wrap it in a RuntimeException and rethrow it so your top level handler can deal with it.

Perfect.

Unchecked exceptions make it easy to fuck up the case where you actually might want to handle it close to the call.
Managing Node.js with Volta
> You can fake engagements with multiple accounts to get the ball rolling ( reddit did it, indiehackers did it etc...)

As Steve Huffman described it in his old Udacity course (no longer available), no one wants to visit a ghost town. So when they were making Reddit, they'd create multiple accounts to post from so it "seemed" like a thriving community already existed. It does bring up interesting questions on where it sits in on the ethics spectrum, but the cold start problem is still very difficult with no one solution.
If management isn't a promotion, then engineering isn't a demotion
Feedback:
As a user i expected that typing an address and then hitting the "Find luggage near me" button below would include what i typed in the address bar. I didn't expect it would be an IP lookup. A big --- OR --- between those fields would make it clear.
Also add in the NBA.
I think we should only allow country (including the EU as a smi-country) code domains plus .int for international organizations and .net for things that don't belong to any country (example: IETF).

I am unsure whether 2 or 3 letter country codes are better.

Also, I think that there should be semi-standardized second level domains. Example (cc means any country code): .com.cc (commercial) .edu.cc (anything related to education) .uni.cc (only universities and higher education) .org.cc (non commercial entities) .gov.cc (executive) .jus.cc (judiciary) .lex.cc (legislative) .mil.cc (military) .b.cc (for banks and other financiao institutions) .name.cc (for personal websites)
The benefit of this sort of public CDN is getting lower and lower because of cache-partitioning within browsers to prevent fingerprinting, smarter bundling if you are using a good bundler and packing critical resources into an initial bundle.

IMO these sort of CDN's should not be used. If you are a small player but with a global audience you should not include heavy JS/CSS libs (really, nobody should). If you are a reigonal medium-sized player then your users are probably closeby your server or you are already using a CDN for your main content. If you are a large player then you should already have a content delivery strategy or you have larger problems than loading the libs cdnjs have.

If you do SRI and proper bundle optimization of your own app and your users browsers do cache-partitioning you loose almost every benefit and only get the downsides of being reliant on another point of failure.

This is besides the fact that centralizing more of the internet to cloudflare, google, amazon, microsoft and so on is just plain "A Bad Idea".
I wish they'd kept it C-only instead of introducing C++ (plenty of runtime code generation libraries written in C).

There is something to be said about internal consistency and for a codebase as established as this, C++ is more of a detriment than a gain.
I have built a couple communities over the years and currently run a community with more than 20 million monthly users.

I'm going to assume the kind of community you're referring to is one where the primary focus is social networking / discussion in the vein of Hacker News, Reddit, etc.

The way you build a community is to start with an existing community.

What I mean by that is you have to find an existing pool of users who are interested in what you offer and bring many of them in at once. From there you can focus on slower organic growth. Examples: YouTube and MySpace both began as dating sites. YouTube focused on getting people to upload introduction videos of themselves. Once they had accumulated a number of people who were willing to film themselves they pivoted over to content creation. Similarly, MySpace was a very crude dating site that allowed people to customize their page. Brad Greenspan was a serial investor who bought up a large number of tiny dating sites. He cannibalized all the revenue from those sites to promote MySpace as a "free" dating site. They had millions of users coming from other sites.

reddit was promoted heavily on Hacker News and focused on a tech crowd at first. Paul Graham threw his endorsement behind the platform a few times and that also helped interest people in checking it out.

For my successful community sites, I'll just mention one experience - I had built a Q&A site from scratch. It was finally done one Sunday night and I decided to go to bed. There were eleven posts on the site, mostly from myself, but also a couple from friends I'd asked to test the site for me. It was obvious there was no community there. I bought a single ad - for $10 - at $0.01 CPC on a Quiz site, then went to bed. My intention was not to launch the site, but to throw a little real traffic at it and see if any bugs cropped up that neither I nor my friends had found. When I got to work in the morning and had finished catching up on my emails I decided to check the site and see if anyone had posted. There were over 100 posts and people were using the site exactly as intended. Not only that but there was about $0.50 in ad revenue already, meaning my monthly run rate was net-positive from day one. I had hit upon a great fit between people who were already interested in asking and answering questions (the quiz site I advertised on) and my product.

In each case I'm familiar with, the formula was to find an existing audience that had an interest in the product in question and bring them on-board ASAP. If the internet were brand-new and no community websites yet existed I would build one by building a non-community website that provided a useful service, and building a community around that once I have captive eyeballs. In other words, to belabor the point: I would start with an existing community.
I can't wait for the first storage facility on the moon. Then it could be @moonunit, take that Zappas!
Everything you said is true, but for collecting vinyl seems superior to me because disc rot is basically unavoidable, whereas well cared for records can last over a hundred years (maybe more?)
> A more modern extension: Everything in moderation, especially moderation.

Yeah, too much moderation causes an excess deficiency, that's really bad.
> that is not possible when an object is allocated in that frame and its address passed to the target function

Ah of course, I hadn't thought about live aliases to stack-allocated data.

You're right about destructors; I agree that they're not really tail-calls (since we're processing results).

> C/C++ compilers can and do eliminate tail calls where possible, but there's no guarantee like you get from a compiler for a functional language.

Yes, I tend to say "tail-call optimisation" when it's opportunistic (e.g. GCC/Clang), and "tail-call elimination" when it's guaranteed (e.g. Scheme/ML).
> a roland 8-track that used zip discs

Hey, I had one of those! So much better than the tascam 4-track it replaced.
I knew my grandfather, who in my eyes was a god, and I embellish everything about him. He died in 2010. Think how muddled, exaggerated, revised, and dressed-up stories get over centuries... especially when they are not written down.
Considerations for Configuring Ingress on AWS or EKS
1) Already done. You just log in to the software.

2) Hm, I see your point but I'm having a hard time envisioning what I'm missing out on. As I look at the web browser ecosystem on desktop, what features are we missing?

3) Not sure why this isn't possible? I think it's more of a limitation of interface than anything. Also why isn't Microsoft making their Xbox app available on Linux or macOS? Hmmm.

4) Eh, the App Store can be improved but I think you're reaching here.

5) As you said, related to #4. I have yet to see a premium model work. I don't think it does for many applications.

6) Yea that would be nice for developer tools, but the other limitations I don't see. You can install Office, JIRA, etc. on iPad.

> I think the argument is it's already very difficult for new entrants in the platform space (for phones, Microsoft spent billions and failed), but the only reason app stores are not competitive is they are tied together with the platform.

Sure, but the same is true of aircraft engines, investment banking, and any other specialized industry. Huawei and others will be competitive and will emerge as serious contenders. It just takes time. I also disagree with your assertion that app stores are not competitive, I don't think they need to be competitive. They just host the software. It's like downloading Spotify and then being confused that you can't put your own songs on it, or that you have to pay Spotify royalties.
Today, you can write this:

while (iterator.hasNext())
System.out.println(iterator.next());

Take away unchecked exceptions and iterator.next()'s NoSuchElementException either becomes checked (requiring handling code that's unreachable) or gets removed (hope no-one ever forgets to check hasNext)
Thank you, that's really cool. I've been using DNS over TLS, but it's really complicated to set up. Just running your own recursive DNS actually seems easier. :D
Can someone explain what Erlang offers that Go does not? Both have great support for concurrency, but Go has type checking and a more familiar syntax.
>Unfortunately, they only get warrants when civilians are looking over their shoulder.

Source on this?

>Those judges, and the members of the senate intelligence committee are most definitely not an independent committee.

What does independent committee mean to you? They are from entirely different branches of government. That's as independent as it gets.

The post you linked is from the Senate Armed Services committee which is not the legislative oversight for the NSA. Different people, different processes. Geriatric senators probably forgot we had troops in Nigeria because America has troops in untold dozens of countries. No one remembers the whole list.

If you think the Taliban is our biggest threat you should leave national security to the people who do it for a living.
I really miss that time, when computers where something special, floppy-disk trade in school and that one guy with a Next-Cube without games but his father said it's the most powerful machine, and endless "Death Knights of Krynn" hours with friends....ok maybe i'am a 'adult' now...that's why, but IT really lost most of it's magic.
I've never heard that usage before either. ('on their'.) Whenever I've used or heard it, the scoop is the prize-analagous story.
This is far from the first JIT effort for BEAM. I'm sure the authors have rolled many years of learnings and experience into this one. Still, you make a good point, it will need a lot of testing by the community before I'd trust it in production.
> consolidation of power, money, and talent at a small number of elite institutions

Stop projecting. I'm not the one who's frustrated here. I benefit from that concentration as much as you did, but thanks for the ad hominem anyway. However, I've also worked at a lot of companies over a long time, both big and small, both inside and outside of the SV or WS bubbles. I didn't burn myself out after one decent stint at one company. Yes, power and money are highly concentrated. Because of that the opportunity to capitalize on talent is also concentrated, but the talent itself isn't. To think otherwise is pure egotism, and it's your strong reaction - to the idea that talent exists elsewhere than you've been, apparently - that got us here.
I see Debian is one of the projects that benefit from Google's Summer of Code student sponsorships, although that is a much smaller contribution compared to those you mentioned.

Do you know if any of the students who particpate in Debian's summer of code end up being regular contributors after the sponsorship period ends?
Cross ear perception of the other speaker is actually desirable, unless you're specifically mixing binaural for headphones. Crosstalk is key to localizing the apparent acoustic image in front of the listener instead of "inside the skull."

If you mix purely on headphones, you can just put a quick filter inline that does a reasonable job of simulating it. Without this you'll have difficulty mixing things well for playback on speakers.
In my eyes, Java's biggest mistake is that the byte type is signed instead of unsigned. Masking a signed byte with (b & 0xFF) causes so much needless pain, and I have never wanted to use a signed byte. On the other hand, I appreciate that Java doesn't have unsigned versions of every integer type; that simplifies things a lot. As for checked exceptions, I'm still undecided on whether they're a good or bad thing.
From Patrick Collison's advice page (https://patrickcollison.com/advice):

"More broadly, nobody is going to teach you to think for yourself. A large fraction of what people around you believe is mistaken. Internalize this and practice coming up with your own worldview. The correlation between it and those around you shouldn't be too strong unless you think you were especially lucky in your initial conditions."
This also works with curl:
curl -L -o "video.mp4" "https://save.golf/watch?v=N4UKsi979nM"
I had a Mac SE with an ethernet card in 2001, around when Red Worm was loose. We put an HTTPd server on it, and watched as each RedWorm attempt came in. This ancient super slow machine not only stayed completely safe despite being on Mac OS 7.5 or something around there, while Windows machines of current vintage were being taken apart around the world. Added bonus, the slow speed of the SE meant it took about 10 times longer for each Red Worm attempt to give up, so we at least monopolized some tiny portion of those infected systems for a bit, keeping them from infesting others for a few more seconds...
The crux of your line of thinking lies in the definition of "costs of recycling". If something like the idea of a cost of recycling was represented in the cost to the consumer, how would you translate the same idea to a developing country? They have to pay an artificially increased price (compared what the population of "developed" countries paid for) for something we didn't have to pay for until now? That sounds kind of unfair.

edit:
Just to make clear, I'm not arguing against a concept as "cost of recycling"; my point is that the whole argument is more complicated than just comparing realistic solutions for the US or europe.
I've used some very tight-arsed VPS providers at the low range (128MB/1IPV4/$12 a year) and some of them mention a high load, and it's mainly due to brute force on port 22.

It makes sense to change port purely to avoid the low-barrier noise but of course it isn't much better security. Port knocking is on the same lines.

I'm by no means a security expert but these measures would surely help: less opportunists = less opportunities.

Saying that, I'm public key auth only and disabling any public facing service I'm not using.

The "security through obscurity" thing seems like a warning to avoid shortcuts rather than some implementations that help reduce noise. As long as you understand the fundamental problem of security, the obscurity thing is just a sidebar.
This is the whole "shadow IT" that actually results in a lot of security breaches. Look at the recent twitter hack for a great example. Staff were storing login credentials in a slack pinned message because using the right tools were a headache.
>More exactly, I've come to realise that a legal/constitutional arrangement that supports actual human slavery for 70-80 years after having been put in place is maybe not that great to begin with, and I've also come to realise that one of main reasons for its "PR success" during the last two centuries was the fact that the US as a country got to be economically (and then militarily) successful.

Constitutional modifications can be painfully slow for those on the receiving end of injustice, but I’m not sure what the alternative is or if it is better. Would a living constitutional philosophy or activist judiciary ended the practice earlier?
It’s also fine if people just create something they like, even if it isn’t up to someone else’s standards.
Are you a member? I've heard the advertisements on the Art of Manliness podcast, and I've always been curious about it.
Dead crows on the street near a petrochemical plant in northern Germany, 1985.

[0] http://germanhistorydocs.ghi-dc.org/sub_image.cfm?image_id=9...
The difference in your case is the changes were not step functions. I assume whenever you grew distant from some friends, you had other friends who you weren't distant from - it was staggered.

Imagine if one day you have N friends, and the next you have 0 and don't know anybody.
That is a prime example of exactly how it should work. Steam is cornering the market by providing value. Steamworks is exactly the kind of thing that justifies the cut they take.
> "A sucker is born every minute" - Nixon during his famous China visit.

Huh. I'd always heard that attributed to P. T. Barnum.
Alexa, Landlord Edition
> In my case, I simply could not figure out how to use the Users table without having the password returned in all queries

The recommended way of doing this is to store anything you don't want public in a separate table with a one-to-one relationship, and then controlling access to that table through computed columns and such (https://www.graphile.org/postgraphile/postgresql-schema-desi...)

What I can't recommend enough to people starting with Postgraphile is to check out graphile-starter, and especially it's first migration: https://github.com/graphile/starter/blob/main/%40app/db/migr...

That really helped me to understand better how to structure my schema, as separation of concerns within a model by using different tables is not something that is necessary when doing a regular application-in-front-of-datastore type app.

> Other problems are that there isn’t a mature and well established method of maintaining development, staging, and production database schemas on projects with more than one developer.

Yes, I don't have to grapple with this issue so I don't really have much to say about this. Graphile-migrate works great for me, but I can see how it could be an issue for larger projects, although I would think that database migrations are simply tricky on their own, regardless of Postgraphile.
Moving sshd to a non-standard port is certainly a good example. If only because it turns down the log noise. So that an "unauthorized connection" stands out.
I think that most initially looked down on the security through obscurity layer as flawed only because many people, a few years ago, thought that this is the only layer they needed. Somehow over time many people began to think that this layer is not useful at all. A little bit of thinking about the issue would absolve one of the approach to completely exclude that layer.

Also it is so easy and cheap to implement is another reason to discard it because in many organizations today people think that security can only be had by spending boatloads of money on people and software. Surely a simple, fast and cheap solution can't really reduce risk now can it?

And then on top of those things people do not think about, nor fully understand risk, hence the whole Covid 19 scare and the many other things in the world people are afraid of.
Usually I'm in circumstances where I can use my hotel. But in most places, luggage lockers are pretty scarce these days. (Japan is a notable exception.) Which can be a pain if you have a few hours to kill but nowhere to reliably leave your luggage.
Agree with the article.

People have been misinterpreting "security by obscurity is bad" to mean any obscurity and obfuscation is bad. Instead it was originally meant as "if your only security is obscurity, it's bad".

Many serious real-world scenarios do use obscurity as an additional layer. If only because sometimes, you know that a dedicated attacker will be able to breach, what you are looking for is to delay them as much as possible, and make a successful attack take enough time that it's not relevant anymore when it's broken.
The lack of namespaces in the crates registry (combined with allowing squatting) is easily one of the worse aspects of Rust.
Rust is the CrossFit of programming languages.
Reportedly BrLP did their last offering in 2016 at $40k/shr and I was offered 5-10 shares at $45k/shr in 2018. I should think with the recent engineering progress the price is well north of these figures now.
A quick search shows this:

https://arxiv.org/abs/1401.3014

which still requires a substantial mathematical background, but seems rather less technical (I've not read it). There's also a textbook on rough paths by Friz and Hairer with an introduction to regularity structures; if you're at an academic institution with access to SpringerLink, you may be able to get it easily.

Finally, Martin gives lots of talks, and he's an exceptionally clear speaker. I wouldn't be surprised if there's something on YouTube that's reasonably accessible to someone with a solid math / physics background.