placeholder

Quiet quitting: why doing the bare minimum at work has gone global

The meaninglessness of modern work – and the pandemic – has led many to question their approach to their jobs

Click to view the original at theguardian.com

Hasnain says:

“Ranjay Gulati of Harvard Business School has instead characterised it as a “great rethink”, where people evaluate their lives and options: people like Natalie Ormond. “I left my 14-year social work career last September,” she said. “I wasn’t driven to climb the ladder and felt that I was coasting – not doing the bare minimum, but just doing my job and not going above and beyond.””

Posted on 2022-08-07T05:27:23+0000

placeholder

Not a Yoking Matter (Zero-Copy #1) - In Pursuit of Laziness

This is part 1 of a three-part series on interesting abstractions for zero-copy deserialization I’ve been working on over the last year. This part is …

Click to view the original at manishearth.github.io

Hasnain says:

This was a really interesting series of posts. I learnt a lot about weird arcane corners of rust that I didn’t know about and now I’m excited to find a use for these libraries at some point.

Posted on 2022-08-05T04:09:46+0000

placeholder

The disproportionate influence of early tech decisions — brandur.org

Spend five years at a hypergrowth startup like Stripe, and you see a lot changes during that time. Organizationally, it’s night and day, as a few hundred people scaled to thousands, the structure adapted to teams with charters and responsibilities that were much more fixed, and with a rigid manage...

Click to view the original at brandur.org

Hasnain says:

I’d say a lot of early decisions are important just because the cost of change is often higher than that of leaving a working thing alone. This piece resonated a lot.

“It’s not a bad instinct, but quality is more of a sliding scale than it is a good or bad dichotomy, and I’d argue that many small companies optimize too much in favor of speed by trading away too much in terms of maintainability by shipping the first thing that was thrown at the wall.

And this fails the other way too, where major believers in academic-level correctness agonize over details to such a degree that projects never ship, and sometimes never even start. (Cough, Heroku Dogwood stack, cough.)

As with most things, the answer is somewhere in the middle. Spend time thinking and planning, but not to a degenerate extent – it’s also important to do. Refactoring is a key part of the equation – code is never right the first time, it converges on right through many iterations. And ideally the first couple refactors are significant, not only small patches that leave the bulk unchanged. More refactoring passes are better, but subsequent ones will produce diminishing returns.”

Posted on 2022-08-04T04:34:45+0000

placeholder

You aren't lazy. You just need to slow down

Instead of viewing laziness as something we need to fix or overcome with caffeine or longer work hours, social psychologist Devon Price says to think of laziness as a sign you probably need a break.

Click to view the original at npr.org

Hasnain says:

“"Laziness is usually a warning sign from our bodies and our minds that something is not working," he says. "The human body is so incredible at signaling when it needs something. But we have all learned to ignore those signals as much as possible because they're a threat to our productivity and our focus at work."

That achievement mindset might actually be hurting you. And rethinking "laziness" can lead to more compassion.”

Posted on 2022-08-04T04:31:31+0000

placeholder

Performance Numbers Worth Knowing - Speculative Branches

Performance Numbers Worth Knowing When you design software to achieve a particular level of performance, it can be a good idea to be familiar with the general speed regimes you are working with: fundamental limitations like storage devices and networks can drive software architecture. Here are a set...

Click to view the original at specbranch.com

Hasnain says:

Bookmarking for later reference when it comes to system design - this list is more comprehensive than most.

“When you design software to achieve a particular level of performance, it can be a good idea to be familiar with the general speed regimes you are working with: fundamental limitations like storage devices and networks can drive software architecture. Here are a set of common benchmark numbers that can help you anchor performance conversations and think about the components that your software will interact with. As with all guidelines, these numbers are all slightly wrong, but still useful.”

Posted on 2022-08-04T04:29:28+0000

placeholder

Hasnain says:

The examples here are basically black magic.

“Should I use this?

God no.

The pattern matching feature is, on the whole, pretty reasonably designed, and people will expect it to behave in reasonable ways. Whereas __subclasshook__ is extremely dark magic. This kind of chicanery might have a place in the dark beating heart of a complex library, certainly not for any code your coworkers will have to deal with.”

Posted on 2022-08-04T04:27:43+0000

placeholder

Use One Big Server - Speculative Branches

Use One Big Server A lot of ink is spent on the “monoliths vs. microservices” debate, but the real issue behind this debate is about whether distributed system architecture is worth the developer time and cost overheads. By thinking about the real operational considerations of our systems, we ca...

Click to view the original at specbranch.com

Hasnain says:

This was great. I’m firmly in this camp - use one server, have a monolith, use SQLite - this makes things so much easier.

I was just talking the other day with a friend along similar lines and back of the envelope math suggests you can host a 1M DAU site on a $5/mo app server. Computers are fast and we tend to over engineer solutions.

“When you experience growing pains, and get close to the limits of your current servers, today’s conventional wisdom is to go for sharding and horizontal scaling, or to use a cloud architecture that gives you horizontal scaling “for free.” It is often easier and more efficient to scale vertically instead. Using one big server is comparatively cheap, keeps your overheads at a minimum, and actually has a pretty good availability story if you are careful to prevent correlated hardware failures. It’s not glamorous and it won’t help your resume, but one big server will serve you well.”

Posted on 2022-08-04T04:03:52+0000

placeholder

Hasnain says:

This was a super long read that made me both think and nod along a lot as I read it. The author gives a great overview of the rise of metrics-driven “accountability” culture, some of the claimed benefits, and a lot of the observed downsides. I had heard of some these examples in the abstract for a while but seeing them laid out in detail, across areas ranging from education to policing to medicine, was something else.

The writing got a bit dry in the philosophical critiques section - I started skimming there till the conclusion bits - but it’s worth a read.

“One effect of that depletion is to motivate those with greater initiative and enterprise to move out of mainstream, large-scale organizations where the culture of accountable performance prevails. Teachers move out of public schools to private and charter schools. Engineers move out of large corporations to boutique firms. Enterprising government employees become contractors and consultants. There is a healthy element in this. But surely the large-scale organizations of our society are the poorer for driving out those most likely to innovate and initiate. The more that work becomes a matter of filling out forms and filling in boxes by which performance is to be measured and rewarded, the more it will repel those who know how to actually think.

Economists who specialize in measuring economic productivity report that in recent years (2007–12) the only increase in total factor productivity in the American economy was in the IT-producing industries. A question worth asking is to what extent the culture of accountability—with its staggering costs in employee time, morale, and initiative—has itself contributed to economic stagnation?”

Posted on 2022-08-04T02:22:49+0000

placeholder

sqlite-zstd: Transparent dictionary-based row-level compression for SQLite - An sqlite extension written in Rust to reduce the database size without losing functionality - phiresky's blog

Motivation (or side side projects) While working on my startup (DishDetective) I started a side project of an automatic time-tracking tool (timetrackrs), where I try to collect a lot of information about my habits for later analysis. The main component collects data from my computer about what

Click to view the original at phiresky.github.io

Hasnain says:

This was a pretty interesting technical read. I’ve thought of doing similar stuff at the application layer in the past (a la Managed Compression @ meta) but it’s cool to see something like this for SQLite and in a manner that doesn’t need any application level changes.

“For some use cases, sqlite-zstd is great. It can reduce the size of your database by 50 to 95%. The performance impact is there, but considering most operations still run at over 50k per seconds you’ll probably have other bottlenecks. There’s other optimizations to be done

The same method should work for other databases, with barely any modifications required for e.g. PostgreSQL. I’m not sure why no one has done this before or maybe I just couldn’t find it.”

Posted on 2022-08-03T05:45:14+0000

placeholder

Hasnain says:

This was chock full of great advice. I have seen this bias play out way too many times and try to counteract it when I can, but it sucks and is tough.

“If you could have seen me growing up, you would probably be shocked by just how shy I was. The thing is, most people are not born with the skill to discuss any topic intelligently and without preparation. But that's the beauty of learning to speak up: with enough practice, anyone can level up their skills and improve their career prospects, no matter how shy they think they are.

As leaders, we have the ability to help make the playing field more equal, and as colleagues, we can vouch for our fellow team members. And if you're a natural introvert, there are small steps you can start taking today to make your voice heard and your perspective known.”

Posted on 2022-08-02T15:38:32+0000