HNHacker News
TopNewBestAskShowJobs

codebeaker

1,632 karma · joined May 4, 2012

http://lee.hambley.name/ http://www.capistranorb.com/ https://www.harrow.io/
submissionscomments
codebeaker··on MinUnit: a minimal unit testing framework for C
I'd be really interested to learn more about your technique too, sounds intriguing.
codebeaker··on Tiny Linux distro that runs the entire OS as Docker containers
Didn't Docker release this themselves (different project) just a week or so ago? I forget the name, and can't seem to find it on their site.
codebeaker··on Ask HN: Best business advice for software developers
I can't speak highly enough about http://tractionbook.com/ which I recently came into - it has pragmatic advice on marketing approaches and systems justifying with real data how and why to do what.

It's co-written by the DuckDuckGo founder, and as an engineer who is thoroughly tired of marketing "hackers" who justify expensive campaigns with hand-wavy nonsense, this book changed the way I view marketing in general.

codebeaker··on Nintendo Discontinues the NES Classic Edition
There had been some speculation on Reddit that it was a run of near-obsolete hardware proposed by one of their partners. Some teardown (I can't find a source now) found out that it was shipping with already EOL'ed components that weren't available for back-order from the fabs.

If anyone has more information than my 3rd hand comment, I'd be super interested. I was very disappointed not to find one for sale for a reasonable price. I would have loved one.

codebeaker··on C++ 17 is Done
Every time there's something that comes up for C++ I get excited, I've always wanted to use the language, but it's like tap dancing in a mine field.

C++ needs a linter that rejects code that doesn't meet a certain standard ala Rubocop.

codebeaker··on ReMarkable – A writable eInk tablet
I understood the parent to conclude that choosing Wacom was a failure, as Wacom tech is not as good as whatever is in the Surface 4.
codebeaker··on Time matters: when UTC time is just not enough
I think the point is that if you store local time, and have a decently maintained time zone handling library, the library will adjust correctly for before/after the switch, but only if you store in the local time.

Of course it can't happen by magic, and you rely on the authors of the timezone libraries (a thankless task in itself), but if you remove a dimension of your data, nobody can ever help you.

codebeaker··on Time matters: when UTC time is just not enough
Makes a classic "falsehoods programmers believe about time" mistake.

The example (which is not so uncommon) that an appointment is set in timezone X, author of the service storing the appointment helpfully converts to UTC, timezone of the originating country changes and then the "return" from UTC to source timezone is incorrect, because now UTC-0600 is actually UTC-0700.

In short, any conversion that reduces precision is flawed. Dropping timezones after normalizing them to a canonical format makes it impossible to restore the conversion.

codebeaker··on Show HN: Go from Docker-Compose to Kubernetes with a simple tool
I used this to get an idea how K8s looked when I wanted to migrate ~500 lines of docker compose YAML config to k8s.

The result was sufficiently confusing that we threw it away, but it was helpful to get an idea what we were looking at, and why. We rebuilt the stack from hand, using all the files from the kompose tool as a guide/reference.

Later we found that kubectl can dump yaml, I found `kubectl .... -o=yaml[ ...]` to be super helpful, for any command you run from the tutorial or elsewhere, it'll generate you the equivalent YAML which you can commit/apply at your leisure.

I'm glad the tool existed, but idiomatic stuff in docker-compose is unidomatic in k8s (namely secret handling is completely different) which is a hurdle, and the "links" concept as used in docker-compose is essentially absent from k8s for our purposes (and, replaced wth much, much better and granular dns services and "expose"s)

codebeaker··on Powerful new features for businesses on GitHub.com
Thanks for that comment, I'd been clearing browser caches and trying to debug my overridden styles, I'd assumed something was horribly broken.
codebeaker··on QEMU: virtfs permits guest to access entire host filesystem
From the title I understood this was a feature that had arrived in QEMU, seems like it could have it's place on development machines/etc where the only reason you're using a VM is to get access to some alt. architecture.
codebeaker··on Ask HN: What're the best-designed things you've ever used?
Can you tell me what it's called/where to get it? I tried googling and came up short, but that sounds like something I've wished existed since I first used a thinkpad.
codebeaker··on Ask HN: What're the best-designed things you've ever used?
Fun fact, it's made by the same people who make the Frisbee :)
codebeaker··on Ask HN: What're the best-designed things you've ever used?
I love my LAMY Safari (€12 in most stationers in Germany, it's a cultural phenomenon that's unfortunately slowly dying out, the previous generation learned "Schönschrift" (cursive) in school with theirs and take their pen through life with them). That said, of the two that I own, I can't use either without getting grubby inky nailbeds, I assume the problem lay with me, not the pen.

Also, seconded the rOtring series mechanical pencils are astoundingly good, I'm always close to mine, I never travel without it.

codebeaker··on Effectively Using Android Without Google Play Services with Gplayweb in Docker
I've no evidence this is being used by The Economist's app - but this is "usually" the reason for this feature:

- https://www.wired.com/2016/11/block-ultrasonic-signals-didnt...

(not trying to spread FUD, endorse this practice or criticise in anyway, just trying to help the parent comment understand one potential "excuse" for an app "needing" this functionality for a non-obvious use-case.)

codebeaker··on Stop Checking Email So Often (2015)
I thoroughly recommend Cal Newport's book "Deep Work" if you want to understand the drivers of this effect, and help make constructive arguments in favour of a less connected workplace.

(replied to the top thread, but it's applicable to everyone in this sub-threaD)

codebeaker··on Show HN: Crafting Interpreters – A handbook for making programming languages
Seems to be a hot topic, a friend and colleague published this in December 2016 and I can thoroughly recommend it (Uses Go as an implementation language):

- https://interpreterbook.com

codebeaker··on What Happens When Algorithms Design a Concert Hall?
For comparison and context of my "as is-tradition" comment:

    > The Sydney Opera House cost $102 million and
    > was completed in 1973.
    > The original plan was: a cost of $7 million and
    > completion date of 26 January 1963.
codebeaker··on What Happens When Algorithms Design a Concert Hall?
See my other comment, but the place only opened yesterday!

Only one video I've been able to find so far, makes the place look exceptional, although doesn't tell us much about the sound quality. [1] apologies for facebook source.

Regrettably it's sold out for the next 6+ months, and tickets are on resale in secondary markets for 10-50x their face values.

[1]: https://www.facebook.com/NDR.de/videos/1365568786826981/

codebeaker··on What Happens When Algorithms Design a Concert Hall?
To anyone who might want some context, this relates to the Elbphilharmonie, a new opera house in Hamburg, Germany. Intended to rival the other great opera houses of the world, as-is tradition it was 10× over budget and eight years late

    > The cost to taxpayers climbed from an initially planned
    > 77 million euros to 789 million euros ($835 million).
It had it's opening on 2016-01-11 and 2016-01-12. It's already had it's ticket system hacked (and fixed) and it's beautiful. [1] [2] [3]

[1]:https://i.redd.it/ybs5ba59yt4y.jpg

[2]:http://seasidemagazin.de/wp-content/uploads/elbphilharmonie_...

[3]:http://www.deutschlandfunk.de/media/thumbs/d/dbba6ff9beacb55...

codebeaker··on Ask HN: Switching from developer to project manager. What to keep in mind?
Further to your first point, with which I absolutely agree. My team recently asked me to introduce ROTI [0] (return on time invested) as part of all our meetings, and it has helped us gauge the mood of meetings, and work out which kinds of meetings don't work well.

Between these and retrospectives it's been possible for us to eliminate most all contra-productive meetings.

[0]: http://www.agile-ux.com/2009/01/09/return-on-time-invested-a...

codebeaker··on Ask HN: Switching from developer to project manager. What to keep in mind?
Interestingly topical I shared this tweet [0] a day or two ago, repeated here to save you a click. Having switched from dev to CTO (which is like PM for every product in your company, when you're small) it resonated with me. I personally think it's my job to "shield" the team from any/all external distractions.

    Dev productivity killers:
     * Notifications
     * Meetings
     * Emails
     * Interruptions
     Great managers block these. Bad managers cause them.
Otherwise, I can only agree with the advice about structure, and discipline. I'm currently shopping around for something like https://github.com/danger/danger to help me do my job better by policing Trello automatically - we've had great experiences using this for Capistrano's pull requests and I'd love to try this approach on Trello to police the rules we agreed to, but don't necessarily always follow. That'd probably save me double digit hours each week.

[0]: https://twitter.com/_ericelliott/status/814082788378804224

codebeaker··on Writing web applications using only the Go Standard Library
Isn't being "technically" correct, but actually not doing what people expect kinda frowned upon?

> Be conservative in what you do, be liberal in what you accept from others

[1]: https://en.wikipedia.org/wiki/Robustness_principle

codebeaker··on PR 101 for engineers
I wonder how the heft of larger PR companies fits with #3 “ Sourcing Mass Media News“[0]

-- [0]: https://en.wikipedia.org/wiki/Manufacturing_Consent#Five_fil...

codebeaker··on Slack Calls: Now with video
Got any info on what "too old" means here, I thought that glibc was supposed to claim ABI compatibility pretty broadly, or is there some specific regression/bug you're working around?

Edit: reading my message back I came off as impolite, sorry - genuinely curious, I've had the same breakage myself, and we started using Skype in lieu.

codebeaker··on Why Kakoune – The quest for a better code editor
Interesting, if he's architected it for that purpose, it doesn't have to solely be console based.

Neovim separated the client and server parts, and there are a host of clients (QT, HTML/Atom, etc) including the canonical one, from the docs:

    When compiled with the |+clientserver| option, Vim can act as a command
    server.  It accepts messages from a client and executes them.  At the same
    time, Vim can function as a client and send commands to a Vim server.
https://neovim.io/doc/user/remote.html

Maybe Kakoune does the same, I haven't checked. I also second the first child's note that being console based is a feature.

codebeaker··on Nestle says it will cut sugar in chocolate by 40%
Funnily enough this so-called "Choccolate Meditation" is the first meditation in the book on mindfulness for meditation, it's a fun place to start. Anecdotally I've never met a hectic stressed person who liked nearly-black bitter dark choccolate :)

(ISBN-13: 978-0749953089) http://amzn.eu/8JHl1tw

codebeaker··on Show HN: Secrets 2 – Simple, secure password manager for Mac and iOS
Don't take my harsh criticism personally. I too enjoy to build things for the joy of building, and I respect your achievement. I just doubt the world really needs what you built, perhaps because I'm not your target audience, and I understand the trade-offs I made when choosing to commit to 1Password that I don't feel like any alternative is compelling.
codebeaker··on Show HN: Secrets 2 – Simple, secure password manager for Mac and iOS
Did you reply to the wrong parent? I wasn't making any statements about the quality of password generation.

I was replying to address two of the three points that these people invested 6 months to build YAPPM (Yet Another Proprietary Password Manager).

As is typical of developers they've solved a problem that _probably_ didn't need to be solved. With a more product orientated mindset a business plan, and some market research probably would have preceded six months of engineering effort.

The "more beautiful" is subjective, I'd argue that having only one platform targeted makes it much easier to build an app in-keeping with one platforms HCI guidelines. I happen to use a Mac, an Android phone, and a Linux desktop, thanks to WINE I can use 1Password everywhere, and knowing that the format is public, and documented, and there are 3rd party implementations I don't need to worry about AgileBits ceasing to exist.

I'm left seeing some developers making the same mistakes that I have made when building a product before finding out if the world really needs a _subtly_ different app to solve an already solved problem.

codebeaker··on Show HN: Secrets 2 – Simple, secure password manager for Mac and iOS
1Password's format is also documented [1], though I'm not aware of any 3rd party clients to parse/work with it. That's actually a thing I was thinking about writing (I commented about trying to write something in C++14 in another front page thread, this was it)

1Password also uses standard encryption, from the link [1]:

> We use Encrypt-then-MAC authenticated encryption everywhere we use encryption. The MAC is HMAC-SHA256 and encryption is AES-CBC using 256-bit keys. Key derivation is uses PBKDF2-HMAC-SHA512. More detail about these choices will be presented in the relevant sections on key derivation and item encryption.

> In this document we will refer to “blocks of data”. Unless otherwise stated, blocks are the length of AES blocks, 128 bits (16 bytes).

Edit: apparently Github lists [2] four libraries for reading OPVault, one each in Python, Haskell, Go and Ruby

[1]: https://support.1password.com/opvault-design/

[2]: https://github.com/search?q=opvault&ref=opensearch

← PreviousPage 4 of 9Next →