skysight-inc/HackerNews huggingface dataset:
Another terrible something born from not understanding a technology and coming up with something "better". You should learn the thing first! And solve problems after that.
Overall I agree but you also kinda proved my point. In the example you laid out, they didn't execute well enough on the business to make it a success. Execution isn't in the absence of marketing, product or idea, it is the key reason why startups fail though. A weakly put together but strongly executed marketing plan beats a superb plan that is executed poorly. Execution is what matters here, the plan can be revised over and over, but if you fail to execute it doesn't matter if the most brilliant person in that field put together the plan, you will fail.

Definitely plenty of room for varied opinions here, just my 2 cents as well.
Scientists are creating music to unlock your brain’s potential
That's is just not true.
Assoc Between Push-Up Capacity and Future Cardio Events Among Active Adult Men
Tracking the trackers: Draw connections between scripts and domains on website
It's weird. We live in an age where many of us carry a device in our pockets capable of searching a vast store of human knowledge and presenting results to us nigh-instantaneously. If I have a problem with anything, even if I have no idea how it works, I can usually acquire enough knowledge about it under an hour to diagnose and repair it or at least determine that that I'm not going to be able to do that.

I don't know, maybe I just came from a different background. Hacker by nature, grew up poor enough that fixing things was how it was done, have a genetic predisposition against waste, whatever.
Abstractions over abstractions over abstractions. Shaking my damn head.

I’ve only been in the industry 7 years or so, but I’ve already begun to prefer sticking with standard operating procedures - like using Dockerfiles for Docker, or using Swift to build iOS apps instead of react-native, because in my experience, if you don’t constantly maintain and stay on top of something that isn’t built with the officially-supported tooling, it’s going to be a lot more trouble when you have to eventually change something. Especially if that change is years down the road and when you finally need to make it, your build system was built on some esoteric unsupported third-party tool that people lost interest in two years ago and stopped developing. Not saying that’s what this is... just a warning.

It’s cool to make new stuff and all that, especially when you have a real repetitive problem that isn’t solved elsewhere, but sometimes it seems like people are making problems up or creating solutions to problems that aren’t really problems in the first place. I’m tired of new stuff. I don’t want flashy. I want reliable, stable, usable things with excellent tooling around them. I don’t want something that downloads 300 packages from npm and breaks when I try to update it later and some unknown dependency that wasn’t hard-pinned gets updated in my app. Why things aren’t hard-pinned by default blows my mind. It seems like every time I have to work on a JavaScript application I run into problems like this, which is part of why I hate that juvenile ecosystem. And lack of typing information doesn’t help. At least with typed languages, if something gets upgraded that shouldn’t have been, the IDE or compiler will catch the error usually. And this is all coming from a Python guy (historically). Don’t even get me started on pipenv.

/rant
> A bug in one "page" of the app can cause the whole application server to go down.

That doesn't seem like a valid issue. If a bug in a single page could take the application down then the same could be said for the API powering the front-end.

> If you leverage client-side rendering then it's easier to decouple your front-end from the back meaning you can take advantages of things like segregated micro/serverless services and progressive web apps

Your PWA point is valid but I don't think the microservices point is. Microservices add a ton of complexity and can easily become overwhelming. If you get to the point where your application can benefit heavily from microservices then congrats, you've made it.

> I think that server-side rendering is on it's way out.

If anything I think its on its way back in. So many companies bought into the benefits of client side apps and are now seeing the trade-offs that aren't very favorable.
As dollar stores storm into cities, some see downsides
It doesn't often happen because of Conway's law - that "organizations which design systems ... are constrained to produce designs which are copies of the communication structures of these organizations."

Its always possible to architect the web/app back end to do everything through APIs, keeping the APIs pure, and ensuring that others will be able to build UIs on top of them.

But in many organizations the same people that own the APIs also own the back end. That means it takes discipline and an acceptance of extra costs to keep this separation. Its easiest and cheapest to just slop all the back end together.

With an SPA, a different team builds the front end from the back end, and APIs are the only way for them to talk. That acts as a force for good APIs.
If they can raise a python for less than $50 this will happen.
My biggest issue with "gopher" is that I don't know how secure it is, how do I know the connection I'm using is secure and hasn't been intercepted, the current clients don't show that at all if it's even possible. I couldn't care less about tracking when the content isn't trustworthy.
Sublime has plugins like PlainTasks and PlainNotes which are very useful for note taking and even full out to do lists.
So they're trying to get where Webpack already is.
But I hope they do, it's nice to have as many development options for the web as possible.
SPA doesn’t guarantee good separation of concerns though. I have seen many a horrible SPA in my day that had all the business logic in the client side JS and zero validation server side. Server basically a very thin wrapper around the database.

I’ve been doing this for 15 years, and if I’ve learned anything it’s that developers can figure out ways to abuse anything.
I am happy to count him as a friend. His work and thinking has always been inspirational--a great teacher, an excellent mentor, and an insightful researcher.
You said it more succinctly than I did! I wish I could cuss these people out, that’s how badly it irritates me.
Good headline. The article would have been more interesting if it had played up the contrast between two perspectives, the way you framed it, instead of spending all its time on the programmer's perspective.
“do I need a component library?” is the question I ask when deciding to use react or not.

It’s a totally different question to ask do I need a spa or a server rendered app, both can be dead simple or heinously complex or reasoned away to prove a point...

I 100% of the time want (1) to architect my UI as a collection of atomic, reusable components, (2) get page specific server rendered html per route, and (3) do JS in a sane way (manipulate DOM, manage client state, and support a series of interactions that do not reload the page.)

So, what are my options?

1. React/node
2. Sacrifice one of the above.
Are you kidding? All you need for TC is conditional repetition, you don't need recursion. Loops & variables are the two things that make a language Turing complete. Almost everything interesting in the computing world is done using conditional loops.

To use your Animstack project as an example, you're not allowing your users to write things like Perlin turbulence (multiple octaves of noise) without a loop, or custom convolutions, or a Mandelbrot fractal, or 2d fluid flow. There are all kinds of practical and fun things you're artificially restricting yourself from. Some of those things can be technically done without TC, but none typically are because it's inconvenient, and because TC doesn't cause any practical problems.

Other examples that use Turing completeness in practice: UI event loops (all videogames, all of robotics, all servers of any kind), string replacement, sorting a list of arbitrary size, searching a list of arbitrary size, path tracing renderers, file i/o, regression and any non-linear optimization, I could go on for a very long time, the list is really long.

I'd like to know what interesting things you think you can do without conditional loops in a convenient way. Not what's theoretically possible if you bend over backwards, but what's practical and easy. I feel like the list is pretty short.

You also didn't answer the question. What is a real problem with TC? Killing runaway programs & infinite loops is not a problem in practice, and therefore neither is preventing people from writing infinite loops. So what's a problem with TC that I should care about? You can never guarantee people won't make mistakes, unless you make all their decisions for them. That's what non-TC languages normally feel like; a recipe book for pre-decided outcomes, not very powerful, not very interesting.

Nor did you address the fact that a decidable non-TC language doesn't guarantee halting in any reasonable amount of time. So how is it actually helping you to prevent TC? It doesn't seem like it is.

Here's a question- how many conditional loops did you use in the implementation of Animstack, under the hood?
In Firefox you can go to about:config and toggle 'dom.event.clipboardevents.enabled' to false to prevent sites from doing this.
From this article news summary:

"middle-aged men who can do more than 40 push-ups at a time have a 96 percent reduced risk of heart attack, stroke and heart disease."

https://www.upi.com/Health_News/2019/02/16/Number-of-push-up...
If you are willing to try, microg mimics play store and apps will work without it. Happy user for ~2 years.

https://lineage.microg.org/

Read faq.
That's very true - I was speaking more from the upper middle class urban perspective I grew up in, where most married women who opted to stay at home only managed the household finance and day to day chores of looking after the needs of their family members. (Which, in India at that time, was no easy task even with maids, as we are talking about joint families living together.)

My grandparents fom my father's side were rural farmers however, and yes, like you rightly pointed, these women really had more responsibilities. I recall that my grandmother, at one point had to manage a household of around 40 people (including the labourers who worked in their farm)!
Can I ask what city in Japan you're in? I wouldn't expect it to be that cheap.
Is there anything out there that doesn't need GPG? Having a working GPG install is a huge lift for developers.
Thanks! We've also updated the link from https://www.smithsonianmag.com/smart-news/dolphins-seem-to-u..., which points to this.
From an open source perspective, there is hope with a preliminary reverse-engineering Mali driver recently merged into Mesa. Kernel bits aren't wired in yet, but progress has been pretty good recently. I wouldn't be so quick to say "good riddance" as a lot of very useful ARM boards like those from Odroid have a Mali GPU.

https://www.phoronix.com/scan.php?page=news_item&px=Panfrost...
>In the interest of improving outcomes a growth mindset should be encouraged.

In the interest of teaching students real science and encouraging critical thinking, what should we do? Even if the growth mindset works, the fact that it works doesn't imply we should teach it.
I'm sure it isn't intended this way, but this feels a little like a trick question. Certainly there are benefits to society to people having children and raising them well. But I don't think anyone has children and takes a decade off to raise them because it benefits society. Rather they do so because it is something they want to do. Give that, if we take someone that made $x dollars over 40 years of work and someone else that made $x dollars over 30 years of work and took ten years off to raise kids, I would say the latter is better off. That said, maybe we want to adjust the tax system to favor the that second person anyway because of the spillover benefits, but that's a different question than who is better off.
Correct but that's still a rather small market compared to e.g. chromebooks which can use anything from arm or qualcomm.
All that complaining serves no purpose. SPA is just another tool in a belt. Where I think it shines is making rich apps that need complex flow and communication. This is where productivity is important and the process is complex and up until recently I would be advocating native desktop app. Now with advent frameworks that help me organize this very efficiently (I use re-frame/reagent with ClojureScript) I can create complex SPAs without the project collapsing under its own weight at some point.

I don't want to say you should use SPA frameworks for anything, don't make your company website with SPA. What I want to say that if you have a complex process you can consider creating "enterprise" UI instead of trying to dumb it down to a series of billion simple forms.

If you feel your business is overusing SPAs (is it so strange they want new shiny toy?) then as the technical person you need to educate them on pros/cons of the technology.
It's happening:

https://www.seas.upenn.edu/~rrand/qpl_2017_talk.pdf
Most people have listed features here. Slightly different take:

It allows you to recall information quickly. It serves as your “exobrain”. Your info at your finger tips. Anywhere in the world. Anytime. That’s quite powerful when you think about it deeply. As you do that you will also realize what you capture (and what you don’t) is equally is directly proportional to the information’s utility
And just like that, the 'Tech Lead of Google Registry' has fallen silent.
> I can't spend 30 minutes fixing my clothes because my 30 minutes is more valuable than a tshirt's cost.

I've got a dollar that says you watch TV while looking at a social network or something on your phone. You could fix a shirt instead.
Most people look at Orwell’s “1984” as a warning; China seems to be using it as a How-to manual.
I like the fact that the German article was posted natively to HN and not automatically flagged and/or deleted. It shows that HN has a global reach. And for the terminally unskilled, there is always Google translate.
I agree, you could probably attach some kind of social proof key-ring to news articles. That said, I feel like this would devolve into a "social currency for real currency" under-the-table paid sponsorship kind of deal rather quickly. We seem to have plenty of stealth ads nowadays, and it's especially disconcerting because iirc only 1 in 10 could discern them. I guess it could still be worth giving a shot in the hands of the right tinkerer.
There's some Dali quote out there where he says he is not that technically skilled as an artist, and if you look up close at some of his paintings in person, you can kinda see what he's getting at. He is no slouch by any means but he is definitely no Sargent or Vermeer. I think a lot of people who aren't really into art assume greatness=technical prowress, in particular those quick to poo poo modern art, but (speaking for myself at least) those who are in the art world are more concerned with the novelty and innovation of ideas (given some baseline level of craftsmanship, of course).

Don't get me wrong, I have nothing but respect for people who can paint hyperrealistically, because I know and understand and appreciate the amount of work that goes into that level of mastery. But at the end of the day, I'm going to be far more impressed by an artist like Riusuke Fukahori who took that skill set and used it to create a new and novel sculptural technique. That's technical mastery combined with creative genius. That's great art.
"just like the web"

How true is that? I was under the impression that for Android and iOS, Chrome used the native widgets for most things.
A Man Who Questioned Everything
Many deep-space probes have essentially entered hospice care (2016)
One reason the SSR mess is so easy to walk into is that everyone knows it's a reasonable amount of refactoring to get out of later. The cleanup of an SSR app lacks the deployment headaches of SPAs (doubly so with the service worker layer).
Yet here I am about to lose my .eu domain, because of Brexit. I'm paid up for 10 years, but the EU can just change the rules, and I lose my domain.
Surely you've heard of the most recent American version, Guantanamo?
Stalin used doctoring 70 years ago with pitiful tech, and it worked. Today even basic photoshop skills can do much better, and it doesn't matter if it's called out by the righ people, it will have done damages. Some people still confuse The Onion articles with real ones after all.
I think the lack of availability of information made us more creative. I was trying to build a side scroller game when I was a kid in Turbo Pascal, there was no Internet and nowhere I could find out how to do it. Even though I never managed it in the end I spent countless hours trying and coming up with my own solutions to problems. I wouldn't have been the developer I am today if someone just gave me Unity and YouTube to copy parts from tutorials without allowing me to understand how things work at the lower level.
A $10 Accessory Proves Smartphones Are Too Big
True, if you do not stay long enough to feel the consequences of your decision you do not learn from those years. We do not usually hire ppl that change job that often, but we are not in a silicon valley kind of enterprise
I remember the mumps as being fairly painful. I recall the chicken pox as being extremely itchy. What do I recall about measles? Not much at all really except that they forced me to stay home from school.

The alarmism surrounding the measles is exactly the kind of misinformation that should be avoided, yet all I see are articles from authors that keep talking about the number of cases of measles as if the number itself is some kind of horror. Please people. Childhood diseases were always just a normal part of growing up. Don't run around like chicken pox with your heads cut off hysterically calling .00003% of the population a "pandemic."
because by killing pensions and forcing people to gamble with stock are essentially also "paying for someone else's retirement" only that its Buffet's and the likes instead of people that needs it for a sane functioning society.

there's no way out of paying for someone's else retirement. it just change if you do it consciously and right, or be mislead.
How many 55 year old solo independent devs do you see out there in the wild?

Lots.

Quick question? Would you prefer to be a 55 year old salaried senior dev, or a 55 year old specialist consultant? Same answer if you're one of those two, but currently between gigs and looking for work?

Being the "old guy" looking for a job is how you get discriminated against. "Why is this guy on the market now?" "How many years does he have left?" "Is he still any good?"

Being the "old guy" specialist consultant means you're going to be really good at the thing they need to bring you in to do. You're also really expensive, which just reinforces how good you must be. Nobody is going to hold your lack of inexperience against you when they have a problem their kids can't solve.

No need for the specialty to be Geriatric COBOL or FORTRAN either. A 55 year old Javascript guy today might have 24 years experience in it, and can certainly teach your front-end guys a few things about writing code that runs in browsers.

So yeah, when the time comes, make sure you're either consulting or running your own company.
In the US, a Roth IRA is somewhat similar, except it differs from what you described: early withdrawals have a penalty, and the contribution "room" is different. With the IRA, you can only contribute up to the $6000 annually. You don't accumulate "room", just principal. If you miss it, you miss it.
I kinda answered it in another comment too. I don't disagree that having a solid team is critical or a good product, but my point is that you can have a mediocre technical team that just keeps executing that will outperform rock stars who can get stuff done but can't execute completely. So it always boils down to execution.

A great product idea is nothing without being executed on, every day, every hour so that it is moving forward. I agree there are lots of factors that can be hard in a startup, but the single biggest issue is execution.

Even in raising money, you can have an amazing team and solid product idea, but if you execute poorly on the fundraise you will not get money or not get enough to make the idea come to reality.

I also 100% agree with you, all startups involve some lucky breaks, however, I have lots of friends who have had one or more lucky breaks and they failed to execute on them. So even luck isn't great unless you execute on it.

I'd argue a great team that is executing will see that the idea/product/concept is failing and start looking for a pivot to get it back on track because they are executing. Executing means you are setting goals, hitting goals, measuring progress, evaluating status and adjusting, if you aren't doing all of those then you aren't executing very well. And that happens at a macro and micro level at all stages, that is execution IMO.

I'll also agree that I don't know everything and plenty of people have valid concepts that have succeeded that may disagree with me. Totally fair, but IMO execution is the #1 reason startups fail and is the key to making them succeed in some form.
The problem with a failed experiment, at least in machine learning, is that it's not always clear what caused the failure. Was it not enough training, was there some small "trick" the model could have used, were the hyper parameters off etc.

There are an infinite set of configurations that could fail, and it's not sufficiently useful to know they failed without understanding why they failed. And analysing failures in a useful way is an extremely difficult and fundamental problem. On the other hand, a successful experiment is an extremely rare event and hence interesting by itself.
>Its always possible to architect the web/app back end to do everything through APIs, keeping the APIs pure, and ensuring that others will be able to build UIs on top of them.

YAGNI
> Under the current scheme, any Chrome adblocker can see all of the pages that users browse; a potentially huge privacy hole.

Isn't there solution to have the blocker send a limited list of declarative block-rules of a particular style?

Why not just let the adblockers pass in an uncapped quantity of javascript that will run in some kind blocking context, but be sandboxed from any external outgoing communication? That would give the flexibility of the current adblockers, but still plug the privacy hole.

Edit: Apparently Google is actually not plugging any privacy holes, since it will still allow monitoring: https://news.ycombinator.com/item?id=19184169
Agree, the article failed to prove the point. The distinction is still unclear to me.
The problem is that the experts have been priced out of the market and have been replaced with salespeople.
> I would note that generally server side templating is often a mish mash of business logic

If you don't have good, experienced senior developers or they don't have discipline, yes. But that's true for any technology. Good developers have the knowledge for simple things like how to separate business logic from templates...
Cooking. Frying or roasting produce diacetyl, acrylamide and all sorts of other potentially toxic substances that don't naturally occur in the food being cooked.

What about fermentation? The production of cheese or bread produces all sorts of chemicals that don't naturally occur in milk or wheat - are those chemicals "natural"? Does your opinion change if I told you that most monosodium glutamate is produced through industrial fermentation?
It's a write up of a BBC One documentary:

https://en.wikipedia.org/wiki/Dolphins_-_Spy_in_the_Pod