Live data from Hacker News

Going Fast Slowly

varnish-cache.org

41–50 of 77 posts

Re: Going Fast Slowly

#41

Slow enough to not offer Varnish for Buster, 2 months after Debian release... ;-)

What are you talking about that they did 'not offer Varnish for Buster?' Was there a packaging problem or more context you could add here?

Official Varnish repositorie (https://packagecloud.io/varnishcache) doesn't offer any release for Buster yet. 6.3 was added since 2 days, but not for Buster yet.

Re: Going Fast Slowly

#43
post #5
post #4

Footnote 6 is interesting: “I prefer asserts over comments for this, since the compiler can also see them. The good news is, the compiler can also see that they don't do anything so a lot fewer are present in the binary program. Interestingly, a couple of them allows the compiler to optimize much harder. No, I won't tell you which those are.” I appreciate the pattern of having “comments” that are equally useful to co…

In Rust, an assert can turn multiple bounds checks on array indexing into just a single bounds check. Maybe it's something along those lines here too.

Go and C++ (when using checked accessors like std::vector::at) can do the same thing. A precondition that satisfies all bounds checks will also eliminate them. You could do this as a post-compile optimization for any language under certain conditions.

Re: Going Fast Slowly

#44
post #5

Earlier quoted context omitted.

In Rust, an assert can turn multiple bounds checks on array indexing into just a single bounds check. Maybe it's something along those lines here too.

Interesting! Do have a link to an example?

https://gist.github.com/kvark/f067ba974446f7c5ce5bd544fe3701...

Re: Going Fast Slowly

#45
post #2

From the article: "I no longer think about code lines as an asset to be accumulated, but rather as an expenditure to be avoided." The obvious Edsger Djikstra reference: [I]f we wish to count lines of code, we should not regard them as “lines produced” but as “lines spent”: the current conventional wisdom is so foolish as to book that count on the wrong side of the ledger. http://plasmasturm.org/log/linesspent/

There's also this from Bill Gates: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight."

Re: Going Fast Slowly

#46
post #9

Earlier quoted context omitted.

Chiming in to say I agree with the sibling (dead) comment (not sure why it ended up dead). Djikstra's words (and the article's) are clearly correct, but hardly revolutionary or contrary to modern belief today. The real question is: why, despite a prevailing belief in modern software software engineering that red diffs are beautiful and cathartic things to be celebrated, and that the great spectre of technical debt is…

Software-as-art has lost a lot of ground to software-as-business, and in software-as-business, somewhere up the chain there is a management-level individual who isn't really sure how to measure either progress or code quality. There are myriad tools designed for these people though, and they all chose the simplest (and wrong) solutions to the problem: progress is SLOC added and bug reports clsoed per day. The height…

> there also tended to be better relationships between developers and their users and developers

Besides postcardware ("if you like the program, send me a postcard"), I have to think of Phone Me NOW!!!:

http://www.apollo-core.com/bringup/v3003_x15_SysInfo.jpg

Re: Going Fast Slowly

#47
post #20

10 LOC/h is spectacularly good over a long time period. Congratulations, from a varnish user. I recently tried to set expectations in a coding interview that was scheduled for 3 hours. I told them that was enough time to read the spec, develop a simple test case, and begin or possibly complete an implementation of part of the spec. I also told them that I wasn't interested in a shop that hired people based on their a…

I've been doing tech interviews professionally for a large tech interview platform that you would have heard of. We have a timed coding challenge, but code quality is something we explicitly look for. Making slow but steady process with good testing is a great signal for us too, even if they don't get very far through our challenge within the allocated time.

That said, occasionally we have people who work very quickly and somehow still have great code. Thats an even better signal.

Re: Going Fast Slowly

#49
post #2

From the article: "I no longer think about code lines as an asset to be accumulated, but rather as an expenditure to be avoided." The obvious Edsger Djikstra reference: [I]f we wish to count lines of code, we should not regard them as “lines produced” but as “lines spent”: the current conventional wisdom is so foolish as to book that count on the wrong side of the ledger. http://plasmasturm.org/log/linesspent/

There's also this from Bill Gates: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight."

    /**
    I'd agree

    that counting the occurrences of 0x0a

    can be

    misleading

    */

Re: Going Fast Slowly

#50
post #18

Earlier quoted context omitted.

Is this [1] the code he speaks of? [1] https://github.com/Co-dfns/Co-dfns/tree/master/cmp

It's an APL compiler, written in another APL dialect, which is about as dense as you can get in terms of lines-of-code. APL is one of the few really high level languages.

It looks like a lot of the lines of diffs are to HTML/XML files related to the certification of the code, rather than executable code. So, definitely not very dense.

https://github.com/Co-dfns/Co-dfns/commit/78d0e38f8ba2e1de9f...

Post reply on HN