Readit News logoReadit News
nhoughto commented on Goodbye integers, hello UUIDv7   buildkite.com/blog/goodby... · Posted by u/juanfatas
phkahler · 2 years ago
>> It is true that now your encryption key is now very long lived and effectively part of your public interface

No need to encrypt, just store the external key in a table. Not that you're likely to change algorithms.

nhoughto · 2 years ago
True you could rotate by persisting the old value and complicate your lookup/join process, not my idea of an acceptable solution but yep totally possible and worth it for some set of tradeoffs.
nhoughto commented on Goodbye integers, hello UUIDv7   buildkite.com/blog/goodby... · Posted by u/juanfatas
oconnore · 2 years ago
Given that a UUID identifier fits in a single cipher block, and the whole point is that these are unique by construction (no IV needed so long as that holds true), it seems like a single round of ECB-mode AES-128 would enable quickly converting between internal/external identifiers.

128 bits -> 128 bits

nhoughto · 2 years ago
Yep have used an approach just like that, worked quite well if you have a strong pattern to easily translate from one to the other. Gives you an id with the right properties for internal use, efficient indexing etc, and in its encrypted form gives you the properties you want from an external identifier being unpredictable etc, all from one source id.

It is true that now your encryption key is now very long lived and effectively part of your public interface, but depending on your situation that could be an acceptable tradeoff, and there are quite a few pragmatic reasons why that might be true as has been described by other comments.

Edit: you can even do 64bit snowflakes internally to 128bit AES encrypted externally, doesn’t have to be 128-128 obvs

nhoughto commented on Linux tool to show progress for cp, mv, dd   github.com/Xfennec/progre... · Posted by u/jxi
nhoughto · 2 years ago
very neat! definitely will come in handy.
nhoughto commented on System design and the cost of architectural complexity (2013)   dspace.mit.edu/handle/172... · Posted by u/damethos
holoduke · 2 years ago
I still dont know what is better. Create quick throw away code you replace in a few years. Or build a well structured system that lasts longer. I have worked all my carreer in only the first 0-8 years of company startups. Most of the joy and success I got from 'quick hacking together working systems'. A lot of people arround me dont share that opinion and are better suited at structured companies. Maybe there is no better.
nhoughto · 2 years ago
In startup/mvp land it is a genuine tension between shipping it and over engineering at different extremes. It is quite possible to correctly think “this is bad engineering” and still ship it and all of those decisions to be correct. Bootstrapping and early stage code almost inevitably gets replaced so isn’t worth polishing too much. It feels totally wrong and requires some real soul searching for some engineering personalities but in the end it’s optimizing for the most important outcome, the actual business success.. speaking from exp of not doing a few times and then the whole thing failing..
nhoughto commented on A trick to reaching flow: Leave your work broken   census.dev/blog/an-on-ram... · Posted by u/nate
zxexz · 2 years ago
This is the way. The only way I can stop coding and stay comfortable when it’s getting late, especially if it’s something even mildly interesting, is to do a borderline incoherent mind dump and break the linter/formatter. Just all my thoughts, what I was working on, other places I may need to change code. I usually end up closing the laptop before I describe the why, but the act of writing it all down usually makes that come back before I’ve finished reading the first few words the next time I revisit it. I’ve found this remarkably effective to the point I often just do a mind dump the moment I feel tired at all, and end up in a better place than if I kept pushing.
nhoughto · 2 years ago
Yep

Couple of, retrospectively, often almost incoherent sentences to capture top of mind state when I give up because it’s late.

I’ll write this gibberish comment here because I’ll definitely forget what I was doing and if the compile fails I probably won’t miss it!

nhoughto commented on Building ClickHouse Cloud from scratch in a year   clickhouse.com/blog/build... · Posted by u/techn00
nhoughto · 2 years ago
Watch out firebolt.io sounds like CH has solved the ease of deployment problem!
nhoughto commented on Building ClickHouse Cloud from scratch in a year   clickhouse.com/blog/build... · Posted by u/techn00
lex2ross · 2 years ago
One thing is not clear from the post is how multi-tenancy is handled. Suppose Clickhouse has 10K customers and a data plane cluster has 1K only nodes then it can not cater all the customers in a single cluster, right?

This essentially means they must be running multiple dataplane clusters however they might have just a single control plane.

Thoughts?

nhoughto · 2 years ago
That’s the cell architecture, so N data plane clusters aka cells, testing qualifies a cell to meet a cert perf level and you horizontally scale out more cells to meet demand.

Whilst hoping a single customer doesn’t exceed the limits of a cell =)

nhoughto commented on I played chess against ChatGPT-4 and lost   villekuosmanen.medium.com... · Posted by u/paulpauper
Buttons840 · 2 years ago
If you instruct it to use an alternate Chess notation, such as drawing an ASCII (or Unicode?) board every turn, can it do so? Does this affect its play?

Instruct GTP4 to win the game and then crush it using Stockfish. Does it handle defeat gracefully?

nhoughto · 2 years ago
Interesting idea, naively that seems possible based on other non chess example prompts I’ve seen. Would be a great way to understand it’s tracking of state throughout the game
nhoughto commented on John Carmack’s ‘Different Path’ to Artificial General Intelligence   dallasinnovates.com/exclu... · Posted by u/cmdr2
mshake2 · 3 years ago
>And one of the things that I trained myself to do a few decades ago is pulling ideas out and pursuing them in a way where I’m excited about them, knowing that most of them don’t pan out in the end. Much earlier in my career, when I’d have a really bright idea that didn’t work out, I was crushed afterwards. But eventually I got to the point where I’m really good at just shoveling ideas through my processing and shooting them down, almost making it a game to say, ‘How quickly can I bust my own idea, rather than protecting it as a pet idea?’

Cool life lesson there

nhoughto · 3 years ago
I feel that, I’m often doing a thing thinking “this is wrong it won’t work for xyz” but continue because I want it to work, only to give in to what I knew a day+ ago but refused to acknowledge. It would definitely be more efficient to listen to.. myself, and kill things early.
nhoughto commented on Pwning the all Google phone with a non-Google bug   github.blog/2023-01-23-pw... · Posted by u/chmaynard
roer · 3 years ago
I found this blog post very interesting, and would like to find more like it. Do any of you have go-to sites for this purpose?

u/nhoughto

KarmaCake day451October 9, 2014View Original