skysight-inc/HackerNews huggingface dataset:
Journaling is definitely one of the things where you have to figure your own way out.

I tried a lot of things. Markdown based apps (Obsidian), Diary apps (Diarium), and so on.

What worked finally was pen and paper. Not any pen. Bought a bunch of good fountain pens (Lamy, Pilot, Parker), and bought a nice refillable leatherbound journal.

And I journal every night before my meditation session before going to bed.

I do not plan to read them or store them. I just write my heart out. I use writing as a tool of thinking, and dumping my thoughts. The stuff that have some particular qualities, evolve into actions (anywhere from visiting a friend or a travel trip to learning something new), blogs, or projects.

I do not plan to do OCR or any kind of special storage.

I hated digital journaling because I had to pick up the phone or sit somewhere to use the laptop/desktop. Also a quick figure would require me to at least open a tool, and at most made me connect my graphics tablet. Pen and paper just removed the friction. Now I just journal in bed sitting or half-lying under a lamp with my wifi turned off.

Pen and paper is my ideal workflow, and I reached here after months of trial-and-error.
My best advice would be to talk to a therapist.
Cypriot passports yes, peace out of America no. Just yesterday it came out that he funds a lot of technology and national-security offices within the government:

https://www.vox.com/recode/2022/6/9/23160588/eric-schmidt-am...

When you're that rich you buy insurance policies so that if any one state goes down, you don't go down with it.
Still no IPv6 support in Vercel in May 2022
> You can express the same things as an HTML document

This is not quite true. There are a number of mutual incompatibilities between the XML and HTML syntaxes at both parse and run time.

At parse time, it’s mostly in the direction of XML syntax making things possible (e.g. nesting paragraphs or links, which the HTML parser prevents), but also in the other direction (e.g. <noscript> has no effect in XML syntax since it’s essentially an HTML parser instruction); you’ve also got case sensitivity which matters for SVG; and there’s the matter of the contents of <script> and <style> elements and their handling of <>&, where the best but still imperfect solution is a crazy mix of XML comments, JavaScript/CSS comments and XML CDATA markers. (See https://www.w3.org/TR/html-polyglot/ for more details of all this kind of stuff.)

At run time, behaviour changes in such a way that it will break some JavaScript libraries, due to differences like .tagName being lowercase instead of uppercase, and .innerHTML requiring and producing XML syntax.
Sure, I was taking that for granted more or less.

But that doesn't mean anyone will buy a house by browsing some site and buying an NFT, even if this were prefectului legally worked out.

And that is because a house and piece of land are complex real world objects that don't live on-chain, and can be arbitrarily different from when the NFT was minted. Perhaps there was flooding and the house is now damaged. Perhaps there is some insect infestation. Perhaps the land is in the process of being expropriate for highway construction. Perhaps a nearby high-rise is obscuring all the sunlight and the house is to dark for your tastes.

The complexity in real-estate transactions comes from appraising all of these sorts of things, not from the need of keeping the lands registry up to date. To buy a house, you need to have an expert appraise it's status. You also need a contract that gives you some protection from hudden huge issues that your expert may have missed. These things take the majority of the time and effprt, and NFTs do nothing to help with them.
You are completely right - software should be transferable from one machine to another (and usually is).

It pretty much only works though if you assume your customer is honest, and don't spend too much time fighting it. Which means yes, some dishonest customers will buy once and use on multiple machines.

If you go the other way - assume the customer is dishonest - then you need "transfer checking" which in turn means external servers (at best) or staff (at worst). But a model where you get one-time revenue, but monthly-reoccurring cost (for life no less) is not sustainable.

Reoccurring revenue to match reoccurring cost is sustainable - hence subscriptions are popular with products that have reoccurring cost (development, support etc.)

Version upgrades were popular, but that is an "optional subscription" which works only as long as you keep adding things existing customers actually want. This was masked behind new sales, but once there's some market saturation this becomes a bigger problem.

Lifetime licenses should only apply to software that will be completely abandoned when sales dry up. Which means no online infrastructure etc.

I've seen other "lifetime" products "change name" to side-step the lifetime free upgrades license, and it leaves a very sour taste with customers.
If I could only get my priorities straight and stop building the distributed system (I'm close, I swear), I'm building a digital version where people can build online board games.

Since the rules can be exceptionally complicated, I invented a new language and database idiom to deal with the backend aspect. https://www.adama-platform.com
> I remain of the unpopular opinion that k8s is really only suitable for companies which are the size of google (imho)

This is simply not true if you use managed K8s (DigitalOcean, Google GKE, Amazon EKS, Microsoft AKS, ...).

Kubernetes provide a unified API to handle almost every aspect of your containerized application (networking, load balancing, rollout deployments, storage management, service discovery, ...).

You might not need many of those, but you won't have to learn another tool to set it up once you do need it.

Buy a cheap managed k8s with a single node, helm install nginx ingress controller and cert manager (with letsencrypt). Make your app read config from an environment variable, put it in a Docker image, push it to either ghcr.io or a gitlab container registry. Write a Deployment, a Service and a ConfigMap, eventually an Ingress resource and voila. Your app is up and running in no time.

Repeat the last 3 steps for all your apps. It's that simple.

You can then work from there if needed:

- setup a terraform to automatically setup your managed k8s and managed databases (if you need it)
- setup a CI/CD pipeline to build/push your docker images (github actions, gitlab CI, jenkins, whatever)
- add Prometheus monitoring and a /metrics endpoint in your app to scrap it
- add HorizontalPodAutoscaling
- store secrets in a Vault and inject them in your pods with k8s based auth to the vault using the pod's service account
- add more nodes to your cluster
- ...

None of those steps are required to start doing things, and all can be added without changes to your apps.

Yes, for small needs systemd+docker on an EC2 instance can get you far enough. But you'll need to rewrite everything when you need to scale. With Kubernetes, you won't need to rewrite anything.

If you want to self host and operate a k8s yourself, that's a complete other story, and I agree with you that you should not do that if you don't specifically need it.
There's a tricky distinction here. I'm pretty sure Java does provide data race freedom, in the specific sense that a data race is "Undefined Behavior caused by a write overlapping with another read or write". The Java standard says that the JVM isn't allowed to trigger this sort of undefined behavior. (Maybe some people say it's technically still a data race? I'm not sure of the right formal definition, but anyway the important thing is that in Java the UB doesn't happen here.) However, what happens when you do that can still be extremely tricky, and I think the Java compiler is still allowed to reorder reads and writes in ways that'll be extremely confusing if you have code that looks like a data race. It won't give an attacker arbitrary code execution, but it's very likely still a bug.
It seems to take about 50 years of headlines (2 generations) for environmental concerns to get through to the public enough to make an impact. This is actually a really underappreciated thing. What's the next environmental catastrophe in 50 years? (optimistically assuming we somehow start acting on and survive the current global warming disaster that was discovered in 70sa/80s)
Digital records are an extension of the mind.
75% of recent home buyers have regrets about their new home
Goroutines are better than C# async/await but C# is still a better language than Go.

When Java 19 lands you can have best of both worlds. Virtual Threads are equivalent to goroutines but you have access to better languages like Java, Kotlin and Clojure.
This is exactly the kind of angry and irrational response I've come to expect from malnourished vegans.

Thanks for proving my point for me.
there's archive.org https://web.archive.org/web/20220611061036/https://www.natio... but it also has the subscription popup there, a pattern I've been noticing more and more.

on edit: maybe archive.org should have reading options menu somewhere, so you can say read this without JS, reader mode, etc.
World Economic Forum wants a global map of online crime
Ask HN: What can be done about vague privacy policies?
I just was reading the privacy policy for the new global system my gym is migrating everyone onto. It all seemed fine, but there was one line like, 'also we can use your information in ways that are in our interests ( or third parties can) if it's not not in your interests" which basically leaves the door open for anything they decide to do. What is the point of having any other clauses? What can be done about this madness.
Network DDoS
Tell HN: Bitwarden does not export attachments in backups
I've been using Bitwarden for about 4 years now and cannot understand how a Password Manager does not export attachments when backing up your data. I understand this was the case when the only export format was a CSV file, but now with JSON files I can't get my head around the fact that I almost missed crucial SSH keys had I not checked the output. A simple solution would be to b64 encode each file and add it into an array!

It's even mentioned on their Help page - https://bitwarden.com/help/export-your-data/ but I still think it's a bit unacceptable that there isn't even a warning in the GUI about this.

And yes, I know there are ways to manually export the files, but I shouldn't have to do that.
This is how much money Wikipedia really has...
Sure, it's small, but it's every single vegan I've ever met, talked to online, or otherwise had experience of.

It's baffling. You won't find any vegans that haven't got depression, anxiety, or some other mood disorder. In all seriousness I wonder if being vegan is similar to an eating disorder, where people are looking for some measure of control in their lives and food is the one thing they can control.
Still have trouble seeing how this comes out ahead. Say you're at Google or Microsoft where it's 50% up to contribution limit, and you get $10K in match. That puts you down $12.8K vs. your hypothetical. If you're getting paid $45K more at the FANG, you pay 35% taxes on it, which puts you $30K ahead after-tax, and then you invest that in an after-tax 401k (or even just a normal investment account), after which you're in exactly the same situation but about $17K ahead each year.
Whataboutism isn't going to excuse shitty behavior. Crypto will continue to get deserved criticism while scams and greedy people are allowed to exist. Same with the banking industry. Do folks (beside the wealthy, and financial media) love what banks are doing? No.
Thanks, and likewise. I'm doing quite alright, considering. As much as I miss him, I'm more than anything relieved that he's no longer suffering.

And yeah, that demystification certainly helped. So did my folks and I (and Dad) sharing a rather macabre sense of humor. Nothing could've prepared me for rigor mortis setting in, though; few things are as weird as a human body being stiff as a log.
> Hard to find a reason for new LUNA to exist now that the stablecoin idea did not work and collapsed.

Except there is no more fervent pursuit than the pursuit of the greater fool. So that race will continue until laws finally catch up and close the staggeringly massive incentives to continue to lie, cheat and steal from those who believe themselves one step removed from the greatest fool.
That's assuming each player only logs once in a month, which is definitely not the case.
If they still use cadence/temporal[0] extensively this kind of blurs the concept of technical ”services”.

We’ve started to use it (temporal) a bit for general automations, and it’s pretty great. Monorepo with a lot of different activities (“microservices”) makes sense.

The activites are orchestrated in workflows (much like DDD “sagas”) and scheduled via temporal.
This gives awesome introspection and observability.

[0] https://temporal.io/
Nobody will argue about the advantages of a WYSIWG text editor, file manager or spreadsheet over their CLI counterparts.

The problem is that for any of these kinds of applications it is possible to do either a great GUI, which enables maximum user productivity, or a bad GUI, which slows down the user.

Sadly, if I try to remember the best user interfaces for such programs, the award still goes to some ancient MS-DOS programs that I had been using 30 years ago, i.e. the Brief editor for programmers, the Xtree Gold file manager and the Lotus 1-2-3 spreadsheet.

Those programs did not have real GUIs, because they had to use the text user interface of MS-DOS, but they already had the most important features of any GUI, e.g. tiled windows, pop-up windows, menus, histories for any kind of user input, many kinds of visual selection, scripting, keyboard macros, and so on.

After you learned the keyboard shortcuts for menu commands and maybe you also developed your own custom keyboard macros, it was possible to perform any task on those ancient programs much faster than on any modern equivalent.

I am not sure which is the reason, but maybe those old programs were more efficient because the mouse was optional. You could use a mouse if you had one, but the programs were perfectly usable without a mouse.

I assume that because of that, the developers paid a lot of attention of how to ensure that every task could be done by pressing a minimum of keys.

Even if most modern GUIs are supposed to also support a keyboard-only use, in practice I always discover that some operations are either impossible or extremely awkward when not using the mouse. (when using just the keyboard, a graphic selection cannot be expected to work as well as with a mouse, but any kind of text selection should be as fast or faster)

A point-and-click user interface is supposed to be better for a casual user, who cannot be familiar with the complex keyboard-shortcut sequences that might be needed for performing a task at maximum speed. This was certainly true for almost all GUIs in the first one or two decades of their use, but many modern GUIs have a lot of very well hidden and hard to discover options, so being a GUI becomes no improvement over a CLI where you need to read the man page.

In conclusion, there is no doubt that GUIs should be better for many tasks, but in practice one encounters too many bad GUIs, for which it may be simpler to use ancient CLI alternatives.
if err != nil is continuously painful. f(g(), h()) with error handling takes nine lines, maybe twelve? Everybody has to use Errorf() everywhere or nobody gets a stack trace.

There are no stdlib filter/map/reduce yet, and generics are new enough that most people are still writing the same for-range loops over and over. Lambdas don’t capture loop variable values.

x, y := f() sometimes assigns and sometimes shadows an outer scope.

defer isn’t block scoped, you have to simulate the code to figure out which calls are stacked at this point. Hopefully they’re added deterministically, but you can keep deferring stuff in a loop if you want.

(This is aside from the many ways Scala and Kotlin are far more readable than Java.)
US defense chief says China muscling neighbors, plundering resources in Pacific
Wow, this author is very dishonest as it does not mention any of the people who created this project in the first place. I was one of the people who worked in this project.

This was spearheaded by Boris Dayma, now at Weights and Biases.

This is an Open Source project with all code and methods in public.

See either GitHub (https://github.com/borisdayma/dalle-mini) or the hosted space in Hugging Face Hub (https://huggingface.co/spaces/dalle-mini/dalle-mini) or the project report (https://wandb.ai/dalle-mini/dalle-mini/reports/DALL-E-mini-G...).

This project was also covered in the NYT article on Dalle2 by Cade Metz.

The author gives no credits at all. That is apalling.

(Also, the one hosted in the HF Hub gives you better results)

I just realized that this person is either using our model (some point in the past) and not giving us due credit, or they trained a new model and the name just happens to match.

In the latter case, please ignore my rant and use my links as a reference to another project than the claim that this prpject is our project.
That is a good start!
Everybody loses because there aren't multiple road networks competing to provide access to the same places. There is just one network, right? This means the it's a monopolistic market, and in a monopolistic market everybody loses except the monopolist.

In a small town privately-owned roads can work because there aren't many outsiders using the roads, therefore the road owners are themselves the main road users, and so they may have the right incentives to do adequate road maintenance, and they don't charge anything because they have a reciprocal agreement, but a large road network that is privately owned would lead to a "monopoly equilibrium" where roads would be poorly maintained and road users would be charged high fees.
People dislike the style. However if style actually mattered in terms of the whether or not the code is useful, then no one would be using his cryptography contributions, let alone calling them his only "important" contribution, because the cryptography was written in the same style as the programs he wrote in the 1990s. (Bias: I still use them everyday.)
If that person is a criminal that shamelessly stole vast amounts of money from ordinary people then pretty sure all jokes are fair game.

You sorta give up your right to be treated decently by society at that point.
From the home page: " For our demo, we add our own bug to the kernel using a kext.
In a real world attack, you would just find an existing kernel bug."

This is attacking a memory safety exploitation mitigation tech, there needs to be a memory safety bug. Otherwise there's no need for PAC in the first place.
There is really no reason to go from Java to Go.

Go may win out in the early days of a program for resource usage and perceived complexity but by the time your team has cooked up some frankenstien of an application framework and tried to standardize logging, metrics, etc you would have been better off in JVM land from the start.
At least then you can pick battle-tested and supported frameworks.

Python, Ruby, JS/TS -> Go is a weird one though. I can understand why when people make that transition they think Go is the best thing since sliced bread. It's by far one of the easiest languages to learn, it's miles faster than what they are coming from and the tooling is way less shit than those interpreted languages.

However all of those languages represent a very very low bar. I think if the same people could be convinced to try Kotlin (or even modern Java) they would be a) surprised how easy it is these days and b) finally understand that it's ecosystem and tooling that really matters at the end of the day.

Though I have to say Go existing is by and large a good thing even if I don't like it. It helps get people off things like Typescript which are absolute garbage-tier onto something half-reasonable. When they grow out of Go they generally end up somewhere better, just takes a few years.
Hofstadter's books (such as Surfaces and Essences) provide a salutary reminder of how distant we are in AI technology in approach to a machine understanding of even ordinary human language expression. For those unfamiliar with his work, Hofstadter's premise is that analogy is the core of human cognition.
Changing the primary display using the Win32 API
Wikipedia is great. But it has become a cash cow and people are being used and tricked into donating.

People reading the fundraising banners (currently shown in India and Latin America) often think that Wikipedia must be struggling to keep Wikipedia online.

Yet the Wikimedia Foundation, the organisation that hosts Wikipedia (they don't write it ... all the articles are written by unpaid volunteers like yours truly) and which is asking for these donations, is richer than ever.

Each year its revenue far exceeds its spending, and it's asking for more money each year. Revenue has doubled every four or five years ( https://en.wikipedia.org/wiki/Wikimedia_Foundation#Financial... ). Internet hosting for example costs them just $2.4 million a year, and they have $230 million in net assets ... plus a $100+ million endowment.

If you want to know more or see the evidence, here are some links with further info.

1. 2020/2021 audited financial statements for the Wikimedia Foundation:
https://upload.wikimedia.org/wikipedia/foundation/1/1e/Wikim...

2. Wikimedia executives being paid salaries in excess of $300,000 (2020 Form 990):
https://upload.wikimedia.org/wikipedia/foundation/e/e4/Wikim...

3. Fact-checking an interview with a Wikimedia board member:
https://lists.wikimedia.org/hyperkitty/list/wikimedia-l@list...

4. Wikipedia is swimming in money—why is it begging people to donate?
https://dailydot.com/debug/wikipedia-endownemnt-fundraising/

5. On the Wikimedia Endowment's lack of transparency (it has never published audited financial statements):
https://en.wikipedia.org/wiki/Wikipedia:Wikipedia_Signpost/2...
I'm using jwm. 200kb binary, single xml configuration, mine look like gnome 2 with 10 virtual desktops. I like that my desktop layout haven't changed since 2008, no UX designer annoying me with new fad every 2 years. Screenshot: https://files.catbox.moe/t6qyve.png
Industrial IoT: Realtime remote control of smart factory between Korea, Finland
Facebook also stores all your data with the index key being a 64 character string.

A reasonable compromise, protecting people indeed.
NI Protocol: 'Historic low point' if UK unilateral action taken
There are multiple concurrent map implementation available - the most known one in C++ is certainly TBB's : https://oneapi-src.github.io/oneTBB/main/tbb_userguide/concu...
I believe they do. Configuration files usually have comments, GUIs typically lack that or documentation. If they do not, you have to look it up somewhere. GUIs could have documentation, but it is very rare I would say. It is something similar with the CLI flags as well. That is just my opinion. Maybe I am the only one who reads manual pages that explain what a CLI flag is supposed to do, or for example what key X means in a configuration file.

I have been taught more by those two, than by GUI. The only thing I could imagine that may teach me through GUI is Smalltalk, but that is very limited. On top of that, GUIs might be less common for whatever reasons as well in the UNIX world.
> JS is not worse than Python with [its] basic inference

JS semicolon insertion is worse, because it depends on the following line. In Python, an unescaped newline outside of brackets always ends the statement, but in JavaScript, parentheses, brackets, binary operators, and template literals on the following line change that. The Python rule also makes a dangling operator outside of brackets a syntax error, which is a potential source of unintentional introduction of ASI when making changes to code in JavaScript.