HNHacker News
TopNewBestAskShowJobs

spenuke

275 karma · joined July 11, 2013

submissionscomments
spenuke··on Bending Spoons makes first post-IPO acquisition with $1.3B Airtable deal
> It's really every category of commercial activity.

I'm not going to defend capital's ability to ruin things, but this is framing is not helpful. Enshittification as it was described by Cory Doctorow, who invented the term, requires two additional things:

1. A platform that tries to attract both producers and consumers. Amazon is the canonical example. The platform does what it can to attract enough consumers that producers have to use the platform to reach them. Then it squeezes out the value to the producers (e.g., hiking acquisition fees, etc.; competing with them and underselling them with cheaper alternatives). The final step is to destroy the value to the consumer, by degrading quality and increasing price. By this time, neither producers nor consumers have many levers to fight back.

2. Non-physical pricing levers. Enshittification requires the ability to observe consumer behavior and jigger pricing at great speed. We see this in Amazon again; ridesharing apps introduced surge pricing; ads are priced according to what platforms know about you. In a physical store, the logistical cost of changing the price of goods is nontrivial, so we don't see the same sort of gaming there.

Enshittification is a novel and illuminating concept, so we need to be careful not to let it turn into some vague "things got worse" meaning.

spenuke··on How to start a React Project in 2023
It's the same story with Express as a web server framework for Node.

I've always felt that the biggest problem with the Javascript ecosystem is that it's entirely too preoccupied with syntax. Remember CoffeeScript!? Some of the most influential forces in the community can waste entire years bikeshedding some syntactic thing that is mostly a matter of personal aesthetics. And this trickles down to the grunts trying to ship a product.

It's a fundamental drawback to Javascripts other strengths. And that's the reason it's so easy to find Express apps that are hot garbage. It's one of the most enduring myths that If you know Javascript, you can write a Node app.

It only works because software has been such an economically productive force, that having thousands of professionals spending weeks deciding whether semicolons are good or bad, or fighting their webpack configs, or migrating for loops to array methods... whatever... it still makes money at the end of the day.

spenuke··on Building a patient monitoring system with Go and Vue in 3 days
Yes.
spenuke··on A Map of Mathematics
For a very informal tour, The Three Body Problem by Cixin Liu is a science fiction novel where the history of mathematics, physics, and computation play a large role. So much so that I think it puts many people off the book and its entire trilogy.
spenuke··on TLA+ model checking made symbolic
Did you all ever open source your emacs tooling? I’d like to see that.
spenuke··on How to use array reduce for more than just numbers
I work on a similar team, with a mix of people who want to use functional styles and those who want something more imperative.

I lean toward the pro-functional style, but I also put a few strong constraints on when to use reduce. Namely, I would almost never use it in cases where I either want to (a) mutate something other than the accumulator or (b) include more than two branches of control flow in the reducer function.

This kind of goes for all the functional array methods. Many people are tempted to use them simply as alternate syntax for iterating through the array (i.e., a simple loop), where the loop body could contain several statements -- i.e., data mutation side effects, taking different execution paths based on certain conditions, etc. The functional style is way less clear in this sort of code.

The benefit of the functional style in the context of javascript array methods is when you can see at a glance what the shape of the resulting value is with respect to that of the source array. This is usually best done when the body of the reducer/mapper/filterer is a single expression.

spenuke··on Taleb Says Fed Should Do 'Minimum Harm' [video]
Thanks. Ok, so is he creating strawmen everywhere, then? I know people working in government, biotech, climate research, and none of them seem to think that the normal distribution is the only model out there, or that the mean is a very meaningful (no pun intended) statistic.
spenuke··on Taleb Says Fed Should Do 'Minimum Harm' [video]
Can somebody please ELI5 his whole phenomenon? I don't really understand who are the targets (other than Nate Silver) of all his polemic. From my limited exposure, he's basically making age-old conservative points, arguing that the Enlightenment ideal of human knowledge has strong (but unidentified) limits.

Why is he so popular? And how did he get so rich on Wall Street if he just thinks randomness blows all the statistical experts out of the water? I know I'm missing something.

spenuke··on The Best History Books 2018
Five Books just published a list this week. https://fivebooks.com/best-books/dr-patrick-porter-on-the-ri...
spenuke··on Postgres data types you should consider using
100% agree with this here.

I have had to push for leveraging postgres for data validation (including typing columns with enums where applicable), and sometimes it's hard to convince people, but all you have to do is (a) poke around your existing data and find cases where you have junk because of some out-of-band process that created data without using your main app's validation, and (b) do a couple out-of-band things like an ETL or two and see how it saves you from creating junk.

I don't know where I picked this adage up, but it's also something I constantly think about:

Your data will outlive your application code.

IME, if you value the data's integrity, it's not really a question whether you should be pushing validations down to the db layer.

spenuke··on Books on Ancient Greece Recommended by Christopher Pelling
That's the website's stock in trade! https://fivebooks.com/?s=russia&post_type=interview
spenuke··on Ask HN: How do you manage your daily non-work related tasks?
No, that hasn't really become necessary yet. We'll see once we do a house remodel. :)
spenuke··on Ask HN: Resources for learning advanced JavaScript and React
Totally fine, so long as you know that makes you an "advanced user".

I can't imagine you'll find a sane place to work where senior people are only capable of learning something after consuming a tutorial or a manual. The nature of the work is to drill down one layer below what you're working on. Do you need to know how to smelt steel in order to be a good car mechanic? No, of course not, but it sure helps to have taken an engine apart. And if you're trying to build the next, better engine, it's really great to see the internals (and the commented motivations!) of previous implementations.

spenuke··on Ask HN: Resources for learning advanced JavaScript and React
I'm always surprised that reading source code is such a rare occurrence or suggestion in this world. If you consider yourself even in the vicinity of "advanced", I think you're capable of learning great stuff by looking at anything on github. Something big, but well organized. Lo-dash, Node, Mocha, etc.

Of course you won't understand everything on first read. But you will learn really good things if you know how to look at something confusing and identify what it is you don't understand; then you can go find didactic materials to fill in the gaps.

This is an amazing way to learn. You get to see how some of the most used, or cutting-edge tools are implemented (for free!). You learn about the tools themselves and thus gain expertise in them. And, you gain the meta-skill of working in unfamiliar territory, which I think is a fundamental key to being considered "advanced".

spenuke··on Ask HN: How do you manage your daily non-work related tasks?
Very similar story here. We got married a month ago. We did everything ourselves (plus friends & family), and we started too late.

We started using Asana so that we could stop having nervous breakdowns every week. It worked. Now we use it for stuff like coordinating anything that doesn't fit on a notecard. Shopping lists generally are just on a kitchen whiteboard and you take a pic before you leave.

spenuke··on Ask HN: Resources for learning to write compilers?
Any chance your school makes its exercises available? I've been trying to go through CS:APP myself, but the exercises aren't included and I believe I'd need a .edu email address to get them.
spenuke··on O'reilly book cover generator
I was, um, inspired to make this one: https://imgur.com/a/cKC4f
spenuke··on Michael K. Williams Is More Than Omar from ‘The Wire’
Not even close. The only contender is Deadwood (RIP).
spenuke··on Ask HN: Who is hiring? (June 2017)
Hey there — AT is a well-known brand (surprised to hear you support it well with such a small team!) so I imagine HR will get a lot of applications. Would you be open to me sending you a couple questions directly via email?
spenuke··on Ask HN: Who is hiring? (June 2017)
Hey there — the careers page doesn't have any indications which (or any) positions are remote friendly. Do you know which of the engineering positions could be filled by US-based remote people?
spenuke··on We’re losing the information war
Thank you for illustrating my point by conflating the political spectrum with the epistemological spectrum. :)

As for "self-congratulatory", I was responding to the old chestnut that mainstream media is too far to the left. Next time we talk about GMOs and anti-vaxxers, I'll have a chance to chastise the people who are more likely to be on my side of the political spectrum.

spenuke··on We’re losing the information war
I think the main problem is that we conflate the political spectrum (what are the responsibilities of the State?) and the epistemological spectrum (how do we determine what is true and not?). The "Western World", for better and worse, is a product of the Enlightenment, and as a result is irreducibly leftist in its epistemology: modern democracy depends on a belief that a citizenry armed with the scientific method and rational discourse can rule themselves without resorting to the authority of a king or a holy book.

The Right Wing (in the US, our Republican Party) is less identifiable by its right-wing policies as it is by its right-wing epistemology: they reject all scientific evidence for climate change, biological and geological history, medicine, etc. For the religious, this manifests itself in the old epistemology that says the Bible is the sole source of all Truth. For the non-religious, this tends to manifest itself as total nihilism, which is expressed in the more heartless strains of Libertarian Objectivism; for these people, might equals right and society is a zero-sum game where the only truth is winning and losing.

And this epistemological divide is the one that is tearing us apart. When you say there's no serious right-leaning counter-weight to (the NYT et al.), what you mean is that there is no serious news outlet that doesn't hold the Enlightenment values. And when you put it in this light, it's an obvious statement, isn't it? Politically speaking, the WSJ and the Economist can very much be considered right of center (leaving aside that the median center has moved right over the last 40 years), but they are still rooted in Enlightenment science and rationalism.

Point is, although the political right wing is currently the main base of the epistemological right wing, it doesn't necessarily have to be that way. And the problem with saying we need more right-wing voices in mainstream media is that there are so few of them who meet the basic epistemological requirements; when they do, they are often rejected by the broader right wing for being too far left!

spenuke··on Learn Redis the hard way: in production
I for one would be interested in seeing the C book even in draft. :)
spenuke··on Practical Deep Learning for Coders
This exchange is pretty interesting. Cybiote – do you think it's possible for a person to do interesting work without formal graduate-level education?
spenuke··on A Black History Museum
> Usually, the "liberal" response I get from my more left-leaning friends is somewhere along the lines of "POC have been mistreated, they can't be racist...

You should have asked your friends why a black person can't be racist, because to most white people it's an absurd proposition. So allow me to explain a bit here.

Racism, unlike what we mostly think, is not a state of mind or an emotion. Racism is a sociological system that transcends the intentions of any one individual. In case US history is not forefront in anyone's mind: 150 years ago, a black person had the same legal status as a pig; 100 years ago, it was illegal for a white person to marry a black person; 60 years ago, it was illegal for a black person to drink at a water fountain.

Today, the likelihood that you'll be shot by a cop if you're black is astronomically higher than if you're white. If you have a black sounding name, you're less likely to have a company respond to your job application.

These things are institutional. When we say a black person can't be racist -- we don't mean they can't be prejudiced. They can, just like all people. But the privileges and paved roads that a white person enjoys simply aren't there by default for a POC, so they can't benefit from institutional racism.

TL;DR - false equivalency. "Black X Thing" is in the context of a historically disenfranchised people overcoming an entire country hellbent on keeping them disenfranchised. "White X Thing" is ridiculous because it's redundant: "Thing" is already White by default.

spenuke··on Ask HN: Who is hiring? (November 2016)
Hi there! Any chance you'd allow folks in Baltimore to avoid two beltways and work remotely the majority of the time?
spenuke··on Learning Reinforcement Learning, with Code, Exercises, and Solutions
Can you expand on what math you're talking about that is both necessary and not that hard? "Not that hard", to me, indicates that a reasonably intelligent person could teach themselves without university instructors (present or past).
spenuke··on Show HN: Git Confirm. Git hook to catch accidentally committed code (TODO/Skip)
It's hard to completely generalize for the clobbering reason you point out.

Assuming that you essentially want to keep your hooks coupled with your source code (or, at least, it's ok to do so), I've found that Make works pretty well here.

In the root of the project directory, you have a subdirectory containing all the hooks you need (or use a git submodule), and then you create a Make target to copy those hooks (and make them executable) to your .git/hooks directory. Make is nice because it won't clobber existing ones (unless they are older, in which case you probably want them overwritten).

Then, whenever someone first clones the repo (or whenever you make a change to the hooks), they just need to run make on that target again.

Obviously, not an ideal choice for everyone, but it's pretty simple and works well for me.

spenuke··on A practical security guide for web developers
I'd really like to see something like this for mobile apps as opposed to form-based web apps.
spenuke··on People suck at technical interviews (2014)
That's fine, but you have 3 years of experience with a CMS. SQL is the Structured Query Language used to make queries, so if you're not writing that, then you aren't working with SQL.

I've been driving cars for twenty years, but it doesn't mean I have two decades of experience with fuel injectors.

Page 1 of 3Next →