sfba.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
A Mastodon instance for the San Francisco Bay Area. Come on in and join us!

Server stats:

2.4K
active users

#FridayDevAdvice

0 posts0 participants0 posts today

The story about Ibtihal Abu Alsaad, the Microsoft engineer who was fired for telling Microsoft not to use their software to aid in the Palestinian , is something I’ve feared all my career. Abu Alsaad said: “My biggest fear is waking up for my 9 to 5 and realising that my code has killed children today.”

I wrote this in 2018: “Software used to guide a missile has consequences. So does software used to profile applicants for potential jobs, or help people live a healthier life. Will you accept the moral consequences of your code? Will you accept both praise and blame for how your software is used?”

I’m always painfully aware of what the code I write can potentially do. There are bright red lines I will not cross, no matter the reward.

humancode.us/2018/03/30/person

humancode.usPersonal Values

I find that I crave a particular sensation of having done some wrestling with an interesting or difficult problem space. It’s a sense of fulfillment of having gone down some rabbit hole, retrieved some valuable nugget of insight or skill, and emerged hours later with something precious in my hand, my metaphorical body covered in the sweat and dirt of having struggled past my prior limitations. It’s exhilarating, and it makes for great stories and cherished memories.

It’s a muscle that I have to remember to exercise regularly. I get flabby and weak unless I go on a short expedition once in a while. I never regret it when I do.

I don’t know if it’s my age or just the general shitty state of the world around me, but I’ve been struggling to get enough rest these days to function optimally. The amounts of work that I would normally find OK (or even pleasant) has shrunk down significantly. I need more rest, more distraction, more entertainment to get through the day.

I think a lot of it comes down to stress. I’m stressed more and longer each day than I used to be. And dealing with stress means getting away from the routine and having some do-nothing downtime. And the more stress I get, the more intentional downtime I need.

Unbeknownst to me, I think I’ve allowed my “max stress” alarm level to be set at higher and higher levels over time. I need to reset that index back downward for my health.

Any system of governance that covers a large enough number of stakeholders must have a means to fend off bad actors, leeches, saboteurs, and (especially) moneyed interests who want to subvert the system for personal gain.

Any structure that relies on “everybody needs to behave well” for order is GOOD, but NOT SCALABLE. It’s perfectly fine to start with that assumption of good faith, but if your organization becomes successful, you must begin building in structures that prevent subversion, with clear consequences for violations, and consistent follow-through.

This goes for all kinds of governance, from technical to civil.

As a software engineer, it’s basically impossible to survive poor work-volume management. You can try cutting corners, making extreme tactical decisions, triaging your issues, whatever…but the burn-down chart does not lie. A strategic decision by management (or worse, executives) to ignore burn-down rates is basically irrecoverable.

As a manager, be honest to your executives *and* your reports. Given enough people in your team, there is no tactical decision that will make your engineers work faster. Your only real option is to admit early that your deadline is untenable, and replan by reducing features, or extending deadlines. Whipping your engineers to work harder has never worked, and will ruin their trust in you forever.

As an executive, allow your teams to honestly report their estimates, and respect their pace of work. Pressuring your managers to give you better numbers is lying to yourself, unless you’re willing to talk about what features you’re willing to cut.

New blog post for :

Here are some tenets of software engineering that I’ve gathered through the years. I’ll probably add to this list over time as I think of more.

Above all, empathy

All software that stand the test of time come from a place of empathy: it serves some human being well in one form or another…

Read more at humancode.us/2024/10/24/tenets

humancode.usDave’s tenets of software engineeringHere are some tenets of software engineering that I’ve gathered through the years. I’ll probably add to this list over time as I think of more. Above all, empathy All software that stand the test of time come from a place of empathy: it serves some human being well in one form or another.
Continued thread

I think humanoid robots are attractive to techbros precisely because they allow them to further disrespect people, to make laborers work without rest, to give no consideration to their wellness and aspirations, and yes, to literally fuck them whenever they so desire. In other words, to conjure up a race of servants, mechanical or otherwise.

We already live among robots. But with humanoid robots, techbros want us to live among a race of slaves, only some of whom are mechanical.

/end

Continued thread

Proponents of humanoid robots often hawk a Utopia in which every poor and middle-class household has a humanoid servant that frees them from tedium. But this sort of relief has been a promise of *every* technology of automation for several generations, and last I checked, workers have not become more wealthy and leisurely at all. In fact, the majority of the fruits of productivity borne by automation has so far accrued to the very wealthy, and very little to the poor. There’s no reason to believe this time it will be different.

5/

I think humanoid robots are attractive to techbros precisely because they allow them to further disrespect people, to make laborers work without rest, to give no consideration to their wellness and aspirations, and yes, to literally fuck them whenever they so desire. In other words, to conjure up a race of servants, mechanical or otherwise.

We already live among robots. But with humanoid robots, techbros want us to live among a race of slaves, only some of whom are mechanical.

/end

Continued thread

Humanoid robots are a great solution when you’re a capitalist: not only do they do the work of a human worker without complaint, they pose an existential threat to the human laborers that remain working for you. Humanoid robots keep your workers threatened and afraid, even more than factory automation already do.

4/

Continued thread

Look, if you want to make a robot that cooks fried rice faster and more cheaply than a human, you wouldn’t make one that looks like a human who manipulates woks and spatulas; you’d make a big box into which you pour ingredients, and invent simplified mechanisms that do the job. But if you want to make a robot that *directly devalues the worth of a human cook*, you’d make one that looks like the human cook. After all, a human cook could plausibly claim that their food has a special touch that the big industrial box cannot replicate; but they can’t make the same claim against a robot that uses the same implements and methods they use to make their products.

3/

Continued thread

While humans are fantastic generalists, we are not very good at any repetitive chore. Human-shaped robots will not only inherit our flexibility, but also our limitations. Our lanky, limbed bodies evolved to satisfy evolutionary pressures that robots aren’t subject to, so why bother making robots that are constrained to the human form, teetering on two tiny feet, doomed to never be very good at any task in particular?

I believe the reason is simple: *because humanoid robots devalue human labor.* By inserting robots into environments meant for humans, you directly displace human labor.

2/

We already live among robots; machines that autonomously relieve us of tedious chores have existed for more than a century. We lived among robots when James Watt sold steam engines that milled wheat tirelessly all day. Our cars have lane-keep assist, adaptive cruise control, and automatic headlights. At home, we have washing machines, rice cookers, thermostats, and automatic floor sweepers. In factories, robots make and assemble everything from ramen noodles to automobiles. Robots are already everywhere.

But none of these robots look like *people*; and that’s for a good reason: their shape is dictated by their purpose. They are optimized to do *one or two jobs very well and economically*, and as every generation of robots get better at what they do, their shapes become more optimized for their intended jobs.

So why do a certain class of folks continue to lust after a future of robots that look like humans?

Blog post form: humancode.us/2024/10/11/robots

1/

humancode.usRobots should not look like peopleWe already live among robots; machines that autonomously relieve us of tedious chores have existed for more than a century. But none of these robots look like people; and that’s for a good reason: their shape is dictated by their purpose.
Continued thread

The proof of care is time.

The precautions you take to make sure things will go just right. The extra time you put in to polish and to perfect. The periodic double-check to make sure things are still in order. The time you take to look back at what you did and make sure it is good to go. The time you take to celebrate your accomplishments.

The proof of passion is time.

You can’t claim passion for something you don’t put time into—even curiosity takes time! It takes time to learn, observe, and most importantly, act. It takes time to perfect, to fail, to retry, and sometimes to succeed. There’s always more time to spend with something you’re passionate about, something new to learn, something new to try, something new to achieve.

When you’re passionate about something, you make the time.

Because the proof of passion

is time.

(end)

Blog post: humancode.us/2024/10/05/the-pr

humancode.usThe proof of passion is timeThe proof of passion is time. Not just the days you spend working on something, but also the tiny moments you spend thinking about it when you’re away. The daydreams in which you mull the next step, the long showers wherein you ruminate about how you’d go about it.

The proof of passion is time.

Not just the days you spend working on something, but also the tiny moments you spend thinking about it when you’re away. The daydreams in which you mull the next step, the long showers wherein you ruminate about how you’d go about it.

The proof of love is time.

It’s when something distracts you as it bring your love to mind, and takes up a tiny bit of time in the middle of your day. It’s when you think about what you should pick up while you’re already about, because it may benefit your love. It’s the hours you spend observing, listening, learning, in order to know that love more deeply.

(cont’d)

Techbros will keep attempting to invent ways for people to exchange information without relying on a network of human trust, and again and again, human trust will prove to be an essential part of a functioning system.

Systems that mainly attempt to replace human trust always work great until they don’t, then you fall off a lonely cliff from which no one can help you out.

Never bet against a network built on human trust and a shared sense of personal reputation, because that’s where all human collaboration eventually gets done, and because that’s where every hare-brained “don’t trust humans” network will eventually end up, lest they perish.