skysight-inc/HackerNews huggingface dataset:
Physics is the poster boy for reductionism, i. e. the ability to split any situation into its parts, understand those, and then reassemble a complete model that actually describes the world. Hence the jokes about spherical chickens (the approach works, but not for chickens).

Physics has also taught us to expect absurdly simple laws as the inner workings of seemingly complex observations. e = mcc would feel like a cruel joke on anyone trying to grapple with how reality works pre-Newton.

This mindset, and the so obvious wins of physics in its golden age (ca 1900-1970), from the atom bomb to the moon landing, also set unreasonable expectations for the other sciences.

Hence, people expected no less than a cure for ageing from the unraveling of the genetic code and the decryption of the human genome. Yet, as it turns out, biology cannot be reduced in the way that physics can. Genetics is a madman’s den of complexity, nonlinearity, and unpredictability. It’s almost literally what you would expect from a few million years of Perl snippets evolving. The same is true of neuroscience, meteorology, sociology, and, to a lesser degree, chemistry.
And yet still, where are your historical sources, not your opinions? You have’t provided one.
Waiting it out and selling you company does not obsolve you or the buyer from crimes. Same thing is true for Monsanto no matter how hard Beyer will try to say it's not their fault. Dow and Bayer knew exactly what toxic assets they were buying.
well, there's pricing, or rationing, or some combination (e.g. Pricing, with exceptions for those where we want to accept the externalities as a society for a greater good, like not charging ambulances). Which do you prefer?
Bhopal might have caused the most direct deaths or injuries but opioids have, IMO, surpassed that. Not to mention broken families, psychological problems etc etc.
https://www.hhs.gov/opioids/about-the-epidemic/index.html
I was struck by the lack of inheritance in go, that to me is brilliant.

I’ve worked with C# for a decade, and I’ve yet to see a use of inheritance that wouldn’t have been easier to maintain in the long run without using inheritance. We’ve limited our own useage to override methods in the standard library, but even then it’s often used to implement things that are really just terrible practices. Like adding search functions for AD extension fields or increasing the timeout in one of the older web clients.
My usual MO is to read and comment on what I find interesting, not the converse.

It's possible to write about how one is perplexed by what others find interesting, in an interesting way.

Also "Why is this on HN?"

It's not a 'why is this on HN' comment.

I expected better of him, honestly.

wat.
I think part of the problem is how real estate costs and huge franchise a la Starbucks are configured. When you travel in Mediterranean countries independent coffee shops 'bars' are the norm, and a good Italian espresso costs 0.80 euros. Part of it comes from the fact that bars sell a big assortment of alcoholics(and yes Europeans don't seem to have mental association between selling alcohol and getting wasted, so most bars are family friendly), sodas and indigenous sandwiches. That makes selling coffe not a central part of the business hence the reasonable cost, which won't dent your retirement plan nor make you feel miserable. What happened in the Anglosphere (and not only) is fundamentally a habit appropriation without the surrounding conditions to support it and this drives the prices to stupid levels.
How to prevent software bug from killing lives like Boeing's or Tesla's?
As an experienced software engineer, I'm sure people make mistakes as to err is human. Working at dahmakan.com, a SEA food delivery startup, the worst can happen when our software has problem is someone won't get a meal on time or a meal is wasted.

But for software of Boeing or Tesla, it is highly more critical when errors happen as we saw.

I would love to learn about your suggestions/experience about preventing these costly mistake from happening.
Rust or Kotlin
I used to see Pinker’s name and ideas around and thought he had something interesting to say, so I picked up this book.

What a complete waste of time. It feels like his knowledge of intellectual history comes from skimming Wikipedia articles.
Go has code coverage analysis in its testing facilities... why not use those?
try BILLIONs.
Large internet companies have a system that manages the process for LEO access, but your implication that they offer a "here's your login creds, grab whatever data you want" system is incorrect.

Google probably receives more subpoenas per hour than most companies receive over their entire lifetime, so of course they have a portal for handling such requests and managing the process.
I like the Go language for all of its efficiency and easy concurrency, but part of me can't help but think that they were dying to make some new syntax just for the sake of it.
Embedding does seem like one of the decisions Go got very right.

Many languages (thinking c#, Java, c++) say they promote composition over inheritance but yet make inheritance so mmuch easier to use.
SpaceIL lander enters lunar orbit
"Apple which held 86% of smartphone profits"

"Chinese competitors are basically giving up profits for growth"

It interesting how Apple have managed to capture so much of the profit in the industry, and consumers are willing to go with them rather than one of their essentially subsidised rivals.

I wonder how long this situation can continue for, some kind of reversion to the mean has to happen eventually.
Yes indeed. Porting code is also a great way to learn a language. And you learn a lot about idioms and patterns on both sides. Go innovated quite a bit in terms of simplicity. However, they also did a few things that they are now trying to fix like having generics and exceptions. Lack of overloading is something that I miss in other languages as well. E.g. in Javascript you often end up with these type checks to sort of fake things. These often get added defensively because the lack of typing just causes people to call things with the wrong types and it is common for that kind of code to not be noticed (fixed a few such issues when introducing typescript recently).

A lot of stuff in Java is just because (by now) it has a lot of history and baggage. JavaBeans were kind of cool back in the late nineties but mostly it's a really annoying convention by now. The notion of accessors is not obsolete but unfortunately was not part of the language design when they created Java. Since Java has reflection, they came up with naming conventions that allow code to inspect object instances and do things with properties based on naming conventions. This has been key to a lot of the Java enterprise stuff that happened after this. And it also facilitated creating UI builders that came with IDEs like jbuilder, netbeans, visual cafe, etc. when having a UI builder was still a base requirement for an IDE. Eclipse sort of broke that tradition by not including one (initially).

These days UI builders are basically very uncommon; which makes javascript frontend work particularly tedious and repetitive. Because there are no conventions, no typing, and quite often no meaningful test coverage in JS, it is basically impossible to deal with that in a UI tool. So, accessors matter and are not obsolete at all.

Most modern languages have more elegant ways to do essentially the same type of accessor mechanisms in the language. And also languages like Smalltalk had this (as well as UI building tools, refactoring, and a lot of other stuff that is still science fiction in the javascript world).

If you look at Kotlin, they fixed this while retaining the ability to expose code back to Java.

For example kotlin has properties with accessors that you can optionally override. Normally you just type val foo="bar" and you have a string property with an inferred type of String. The setters/getters generated under the hood and used automatically when you assign or use the variable. If you want you can customise the accessors or use something called delegated properties that e.g. turn a property getter into a function or use lazy intialization. Once compiled, a java class that uses that code would see the normal setters and getters as if it was a normal Java class. Likewise when accessing Java code from Kotlin you use java properties as if they were normal kotlin properties (i.e. without using setFoo(foo)/getFoo()). This makes Kotlin a really nice way of using legacy Java code.
Yeah, but Christian philosophy wasn’t (as against to theology) developed by Christians. They just copied most of Plato and then changed him to fit the narrative of their scriptures.

While destroying anyone who was considered a heretic (eg the argument between Gnostics and Adoptionists). And heretics were simply people who believed in interpretations of the scriptures which were simply a hit off the official one. Doesn’t that seem so much like USSR?
> Single executables yet without JVM?

Yes. The JVM is Java's biggest downside, so why would you want to just move to a different language on the same overly complex (to put it mildly) runtime.
First successful model simulation of the past 3M years of climate change
Are these magnets factory made or are rare earth materials required? What kind of impact does this have on the environment?
jOOQ!
Why Russia? Does being anti-US automatically make you pro-Russia? Does accepting aid from Russia against the US automatically make you pro-Russian?

I'd imagine that WL just doesn't care very much about Russia, an insignificant, poor country with relatively little international influence.
They would make all student loan debts inheritable in exchange for that.
Heres why Nasas audacious return to the moon just might work
I tried to implement a search suggestion system with a datalist a few weeks ago only to find out that it was not stylable, there were zero events I could catch to find out an option was clicked/chosen, and there is no identifier possible for choices (so a display string is the value, no ID possible = impossible to localize or use for non-human-input values)

Most shamefully lacking api on the web.
Ginseng modifies the kernel and protects sensitive parts by using the CPU's trusted execution environment[1] which has a higher privilege level than the kernel. From the paper

We now describe Ginseng’s runtime protection against such
accesses. The runtime protection heavily relies on GService,
a passive, app-independent piece of software in the Secure
world. GService ensures the code integrity, data confidentiality
and control-flow integrity (CFI). It does so only for sensitive
functions to minimize overhead. It also modifies the kernel
at three points, when booting, when modifying the kernel
page table, and when handling an exception. Since we do
not trust the OS, the kernel may overwrite the modifications.
However, when any of these modifications is disabled, the
kernel will infinitely trigger data aborts trying to modify readonly
memory, thus ensuring sensitive data are always safe.

I would have look at the source code to find more but the github repository has been deleted.

[1]
https://en.wikipedia.org/wiki/Trusted_execution_environment

https://en.wikipedia.org/wiki/ARM_architecture#Security_exte...

https://en.wikipedia.org/wiki/Software_Guard_Extensions
Glad to hear you've found it interesting :)
The design pattern espoused here is dated. The emerging consensus for exception-free Go error handling entails automatic dispatch of errors to local handlers. See the golang wiki[1].

I've drafted a menu of possible requirements for Go 2 error handling[2] because the Go team's Draft Design document omitted a requirements section.

[1] https://github.com/golang/go/wiki/Go2ErrorHandlingFeedback

[2] https://gist.github.com/networkimprov/961c9caa2631ad3b95413f...
I'm wondering if the goal of this porting project would've been achieved by Java's newly gained native/AOT compilation feature. Probably not, as a huge Java .so brings the JVM's infrastructure for gc etc., and too much overhead. Still, I hope we can get rid of the language-centric ecosystems we have in favour of established OS/POSIX ways for shared libs, or an evolution thereof.
No. Largely the dark pattern mobile "get the app" hassling. But also the sheer load time on desktop. And to a lesser extent the breaking of the "a bunch of mostly-static links with associated commentary" model. Using the site is quite unpleasant now.

And it's enough unpleasantness to keep me from going back to checking it regularly. I hope they keep it.
Google Shuts Down Artist Hub for Google Play Music on April 30
Interesting is very subjective term. E.g. some find theory much more interesting than games
Playing Pool with Pi (2003) [pdf]
They can host torrents at least. And then someone will make streaming over torrent (hint).
Ggplot2 Book: Springer Publishing Agreement (2014) [pdf]
GraalVM has a ployglot feature thingy that allows you to use Python/Ruby,Js .. with Java. This is apparently faster than microservices.

About a few years back ... A non-programmer friend asked me, why don't programmers use a single language ? I honestly didn't have an answer for that question. Look at the number of $LANGS we have. Almost every language does the same thing. For someone outside programming it is quite absurd.
While also completely ignoring the real issue native apps.
I wonder if it would have been easier (in terms of complexity, not in hours spend coding) to rebuild the project in Go (in 100% idiomatic Go) and port it to Java afterward. Sounds weird but since Go has such a strong focus on simplicity and Java probably implements most things Go uses, a port from Go to Java is probably a lot easier.
There are an estimated 1 million of Go programmers.

The goal of the project was to enable those Go programmers to be able to use RavenDB database in projects written in Go.

The company also maintains Python client library and Node.js client library.

It's not about Go vs. Java as a technology but enabling as many programmers as possible to use RavenDB.
> Error handling is a solved problem

True.

> exceptions

Nope. Exceptions aren't capable enough; you really want conditions & restarts: http://gigamonkeys.com/book/beyond-exception-handling-condit...

Conditions can be signalled, handled & resignalled like exceptions, except that they can be optionally ignored and handlers can optionally choose to restart. An exception unwinds the stack, while a condition is handled prior to unwinding, which means that the available recovery strategies are more numerous.
Churchill was one of them
I do use builtin coverage.

It's just it's nice to be able to track code coverage over time, which is what codecov.io provides.

Also, running all tests (to get full code coverage) takes 20 minutes and makes fan on my laptop unhappy.

The way it works is that on every checkin the CI job runs all the tests with code coverage enabled and uploads the results to codecov.

Codecov can then plot coverage over time.

My gripe is with inaccurate accounting of empty lines (like comments or struct definitions) by codecov. Go's tool to visualize this count them properly. I don't know if it's codecov or maybe I'm not sending the data properly.
What exactly can the UN contribute here besides scandals, mismanagement and theft?

I'd rather take my chances on land, or spend some money on a spot on a privately owned floating city.
These are not at odds. You want your machines to be uniform. If Intel calls you saying they'll deliver only two out of the ten thousand Xeon 1234-5 units you ordered this quarter, you call Samsung and cancel 80% of the order there.
However bad the system is, frivolous spending will not help things. However good the system is, it could never bear everyone spending frivolously forever.

So there is really no point to complaining, just aim for a frugal life style because no matter how good or bad the system is this will give you, individually, the best results.
I have an ornamental cherry in my garden just outside the back window.

The kitchen has a lovely pink hue at this time of year.

Perhaps I should start charging the neighbours to come round and picnic.
this is an example of a poverty mindset: spend the future today and then hope that some windfall will make up for it.

Sure, this can work, it might also fail spectacularly.
Thanks for sharing. I understood the contract was about replicating as much as possible the same structure or workflow as the original Java code but if you had to develop the same client in Go from scratch, where would be the main differences in your approach and how the Go code would benefit ?
Spock random order of tests – how to?
It's true that if those code bases were evolving together, it would be possible to make them more in sync by sticking closer to what Go provides.

But RavenDB is 10 years old. Java client already exists and has 50 thousands lines of code.

If I was trying to rewrite that from scratch, I'm afraid Joel Spolsky would find me and spank me.
Capture and Decode FM Radio
I don't work with safety critical software, but I think the advice in general is to avoid relying on software alone for safety critical functions.
"[Theses releases] might not run at all and in the worst case might restart or damage your system." Not very appealing but I decided to go ahead. But then, when I launched the installer, Windows (10) also warned me about an unrecognized application, so I hesitate. Would anyone here consider this software too risky to install?
Forget about the expansion of the universe; you could ask the exact same question for an observer moving away from a source and detecting a different frequency (hence energy) of the light emitted due to "normal" Doppler effect in a non-expanding universe. Energy (on its own) is not an invariant in (special/general) relativity. You have the same situation for measurements of lengths (i.e. Lorentz contraction). Energy is one coordinate of a four-vector whose "length" is the true invariant.

This is similar to a situation where you draw a set of perpendicular axis on a plane and use them to give coordinates (x, y) to a point. You then rotate the set of axis, keeping the point fix. Your question about the energy amounts to asking "what happens to the x-coordinate of that point?".
No, they don't. Methamphetamine and amphetamines are quite different. Methamphetamine is neurotoxic and crosses the blood brain barrier at twice the rate that amphetamines do. Equating the two is misleading, wrong, and will create stigma
Is SQL no longer featured as part of most Comp Sci/IS courses any more?
And now my 16GB machine suddenly has 17,2GB of memory, divided by the OS not into 4KB pages,but almost-but-not-quite 4,1KB pages.

For some parts powers of 2 will still work best, and the dividing line will probably always be arbitrary.
Yes, it is very rewarding to program your own graphics routines or your own simple implementation of a raytracer and then see the correctly rendered scene on screen for the first time.

I did this on my Amiga a lot time ago (1995), and then re-created the feeling using ShaderToy: https://www.shadertoy.com/view/lds3z8

It's so cool: A scene that took 10 minutes to render in 1995 - nowadays you can see that scene through a moving camera raytraced in real time in your browser!
Just read your design goals. Thank you for doing this!
I would split it into multiple packages.

I would survey existing libraries for other JSON document databases (MongoDB, Google's Firestore etc.) and steal all their best ideas.

But honestly, good API design is something that needs a lot of time to reach the polished state.

Whatever I can come with today, I'm sure a year from now I would find ways to improve that.

That has been my experience with much smaller libraries I wrote.

The more time you get to spend thinking about the problem, the better solution you can come up with.
If You're Being Offended, Your Society Is Doing Something Right
A Mysterious Infection, Spanning the Globe in a Climate of Secrecy
https://www.nytimes.com/2019/04/06/health/drug-resistant-candida-auris.html
https://www.drugs.com/pro/desoxyn.html

Methamphetamine hydrochloride IS methamphetamine. I don't know how that can be stated more clearly.

Edit: in addition they are very much the same. They cross the b/b barrier at different speeds (add mentioned) and are metabolized at different rates due to the additional methyl group but otherwise their pharmacological actions are very much the same. The differences in effects are almost entirely covered by the 2 potentially mentioned rates differences. To argue otherwise is to ascribe produced sociological effects which we create by now we treat the drugs to their inherent pharmacology which is just plain wrong.
> What do you do?

As a front desk person, refer to the laminated playbook card that explains to the LEO exactly what Motel 6's policy is. The card refers the front desk agent to request a warrant for any protected information. If LEO insists, call corporate legal, and comply if threatened with arrest. Make sure interaction is captured on security cameras.

Don't be facile. Of course anyone working the front desk at Motel 6 is going to be trained on what to do from now on.
> Single executables yet without JVM?

Kotlin native is coming along, uber jars are popular so only other departments is the JRE, Docker can bundle that

> Static typing?

Yes with good type inference and "null safety"

> Simplified toolchain without make/maven files?

You can use the compiler directly? But for anything serious a build tool is pretty essential for any language? At least you have options

> My big one after swearing off of Java was never needing an IDE to do even the simplest things - is Kotlin useable without an IDE?

You could write it with a Morse Code Keyer if you really wanted
Honey Face Mask for Acne
Demo: https://doman-236804.appspot.com/5/10

Tap the screen to start
Im curious if people find Samsung products top of the line. I thought they were a big advertiser similar to Apple, selling low to mid range products at heavy markups.

My S5 was awful with multiple bugs, quickly dead samsung SSD, my grandfathers smart TV was slow despite being bought in 2018, and horror stories about Samsung appliances.
Hi. I am Georgy. I found this position on whoishiring.
Would be glad to tell you more about my experience and hear from you.
email: g89250741413@gmail.com
My Linkedin: https://linkedin.com/in/georgy-savva-ba92b4126/
I’ve read that reading is involuntary to literate adults. Do you know anything about this?

This is such a great idea. In my experience, most people complain the subtitles are distracting because they can’t help but focus on them and read them.

This is exactly what learner readers should be doing in front of a screen.
> the unreasonable simplicity of fundamental physics.

How do you measure simplicity and how did you come up to the conclusion that fundamental physics was "simple"?
A Precursor Piece to DNA Was Found in Star Material
The problem with SQL is that SQL that works today will be too slow tomorrow. Fixing it involves trying to please the query planner, all while making your query less and less comprehensible.

As a contrasting example, the experience you get with ElasticSearch is that queries have predictable performance even as your data changes. In that way it's much, much nicer. On the other hand, you lose joins, which is a huge downside.
Find URLs in Text, Make Links
Thank you.
Would you mind publishing it on F-Droid?
I'd argue it's one of javas strengths, its fast and other than increasing max heap size tuning is only necessary for the hardcore FAANG etc
What's complex about installing openjdk-<version>jdk from your package manager? Your app normally bundles library dependencies so no virtual environment fuckery like python Ruby et.al
Long tail is a failure point of the torrent system. And it feels it's possible to solve, by someone with good programming skills , and some cooperation from a popular bittorent software.
GPS week rollover and the other sort of “zero day”