< Back to the archive

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

Issue #86 - October 25, 2020

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

Top comment by smaslennikov

Automated cat infrastructure: automatic USB water fountain[0], food dispenser[1], Litter Robot 3[2] (as of recently, with a homebrew controller[3]).

These allow me a good four days of absence from the house - for camping or whatever else. Doesn't happen often that both the wife and I are MIA, but when it does, these things are indespensable.

[0]: https://www.amazon.com/gp/product/B07WGLYV22/

[1]: https://www.amazon.com/dp/B00VIXRB6O/

[2]: https://www.litter-robot.com/litter-robot-3.html

[3]: https://litter-controller.smaslennikov.com/

Top comment by Broken_Hippo

We got taught about basic finance. It was poor: The teacher had a friend from a care dealership come in to teach us some things. I was 13.

But more importantly: What a wide swath of folks need is how to survive poverty. So many people never get to the point of even considering a CD or IRA. Most folks only really need the bank account for paying things. 401(k) simply because that's what is offered by the employer, and you have to get paid enough to really use it. Sometimes $5 today really is more important than $10 when you retire since it means food to make it to retirement. MSA is similar: You need the extra money. No point in a MSA if you can't afford insurance anyway.

If you can't teach how to afford poverty, the rest is useless and completely tone deaf.

Likewise, most folks aren't going to open a business and many won't invest in markets.

Realistically, what we need are online resources in plain, simple english that explains these things and/or classes that are mandatory for folks starting businesses. The younger the person, the more likely the person is to be pretty good at consuming information on the internet. Just make sure folks know where to go to get good information.

Top comment by Karawebnetwork

One day at a time.

Since you cannot cure that illness, I recommend fixing everything in your life that you have control on and that might help you feel better.

Sleep well, eat a good diet, skip fast-food and alcohol when possible, etc. This won't cure it (don't listen to people that say it will) but it will make your overall life better. This will make it so that when the chronic illness hits you, you're at a more stable place.

Most of all, remember that it's not your fault if you fall down after doing your best. You have something that is external to your control and it's bound to win fights at time. Take the time to get better then stand up again. One day at a time.

If it is safe for you to do so, talk about it with your HR or your manager. They should understand that sometimes, you will be focused on that illness instead of workplace productivity. That's okay, that's how it should be. Trying to win both at the same time is how you burn yourself up.

There will be some unconscious bias against you, you'll need to play your cards well. Some people will try to support you yet come hard at you when you drop the ball. Remind them that you are doing your best and that the cause is out of your control, but don't waste your time trying to argue your way into changing their opinion of you. Some people will have empathy, others won't no matter what. Surround yourself with allies and built a support network. You may even meet other people that have chronic illnesses, and they will understand you the best.

I find that it's better to say as little as possible, you have the right to privacy after all. Your coworkers don't have to know the details of your life.

It's a marathon, really.

Top comment by AlchemistCamp

I've continued running my Elixir screencast business, and added on a 2nd product, which is a starter template for apps built with the Phoenix Framework. Neither is 100% passive.

The screen casting business means continuing to make a few new tutorials per month and making occasional improvements to its site. It sure pays a lot more per hour of my time than it did 18 months ago, though!

The starter kit is still in alpha, so there's a considerable amount of work to do. I'll be raising the price as it hits various milestones, though. Once it's "done", it will be mostly passive other than updating libraries.

Elixir is a rough market since it's very niche but still has a surprising number of authors, conferences and screen casters in its ecosystem who are also creating educational materials.

My MRR is fairly low, but it's just enough to cover my expenses living in Taiwan.

When I have the bandwidth, I'll launch another product which will be still more passive and it won't be limited to only Elixir devs. After that, the plan is to spend some money on outsourcing the editing of my videos and some routine social media tasks.

1) https://alchemist.camp

2) https://phoenixigniter.com

Top comment by breatheoften

I'm not sure what specific technologies "blockchain databases" is limited to -- but one use case that has been bandying around me head ...

I think there could be a very powerful set of regulatory technologies created on top of blockchain style databases plus used in conjunction with legal agreement.

Imagine a data lake for "enforcing" audit ability --for when information is test that works as follows

1. you may "store" some data in the lake -- say for example P2 2. if you "store" data in the lake you agree that you will not store that data anywhere else

"store" above would in actual implementation be something like storing a key for decrypting the data -- which could be stored wherever in encrypted form.

You would leverage blockchain to ensure that all reads of the data are knowable.

Obviously you can't "enforce" that the data being protected is not stored in other places or in other forms -- however the agreement "i will not store anywhere else" can be given legal or regulatory force to provide a way to punish violators.

A platform for explicitly acknowledging and communicating to both external auditors and the developer itself that "i'm not supposed to store this in other places" is a technology problem that a lot of good faith implementors need help with solving ...

Top comment by nicbou

Kanban comes from the automotive industry, and works really well in the tech industry. The Toyota Production System is a brilliant set of principles and practices that fit well in most industries. Toyota sent engineers to optimize street kitchens some years ago.

ISO 9001 was implemented in manufacturing, and is quite popular in many circles of hell.

Top comment by pgt

In South Africa you could add your contact details to the Direct Marketers' Association's Do Not Call list, but the list was hacked and the contact details sold.

Top comment by fookyong

I arrived in Bali, Indonesia at the start of the pandemic with a 6 month visa. A few months in they started granting emergency extensions to anyone who wanted to stay (getting a flight home was tricky at that time, and still is).

Lots of people left but a core of nomads and expats have remained.

They have since slowly begun to dial back the giving out of emergency visa extensions but you can still get a new visa through the normal process. There are even people arriving in Bali recently, on newly-issued visas from overseas.

The scene is obviously quieter here now. There are no tourists, only nomads and retirees who live here.

Honestly it’s pretty nice and I’m glad I stayed.

Top comment by twotwotwo

So I cloned the mysql-server and postgres repos and ran sloccount. It's not the deepest dive or anything but was interesting.

I saw MySQL had...600k lines of JavaScript?

It turned out that the storage/ndb directory had a Web-based management interface for NDB, which vendors in the Dojo JavaScript framework. It also had ~50k lines of Java for the "ClusterJ" framework, which interfaces with NDB skipping the SQL layer. Overall, sloccount reports about 1.4M lines of code in storage/ndb/.

NDB is a specialized cluster database where all secondary indexes have to fit in the cluster's RAM(!). Work on it started at Ericsson, then it was spun out into a startup which MySQL AB eventually bought. I imagine MySQL management at the time hoped the future of DB clusters might end up looking more like NDB and less like...gestures at today's database landscape.

There are also ~500K lines of Unicode tables in the strings/ directory. I recall Postgres calls out to libc for locale/collation related stuff so probably doesn't need those tables in-tree.

Even accounting for those chunks you still end up with ~1M vs ~2M SLOC as measured by sloccount. (I don't want to pretend the numbers are super precise.) There are probably other differences in what's in scope for the repo or other surprises. [Edit: see johannes1234321's comment which lists some of them.]

Besides those, though, might be truth to others' comments about MySQL spending lots of code supporting drastically different old and new "worlds" in a single binary (non-transactional and transactional storage, originally very-nonstandard vs. currently more-standard SQL, statement-based and row-based replication...). And at a totally non-technical level, as a product MySQL seems to have had more money thrown at it and that tends to mean more code.

This was fun but was an incredibly quick and dirty dive into it, and I'd love to hear more from folks who can look more or just know more.

Top comment by lukevp

There really isn’t a competitor. Supabase is trying to combine OSS tooling into a somewhat similar offering but it’s not nearly as feature rich as Firebase. That having been said, most people use Firebase for real time DB and auth, and Supabase supports that now. It doesn’t, however, support offline use cases, or any of the advanced functionality of firebase.

Pouch and couch solve the offline data scenario and live replication, but no auth story and the mapping of users to data is problematic (unless you build a proxy layer, there’s not an easy way to have some data be public, some private, and some shared).

Realm is paid these days, I believe, and it solves the data replication, but again, no auth.