skysight-inc/HackerNews huggingface dataset:
My Haskell isn't good enough to translate, but I'd love to see these examples in Rust. I believe Rust has all of the Haskell features mentioned in this article, but with a much more familiar syntax.

The tree data type in Rust could be:

enum Tree<A> {
Leaf(A),
Node(A, Box<Tree<A>>, Box<Tree<A>>),
}
I know that empirically, in terms of what society thinks, you are probably correct, but what is wrong with designer babies? Isn't it the only way we can continue the further improving and developing of the species (instead of making it worse by artifically keeping people with genetic diseases alive and reproducing), at the same time also avoiding the more horrendous parts of natural evolution and selection like genocide, race wars or idiocracy-styled trends of selecting by the dumb metric of sheer number of kids?
I interpreted it as "the project wasn't ready [in time for] a deadline". But I agree, the concept of a project that is somehow too immature or unprepared for a deadline is though provoking.
It's even better to bring business and good treatment of workers. Your argument is not wrong, but it's sometimes used to defend sweatshop practices.
Nice layout on that website, I liked the 2 column format. Less distracting than the usual "jump up and down between text and pictures".
To dismiss something as 'meaningless utopianism' just because it doesn't agree with your personal experience is incredibly naive and shortsighted.

There are plenty of legitimate reasons for wanting a decentralised alternative to banking. Just recently there was an article posted on here about how money is used as a system of control. [0] Even under the best case scenario of well regulated financial institutions in a functioning democracy there is still little recourse/accountability if these institutions or the government decides to freeze your accounts. [1]

[0] https://news.ycombinator.com/item?id=21043888
[1] https://news.ycombinator.com/item?id=21044914
You're trying to have it both ways - self driving is not an invention because they have not done it yet, supersonic is not because it's done already. By that measure nothing would seem to count. Also cheap supersonic has not been done - Concorde was expensive.
Something i've done in the past is write multiple backends for an internal DSL like this. One runs the tests, another one prints out the steps as nice-looking HTML to show to The Business. It means they can't read and edit the source code directly, but in practice, this doesn't matter. We even had one that produced Excel files that could be handed over QA as manual test scripts, so they could reproduce what we were doing.

An old boss once pulled off a hack where code drove a browser test, but you could run it step by step, with the element being inspected or interacted with being highlighted with a red border, and a separate window explaining what was happening in natural language. Non-technical people could follow along with what the test was doing. It was an amazingly effective way of explaining what automated testing was all about.
It makes me sad how many of the replies here seem to have completely missed the reference. The fact that it's upvoted to the top gives me some hope, at least.
I have been thinking about this weirdness a lot. In my book communicating via electric currents while seeming weird, isn't because of it's pure practicality. Digitizing these currents instead of transmiting an analog signal seems weird, but isn't because it allows faster, errorfree and more diverse communications etc.

You can go on and follow the technical developement, but you will inevitably reach a point where people stopped understanding the whole stack below them and instead started to cobble together new abstractions from the things they did – until the next generation came and abstracted that. We all know this – it is far easier to add onto something existing, than removing or changing existing things that are just not good enough for the things we want.

So at a certain point you stop doing the rational and efficient thing to solve a problem, but react to more or less organically grown structures and go a extra mile to solve problems you might have never had if you included these capabilities in the existing layers below. But the existing layers below were written ages ago in languages you hate by obscure circles talking on mailing lists, so we don't even bother. The resulting Rube-Goldberg-Machine is weird in that sense: nobody rational who understands all the layers would plan it like it is from the ground up if they had the choice.
interesting. I thought it only happens in movies.
Apple is a publically listed business operating a service (the app store). Their board and directors have a legal responsibility to comply with requests like this.
Their failings don't remove their achievements.

In the case of Gandhi it's not just the current criteria. Even during his time people saw him as a shitty person. It's good that we stop worshiping great men.

Rabindranath Tagore saw him as a nihilist with fierce joy of annihilation. Many Dalits (untouchables) saw Gandhi as the enemy. While he worked alongside them in some aspects, he was patronizing towards them. Ambedkar said that Gandhi did not deserve to be called mahatma.

Gandhi was monster towards his family. He denied education for his family and tried to force his sons to celibacy. He was against giving his wife penicillin to safe her life for religious reasons and she died. When he himself became a sick soon after, taking quinine was suddenly OK.

Gandhi was a fanatical opponent of sex for pleasure. But just because he didn't do intercourse didn't mean he was not sexually active. For all his celibacy, he had a harem of teenage girls who fought hysterically for the opportunity to sleep naked with him and hold him. Those same girls also gave him his daily enema. He was in today's terminology into 'assplay' and practiced erotic sexual denial with underage girls.
> I don't understand how it became so popular

Git follows in spirit the model of BitKeeper, a software that already worked exceptionally well for Linus and other kernel devs. So Git had both a known good design from the very beginning and a decently sized installed user base (kernel devs) with an important project (the kernel).

IMO there's nothing wrong with the cloning of software. You make it sound bad, can you give reasons?
Why should

enum Tree<A> {
Leaf(A),
Node(A, Box<Tree<A>>, Box<Tree<A>>),
}

be more "familiar" syntax than

data Tree a
= Leaf
| Node a (Tree a) (Tree a)

?
If you think that's bad you do not want to know what's happening in the code for a desktop or a native app.
The University of Ghana removed a statue of Gandhi last year, that had been there since 2016, after several professors petitioned for its removal. Is this the takedown you are referring to, that makes you fear about all statues in general?
Then maybe they should not operate the app store at all if it's incompatible with user choices. Or at least, leave the user a choice to just download an app elsewhere if they want to.

Clicking on a link and installing an app like you would do on windows seems the right thing to do.
I suspect we work at the same company :D
I never thought about that. Thanks!
Do you recommend reading the newer books by John Warrillow? Or should I just read the classic Built to Sell?
Imagine arguing Saddam's Iraq wasn't a basket case country. Iraqi celebrated when he was gone for a reason.
I'm from the UK in my 40s and I understand the concept of ethics and that mega-corporations are driven by money. At all costs.

That being said...

I suppose I let my guard down a bit and got slightly starry-eyed about Apple but I genuinely believed they saw profit in NOT being assholes like Google. That being different and taking a stand was going to make them vast sums of money.

Plus, Google does not align with my vision at all and there was an Apple phone going free so I made the leap.

Clearly it's all marketing and they are no different to any other mega-corp and if there is profit to be made in feeding people through a woodchipper then they'll do it... like the rest of them.

*takes rose-tinted glasses off
I've been using Haskell for quite a bit in production. My personal take, as an engineer who is generally skeptical of fancy language features:

Plus:

- The type system. It can make your life a huge pain, but in 99% of the cases, if the code compiles, it works. I find writing tests in Haskell somewhat pointless - the only places where it still has value is in gnarly business logic. But the vast majority of production code is just gluing stuff together

- Building DSLs is extremely quick and efficient. This makes it easy to define the business problem as a language and work with that. If you get it right, the code will be WAY more readable than most other languages, and safer as well

- It's pretty efficient

Minus

- The tooling is extremely bad. Compile times are horrendous. Don't even get me started on Stack/Cabal or whatever the new hotness might be

- Sometimes people get overly excited about avoiding do notation and the code looks very messy as a result

- There are so many ways of doing something that a lot of the time it becomes unclear how the code should look. But this true in a lot of languages
I got a cheque a few weeks back from HMRC and it was the first one I'd personally seen in over 10 years - it seemed like something from a different age.
Possibly the closest "mainstream" product to Hypercard-on-the-web?

(Actual Hypercard is on the web now too: https://archive.org/details/hypercardstacks )
Unfortunately, the 1-step optimal learning rate often differs massively from the long-horizon best choice:

https://arxiv.org/abs/1803.02021

Due to the fact that larger LRs can result in worse immediate performance but better progress in low signal-to-noise ratio directions.
The syntax and terminology (enums, structs, etc.) is more familiar to C++ / C# / Java users.
No, they often lend out from cash accounts.
>If you were not part of the governing minority you got brutally suppressed. If you dared to voice a different opinion you got send into prison for a nice round of torture. And that's just the tip of the iceberg.

Maybe, but:

'I toppled Saddam’s statue, now I want him back'

https://www.bbc.co.uk/news/av/world-36712233/i-toppled-sadda...

Elsewhere he said that there are now '1000 Saddams'

https://en.wikipedia.org/wiki/Kadhem_Sharif
Couldn't this be amped up by having at least 3 sets of Tx and Rx and get locations of moving objects? That's the dream application for LEOs, not gait recognition for which you would seldomly have data.
Just turn off wifi/data while using the app (not sure, but I think you can also tweak this in your phone's settings for the app to not give permission to get data without being opened...)
The science-based benefits of writing
Is it possible to celebrate the good things someone has done without it being a full endorsement of everything they ever did and said?

I guess that depends if you're the injured party. If not, that might make criticisms seem "nit-picking".
Lamport Timestamps
We laud past figures for their achievements in past.
>I thought that Apple, with all the power they have, could perhaps say to the Chinese gov... "No, the app stays!"

China and Apple and (with all the power), the power discrepancies are so far in China favor that - China would just block Apple entirely and not blink.

W/o China's blessing Apple won't produce a single phone...

About being disappointed - Apples holds one of the most abhorable practices when it comes to repair and maintainability. For instance I still don't understand how their laptops don't have conformal coating.
Given that the last job I had was maintaining ancient MFC-era C++, the nativest of native apps .. actually, it's pretty straightforward, because so much of it dates from the era when there weren't cycles to waste, but as soon as you touch COM the insanity creeps back in.
As long as the Electoral College is there, the US is not democratic either.
> Yet allowing anything to be installed is the cesspit of Windows virus laden software.

Okay, I have seen this false choice enough times over several years and at this point it annoys me so much that I must speak up. No, Windows is (was? I have not used it for more than a decade) not the mess it is because it allows you to install anything. It is the mess it is because it there was no sensible source of approved software. The choice is not between anything goes and a walled garden, there is the middle ground of providing a solid source of approved software (frankly, I think Google has largely failed with this given the state of their Play store) and still allow side loading for cases such as the one mentioned in this very article. Heck, this was one of the amazing things I experienced when moving to Linux in 2005. You had 98% of your software approved and receiving updates through your OS, and then a game or two, oddball VPN, etc. installed in your home directory – it was endlessly refreshing.
This website uses scatterplots instead of lists to display products:

https://www.productchart.com

So on Product Chart, you can for example say "Show me 300 smartphones and put the price on the x-axis and the size on the y-axis".

It's a bit like you would lay out things on a table and then organize them by some criteria.
ECS is a hodge-podge of concepts, each implementation mixing in different proportions some or all of the following: relational data model, data-oriented architecture, flexible recombination at runtime, removing the fixed inheritance graph, cache-friendly flow.

What's in the article is really closer to "relational data model" than all of these above. All these dictionaries are essentially implementing SQL selects. The "relational data model" lens to viewing ECS is that it's essentially giving each component its own table, and doing plenty of joins.

I find this really interesting, and my current side project is a roguelike game that focuses only on that part - relegating all game ECS into an in-memory SQLite database. I decided to go that way after trying to improve my last attempt at an ECS framework, only to realize I'm essentially hand-coding SQL indexes, and that's not something I want to do when I'm prototyping a game.
Yep.
This violates the rules. This isn't ad space for your app. Should be something like "show and tell" where you show us HN readers what you've built to see something interesting w/o paywall or having to contact someone for access or having to subscribe to something... etc.
I find it unacceptable for my own personal needs and use case, but it's not unacceptable as a business decision in that it's arguably been very successful (profit-wise and brand-loyalty-wise).

That's why there are options (mind you, very few in this case, but that's kinda beside the point).
> be in court as a witness and possibly defendant if you don’t leave ASAP

Might be able to quit the job, turn them in for HIPPA violations and also claim unemployment (source: I did this at a job that was violating HIPPA)
Relatedly, how do they track security issues in their dependencies?
Thanks. It is really good advice. Seems like dropping little bit of ego, gives lot back.
http://www.dontclick.it/ is a super old (Flash) demo of a UI that doesn't have any clicking
Christopher Hitchen's reporting on Mother Teresa comes to mind.
> to climb the hills riders hang on to passing trucks, sometimes using homemade hooks on a line

Something of YT from Snow Crash about that.
Just choose - we have to accept this. Nice UX or freedom - the big corporates will always win the battle of UX. Free software will always be less cool. Choose.

"you'll have fashionable and functional technology - but at the cost of freedom"

We have to accept that if users only choose something "that just works" or it works better than the Free alternative then they are not choosing Freedom.

Of course reading the above doesn't in any way mean that Free software shouldn't try to have good design, UI and UX, just that Free software will always lose if that's the main criteria to choose from. And there's a danger of knowing that this war could never be won that it might not be worth fighting. This also needs to be accepted and acknowledged - we have to fight the war but change the terms.

Simply look at any HN thread about Free software or alternative services and you will find the majority of users right here basically saying "well I support Freedom in theory but this non free thing is simply nicer to use".
he said that in his twenties, when he was loyal servant to the british crown. Freedom movement, ahimsa, indepedence etc all came later. Much, much later.

There are lot to hold Gandhi accountable for - things he believed and did after he became the mahatma/saint. His own fundamentalist believes (religious and other unscientific irrational backward believes), his tolerance of islamic fundamentalism even when it was killing thousands for restoring the caliphate that British eliminated post WW1(for the sake of unity against british), his actions that worsened the hindu-muslim relations that resulted in even more riots and deaths, him considering and treating his wife as his personal property and denying her life saving meds due to his belliefs in quack science, his belief in the caste system (even though he fought for the rights of the lower castes, he believed in the varna system and held on to the theory that it's misused), how he acted like a dictator and sidelined anyone who didn't toe his line, his irrational believes in life after death resulting in misplaced advices on taking ones on life when faced with genocide/murder (he gave the same advice to jews facing nazis and the poor hindus facing mass murder in noakhali - apparently non violence is so important, even self defense should not be), his decisions (such as quit india movement) that resulted in the deaths of tens of thousands of poor indian nationalists while he just watched away unmoved with their deaths/suffering - many more. I would start with Ambedkar's writings/exchanges on/with Gandhi to get details.

As an Indian, he is no saint to me, but I see why people consider him one. Having said that, it's beyond laughable to condemn him for what he said in his twenties when he was loyal servant to the british and compare that to what he became later.
Normal for consumer banks, yes. Business banking is rougher. The RBS treatment of small businesses was notorious: https://www.theguardian.com/business/2018/feb/12/confidentia...
What about runtime stuff? I've found Haskell is very good at abstracting away your concerns about the runtime considerations and sometimes it will come back to bite you. I mean all that stuff you want to see into when you're running your app in production, like caching, function invocation times, threads etc.
How to come up with blog post ideas – Robert Heaton
United Kingdom Budget Visualization
I know what enum is, but data for me is just 1 and 0.

Are we assigning here with the =? What does the pipe symbol mean? Why pipe instead of another =? Why the weird formatting?

To me Haskell's look is too off-putting. With the Rust example I have a good guess what will the resulting object will look like.

But I know it's just a learning experience. Once I would know Haskell your example looks more elegant to me. I just don't get it from looking at it :)
Earthlings (2005)
I highly recommend Joseph Lelyveld's book[0] to anyone interested in reading a generally unbiased biography of Gandhi.

[0] https://en.wikipedia.org/wiki/Great_Soul:_Mahatma_Gandhi_and...
Yep, GHC is an incredible compiler and Haskell is an incredible language. If only Haskell had a package manager as slick as Cargo, I'd use it for just about everything.
Show HN: Explore Remote Companies
I'm not old enough to have known Hypercard, though my thesis very adjacently touches on it (kind of, not really, but it talks about Douglas Engelbart and Ted Nelson and hyperlinked text and how it devolved -- according to Nelson -- to the www).

So it's really cool to see hyper card for real this time!

Oh! Of course! I presume you can also inject JS into Google Slides itself. Hmm... I'll see if I can make a simple game then, when I'm bored again.
I actually work on one that is trying to do it, www.getbux.com

Netherlands and Germany for now.
As other commenters have said, they make only a tiny amount of revenue from PFOF. If it was to the detriment of their customers, it wouldn't be worthwhile for them. But it's also possible that they don't care much about customers who do a lot of large trades, since they're making money from net interest.
Revolutionaries are ordinary human beings with real character flaws and struggles. A lot of them have been people looking for redemtion or with nothing left to lose.
Can't really comment on that - most of the code I use is built on the awesome Haxl[0] so we never have to worry about those things. I'm curious what other people think though

[0] https://github.com/facebook/Haxl
> employment law and regulation is not easy to change as it impacts the lives of so many

OK, so assuming a significant amount of people disapprove of these laws, why are they not changed? Do you suggest that it is institutional inertia or populist pressure?

I know about the 6 month rule; it seems like a logical and useful feature.

In South Africa the answer is simple about why our practical implementation of regulations is not good: our government is dysfunctional. From a point of view of our actual laws, they are well written and better than many European countries, but they are selectively implemented.
> But CPUs are maxed out for now, I think, so I'd expect that the current cycle will be a long one.

CPUs in the future may be a mixed bag, there may be different coprocessors, but integrated in the same physical chip - more advanced SoC. At least this picture is what I find to be the most convincing after the end of exponential scaling by Moore's Law.
I was in elementary school with one of the suspects. He was always a troubled kid. Very sad how that turned out.
Hmm, that's a good point.
That's never been the case with iPhone apps. It's the app store or the highway. That's practically advertised by Apple as a feature of their ecosystem.
That sounds exactly like my ex-boss. Never stopped going on about how he once worked for Qinetiq and they had him implement an FFT on an FPGA... last I checked that was a fairly common student assignment in FPGA courses.
Money as a system of control from the point of view of someone with a vested interest in cryptocurrencies. I'd be more interested were it from an even slightly known economist or other dispassionate observer.

What recourse is there to reverse a scam bitcoin transaction? To recover funds from one of the many fraudulent or failed exchanges - the only way to get bitcoin into real money?

At least a banking licence comes with obligations. Cryptocurrency for now comes with blind optimism and utopianism. It's great for a little speculation with some disposable stake money though. :)
C++ or JavaScript is a "language", but so is the API to that library you're currently using in your project. Different ends of the language spectrum. The article is about Clojure, a Lisp, and Lisps are good at giving you access to the entire spectrum. When you hear a Lisper talking about "writing a language", half of the time it's just couple dozen lines of code defining a macro that makes some code much more readable and expressive. Then there are times when "a language" is an extensible pattern-matching engine or otherwise half of Prolog, but those cases are usually handled by someone who has a real need for it and later publishes it as a library - and you're only happy you can now use half of Prolog without actually adding a Prolog to your codebase, with all the devops headaches this would create.
If you move a Schwab ETF to Fidelity, you're still paying the Schwab ETF expense ratio (for example).
Trying the Hadza hunter-gatherer berry and porcupine diet (2017)