HNHacker News
TopNewBestAskShowJobs

efaref

1,217 karma · joined July 16, 2014

submissionscomments
efaref··on Show HN: ION, a JSON alternative – Versatile, compact, fast, binary data format
Or you could use an actual RFC standard[1] that has numerous high-quality implementations[2].

[1] https://tools.ietf.org/html/rfc7049 [2] http://cbor.io/

efaref··on The NASA Rocket Countdown Came from a 1929 Fritz Lang Film
And I guess something like this[1] is a digital analog clock.

[1]: http://media.idownloadblog.com/wp-content/uploads/2012/06/Cl...

efaref··on Ask HN: How happy are you working as a programmer?
> "If they haven't noticed you're as stupid as you think you are, they themselves must be even stupider."

Ah, the old "I'm not ok, you're not ok" section of the OK Corral[1].

[1] http://changingminds.org/explanations/behaviors/ok_not-ok.ht...

efaref··on Why use www?
Annoyingly, this can be difficult to do if the A record for your domain doesn't point to a webserver. There are other legitimate things it could point to, like an authentication domain controller or a session border controller. Do you really want to be running a webserver there, even if it's only redirecting?
efaref··on Annoyances of API Design
> why say dupe when we can save that valuable E and say dup?

"dup" is short for "duplicate", a saving of 6 characters, not "dupe", which means to deceive or fool.

efaref··on Why I Strive to be a 0.1x Engineer
What a fool. Only doing what is necessary rather than spending hours and hours reinventing pointless wheels or introducing pointless abstractions is one of the key techniques that 10x programmers use.

There are counterpoints to many of his arguments, too. For example, using existing software is good, unless that software is a bad fit. You can end up with a Rube-Goldberg-esque monstrosity, held together by duct-tape that is impossible to use ("enter your back-end SQL query here in this tiny little text box") or impossible to maintain.

efaref··on Gender Differences in Executive Compensation and Job Mobility (2010)
My mother semi-retired in her fifties to care for her grandchildren (providing free childcare so that my sister could continue her career). Perhaps this is a factor.
efaref··on It's Time to End the War on Salt (2011)
> Nobody has ever argued that NO SALT is the right idea.

Some people have been saying exactly that, e.g.: http://www.enformy.com/blog/benefits-of-no-salt-diet.php

efaref··on A critique of "How to C in 2016"
On high-performance code for an embedded PPC system I used to work on, we made all our control block a multiple of the L1 cache width. Our allocation routines then all had inline assembler to run the dcbz instruction (data cache block zero) on all the cache blocks for the control block as it was allocated. This meant the control block was always zeroed, and the memory bus wasn't touched in order to do so. Yes, things were evicted from the cache, but since we're about to start writing things into the control block, the lack of fetch was a net gain.
efaref··on Knuth: Computer Programming as an Art (1974)
Imperial College, London has the Department of Computing (in the Faculty of Engineering) for this very reason.

http://www.imperial.ac.uk/computing

efaref··on Knuth: Computer Programming as an Art (1974)
I think it's more of an art in the classical sense (which is like a craft), in that we are artisans rather than artists.

The difference being that we primarily create things valued for their utility, rather than their aesthetics. Video games being the possible exception, although even there the programmers are essentially building a vehicle for the art-stuff (story, graphics, gameplay, music) to shine through.

efaref··on The Dying Art of Mental Math Tricks
My maths teachers at school, like probably everyone else's, loved to tell us that we wouldn't be able to carry calculators around with us all the time when we're adults.

The joke's on them. I carry a supercomputer with wireless access to the collective knowledge of humanity in my pocket.

More seriously, if we assume we only have limited time and capacity to learn things, these tools surely free us from learning mundane "tricks" and allow us to further explore more interesting subjects. Sure, an understanding of arithmetic is important, so that we can verify our tools are working. But once that's obtained, let's move on.

efaref··on A short fable of software engineering vs. regular engineering
Exactly. We know how to build reliable (nearly) bug-free software.

The problem is, for most things, it's too expensive. What we have is good enough.

efaref··on How to C in 2016
That's not even correct. The type of string literals is "const char *".
efaref··on My simplified response to Paul Graham's simplified essay
According to this UN report: http://www.un.org/en/development/desa/policy/wess/wess_bg_pa... global inequality has been increasing despite convergence of inter-national mean incomes. The rich have been getting richer faster than the poor have been catching up.
efaref··on New string formatting in Python
I don't think it's even that bad for l10n, as you can treat the expression-like format specifiers as opaque keywords for the placeholders.

For example, your i18n tool can extract:

    "It's {price:.2f} and we are the {date:%m/%d/%Y}\n"
as a key, and then l10n can map this to:

    fr_FR: "C'est {price:.2f} et nous sommes le {date:%d/%m/%Y}\n"
(Here we can fix up the silly US date formatting, too, although really you shouldn't be localising dates in your format strings).

All that remains is for them to work out some way of mapping in that localised string, as you can do this:

    _("It's {price:.2f} and we are the {date:%m/%d/%Y}\n").format(price=price, date=date)
any more.
efaref··on A Response to Paul Graham’s Article on Income Inequality
I'm sorry to inform you that slavery is alive and well in Western Europe: http://www.theguardian.com/world/2015/may/16/lithuanian-guil...
efaref··on A Response to Paul Graham’s Article on Income Inequality
One of the common ways to get out of poverty in the past was indentured servitude. People would voluntarily sell themselves into slavery because it was preferable to their current "free" position. You can't eat freedom.
efaref··on Economic Inequality
That depends on the supply and demand ratios of wood and chairs. A chair isn't intrinsicly worth more than wood, and by making chairs you dilute the value of chairs.

If I make a trillion chairs, I'll have to drop the price of them to sell them, and the bottom will fall out of the chair market. Meanwhile, wood will become scarce and the price of that will go up. You'll probably even end up with an industry of people dismantling chairs into wood for use in other purposes.

So it's not a simple as "creating wealth" at all.

efaref··on Why I no longer use MVC frameworks
MVC is usually done very badly. The View and the Controller are often smooshed together into an unholy mess.
efaref··on Why I no longer use MVC frameworks
I think he just reinvented Perl-CGI in Node.js. I guess the inexorable march of reimplementing everything in JavaScript continues.
efaref··on A History of Punctuation for the Internet Age
Youdontevenneedspacesuntilyouwanttotalkaboutyourvisittopenislandfortheexpertsexchangeconference.
efaref··on What Your Microbiome Wants for Dinner
The "vast majority" of our ancestors were single cell beings.
efaref··on The impact of syntax colouring on program comprehension [pdf]
This comment annoys me. I want a coloured prompt so that I can focus on the output of the commands, which become neatly boxed by my coloured prompts.
efaref··on The impact of syntax colouring on program comprehension [pdf]
When I first started writing python, my number one error was writing "else" without the necessary colon. A simple adjustment to my syntax highlighter and I stopped that class of error completely.
efaref··on Garden path sentence
You add punctuation like you add pauses: to aid understanding.
efaref··on Are Adblock companies breaking the law?
No. (https://en.wikipedia.org/wiki/Betteridge's_law_of_headlines).
efaref··on Counting up vs. counting down
I've seen this referred to as the "goes-to" operator:

    size_t i = num_burritos;
        while (i --> 0)           // Read: while 'i' goes to zero
            if (want_burrito(i))
                break;
While it sounds nice, I don't think it's a good idea.

Clearly the correct solution is to use a better language, e.g.:

    return next((burrito for burrito in reversed(burritos) if burrito.wanted()), None)
efaref··on Homeschooled with MIT courses at 5, accepted to MIT at 15
Aside from homeschooling not being possible here - attending a proper school is mandatory, with even a single day of truancy punishable by strict fines for the parents - there is a curious advantage to being a position of having nothing to lose.

Whereas many working class families toil long hours and weekends at minimum wage jobs just to be able to pay the rent on their small house or apartment and so that they don't lose what little they have, those who have fallen upon hard times (particularly through misfortune, rather than their own laziness or fecklessness) have the opportunity of taking greater risks and investing more in themselves and in their future.

It leads to this weird kind of envy where poor natives look at wealthy second-generation immigrants whose parents fled poverty (often becoming the landlords of the poor natives) and wonder where the hell they went wrong.

efaref··on Linux has matured into a robust desktop operating system
I disagree. Hardy Heron marked the peak in Linux desktop quality: the out-of-the-box user experience has gone consistently downhill since then.

It's all mostly irrelevant these days, though, as I simply run an LXDE-based Linux VM on my Windows desktop.

← PreviousPage 9 of 12Next →