HNHacker News
TopNewBestAskShowJobs

thanatos_dem

977 karma · joined July 29, 2016

submissionscomments
thanatos_dem··on Mezcal Is Born of Time, Tradition and a Slow-Growing Plant
Not all Mezcals need to be so smoke-forward. Some of my favorites aren’t Smokey at all. The ones that taste like an ashtray normally are often cheap, and skip the proper production techniques, instead tossing in artificial smoke flavoring. Mezcal’s don’t have a denomination of origin like Tequila does, so there’s a lot less rules around it’s production and contents, unfortunately, but I think it’s unfair to write off the entire category.

I could say the same thing about single malt whiskey, since serval scotches taste like you’re licking a campfire, but there’s obviously more variation there.

thanatos_dem··on Mezcal Is Born of Time, Tradition and a Slow-Growing Plant
> There's a lot of taste variation between different mezcals, partly since they don't all use the same species of agave.

100% agree. That’s why I prefer Mezcal over tequila so strongly. In the 70s tequila got its legal denomination of origin specifying that it must be pure blue agave. It was a sort of quality control at the time, but there are so many other species of agave which can give mezcal a completely different flavor profile.

For anyone who likes liquors but hasn’t given mezcal a shot, I’d suggest checking out Aquilino Garcia Mezcal. They use authentic production methods, and have a lot of different mezcals which all use different types and ratios of agave species - https://www.mezcalreviews.com/filter-by/mezcalero/aquilino-g...

thanatos_dem··on PostgreSQL Setting up Streaming Replication walk thru
Weird that they decided to use the controversial master/slave terminology when the Postgres community at large has been calling it master/standby since at least 2010 [1].

I don’t have strong opinions on the issue, but it’s a curious choice to go with terminology not only controversial, but non-standard for the product.

[1] https://www.postgresql.org/message-id/4BFE7213.80603@enterpr...

thanatos_dem··on Japan starts space elevator experiments
No, it’s not against the rules, but downvotes aren’t there to enforce the rules.

It’s just a culture thing. HN tends to be more news and factually focused than reddit/Twitter/etc. People here just prefer to stay on topic, especially since humor is very different between people and can be very hit or miss.

thanatos_dem··on Georgia Tech Creates Cybersecurity Master’s Degree Online for Less Than $10k
For an accredited Master’s degree from the #8 CS program in the US* - https://www.usnews.com/best-graduate-schools/top-science-sch...
thanatos_dem··on 1/0 = 0
> 2) this applies only to integer division wherein division by zero is undefined. 1.0/0.0 uses the available Infinity value.

Oh jeeze... to me that almost nullifies all of the points in the article. It does an alright job explaining how 1/0 = 0 is at least consistent with other notions in the language, but to hear that the same logic can’t be applied to floats is just... well, objectively it’s a mess.

thanatos_dem··on Text-only NPR
132ms to load the whole page for me. Over half that time (76ms) spent establishing the connection and negotiating TLS. TTFB only 18 milliseconds once the connection was established. No adds, no pop ups, fully accessible, cache friendly, and virtually free to host and maintain.

For a public news organization that doesn't need to desperately push their brand onto people or track a user's every breath, this is a great thing to provide, even if most people would consider it "ugly".

thanatos_dem··on If monads are the solution, what is the problem?
Sorry, fixed. That’s what I get for using my phone to comment on technical things :)
thanatos_dem··on If monads are the solution, what is the problem?
> The incomprehension of the newbies is matched in intensity only by the smugness of the experts.

Oh good. A write up that’s aware of how unapproachable monads seem. Maybe this will actually be a good, plain-English breakdown.

Four paragraphs later:

> Monads, as a mathematical concept, can be always used as a part of the semantic model, but whether they transpire into the type system of the object language is a matter of design choice.

Oh... well, never mind.

thanatos_dem··on Show HN: Video Hub App – like YouTube for videos on your computer
I’m not sure it does the exact thing you’re talking about and I don’t think it’s enabled by default, AND it’s computationally a beast of an operation to do with large libraries, but thumbnails while seeking are supported: https://support.plex.tv/articles/202197528-video-preview-thu...
thanatos_dem··on Ndb – An improved debugging experience for Node.js
Man, my experience with VS Code has been the polar opposite, especially WRT the "Just Works" description of the debugger. Some folks on my team rave about it, so I gave it a real shot, but it's just not workable for me.

Errors left and right from core JS functions. Unable to create temp directories, complaining that they already exist, and deleting those directories leads to complaints that they're missing. Running the exact same start command from the command line works smoothly, so I have to think it's some "magic" that VS Code is trying to do. I gave up and went back to IntelliJ.

thanatos_dem··on An Illustrated Proof of the CAP Theorem
The combination of partition tolerance being mandatory and the timing caveat is why I prefer to think in terms of an extended CAP theorem called PACELC[1].

The first part, PAC, is your traditional CAP theorem - in the presence of partitions (P), you can provide either availability (A), or consistency (C). The second part, ELC, describes the system characteristics during the normal, non-partition case. It reads as "else (E), you can provide either low latency (L) or consistency (C)".

Even tho apart from some curious outliers most systems are either PA/EL or PC/EC, I find the framing helpful for reasoning about a system in more than just the partition or failure case.

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

thanatos_dem··on Former Apple Employee Charged with Theft of Autonomous Car Project Trade Secrets
> Money isn't everything, especially when you have plenty of it

The problem is that it sort of is, at least in a publicly traded company. Shareholders demand growth, and growth demands innovation.

thanatos_dem··on Interrobang
As a daily user of the interrobang, I’ve just gotta say, how awesome is this‽

For any aspiring interrobangers, one thing that helps make them easier to use is to set up text replacements. I have replacements setup on my phone and computers to replace “?!” and “!?” with “‽” automatically.

thanatos_dem··on Important database news from the last few months
It would be interesting to see a "new and noteworthy" section in these types of news recaps. There's always a lot of hype around new databases, and it'd be nice to see an unbiased perspective from someone with such deep knowledge of database systems, similar to Aphyr's deep dives into consistency and durability.

This seems focused on only SQL systems, and only the largest ones, which is okay, but I think there's a lot more to the story than that :)

thanatos_dem··on Apple is rebuilding Maps from the ground up
WRT the metro issue, have you tried switching the map into "Transit" view? Hit the information (ⓘ) icon and select "Transit" under map settings. That shows all the transit lines & stops.

As you zoom out, the subway lines do disappear, but are replaced with national rail lines, and then keep zooming out and it shifts to showing major international rail terminals.

It doesn't hide all of the other stuff shown on the map, but it does effectively highlight each transit line, so it's easy to find the closest line and then scan it for nearby stations.

thanatos_dem··on Demand for Ruby on Rails is Still Huge
What is TFA? It’s always meant “Two Factor Auth” for me, but this is the second thread I’ve seen today that’s using it like it’s an acronym for a person.
thanatos_dem··on ActorDB – Distributed SQL database
> SQLite uses serializable isolation by default, this is built on top of that.

That's sort of a meaningless statement tho. Everything in the world is built on top of RAM which is serializable. The real complexity comes in how those foundational blocks are abstracted and combined.

We know that it's not performant at scale to represent an entire database log a single Raft group. So how are the Raft groups structured organized, and how and when do they cross-communicate?

thanatos_dem··on ActorDB – Distributed SQL database
That's the problem... There's not a ton of nuance in CAP. CAP has a formal definition and a system is provably at most CP or AP. Other terms that people often associate with CAP is where the nuance comes in. The reality of the matter is that systems claim to be CP or AP, but most have assumptions or bugs that violate it, so in the end, most systems are just P.

Stale reads technically violate the definition of Consistent in CAP. Using raft means unavailability of some subset of nodes can make the entire system unavailable, violating the definition of Availability in CAP.

So the parent comment's suggestion of serving reads from any replica would result in only a partition tolerant system, without any formal availability or consistency guarantees.

thanatos_dem··on ActorDB – Distributed SQL database
Digging through the docs, I can't find any actual information of the consistency and isolation guarantees other than "consistent" and "ACID". That's an immediate red flag for me. What are the actual isolation characteristics of the database?

Does it use snapshot isolation? Is it serializable? Is it linerizable? With all the great work Kyle Kingsbury (aka Aphyr) has done on the Jepsen tests, it's pretty clear that claiming to be "ACID" with no additional info isn't sufficient for a modern database.

thanatos_dem··on Apple Maps has been down for hours, users unable to search for places/directions
As other commenters has mentioned, these types of quirks happen on all mapping and navigation systems. Turns out reality isn't as clean and clear-cut as computers would like for them to be, and things in the world are always changing, so it's all but impossible to keep things up to date.

With that said, you can always help out when you find quirks like this by reporting them. I went ahead and made a report for this particular problem, so it should hopefully get fixed shortly.

thanatos_dem··on Show HN: Fo: An experimental language which adds generics on top of Go
Noooooo! interface{} is a raw type. It’s like “Object” in java land. It has no meaning in its own right, and needs to be carefully checked whenever you want to actually use it. The proliferation of interface{} across the go ecosystem is really unfortunate, and will be hard to correct once generics are finally supported.

I haven’t dug too far into the Fo code yet, but I’d guess that it’s doing something akin to type erasure in Java, and adding conversions and type checks transparently when compiling down to a go binary. Sort of like how if you ever pop open a class file and dig into it, you’ll never see any references to generics. Everything compiles down to objects in the end with generated type checks.

thanatos_dem··on Ok-Cancel versus Cancel-Ok
I ran into this during in my old days of UI development using Java Swing. I eventually came across MiG Layout (http://www.migcalendar.com/miglayout/cheatsheet.html) which had a steep learning curve, but was extremely powerful.

In particular, you could give components a tag attribute, and it'd do platform-specific component reordering based on the tags. It was pretty sweet!

thanatos_dem··on WWDC 2018 What's New in Swift Recap
In addition to Vapor which other commenters have mentioned, Apple itself released Swift-NIO, a port of Netty to Swift that they’re actively developing - https://github.com/apple/swift-nio

It’s somewhat lower-level than web frameworks people may be used to coming from a Ruby/Node background, but it’s pretty powerful.

thanatos_dem··on Revive – Fast, configurable, extensible linter for Go
This really irks me for some reason. One of the goals of the Go tooling in general is to cut down on the number of config files and differing choices that need to be made everywhere.

Gofmt is the canonical example (there is no configuration. It formats things like how Go code is formatted), but almost all of the go tooling sticks to similar principles and its fantastic IMO. No more pointless arguments about style because your config file doesn't match your coworkers, but you both have great reasons for why your configuration is the right one.

I guess it's less a problem with linting, so long as your local configuration is more strict than any run during CI, or other validation steps, but still, in this case I'd prefer to have less control to match the rest of the ecosystem.

thanatos_dem··on Andy Rubin Puts Essential Up for Sale, Cancels Next Phone
In which direction? Apple is the “elite” or “luxury” brand and also one of the few to take privacy dead seriously.

I think the general population is more happy to give up privacy for cool features built using their data than you may think (unless I’m reading your comment backwards. It is phrased rather ambiguously)

thanatos_dem··on FlureeDB, a Practical Decentralized Database (2017) [pdf]
Especially if quantum computing develops enough to break modern encryption.

Unless the encryption uses post-quantum crypto, in theory it’ll all be “un-shredded” if quantum computing becomes feasible. We’ll have bigger problems at that point, but still, it’d make you “unforgotten”.

thanatos_dem··on FlureeDB, a Practical Decentralized Database (2017) [pdf]
"Fault​ ​tolerance​ ​and​ ​censorship​ ​resistance​ - Due to its decentralized nature, FlureeDB guarantees maximum uptime and no possibility for data regulation".

Censorship is rarely a technological issue, but one of laws.

No possibility for data regulation? Well, data regulation is already there, and they're effectively advertising that they are trying to bypass those regulations. If they actually can do that, it won't be long before someone rules "Use of FlureeDB violates GDPR compliance" and all your nice tech isn't worth squat. The database may prevent data regulation, but you can still put the people using it in jail.

thanatos_dem··on Ask HN: How do you reduce unsolicited phone calls?
Yup, this approach of using mostly similar numbers to the victim’s phone number is the new hotness in robo-calls. NPR had a piece on it last year - https://www.npr.org/templates/transcript/transcript.php?stor...

Relevant quote from FCC Chairman Pai: “Which is the ultimate solution, I think, to this problem, which is to find a call authentication standard.”

And there’s no timeline when that’ll happen. So buckle in, we’ll be here a while.

thanatos_dem··on Optimizing Paxos with batching and pipelining (2012) [pdf]
For some other, newer approaches to improving paxos performance, especially in high or variable latency environments, folks may be interested in epaxos (http://delivery.acm.org/10.1145/2520000/2517350/p358-moraru....) and wpaxos (https://arxiv.org/pdf/1703.08905.pdf).
← PreviousPage 7 of 8Next →