Tim Caswell

Tim Caswell

@creationix.blue

Lover of all things good in life including Family, Friends, Food, and Functional Programs. โš’๏ธ Creator of http://luvit.io and http://nvm.sh ๐Ÿ‘จโ€๐Ÿ”ฌ Protocol Wizard Making the web faster @vercel.com

3.1K followers452 following430 posts

Tim Caswell reposted

๐“๐‘‰๐จ๐ป ๐ถ๐ฎ๐‘‹๐ฎ๐‘Œ ๐‘Š๐ด๐ฟ ๐ธ๐ท๐ญ๐‘‹๐ฒ๐‘Œ ๐บ๐จ๐ฎ๐‘๐‘† ๐ฐ๐‘Œ๐ผ ๐‘‡๐ฌ ๐ฎ๐‘Œ๐ป๐ฒ๐‘‰๐ฎ๐‘…๐ป ๐ฎ๐‘Œ ๐‘„๐ฏ๐‘‰ ๐‘ƒ๐ซ๐ป๐‘…, ๐ด๐ผ๐จ๐ฒ๐‘†, ๐น๐ฐ๐‘‡๐ฒ๐‘Œ๐‘†, ๐ฐ๐‘Œ๐ผ ๐ธ๐ช๐บ๐จ๐‘†.

I see people get mad at genAI for the power it uses comparing it to bitcoin. It does use a significant amount of electricity, but let's compare: - driving to the library in my economy EV (1 kwh) - a single bitcoin transaction (1500 kwh) - generating a single image with stable diffusion (0.01 kwh)

I'm back on paternity leave for 5 more weeks. I took the first 6 weeks when she was newborn, now she's a cute 3-month old. My wife just started nursing school a week ago and so I've had all 8 kids to myself all day. So much fun and adventure! And I thought my day job was challenging.

What's going to be real fun is when I go back to work and she's still gone 40+ hours a week. But we'll survive and learn and grow. Who knows, maybe we'll even start building a house soon.

"Wo unto you rich men, that will not give your substance to the poor, for your riches will canker your souls; and this shall be your lamentation in the day of visitation, and of judgment, and of indignation: The harvest is past, the summer is ended, and my soul is not saved!"

This one is still bugging me, it won't go away. But I'm constantly stuck on finding a good problem I can solve well. Market research is so hard, especially when people you're don't know what they need/want because they can't imagine it existing. We're too dependent on large free cloud services.

Tim Caswell@creationix.blue

I keep getting this feeling like there is something I need to build and put out in the world (business or service or product) related to my various system designs, (rando, caify, nibs, encantis, etc...) but I can't, for the life of me, figure out what would actually be useful to most people.

Some scratch-my-itch ideas: - Google takeout automatic processor to sync all my data to a personal offline store - instant website publish, ultra low friction workflow that doesn't require cloud services or account or any kind of authentication or permission for instant collaboration in real time.

When my family moved to a northern Austin suburb years ago I had been working remote for several years already. I interviewed at a tech company in Austin and they loved my technical skills. But then something happened...

View full thread

In the end, they declined my application because I wasn't a good culture fit. I was disappointed because the tech really was interesting and I was a great fit technically.

What's funny is I had friends that worked there and they told me that most people just put on headphones and ignored each other most of the day. To this day I don't understand what was wrong with me being willing to work in the office as long as part of my time was on a train.

When my family moved to a northern Austin suburb years ago I had been working remote for several years already. I interviewed at a tech company in Austin and they loved my technical skills. But then something happened...

Even though we had purposely bought a house near the train station so that I could work while commuting (downtown was about an hour train ride away), they insisted that I be present in the office at least 40 hours a week and not count time working on the train.

I told them that I have small children I want to see grow up and I don't want to be away from home 50+ hours a week. I've done this before and know the damage it can do. I've also worked remote before, even at hardware startups, and this was a cloud based company.

View full thread

So I think my final set of value types are: - positive integer - negative integer - decimal - reference (null, false, true, ...user-defined) - pointer (to duplicate values in doc) - string (utf8) - bytes - list - map - array (list with simple index) - ??? (map with eytzinger index) - set - chain

I'm not sure what to name the indexed map, maybe "object" to mirror JavaScript? Before when the index was a HAMT in my previous design, I called this type "trie", but can't do that now. Any suggestions?

View full thread

For my format, I use these indexes for both Set and Map. Set is basically Map, but without any associated values, just keys that are treated as set entries. I'm tempted to include both the perfect hash and the eytzinger indexes, but O(log2 n) of numbers under 16 is small.

So I'll probably skip the perfect hash and then implementations are a lot smaller as they don't need xxhash32 at all. It encodes slightly smaller too since I don't need to embed the magic seed with each container.

I had hoped to use simplified perfect hashes for my indexed map type since it would give O(1) access to maps, but they are very hard to use past about 16 entries. optimized binary search via eytzinger sorted pointers is trivial to generate and O(log2 n) read which isn't too bad.

True perfect hashes are rather complex to implement, I need something trivial for this use case so I designed my own. Basically the idea was to find an xxhash32 seed where all n keys have hashes (mod n) with zero collisions. Then I store just seed and a list of pointers.

I keep getting this feeling like there is something I need to build and put out in the world (business or service or product) related to my various system designs, (rando, caify, nibs, encantis, etc...) but I can't, for the life of me, figure out what would actually be useful to most people.

Things I find while living with seven children, edition 2376: There is a small white pony bead with some tiny green plant potted in it. (Pencil for scale)

Tim Caswell reposted

I'm very proud these folks are succeeding to make decentralized open source social nets mainstream. I tried with Manyverse and failed, but I realize that all the bold advocacy and predictions I did for decentralized open protocols was... after all correct.

Jay ๐Ÿฆ‹@jay.bsky.team

Bluesky is a PBC (public benefit corporation) with the mission โ€œto develop and drive large-scale adoption of technologies for open and decentralized public conversation.โ€ From the start, our goal has been to build a decentralized social network that is usable by the mainstream.