skysight-inc/HackerNews huggingface dataset:
Hey, author of bore here! I've been summoned by my friend who saw this on the front page of HN. Thanks for posting.

Happy to answer any questions, though the README has most of the technical details already. Quick FAQ:

--

Q: What inspired this?

A: I wanted to make a really simple CLI tool for forwarding local TCP ports. No TLS termination or any other features. Localtunnel is unmaintained, slow, and requires Node.js. Ngrok v2 is proprietary, while Ngrok v1 is unmaintained, leaks memory, and is complicated to set up (requires wildcard certificates...). Why can't we just write a simple, minimal binary that does this? And focus on user experience (good error messages, clean code, systems correctness). That's the goal.

--

Q: Why Rust?

A: Because Rust gives you a lot of things: tracking lifetimes of variables statically, very fast code execution, data-race freedom guaranteed by the compiler, documentation, unit testing, simple binary distribution in the form of `cargo install`, and a strong focus on correctness. Tokio is also a _really_ great asynchronous runtime for writing network services.

--

Q: Why release a public server?

A: Mostly because I want it to be as easy as possible to try and access Bore, even if you don't have access or the technical means to run an instance in the cloud yourself. That said, "bore.pub" is not hard-coded anywhere inside the source code. The CLI usage examples explicitly pass in a mandatory `--to bore.pub` option to make sure that this software is not tied to any particular server instance. And an explicit goal of bore is to be easy to self-host, just run a single command (it's `bore server`) and you're all set.

--

Q: How much does this cost you?

A: I'm running the public server (bore.pub) on a $6/mo DigitalOcean droplet right now, the smallest size on shared vCPU. I just checked my dashboard, and it's only using 2% CPU at the moment. Will upgrade if I need to, but I don't expect the public server to incur significant fees unless bore gets _really_ popular.

--

Q: Is there potential for abuse?

A: I don't believe there's much potential for abuse here, in terms of distributing illegal content. If you wanted to do that, you could just set up port forwarding on your router and have people connect directly. Also, bore.pub doesn't guarantee you a stable TCP port to share with people; it's intended as a developer tool. So the risk seems fairly low.

--

Q: How can I help with this?

A: You can star the repository, share it with your friends, try using bore, and give any feedback on the issues page. Any help with packaging in software repositories or CI/CD binary builds would always be appreciated as well! Right now the only installation option is from source, using `cargo install bore-cli`. Finally, feel free to follow me on Twitter (https://twitter.com/ekzhang1) where I've been posting some updates on this work.

--

Q: How can I learn more?

A: Read the source code — it's literally 400 lines of Rust, super short if you have an hour or so this afternoon. :)
The web page lists multiple ways of helping, either funding their military, or humanitarian help, or e.g. hosting refugees.
"Europe" is much less homogeneous, from an urban-planning perspective, than the US. We have medieval cities with narrow streets, like Barcelona or Firenze, mixed with '70s developments, suburban dormitories, megalopolis like London and Paris, and so on. So depending on who you ask, you will get a very different picture of their habits around transportation. Undoubtedly, you Americans drive more and longer than we do; but we still drive some, and have a similar issue with choosing our development models post-1980. But undoubtedly, ditching cars would be significantly easier for us than it would be for you.
The point is to drive their preferences and thoughts on how things should be home and reshape urban landscapes to fit a vocal minorities views on how things should be with the hopes that if they impose their will on the landscape it will reshape people into sharing their viewpoint.
These are nice. I also like this one, that was made from a scan:

http://www.antiquark.com/sliderule/sim/n4es/virtual-n4es.htm...

It takes a very large screen to use something like that though. It would be cool if these simulations could be printed on paper. Then with some scissors and glue and cardboard, you could make a somewhat usable physical slide rule.

I was going to suggest emulating this: http://www.peterholland.de/ultralog/ultralog.htm

But it looks like it is already there! ( https://www.sliderules.org/react/ultralog.html )
As someone from Western Europe I've always considered myself lucky to be living in a kind of golden age of technology, prosperity and peace. The last months I realise this time may well come to an end.
Worthwhile reading on Easter Eggs

"Why No Easter Eggs"

https://docs.microsoft.com/en-us/archive/blogs/larryosterman...

https://hn.algolia.com/?query=Why%20no%20Easter%20Eggs

... and

https://unix.stackexchange.com/a/405874

https://news.ycombinator.com/item?id=27994194
> there’s no way we’d stop navigation on Google maps, find an off ramp, make a left turn through busy traffic, then search for a parking spot… just to casually browse for stuff

That's probably why the concept of malls is popular in the US. Get to a single shopping destination and walk around the complex for variety.
I used to provide a public instance of sish (a similar app) [0] and can say abuse is most definitely a problem. People were using sish for command-and-control servers, especially because it used only SSH for establishing tunnels. It was specifically chosen because nothing else needed to be installed. Really only worth it if a service provider (DO, AWS, etc) provides free compute and acknowledges the risk involved.

[0] https://github.com/antoniomika/sish
> HIG (human interface guidelines) studies, which is something no other vendor has bothered themselves with.

Let's not forget that Apple's HIG brought us 'column view' in the Finder, where icons actually slide away from your mouse, when you click on them... Or Preview where, if you select 100 PDFs and double click on them, will now open them as 100 separate documents, rather than as 'pages' within a single document, as used to be the case... or Quicktime [and Preview?] where you sometimes move a document with a conventional open/save dialogue but sometimes have to do it through a popup, accessed by clicking the name in the window titlebar.

Yes, OSX is a hundred times more consistent than any Linux distro --which often feel like the UI was designed by several separate teams who never met or compared notes-- but it's not without its own piss-poor design decisions.
If you have the physical layout of suburban sprawl then obviously you will drive everywhere you can; it’s designed not to be usable any other way.

What we’re asking for here are things like street and block systems, mixed use zones, bike lanes, buildings pulled up to the sidewalk instead of set back by giant surface parking lots, etc. When you have those things, the preferability of different transport modes change.
There are the useful ones we know about, like pi or e, which can be described to arbitrary precision, but you cannot "write them out" bc that would require infinite paper and a lot of pencils. But they're useful, they have meaning to us, so we give them nicknames and use those.

But what about all those other ones? Is it possible that there are certain ones, of future usefulness, that we haven't yet recognized? Are there, perhaps, different classes of such special numbers?

Maybe it's just a trick of our notational system; writing infinite strings of digits does let us describe some numbers in a vast uncountable sea of possibilities, but just bc the notation makes it possible, doesn't mandate that for any arbitrary string there is ultimately some succinct description, that elaborates to that string. In effect, the names are the numbers.

Yeah, these are fun things to think about.
Truly Excel could be improved in a vast number of ways. But would anyone use it? Excel is a kind of product that is perfectly understandable to the average business person.

The more complicated you make it, the more it becomes like real software development. And that is a skill that most people don’t possess.
A WASPy criticism seems to imply that it’s bad to write about one’s own culture unless one first acknowledge all the cultures of the world.
The biggest problem with Java checked exceptions was that you couldn't generalize over them. Simply put, you can't write a method in Java that takes some object X, invokes X.Y(), and throws the same checked exceptions that X.Y() throws. This despite the fact that OO design is heavy on such equivalents of higher-order functions (think comparators, observers, visitors etc).

In a similar vein, as another commenter above said, really the only problem with function coloring is that we're not treating it polymorphically.
But by focusing on these types of issues there is risk of a chilling effect that will make it impossible to pursue these types of programs or have people accept these programs for fear of being prosecuted simply my accepting funds that are permitted but then vilified after the fact. I suggest instead on focusing on the massive benefit they had. Any waste or abuse is part of the cost of a program and should be accepted as unavoidable.

Same thing with a lot of other programs like Medicare or social security. Sure there are abuses but elder and child poverty are almost entirely eradicated compared to a few generations ago and waste and fraud are a small percentage of those programs. Yet critics make it seem like some profound injustice that must be dealt with. Why? Why must we deal with it?

Honestly I don’t think a real estate agent driving an s-class and getting a PPP loan is a problem. The funds could only be forgiven if the funds were used for payroll so it’s likely the money went to a secretary or other employee. Even if it didn’t and went to the business owner directly I think the overall benefit to society and economy still outweigh any violation of justice or fairness. The business continued to exist, spend money and by goods and services. And ultimately pay taxes. An agent doing $100m in sales pays plenty of taxes so $48k is a refund to promote continuing employment in the midsts of a profound public health crisis, seem like good policy to me.
Having just (almost) sold a house in NL, the agent explained that the ordering currently was:

- paid searches (even at other agents)

- unpaid searches at their own agency

- social media

- agency website

- funda

each step would be on the next day, so if you're only watching funda, you're already four days behind
Ask HN: What do you use as your embedded BI solution?
I’m working on a site(NextJS, FastAPI, Postgres is the stack). I’m facing a challenge where each user is asking for different reporting and we are shifting to doing more and more reports that are only slightly different.

I think it would be easier to just expose my API to some BI tool to let the users build their own dashboards(and perhaps share the main ones we made).

I realize this probably exists and have found a few(powerBI embedded, metabase, etc). I have no experience in this area so I’m interested in what you are using and your experience with it?
Awesome, thank you for sharing, truly appreciate it :)
> He originally tweeted her address and other harassing things, which is against Twitter's rules. That tweet was reported and taken down.

How hard did you actually look? It wasn’t him.

Article: “The person who put out the initial tweet — a high school teacher in San Francisco — had shared Boaler’s home address in a separate post, but later deleted it and apologized. Nelson said he did not post her home address on his Twitter account”
I read a different article that said it's all Britain's fault. And another one that blamed Obama's administration. And yet another that says France is still enabling him, and their next election will be driven by it.

It reminds me of that Spiderman meme where the Spidey clones are all pointing at each other. The war isn't over yet. Why are these articles so eager to help Putin's propaganda machine control everyone's attention so early in the game?
> You're saying that a significant portion of Chrome + iOS users are A) constantly connected to a VPN and B) that VPN has DNS-based ad-blocking?

No, they simply said this statement:

> but Chrome users on iOS (which aren't as many as Android users although), there isn't a choice of any extension nor non-extension based blocking.

Is factually wrong as there is a choice; namely ad blocking VPN based apps.

Also these apps probably work differently than you're thinking. The "VPN" isn't a VPN in a traditional sense where your traffic goes to a remote server somewhere on the internet. Using VPN transport is just the method of convincing iOS/non-rooted Android to send the traffic to the app, which itself acts as the VPN server. Of course traditional true VPNs with ad filtering are also a thing but less common and more catered towards those already interested in true VPN service in the first place.

All that said iOS is hard to provide numbers showing usage scale being one way or the other as Apple doesn't publish them like other stores. If I had to guess iOS users would probably be the user group with the lowest ad blocking penetration though I wouldn't go as far as to say it's not worth noting. All of these smaller alternatives probably add up to more than the largest "normal" ad blocking method in the long run and ignoring them on an individual basis can significantly skew your overall result.
Since this discussion is mainly US-centric, and not NZ centric, I feel at liberty to ask this question even if it's not strictly about the article:

I understand the argument that the U.S. is reliant on cars, because it is so spread out, and spread out because it is reliant on cars. This may be due to an alliance by automakers, marketers, and the government. Stipulated.

But given that that it is already the case, how would a plan to get people to ditch their cars actually work? Is there a plan that describes how to consolidate a sprawling population of hundreds of millions of people, who already own houses and property all over a massive country?

Do the people in suburbs who drive everywhere just demolish their homes and move into apartments in the city? I say demolish, because in this scenario there are enough disincentives that nobody chooses to live in the suburbs anymore, like they have historical, so all these homes would lose their value.

Maybe we still have those suburbs, but we imagine a mass transit infrastructure that replaces cars. That could work, but we don't have it, and it seems hand-wavey to me. Does anybody (not in this thread, just anywhere) actually have a detailed plan for how it would work? And the answer isn't "yeah: Europe!" because, as stipulated, the U.S. is currently laid out radically differently, in a way that just wanting it to be like Europe won't solve.

I'm not arguing that cars are great, I'm just trying to figure out to what extent this is based on wishful thinking / science fiction, versus whether there's a serious plan behind it.
Temporary "help" like Uber is a ton more affordable than full time help.
Tesorio (YC S15) Is Hiring a Head of Infra and Platform and a VP of Engineering
Could be "Alt+G + s" :

http://norme-azerty.fr/en/
Because even in city centres where most people walk, there’s a perception among business owners that they would lose a big part of their customers if parking were replaced with for example bicycle lanes, while the truth is the opposite.
Airtable is great for throwing together a quick prototype, but it has so many arbitrary-feeling limitations that I’ve never actually used it in anger.

It’s a shame, because I really want to like it - but it’s less flexible than a spreadsheet, and less powerful than a database.
AP Computer Science Done Right
A book to help AP teachers and students, with systematic design.
> a lot of the population viewed him as illegitimate due to the Supreme Court effectively appointing him over Gore.

That may have been the perception, but that's not an accurate reflection of what the Supreme Court actually decided. They decided two things.

First, the Supreme Court ruled (by a 7-2 vote) that Gore could not selectively recount. Gore was very carefully asking for recounts in precincts where he was likely to gain votes, and not asking for recounts in precincts where Bush would be likely to gain votes. The court ruled that he couldn't do that. He had to recount generally, not super-selectively.

Second, the court ruled (by a 5-4 vote) that he couldn't keep recounting forever. Florida had to have an answer to give to the Electoral College; if they missed the deadline, that would disenfranchise the entire state of Florida. The court ruled that they had to stop recounting and produce an answer.

Look at Trump's attempts to recount in Arizona and Wisconsin months to years after the vote was over. Think what would happen if those were official recounts, and we were having to wait on them. That's what the court voted against.

> In fairness, Gore did win the count once all of the counting was complete

When the unofficial recount done by the press was finished - months after the Electoral College vote - yes, Gore won... by two votes. Would that have been the result of an official recount? Hard to say, but I bet the margin of error of the press operation was higher than two votes.
> This is true true virtually everywhere in the world.

you don't expect it in your OWN country, just moving to a different state, you are an outsider. Its because India was put together just like that, because the British ruled over many peoples and their languages.
Lightning Network and Bitcoin are inherently interoperable.

Just because one browser bakes it in, it doesn't mean the resources created are limited to being accessed through that browser.
It would have been the top comment on HN if HN had existed at the time.
As a software engineer in the industry, what problems am I hoping academic research could investigate.

Compilers that work like devs do. Almost every time I compile, the code is almost exactly the same, but the compiler forgets everything and throws away details from the last compile. Probably all the optimizer's choices are going to be the same this time as last time, so maybe we could cache these?

Better code merging. When my code diverges from the main branch, I typically have to do a bunch of merging work. Would a merging algorithm that understands code semantics be able to do a better job of understanding what I mean during the merge?

Language safety and ergonomics is huge. I very much appreciate Rust's progress, and it's a shining example of academia brought to industry, but can we do more? Jai's idea of making constraints codeable and incremental is pretty cool, and I bet there's a lot of room to improve on it.

Measures of code complexity and modularity. There's a bunch of silly measurements of the "goodness" of code, but maybe it's time for another! Maybe we could describe how "replaceable" components are automatically, and gives a solid idea of the level of real tech debt in the codebase.

How about some project management focused studies? Have a programmer give an estimate for a task, try to force it to be a deadline, and watch as quality of the results drops. Try applying something like scaled agile framework to a real problem and watch as the meeting load snuffs out meaningful development progress.

Or some systems work. Apache airflow is a pretty cool job running agent, but I have yet to see a good error handling workflow for distributed job agents. Can you come up with the "Result" type of job scheduling that's nicely composable?

There's really so much to do.
My partner and I were looking for a walkable urban neighborhood but ultimately ended up in a small town with a pub, market, cafe, store... and a train to the big city.

Couldn't be happier, but I wouldn't recommend it to someone who is single.
What are you talking about? I live in Stockholm, it's Saturday, 23:00, and I can be in the next city over, Uppsala, 70km away, at 0:04, using public transport.

I takes 28 minutes to a random spot I just picked on the other end of the city, 10km away.

Stockholm has 100 subway stations alone, and probably over 1000 bus stops. I have no idea why you should say that is "a handful".

I can also bike everywhere, of course. Usually way faster than the car over medium distances.
I have a theory: small shop owners are disproportionately likely to be car drivers, and when they say parking is essential for their customers, what they are really worried about is measures that will make it less convenient to drive them selves.
> I don't even think the union has jurisdiction over "academic" matters like graduation.

The union has jurisdiction, or perhaps we should say influence, over those matters it is strong enough to act collectively to force acceptance of its influence or jurisdiction. Naturally if tries to get full jurisdiction over handing out Ph.Ds, that will be a misguided attempt which will be met with extreme resistance and fail. But if it insists on its right to intervene when advisers inappropriately block their advisees from graduating - that is a realistic (though not easy) objective.

> This is definitely abusive, but it's not clear how a union would go about solving this?

It's very clear. Let's assume the student has not yet accepted a work offer here or there. A group of union reps from the department go talk to that Professor. They tell him/her that this is an informal chat; that they have heard about his threat. They demand that he perform the following:

1. Informally affirm, to them, that s/he will not penalize or impede the advisee in any way, regardless of their choice of employment.

2. Ditto but to the advisee, within X time.

and that if these demands are not met, they will make the affair public: The department will be plastered with posters attacking him for extortion and mistreatment; press releases will be sent out; and ethical charges will be filed directly (if grads can do so), or external legal action may be initiated.

... that is, assuming the Professor does not deny the claim, which of course can also happen, and then things get more delicate and beyond the scope of this comment, but still actionable.
In cases like that of the bottled water, where the difficulty is because it is a large package bundling several smaller items, you can open the package in the car and bring the smaller items inside in smaller groups.
What about grocery delivery services in the city like Instacart?
I saw the $400/hr in some article that I can't find now but this one from the SF Chronicle explains how the total work involved is more than just four two-hour sessions:

https://www.sfchronicle.com/bayarea/article/California-math-...

"The Oxnard district training or others like it don’t include only the time in front of teachers or at the district, but also about 18 hours of preparation, Boaler said, which isn’t specified in the contract. The deal also means significant travel time."

It's not uncommon for consulting to work that way where you pay $X for a report and a couple hours of presentation but theres a bunch of behind the scenes work you're implicitly paying for too.

So her effective rate was probably a little over $1k/hr. Doesn't seem that unreasonable for a Stanford prof.
I'm more concerned about sites I use OAuth with under my GSuite account - how are people migrating taking this into account? My biggest fear is I forgot to change the auth provider of a site I use away from GSuite.