skysight-inc/HackerNews huggingface dataset:
I don't think it's reasonable to expect the average computer user to go digging through man pages to figure out how to do literally everything they use a computer for.

My mom relies on information and actionable instructions being presented in the context which it is used. I once discovered that she didn't know what a button did because there was a delay between pressing that button and the change it made, the delay was enough to break the cause and effect relationship in her mind.

You and I have spent our entire lives training on, memorizing UX metaphors and computer patterns. We go into a problem knowing generally how we want to solve it, so we know what to look for when reading a man page. My mom methodically reads every option in the context menu when she right clicks on a file in an email before choosing save, because nothing is obvious and if she didn't have that she'd be writing down explicit, context sensitive, step-by-step instructions for how to save an attachment (I know because before I taught her to read the menus that's literally what she did)
the original idea for windows was a gui with everything sending messages to windows, and everything was a window.

COM came along much much later.
Scott Aaronson explained how this claim is wrong. Quantum computing is not the same thing as "analog computing". See his response to "a quantum computer would merely be a souped-up analog computer" here: https://www.scottaaronson.com/democritus/lec14.html

> And yes, they are the same thing when you realize that the hardware is exactly the same

Quantum computers don't actually exist yet. It's a theoretical model. There's no hardware.
Some smart contracts (and underlying VM) are formally proven. My former employer invests heavily in that direction.

And it is very easy to verify "1+1=2" or "amount + amount X 0.12 X number_of_months".

But my point is that meat contracts are very expensive to draft and enforce. It is not worth to sue someone in China over $50.
You know Ctrl + [ is bound to escape doesn't even re-bind. I use a Thinkpad but I won't reach all the way for escape. Ctrl + [ is way easier.
I think that it is mostly familiarity, and once you start thinking about it you quickly begin to think to much and get lost in bad rationalizations, eventually bordering on the religious. When you believe that you can't overcome lack of familiarity you will never adopt, self-fulfilling prophecy.

My personal familiarity idol happens to be the Cherry rubber sheet series, kind of ironic among all the MX hype.
>GUIs, on the other hand, are much better about showing a user what options / commands are available.

In general this is only the case if the user is browsing and not looking for anything in particular. That is, when the user is trying to learn about the program in general.

If you're trying to find anything in particular, that thing might be hidden in an options window in a submenu of a submenu somewhere. The only effective way to find it is to google for the functionality and to hope that someone else has already asked the same question. This is my experience with Inkscape.

A well written, flat manpage can have much better discoverability than a GUI with poor or hard to search documentation. Bad manpages are of course considered harmful.
If the new tech is a robot that cleans your toilet, costs can come down until nobody ever has to manually clean a toilet again.

If the new tech is an on-demand market that hires a person to clean your toilet, the amount of manual toilet cleaning in the world is unchanged :)
Decentralised or distributed does not necessarily imply blockchain just because the blockchain has these features it could also be other things such as activitypub etc...
Funnily enough, I scroll down the HN frontpage and see: "Taskbook: Like Trello but for the Terminal"

I didn't open that yet, but the coincidence just made me smile (if you can call trello a "kanban" board)
"need to solve stability and identity first before tackling credit." that makes sense, yes.

"private-public key pairs should be abstracted away to the end user" what do you mean by that?

"I don't think they have the same network effect as credit systems"
What kind of network effects to do you see w/ a credit system?
Matches up with their current Twitter thread:

We're experiencing a network outage. Stay tuned at https://www.fastmailstatus.com . We're in close communication with our provider trying to restore service.

1:34 AM - 1 Aug 2018

https://twitter.com/FastMail/status/1024573967393157121
In this case I was using OP to refer to the content of the post, the 'original post'
It would seem that things are not so simple.

https://en.wikipedia.org/wiki/APNG

It's rather unfortunate that the apng file extension wasn't adopted instead.
>It's a game in which people have to live with each other, work with each other again, and perhaps, write another big contract.

It's the same in whole life actually, you never know how being bad to someone will turn in the future.
Sure, easy:

http://www.chicagotribune.com/news/opinion/commentary/ct-per...

https://www.indystar.com/story/opinion/nation-now/2017/12/20...

https://www.politico.com/magazine/story/2017/12/31/trump-bet...

https://www.usnews.com/opinion/articles/2017-12-21/donald-tr...

https://www.forbes.com/sites/billwhalen/2018/05/05/if-not-fo...
Are you laughing at me, one of my comments in particular, or Hacker News in general?
Even taking a photo of the licensing plate is not trivial. If the robot car does not follow the violating car directly then its license plate may be at an angle where it can't be captured and if it can it may be distorted or angled, so a human is needed to view the footage (if a video is captured) to detect the actual license plate numbers, so automation can be a problem in practice.
That might have been true once, but now every button is a different hieroglyph I'll take `man foo` or `foo --help` any day.
"dweb" and "dex" have both been used a bit within the d-whatever community (that community being users/advocates of Mastodon/Matrix/DAT/Beaker/Scuttlebutt/IPFS/Peertube), though the latter is more common, and the former is usually used to refer to protocol handlers enabling centralised websites to refer to the decentralised ecosystem, rather than as a name for the ecosystem as a whole.

So I don't think they're claiming to invent it. I do find it odd however that it's pretty much a zero-information lead-in article; it doesn't seem like this approach will hook many in unless they already know what they're referring to in advance.
> And then there is the mess that is "web-based" GUIs...

I am an all-for-native guy (Qt, etc.), but the "web-based" GUIs are actually bearable from the stand point of the developer with a CLI:

their data interfaces are HTTP, so it's easy to hook them into CLI tools

their graphics are decently accessible through Selenium
Your second sentence is a non sequitur as well as being ageist and possibly mocking of people with Alzheimer's disease.
That's quite a lot for one sentence.
My dad always claimed to have tickled trouts and I was always suspicious of this claim. At least I know now that it's possible.
Except you can still change something if it's on the blockchain, it's just that now you have an immutable record that it was changed.

So now if things go wrong, the other party suddenly decides they liked the old contract (which you'd signed) and you have yourself a court battle. If it's on the blockchain you can point to it and say, "yes we signed this old contract but you can tell here we both agreed to change it."
Yeah, Linode Newark is an unaffected vantage point. Same with Vultr, but Digital Ocean is no go.

Since the MX are spread between NYI/AS11403 and AS201628, I think that all mail delivery should still be fine.

I'm receiving occasional push notifications on my iOS FastMail app, can't actually read them though!
Backblaze B2 Application Keys Released
When the API it relies on changes, the person doing the change will fix WG rather than the WG maintainers. Also it enables you to update the kernel without having to hunt for the matching release of WG separately.
I could equally argue the opposite is true today. A good CLI program has either a —help option / man file. I run that and presto, I have every command and option succinctly presented.

Whereas with unfortunately far too many GUI apps today, discoverability is a trial and error mix of gesturing with various swipes, clicking odd shapes and asking friends how they accessed some random feature.
> I remember the days when CLIs had a HELP command built in and accurate enough. Oh and when people read instruction manuals.

Those days never existed. Support stories of exasperated developers are in abundance from 1970s.
So the git client I work on has a built in kanban that syncs with github issues, and I work on that part of the application as opposed to the git graph itself - Having dedicated the last 6 months of my life to a kanban, I'd be really interested to see how they solve a bunch of the UX issues surrounding not having a drag and drop pointing device, which in my mind is like the central interaction in a kanban board. Thanks!
I don’t like the article.

The code is not portable to other compilers/OSes so I can’t even run it here on Windows. The code uses inline assembly a lot, i.e. optimizer likely failed to achieve much, and for code like this optimizations are very important.

The reason for inline assembly is also worse mentioning, it’s for rdtsc instruction. Mainstream CPUs have dynamic frequency for the last decade. Recent CPUs return rdtsc values unrelated to the count of instruction it executed, it’s a counter running at some constant frequency. The code uses AVX, the CPU is therefore at least sandy bridge or AMD equivalent. Now in 2018, __asm rdtsc is no longer a good method for performance measures.
US embassy in London auctions off toilet rolls and old goods
I find it a bit concerning that they don't have a backup provider.
Well, that's about the only one related to stream programming.

It is called Functional Audio Stream for a reason.
Happy August from Devart
Which git GUI do you work on? I'm a big fan of GUIs for git mostly because I'm able to combine several views into one, such as commit log, file status (staging, etc), and diff. Show this all at the same time is such a huge time saver.

SourceTree is my go-to, but alas, there isn't a Linux version. GitKraken is a little... over the top. tig works in a pinch.
How will we make your essay writing more comfortable?
how we can make our essay writing system easy way .can we be in relax mood.?can we enjoy our time?
http://essaycaptains.com/
GUI applications can have good documentation, which, if they do, makes your point moot.

If we assume a given tool has little or no documentation, a GUI wins out.
Full disclosure: I work for one of Google's major competitors in this space.

> Well, Waymo is doing it right, and everybody else is nowhere.

... has been said for >5 years and looks ever less true as time passes. Remember when Google was supposed to introduce a finished fully automated driving system in 2017? Google had a very impressive technology demonstrator back in 2012, but they have had endless trouble turning that into a viable product. Turns out "let's just throw ridiculous hardware at the problem" leads to issues when you have to build millions of the thing. Even if there system were perfect already, which it isn't, it is not fit for integration into production vehicles. That's why Google has had very little success trying to sell their system to car manufacturers.

Meanwhile, their competitors are progressing along the "bottom-up" path to full automation quite rapidly. Many basic driving tasks are essentially solved already and will filter down to production vehicles over the next few years. I can't know where exactly Google is right now and obviously I can't state where we are, but I fully expect that the different paths to full automation will converge in a few years. Several companies will have systems that are "good enough" for 90% of common driving use cases. Whether Google's system is at that stage already is unknowable, though their testing seems to indicate that it is not. But if it is, Google are still in a race to "miniaturize" it into a viable product before the competing (already viable) products reach the "good enough" level of performance.
I randomly checked few servers using NordVPN and was able to connect via Russia.
Or distributed hashtables.
> I don't care about academics [...] literally everything about the internet is better today.

The average message posted to comp.lang.c before Eternal September was far batter than the average message posted to HN, Proggit, etc. But many of the former were written by academics, so you probably don't care.
Gitkraken lol
You Can Give a Boy a Doll, but You Can't Make Him Play with It
One could argue that web GUIs are the best of both worlds. If done right, user can easily discover new functions and how they are used, while they still allow interaction with other apps through REST API. They can also be used remotely, the HTTP stream can be forwarded through different means (SSH,...), there are standard ways of authentication,... If done right.
The argument here is that every tool should have a programmatically accessible core (prob pipelines in linux, apis in windows, etc) and that the GUI should be built in addition to this core.

vim didn't do this correctly, so neovim was born (which sort of proves his point imho). One of the goals of the neovim project is to enable the implementation of new/modern user interfaces without any modifications to the core source since the existing C89 code is hard to deal with.
How does this differ from bash-completion?
Millenials Lead the Way in Crypto Investments
Nope, big mistake. You cannot just search for "Café" in "Café", as there are multiple representations for the same character. Think of Cyrillic vs Greek, Han vs Hangul. The popular garbage-in, garbage-out doesn't apply to unicode identifiers. That's why the Mac filesystem normalization was correct, and the unix filesystems are all broken. If it's not identifiable it's no identifier.
That's why java and cperl are the only languages with proper and safe unicode support. Python 3 is a bit better than Python 2, Perl6 better than Perl5 and the rest, but still don't apply unicode security guidelines for identifiers.
It's much better for browsers and email clients.

And with case-insensitivity it gets worse, as there are some locale dependent additional rules, for Turkish and Lithuania. And this depends on "some" global settings.

http://perl11.org/blog/foldcase.html
Please don't shame the differently abled.

Alzheimer's disease doesn't really hold you back these days. We've elected presidents with Alzheimer's three times in the last 4 decades. I mean, how much higher can you go than that? What better proof of their competence do you want?

They managed to pass through our electoral system, right? How dare you judge their mental abilities? How dare you, sir? Let's see you get elected president, buster. What are you, some kind of doctor?

Not that there's any trend as to which party keeps electing the "differently abled" to the highest office in the country, no sir... I mean, my heart and my best intentions say that is true, but the facts and the evidence tell me it is not. /s

After all, we all know that decorum is what's really important, in fact more important than saying what needs to be said. Which is that Republicans keep electing actual dementia patients to be President, and keeping them in office even when that becomes obvious. And, that the US political system is founded on broad assumptions of good faith and isn't built to handle intense partisanship to the extent that a Congress would refuse to deal with an obviously senile president.

But hey, it probably worked reasonably well in an era when your average elite lived to be like 50 or something. We're no longer in that era, and it's time to put a maximum age limit on the Presidency as well as a minimum, and start enforcing the 25th.
This is really a really good description of the problem. People use computers in ways that seem bizarre to us.

Another e.g. I have lots of scientific colleagues (I don’t think any of our teams programmers) who still don’t know when to single click vs double click, OS vs Browser. All they know and care is that double click works almost everywhere.
Thanks for posting this. I live in China and thought Fastmail was finally being blocked by the GFW. Over the past year I've had intermittent issues with connectivity and I've wondered if FM's time in China was up. Are there any HN readers in China that have experienced similar issues with FM?
> people (for the most part) don't actually want completely and utterly binding contracts.

This was a "completely and utterly binding contract" but they changed it cause it was the right thing.

Why would a blockchain contract be different?
There is work to recover the scrolls that were burned in Pompei and Herculaneum. I find that pretty remarkable.

https://www.smithsonianmag.com/history/buried-ash-vesuvius-s...
But how do you know which CLI program to use?

Also, help is nice but I often end up having to search up examples to find out when certain options are appropriate. awk is my very least favorite in terms of "ease of use".
That's because you conjure up a picture of complexity, but a contract can be trivial.

If I were to swap 10 eur for 12 usd with a counterparty I'd shun any wiggle room in that contract.
I always thought something like this would be neat to explore further: https://www.youtube.com/watch?v=gifzjhyBwOc (warning: contains some intense flashing at a couple points).

A GUI is ultimately producing a stream of actions; these actions can be reified as text and displayed. Then you can copy the text to perform the actions again, modify the text, include it in scripts, and so on.
I've often figured out a GUI faster than it would take me to sift through to the relevant part in a manpage. They work well enough as a reference but I don't understand how people genuinely think they are the ideal tool for learning how to use some new software.
I just started using org-mode recently and I also saw some overlap.

From the readme it looks like it is single user - like org-mode. I wonder is any organizations have developed group/multi-user features for org-mode?
I've been using this for a while now, and it has been a godsend.

That said, I do consider it a ding against MacOs, because it's ridiculous that I'm forced to use third-party tools for such basic functionality. (Other examples: USB-tethering with non-Apple phones requires hunting down and installing third-party drivers. A feature that just works, out-of-the-box, on every other system I've ever used.)
A good GUI will show you how to use it. That’s what UX is all about. But a CLI will always have to be learned.
Show HN: Predict traffic in Helsinki using machine learning
How do you know which gui programs to install?

Not everything can be done with microsoft home office.
Gmail is especially bad about that. Luckily there's an option to change buttons to use text labels.
This can be made even more simple as a contrast.

Hand an average consumer an iPad. Then hand them a laptop with no interface except for a command line.

Watch what happens. We already know exactly what happens. The average consumer absolutely detests the CLI. The iPad GUI is so trivially easy to immediately learn to use that children in third world villages with zero formal education and zero knowledge of modern technology can instantly pick it up and begin using it without training.
> If it can save 40k lives per year it’s in any case a no-brainer.

Just saying that doesn't absolve you from making an actual argument.

> Ask all the millions of people that have a relative killed by a car if they would care at all.

How motherfucking dare you! My father did die in a car crash when I was a kid. But I also live in a country where totalitarianism actually happened. You should wash your mouth, and then you should sit down and make the argument.

Because to reply to all of it, including

> "If you are Black, gay or any number of other things, are you cool with giving up such control in an openly hostile social climate?"

with

> "If it can save 40k lives per year it’s in any case a no-brainer."

is absolutely not good enough. Would you be okay with that being quoted "out of context" like that (it wouldn't really be, it's the degree of seriousness you decided to muster) like that on billboards with your real name attached to it?
Programs should have a UI that make them as useful as possible. For a large client app “useful” means discoverable, efficient.

For a small text utility such as “grep” a good UI night absolutely be CLI.

I don’t see how someone would argue that a photo editing app, music workstation, IDE, CAD program etc would somehow be better because it had a graphical UI that was layered “on top” of something that was textual?

I think some of the Unix people bashing (no pun I intended) GUIs just don’t use programs where GUIs shine. Sure there are cases where a GUI could and should be layered on top, but for complex media apps it normally doesn’t make sense.
True. From an API standpoint, SPAs actually improved the situation a lot: Introducing an API boundary and separating concerns is now a routine part of developing an SPA.
How does that differ from a standard legal agreement? At any time two parties can make a new agreeement, with or without a court battle. Your immutable record is documents filed with the government on public record.
I don’t think the last part has anything to do with the topic at hand, however

> open source is always better than proprietary

I don’t think anyone has ever claimed this. But for people ( like me) who care about their freedom, it’s mostly a small sacrifice you can make to retain freedom. I find the latter is more important, not that OSS is _better_.
We’ve already had ‘considered harmful essays considered harmful’ [1], now I’m waiting eagerly for someone to write ‘software development considered harmful’, followed speedily by ‘communication via any form of symbolic representation considered harmful’.

[1] https://meyerweb.com/eric/comment/chech.html
Yes this is a big plus for CLI. I don't know how many times "something --help | grep keyword" has immediately solved a problem while for GUI apps you always need a google search. I mean it's not really that bad, you always have the browser open anyways and 99% of times someone had the same problem before, but still, it just feels cumbersome.
Exactly. POSIX and the C/C++ standards don't support strings and utf-8 yet neither. coreutils and grep neither. Most computer languages neither.

It's a mess and a big security risk. We are still in the stone age of string support.
Reading the compiler code... well, I think I'll wait they write the documentation.

But how's that possible in general? Example, JSON parsing of data from a HTTP request. This is pseudo code

# request.data is
# {"a":1, "b":2, "c":"a string"}
data = parse(request.data)
total = data["a"] + data["b"] # 3
total = total + data["c"] # ops!

The last line is either a compiler error (how? forbidding input is not an option) or a runtime error (Grain doesn't have that) or what?
Why I Spent $500,000 Buying a Blog That Generates No Revenue
COM is not a "message bus" and the operating system APIs are mostly not COM-based.
>you have the uniform distribution over those strings. This makes sense in the original context of encoding random data.

Lossless compression is nothing more than taking advantage of prior knowledge of the distribution of the data you are compressing.

Random data isn't always (or even often) uniformly distributed. Everything we compress is "random" (in the context of information theory), so I disagree that it makes sense to assume uniformly distributed data.
Does not mean that basics like VSync will work.
Twitter is an order of magnitude smaller than FB