HNHacker News
TopNewBestAskShowJobs

rvr_

163 karma · joined February 3, 2016

submissionscomments
rvr_··on The Startup Trap (2013)
Article's premise: - software development practices are invariable to company size and stage

Reality: - team size dominates methodology and user base size dominates architectural decisions

rvr_··on Relationships: Start with Several
In my experience most apps designed around relational databases will benefit from: - one-to-many and many-to-many mappings - soft delete - log tables / append-only tables - entity-attribute-value - meta columns (creator_id, timestamp, version, etc)

Beginning with them is way easier than patching afterwards

rvr_··on In Praise of Top Down Programming
For the "play chess" example a state machine is the perfect place to begin modeling. Games, as a rule, are event-driven and are commonly coupled to a event-loop that triggers the transitions of the state machine. I think top-down decomposition has it's place, but the examples used to describe it should be given a little more thought.
rvr_··on Lionel Messi Is Impossible (2014)
https://www.w3schools.com/jsref/event_onbeforeunload.asp
rvr_··on You will never “fix it later”
Pointing out that the solution is not perfect is fine. It helps future maintainers, even if self. The worst offenders don't even realize the badness of their implementations, intriguing further adventurers of their code's true intentions.
rvr_··on Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff
My unpopular opinion is that you only forget what you have not learned and that you only learn what you do. The vast majority studies only to pass exams. So your situation is pretty normal.
rvr_··on 30TB Portable SSD Hits Walmart for $39 but Stay Away from It
This should be a crime, like selling spoiled food.
rvr_··on Soft deletion probably isn't worth it
TFA is nonsense. Hard deletes should almost never be used, period. The application credentials should not even have permission to issue delete statements, thus reducing potential damage from bad actors. Things like ON CASCADE DELETE should not even exist. Anyone using them must stop and rethink their life decisions.
rvr_··on Severely deficient autobiographical memory (SDAM) in healthy adults (2015)
Truth is, our lizard brains are always forgetting the good stuff that happened but remembering every detail of some random shameful event nobody, except you, cares about.
rvr_··on Mental illness, mass shootings, and the politics of American firearms (2015)
School shooting is a memetic behavior, on the classical sense disseminated by R. Dawkins, not Internet's one.

Can we rephrase the problem as: how do a society gets rid of a bad meme?

rvr_··on Wp-SQLite: WordPress running on an SQLite database
Please don't use this project as it makes no attempt to avoid the database file from being directly downloaded. Any sane PHP project (of witch WP is not one of) has it's index.php (and any user-facing stuff) inside a 'public/' folder, never exposing the entire project and relying on the webserver to secure things with .htaccess rules.
rvr_··on It’s Still Stupidly, Difficult to Buy a ‘Dumb’ TV
It's also becoming harder to buy dumb refrigerators above a certain size.
rvr_··on Elon Musk makes $43B unsolicited bid to take Twitter private
Me too. But they have FB accounts, IG accounts, TikTok accounts and so on. The share of people without any kind of social media presence or consumption is shrinking everyday.
rvr_··on Hackers gaining power of subpoena via fake “emergency data requests”
One way to approach crime is to make the risk too big. What about punishing with death those who do identity theft and impersonation? Our society tolerates too much crime.
rvr_··on Modern PHP
Next time you need to take a look at PHP, those two problems can be solved by php-apcu for caching and proxysql running side-by-side with php-fpm on each server.
rvr_··on What's the strangest code you've seen a senior developer write? (2019)
The pervasive use of ORMs with lazy-loaded relationships works like a bunch of left joins, even if they are done as separated queries.
rvr_··on My guiding principles after 20 years of programming (2020)
"Realize that every code has a life cycle and will die. Sometimes it dies in its infancy before seeing the light of production. Be OK with letting go."

I cannot disagree more. Code lingers. I work on an 13 years old code base that is considered new by internal standards and it's not uncommon to see lines that haven't been touched for 10+ years.

rvr_··on Still no consensus on testing private methods
I don't test private methods and I like to use them a lot. When refactoring, if a private method is unused, both IDE's and linters will warn you, easing the process of deleting dead code. If you extract private methods into separated classes and expose them as public methods, deleting unused code becomes hard (and harder with multiple repositories).
rvr_··on Bolivia is awash with contraband cars from Japan
Bolivia is also a huge market for cars stolen in Brazil.
rvr_··on How “latency numbers everybody should know” decreased from 1990–2020
20 years without meaningful improvements on memory access ?
rvr_··on SPAs Were a Mistake
I am mostly on the SPA-hating camp. There are two issues that annoy me the most. They are not a framework's fault but some kind of "mental model" fault:

First. When doing SPAs, APIs tend to leak a lot more info than needed, opening the door to attacks not commonly seen on server-rendered pages.

Second. Applications' bundle tend to have way more than users needs, even UI's they should not have access due to security/permissions. Most developers are not even aware of this problem and don't know that sensible info/features/endpoints are leaking.

As I said before, those are not faults at the framework level, but the development style that I seed used when making SPAs always led to them.

rvr_··on Java BitSet performance-flicker mystery
I think you Ryzen CPU is being throttled. It is not able to sustain it's burst speed. You should keep an eye on CPU temp and clock.

My benchmarks on hardware that have less single thread power than yours:

Intel(R) Xeon(R) Gold 6240R CPU @ 2.40GHz - Linux - Java 8

0 - Passes: 3200, count: 78498, Valid: true 1 - Passes: 3197, count: 78498, Valid: true 2 - Passes: 3200, count: 78498, Valid: true 3 - Passes: 3202, count: 78498, Valid: true 4 - Passes: 3207, count: 78498, Valid: true 5 - Passes: 3207, count: 78498, Valid: true 6 - Passes: 3202, count: 78498, Valid: true 7 - Passes: 3205, count: 78498, Valid: true 8 - Passes: 3209, count: 78498, Valid: true 9 - Passes: 3178, count: 78498, Valid: true

Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz - Linux - Java 18

0 - Passes: 3445, count: 78498, Valid: true 1 - Passes: 3443, count: 78498, Valid: true 2 - Passes: 3408, count: 78498, Valid: true 3 - Passes: 3449, count: 78498, Valid: true 4 - Passes: 3439, count: 78498, Valid: true 5 - Passes: 3442, count: 78498, Valid: true 6 - Passes: 3450, count: 78498, Valid: true 7 - Passes: 3445, count: 78498, Valid: true 8 - Passes: 3438, count: 78498, Valid: true 9 - Passes: 3447, count: 78498, Valid: true

rvr_··on Agatha Christie could afford a maid and a nanny but not a car
Things got cheaper because they are being made where wages are cheaper. At the end of the day, everything that is a expense to me is a source of income to somebody else. Only robots don't get paid.
rvr_··on Ask HN: What do you say to someone who wants to get into software development?
Software is hard, but unlike many other professions, you can do useful work at almost any level of the learning curve. Even for those of us with many years of experience, there's always something new. You can use an argument within these lines. Remember them it's a journey. One can start with bare resources. It's not capital intensive and there's no need to put themselves in debt.
rvr_··on Who Contributed to PostgreSQL Development in 2020 and 2021?
And there's still people who don't believe in 10x programmers...
rvr_··on Ask HN: Why is software quality always decreasing?
I think you almost got the answer to your own question. For me, quality software is made by very small teams of very competent people improving the software for a long time. We don't know much about the vast amount of closed software, but, for opensource, the state-of-the-art follow these rules.
rvr_··on IETF: The HTTP Query Method ( Draft)
This must be some form of late April 1st joke. The samples are even SQL-injection!

We need to stop modifying basic protocols like HTTP. We should've stop at 1.1.

rvr_··on Understanding the Power of Lisp (2020)
PHP's null coalescing operator:

firstWorking() ?? getItFromTheCache() ?? getItFromTheDataBase() ?? getItFromAnExternalApi() ?? computeItTheSlowWay() ?? defaultValue;

Perl OR short-circuit:

firstWorking() or getItFromTheCache() or getItFromTheDataBase() or getItFromAnExternalApi() or computeItTheSlowWay() or defaultValue;

rvr_··on Ask HN: How do you avoid dopamine addiction on social media?
If self moderation is not working, plain old avoidance/abstinence is the way to go.

I am not capable of moderate game playing, so I have no games installed on any device of mine.

rvr_··on The argument against clearing the database between tests (2020)
I follow the same testing philosophy. No mocking, except for external dependencies (mainly 3rd party APIs). No cleanups, except for problematic cases. RDBMS cleanups, when needed, are done by enclosing tests with transactions and explicit rollbacks.
Page 1 of 3Next →