HNHacker News
TopNewBestAskShowJobs

furstenheim

263 karma · joined August 1, 2019

https://github.com/furstenheim

https://twitter.com/furstenheim

submissionscomments
furstenheim··on Twitter engineers told to print out their code
Copy stackoverflow, understand it, link to the original source. What's wrong with it.

Those lines are normally the hardest. Maybe referencing a weird behaviour, not implemented feature, and stackoverflow is the only place that explains it

furstenheim··on Software I’m thankful for (2021)
Metacity works for me, nice standard look
furstenheim··on Holes
Not really, primes are pillars of all the numbers.

If you think of positive integers as having only multiplication (a semi group I guess), then prime numbers are the building blocks

furstenheim··on Infrastructure as Software
Omg, so off the point.

CDK has completely changed my understanding of infrastructure. So cool to be able to abstract and reuse components

furstenheim··on The Rise of SQL
Haha, same here. There was some problem that required careful handling of locking. Did it easily in SQL, they were not convinced at all
furstenheim··on You Don't Need a Numpad
Altgr is great to set up shortcuts in the IDE. It's completely unused and no overlap with native shortcuts in the IDE
furstenheim··on Distributed Systems Shibboleths
I liked the article a lot.

I prefer the term retryable to idempotent. If there's a failure in the first call, to be truly idempotent it should fail on the second.

Retryable on the other hand is easier to argue about. Important thing is not the response but the end state of the system.

furstenheim··on How to balance between delete compliance and backups
GDPR fines are pretty hefty. I doubt the employer would be happy with soft deletion.

Also, you don't need an auditor. In the eventuality of a hack, the db could be made open and then it would become clear you were not deleting

furstenheim··on You Can Throw() Anything in JavaScript – and Other Async/Await Considerations
Eslint with standardjs in js is so great, set it up and it will fail if you throw anything different from an error.

https://github.com/standard

furstenheim··on Unit Testing is Overrated (2020)
I really like Spotify strategy https://engineering.atspotify.com/2018/01/testing-of-microse...
furstenheim··on FDA Approves First CRISPR Cows for Beef
How is selective breeding good? There are dog breeds that have respiratory problems all their lives. CRISPR should open the door to genetic improvements without genetic diversity loss
furstenheim··on The Big TDD Misunderstanding
I would also add, test against a real database (docker) not in memory database.

So many bugs that only happen on disk. Also so much functionality that cannot be used to fixed them because it's syntax error on the mock database

furstenheim··on Protein tweak makes CRISPR gene editing 4k times less error-prone
They applied crispr to bone marrow. Extract it, apply crispr. Cleanse the body to remove existing one and apply modified barrow.

Basically an auto transplant with marrow

furstenheim··on Ask HN: How do you manage your companies knowledge base?
I've always found that wikis are too far from the code.

To have any chance of being up to date, knowledge of the code and functionality should be as close from the code as possible.

furstenheim··on Web hacking techniques of 2021
Then why is parameter query safer? And not just escapes variables? Escaping is hard, as shown in the article
furstenheim··on Web hacking techniques of 2021
Sorry, what do you mean by parsed identically? In CSR you can have data displayed into the front-end without ever be parsed as HTML. You do some http call to the backend, get a json get the property and do, element.textContent = myData. If that's unsafe there would be a bug in the browser, ain't it?
furstenheim··on Web hacking techniques of 2021
Of course you can still do <div> + input + </div> in CSR, but you can definitely not do myelement.textContent = whateverIGot in SSR, right?
furstenheim··on Web hacking techniques of 2021
It got me thinking, is client side rendering intrinsically safer than SSR.

SQL queries with params are safer because data and code flow separately. Similarly, if you query backend for data and then do textContent = response, that cannot do xss, right?

furstenheim··on How PostgreSQL stores rows
Cool article! Any idea where to find a similar explanation for mysql?
furstenheim··on What's in a good error message?
Postgres, you learn so much from the error messages.

Mysql, on the other hand "please read the manual"

furstenheim··on Wordle-solving state of the art: all optimality results so far
You can do much better than frequency. Just six clues you can reduce it to less than 200 and solve it 2-3 guesses

https://medium.com/@furstenheim/learning-from-the-mistakes-o...

furstenheim··on Speeding up my Advent of Code solution with Dijkstra's Algorithm
Actually you don't even need a priority queue. Two lists, you read from one push to the second. When you are done you swap them
furstenheim··on Speeding up my Advent of Code solution with Dijkstra's Algorithm
Actually for grid navigation there's no need for a priority queue.

All steps are of length 1, so you can keep two arrays. In the first one all the things that you are currently visiting and push to the second array the neighbors that you'll visit in the next cycle. Once you are done swap arrays and start over.

furstenheim··on immudb – world’s fastest immutable database, built on a zero trust model
GDPR compliance will be tricky. How does one delete data?
furstenheim··on Best practices for writing code comments
But even if the link eventually dies, you have the business explanation.

Normally the comment is an explanation of the intent but the referenced ticket has the full discussion and backing data that led to the decision

furstenheim··on Best practices for writing code comments
I miss the most important one. Explain business reasons.

Code does what it's written for. But it does not explain intent. Write that on a comment, link to the relevant ticket and document

furstenheim··on Woe be unto you for using a WebSocket
To reduce the problem of updating the software you can bring up a second sender and make all new connections point to that one, but don't close the old ones.

If your user sessions are less than the time between deployments, then you won't close any connections

furstenheim··on Can mRNA Vaccines Defeat Herpes?
Except you can do different IO operations in the same user thread.

Parallelizing calls without synchronicity problems

furstenheim··on TIL the assumption that string length does not change when upper-cased is false
Size of a tweet?
furstenheim··on You're Not a 10x Programmer
> 'just solve problem'

Exactly that. If one developer cannot solve a problem and the other does. Is that InfinityX programmer?

← PreviousPage 2 of 5Next →