Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
aboodman
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
40 ms
·
421.
▲
by
aboodman
10y ago
In some glorious future world you might see things like: ``` <a href=" http://www.who.int/tb/country/data/download/en/::case-data/b... the Data</a> ```
422.
▲
by
aboodman
10y ago
We assume that within a given version of the database format, there will never be a collision. The chances of a sha2 collision are beyond astronomical, and if you can create one, there are better things to do with your time that bother us.
423.
▲
by
aboodman
10y ago
Right. A shocking amount of public data is distributed this way. Also, we routinely talk to developers who complain about the difficulty of consuming data snapshots from partners, parsing it, trying to understand how it has changed since la
424.
▲
by
aboodman
10y ago
Dat is (currently) focused on synchronizing files in a peer-to-peer network. Noms can store files, but it is much more focused on structured data. You put individual values (numbers, strings, rows, structs, etc) into noms, using a type syst
425.
▲
by
aboodman
10y ago
We never chunk the same data differently. An inviolable rule of Noms is that the same logical value is always chunked the same way and always has the same hash. If I start with integers 1-1000000 and you start with integers 0-999999, and we
426.
▲
by
aboodman
10y ago
Briefly, there are two main hash functions in use in noms. sha-2 is used to compute the hash of individual chunks. This is the classic use of hashing in content-addressed systems. We also use a rolling hash to compute chunk boundaries. We d
427.
▲
by
aboodman
10y ago
:) Thanks, we like it too.
428.
▲
by
aboodman
10y ago
Honest answer is: we don't know yet -- we're working our way up from the bottom. But we (cautiously) don't see any reason why the basic design shouldn't scale to very large (e.g. petabyte) datasets, and that is our event
429.
▲
by
aboodman
10y ago
Git is a competitor. It is fairly common to check data (e.g., csv or json files) into Git today. However, this falls down pretty rapidly. In order to get reasonable diffs, the data has to be sorted, and line-oriented. Also Git just doesn&#x
430.
▲
by
aboodman
10y ago
Yes, we credited bup in various places, such as the design overview: https://github.com/attic-labs/noms/blob/master/doc/intro.md We were also heavily influenced by camlistore (which I hacked on for
431.
▲
by
aboodman
10y ago
Whoops -- @ahl says it's too late now.
432.
▲
by
aboodman
10y ago
Hi all. I'm one of the creators of Noms. Happy to answer any questions!
433.
▲
by
aboodman
10y ago
Hi! Thanks for the question. We have datasets , which are analogous to Git's branches. This is the only mutable state in Noms, and it's just a pointer into the graph. We also have paths ( https://github.com/attic
434.
▲
by
aboodman
10y ago
Hey all, I'm a founder of Attic Labs, and one of the creators of Noms, happy to answer any questions.
435.
▲
Show HN: Noms – The versioned, forkable, syncable database
(github.com)
43 points
by
aboodman
10y ago
|
3 comments
436.
▲
by
aboodman
10y ago
I don't follow the logic of avoiding error types. If I'm calling `foo.Bar()` directly, I already have a direct dependency on package `foo`, so what difference does it make to have another one to get `foo.BarError`? If I'm cal
437.
▲
by
aboodman
10y ago
I interviewed at Dropcam right before it was acquired, and it was clear that it was an amazing place. The team there was so solid. I didn't realize until recently, but am not surprised to learn, that the people at Dropcam went on to fo
438.
▲
by
aboodman
10y ago
It's not possible to prevent applications from creating modal dialogs and still allow them to be usefully interactive. If you took away `alert` and friends, sites would (and do) just create dialogs with HTML instead. If you want websit
439.
▲
by
aboodman
11y ago
Neat use of an extension! (Long ago, I led the design of the Chrome extensions platform)
440.
▲
by
aboodman
11y ago
Totally agree. The process model is actually a better sandbox than, e.g., Firefox per-origin one (because it sandboxes CPU time and memory as well). But the shape of the sandbox is incorrect for the modern era.
441.
▲
by
aboodman
11y ago
But doesn't, by default. And that's crucial. On the web I can just run any random program from anyone and there's a very strict limit on what it can do to me and to other software.
442.
▲
by
aboodman
11y ago
Your current (desktop) operating system allows these binaries to run with your full user privileges. Any software you download and run has complete access to all of the data from your user account, no matter which software created it. Softw
443.
▲
by
aboodman
11y ago
I generally try to do everything in render(). It almost always works out better. Sometimes I end up needing a lifecycle event. Timers (e.g., for manual animations) end up being hard to model without mount/unmount.
444.
▲
by
aboodman
11y ago
The feature team is responsible for ensuring their in-progress work is sufficiently tested. This usually means that all their tests are run from the beginning of the features life. So, we don't end up testing every combination of featu
445.
▲
by
aboodman
11y ago
Sure. There are downsides to continuous updates too. Engineering is about tradeoffs. You can't implement everything someone might want. The desire to have the product continuously improve is in direct conflict with the desire to have t
446.
▲
by
aboodman
11y ago
Features can take months and involve many people. In that case it will be worked on behind a feature flag on master. There is no such thing as "not ready for master" in the chromium workflow, only "not ready to be enabled by
447.
▲
by
aboodman
11y ago
It depends on what you mean by "customer". The chrome team has traditionally viewed end-users as the customers. Normal people who just want to use the web and have it work well. Those people could care less how the program is upda
448.
▲
by
aboodman
11y ago
I can't speak to the current situation, but originally Chrome was one monolithic dll for exactly the reason you describe: we wanted renderer launches to be as fast as possible and having the code mostly already paged in helped a lot. O
449.
▲
How Chromium Works
(medium.com)
290 points
by
aboodman
11y ago
|
71 comments
450.
▲
How Chromium Works
(medium.com)
1 points
by
aboodman
11y ago
|
0 comments
More ›