< Back to the archive

Like what you see? Subscribe here and get it every week in your inbox!

Issue #218 - May 14, 2023

Here are the top threads of the week, happy reading!

Top comment by samwillis

Anything CRDT (conflict free replicated datatypes: https://en.wikipedia.org/wiki/Conflict-free_replicated_data_...) related is fun to read up on and play with.

Papers and references (page maintained by central academic in the world of CRDTs): https://crdt.tech

Group doing research into how they can be used to build interesting collaborative (and async) applications: https://www.inkandswitch.com

A few of the major open source implementations - mostly for rich text editing or JSON like data structures:

- Yjs: https://github.com/yjs/yjs

- Automerge: https://github.com/automerge/automerge

- Peritext: https://www.inkandswitch.com/peritext/

- Dimond types: https://github.com/josephg/diamond-types

People building eventually consistent database syncing with them:

- https://electric-sql.com (Postgres <-> SQLite)

- https://vlcn.io (SQLite <-> SQLite)

Open source colaborative servers (coordination, persistance, presence):

- https://github.com/ueberdosis/hocuspocus

- https://github.com/partykit/partykit

- https://github.com/firesync-org/firesync

Top comment by capableweb

I ended up in the same situation with my restaurant business. Personal Facebook account was suspended (which hadn't been used for anything except buying ads for mentioned business for something like ~4 years), and I guess because of that, the professional Instagram account linked with the personal Facebook was also suspended.

I had ads running and tried for ~2 weeks to do anything about it, but Facebook kept charging me and I kept being unable to resolve it by any manner at all. Eventually reached a real human via Facebook support somehow, and they said there was nothing they could do.

Had to lock and block my card for the charges to stop. Wrote to my bank about them charging me even though I was suspended, I got all the money back from the day the suspension started (took screenshots from day one it happened) and I'll never use anything related to Facebook again.

So I guess my advise is to lock the card, ask your bank nicely and if the bank won't help you, take it to court. Not sure what country you are in, but usually there are organizations that help you pro-bono for easy cases like this when huge companies try to take advantage of the small person, often leading to something called "small claims court".

Top comment by gmac

Postgres. Fast, full-featured, rock-solid, and a great community.

I think many of us can’t be bothered to go over (again) the issues we’ve had with MySQL in the past. The last straw for me was about ten years ago, when I caught MySQL merrily making up nonsense results for a query I’d issued that accidentally didn’t make any sense.

Very likely this particular issue, and others like it, have been fixed in the meantime. But I just got the sense that MySQL was developed by people who didn’t quite know what they were doing, and that people who really did know what they were doing weren’t ever likely to be attracted to that to fix it.

Top comment by softwaredoug

In my 20s I worried about losing my intellectual abilities in my 40s and 50s

What you really just lose is patience for BS :)

Sure, yeah, you lose 10% of your raw intellect if you stay healthy[1]. You probably more than make up for it in experience and wisdom. But hell the thing that demotivates me is the recycled insanity of large organizations, egotistical tech executives, hype cycles, and all the other BS. Eventually you can learn to laugh it off, but you don't take it as seriously as you did when you're younger. It motivates you less. You stay focused on what interests you outside of whatever external factors happen.

For some, of course though, this just leads to burnout on the whole field. Seeing one dumb hype cycle after another, with self-described visionaries chasing trends, rather than defining them, heartlessly laying off staff, etc, even when profitable. Its enough to drive you crazy if you let it.

1 - https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4906299/

Top comment by jdreaver

The Elements of Computing Systems: Building a Modern Computer from First Principles [0] [1]

Easily one of the most interesting and engaging textbooks I've read in my entire life. I remember barely doing any work for my day job while I powered through this book for a couple weeks.

Also, another +1 to Operating Systems: Three Easy Pieces [2], which was mentioned in this thread. I read this one cover to cover.

Lastly, Statistical Rethinking [3] really did change the way I think about statistics.

[0] https://www.nand2tetris.org/

[1] https://www.amazon.com/Elements-Computing-Systems-second-Pri...

[2] https://pages.cs.wisc.edu/~remzi/OSTEP/

[3] https://xcelab.net/rm/statistical-rethinking/

Top comment by stefanos82

Another hypothetical scenario that could be taken into consideration is the following:

Before hiring you they had either interviewed another candidate that matched their needs and was more experienced than you, or expected a friend of theirs to join their team, but did not reply back for a while and due to their tight schedule, they had to hire someone urgently, thus leading to your hiring. After hiring you, between the end of second and third week, this aforementioned candidate or friend replied and said "I'm available now" and decided to let you go; the only thing that had to do is to figure out a way to use as an excuse to fire you.

I have been there myself and I know first hand how it feels; therefore I will repeat myself: discuss the matter with a lawyer and feel happy that you dodged a bazooka, not just a bullet!

Top comment by maerF0x0

Old guy here, About 1/3 of my computing time was pre internet. Before that we did a lot of trial and error, reading electronic documentation (READMEs etc) and also books.

Depending on your current skill level perhaps the following would help.

I would recommend getting a book on each of your interest areas of the stack and work through them ~2 hours per day per book.

eg: a curriculum could be:

- A book on linux, android, or iOS operating systems. Learn about filesystems, reading binary files, and at least one binary file layout to get a sense of "it's all just data" (Hexdump or C)

- A book on networking (learn all the OSI layers, practice working with the various envelopes, see them in TCPdump / Wireshark or other sniffing tools

- A book on internet like technologies eg: https://hpbn.co/

- A book on Frontend development. perhaps React

- A book on Backend development. Perhaps something about making HTTP + RESTful + JSON apis (alternative GRPC development)

- A book on a datastore of choice, I recommend postgres and you can grab the manual and books from here: https://www.postgresql.org/docs/

just my 2c of how I'd spend ~1 month per book offline but still progressing.

The hardest part is going to be the discipline to actually work at it every day consistently and for more than like 15 mins :)

Top comment by Simon_O_Rourke

The most simple but one of the most effective tricks I learned from an "old sweat" when I was a green junior dev just starting out... keep a folder called notes, and each day create a date-numbered file in the format YYYYMMDD.txt.

Put any code snippets, git links, lessons learned, meeting minutes or basically anything interesting in there each day.

Then to access it - you can bash script search, e.g., to find anything you wrote in 2022, you'd simple type;

grep "whatever" 2022*.txt

It works like a charm, been using it for fifteen years.

Top comment by rektide

No one is willing to give up control. Unlike the PC era where the computer was the user's, all these systems are part of various walled gardens. Really excellent loved cared for neat experiences just don't happen in corporate isolation, or they become mismanaged over time. Even if a corporation does do good for some folks, who they target wont match what other consumers want.

The whole IoT era is plagued by draconian old-world corporate power-control games, which are unrefined crudity compared to where PCs had been headed. Some healthy standards & protocols that actually leave users in power would start to cleanup the toxic waste dump operating-regime these products are in now.

Top comment by okaleniuk

How about interactive books? Like Immersive Linear Algebra by J. Ström, K. Åström and T. Akenine-Möller; or http://immersivemath.com/ila/index.html or Interactive Linear Algebra by Dan Margalit and Joseph Rabinoff https://textbooks.math.gatech.edu/ila/index.html

I suppose they should work well for self-study, but I never tried learning by one myself.