@faassen@fosstodon.org
@faassen@fosstodon.org avatar

faassen

@faassen@fosstodon.org

Me grok write code. Python, Rust, Typescript, JavaScript. Created: Morepath, lxml. Also: gardener, science & history fan, living life fan. Husband & father.

I post a lot about programming as well as gardening pictures. If you come for just the gardening pictures the programming talk may baffle you. If you're a programmer, I invite you to enjoy the flowers!

This profile is from a federated server and may be incomplete. Browse more on the original instance.

faassen, to rust
@faassen@fosstodon.org avatar

Rust offers a lot of powerful features, and it can be overwhelming when you are learning it: what to use?

Rust becomes easier when you realize there is a smooth path. The smooth path involves having concrete structs and enums that own everything, no references. It involves not being too afraid of clone to maintain this.

You may need to leave that path for performance (references with explicit lifetimes, rc) and/or reuse (traits, generics, macros). But mostly you stay on the path.

faassen, to rust
@faassen@fosstodon.org avatar

It certainly took me more than 4 months of non full time attention before I felt competent writing Rust code. But I held myself to a different standard than "competent contributing to a Rust code base", which would have been much faster.

I mean something more like "competent to write reasonably idiomatic new codebases of significant size". Took me years of occasional study and play to get to that state. I realize that's more ambitious.

faassen, to gardening
@faassen@fosstodon.org avatar

Pink petunias. I grew these double petunias from seed and have them in hanging containers on the balcony. Quite the show.

dabeaz, to random
@dabeaz@mastodon.social avatar

I've always thought that knowledge of tuples, lists, dicts, and sets was part of the lingua franca of Python, but I've increasingly had doubts. Maybe they've never been that. I don't know. Just a fleeting thought of the morning

faassen,
@faassen@fosstodon.org avatar

@dabeaz
I have been surprised to encounter so many people using various languages, including Python, who don't use hash tables when appropriate. Just scanning through arrays to find stuff instead.

faassen,
@faassen@fosstodon.org avatar

@dabeaz

@orsinium @_KevinTrainor

Before Python had built-in sets, I still would use dicts with None values for those. But I have seen a few people introduced to both dicts and sets and their purposes and yet they don't use them.

I think it requires an intuitive understanding of algorithmic complexity and that's another constraint during development that takes effort to keep in mind.

mcc, to random
@mcc@mastodon.social avatar

I don't understand how the quantum dish detergent is different from the not-quantum dish detergent

faassen,
@faassen@fosstodon.org avatar

@mcc
If you put your cat in the dishwasher with quantum ones Schrodinger rises from the grave yelling enough with cat stuff already

faassen,
@faassen@fosstodon.org avatar

@mcc
Plausible given the locking up a cat with poison gas triggered by radiation thing

Pavlov doesn't sound like a dog person though

markmccaughrean, to animals
@markmccaughrean@mastodon.social avatar

Look who just walked in after almost four weeks 😱🥰

He’s lost a lot of weight & scarfed down a plateful of food in seconds, but otherwise apparently very noisily happy to be home 😺

I’m speechless & hugely grateful that the universe continues to move in mysterious ways 🙇‍♂️



faassen,
@faassen@fosstodon.org avatar

@markmccaughrean
That must be such a relief!

Too bad he won't be able to tell you what he's been up to.

faassen, (edited ) to gardening
@faassen@fosstodon.org avatar

Found randomly on the web: "Foxgloves can grow up to 5 feet high"

Tell that to the foxglove stalks in my garden that are taller than me, and I am 6'2".

faassen,
@faassen@fosstodon.org avatar

@Shivs I think maybe a combination of a lot of rain and then lots of sunshine afterwards.

faassen, to random
@faassen@fosstodon.org avatar

Foxglove flowers. I have grown cultivars before (candy mountain is a recommendation) but these spring up for free all around my garden, year after year. They are spectacular! Some have flower stalks as tall as I am. Bumblebees are eager visitors.

Purple foxglove flowers close up.
A foxglove flower stalk, with white flowers.

faassen,
@faassen@fosstodon.org avatar

@simon
Yes, with small kids do beware!

faassen, to programming
@faassen@fosstodon.org avatar

When I build a new project, I organize modules in a single flat namespace. I hold off on any further organization.

When a project is new I don't know the organization of the code yet.

Then when it finally becomes more clear what the organization should be, I refactor into this better organization. I hold off on this until it's really clear; we're talking months down the line.

Not doing it this way risks locking you into a bad scheme, driving more bad decisions.

faassen,
@faassen@fosstodon.org avatar

@fabian
Haha, no!

And on the topic of utils: I try to avoid it as long as possible. I look hard for a better name. When I have one I keep looking for opportunities to move what is inside to better named modules.

faassen, to opensource
@faassen@fosstodon.org avatar

If you take responsibility you will get it. So beware.

Giving up control to others is one of the most worthwhile things you can do to build community and ensure continuity.

Those who find it easy to take responsibility may find it difficult to give up the control to others.

Practice giving up control explicitly. If you want to have a vision shared you will need to give others a real stake in it, and it will change.

markmccaughrean, to animals
@markmccaughrean@mastodon.social avatar

It has been a very difficult week.

Our cat Tigger has been missing since last Sunday.

He was wandering unsupervised in the back garden in his jacket & leash as he often does, but got tangled, wriggled free, & was off before we spotted him.

He usually comes back within an hour when this happens, although once in 2018, he was gone for 4 days.

It has been 7 days this time already.

We’re worried sick.

1/

faassen,
@faassen@fosstodon.org avatar

@markmccaughrean
I am so sorry to hear that. I hope he returns and is well.

jbaert, to random
@jbaert@mastodon.social avatar

This is not looking good...

Leaked EU Document Shows Spain Wants to Ban End-to-End Encryption | WIRED
https://www.wired.com/story/europe-break-encryption-leaked-document-csa-law/

faassen,
@faassen@fosstodon.org avatar

@jbaert
The Dutch justice minister wants client side scanning instead, which also looks bad.

grimalkina, to random
@grimalkina@mastodon.social avatar

Today I woke up and enjoyed a peaceful morning reading and I realized, quite suddenly and all at once, that I hadn't had to think about and struggle with my breathing for a long time. That I'd forgotten to monitor it.

I can't express to you the fragile and overwhelming joy of this feeling. The way it made me realize both freedom for this moment AND how difficult it's been.

Grateful for progress, always thinking of those for whom this morning doesn't exist.

faassen,
@faassen@fosstodon.org avatar

@grimalkina
I had that with a spell of dizziness last year. The feeling of unsteadiness faded over months and at some point I didn't monitor it anymore.

I am very glad to hear about your improvement!

faassen, to rust
@faassen@fosstodon.org avatar

Usually I am productive with and the language typically doesn't hold me back anymore.

But this week I was building an API that takes closures and I needed recursion at some point and wow, that was hard.

I got it working in the end but I felt like I was struggling with the language. Mutability issues, various cyclic type errors. I even ran into something that that according to the error at one point used to be possible but had since been determined to be a bug.

faassen,
@faassen@fosstodon.org avatar

@janriemer
I need to consider traits in the light of this API.

The closures are basically used to convert data stored in an enum (either a string or int or double, etc) into more specific types. So you can define queries that return the enum and plug in a closure to convert it to anything you want. Queries also compose - you can use a query inside the closure to construct part of a larger object.

faassen, to programming
@faassen@fosstodon.org avatar

When you write a library, write some code that uses the library at the same time.

Code in automated tests can help drive API design. Testability is a very important design pressure.

But of course in the end your API is supposed to be used by real-world applications. You can simulate that using example code and code in documentation, but best is to write an actual application. Usability is a very important design pressure as well.

bastianallgeier, to random
@bastianallgeier@mastodon.social avatar

A while ago, I read about the psycholgical effect that kicks in when someone tries to fight for a good cause, but then makes a tiny mistake.

We are very hard on hypocrisy because our brains like when things add up.

I.e. a climate activist with a plastic cup triggers much harder than Elon taking a 5 minute flight in his private jet every other day.

The first feels wrong, while the second just meets our expectations.

I can't stop seeng this everywhere ever since.

faassen,
@faassen@fosstodon.org avatar

@bastianallgeier

@hongminhee

Similar to this is us reacting much more strongly to negative acts by human actors versus accidents or natural causes, even if these other causes may be far more costly.

faassen, to random
@faassen@fosstodon.org avatar

Agile processes tend to use a LOT of post-it notes. A LOT of post-it notes. Why?

Mary Poppendieck is one of the originators of agile processes, coming up with lean software development. Before that she worked on lean manufacturing, a precursor to agile.

Where did she work on that?

At 3M

ct_bergstrom, to random
@ct_bergstrom@fediscience.org avatar

For the entire span of my life, people have tried to develop AI systems and anticipated a day when those systems can pass the Turing Test.

Now that day has arrived, and no one seems to care about Turing Tests anymore. Why not?

Is it that

  1. We're not actually there? It would take more than a few simple patches (google the answer to arithmetic questions!) on top of ChatGPT to pass a turing test?

  2. Arriving there makes it clear that the Turing Test never was the right metric?

faassen,
@faassen@fosstodon.org avatar

@ct_bergstrom
I suspect part of it is a sense of "vitalism" about human intelligence; if a machine can replicate new aspects of it, then it cannot be real, unlike human intelligence. "Intelligence of the gaps". It makes us feel better about ourselves.

There are other factors as well, but this urgent desire to be special is part of it.

grimalkina, to random
@grimalkina@mastodon.social avatar

Pet peeve/rant but no wonder no one tries to publish software research because the web presence of these journals is SO MUCH WORSE than anything I've dealt with in psychology, biology, social sciences or STEM. Really, really, really awful! Misleading! Wild! Thirty different names for the same thing! Classic.

faassen,
@faassen@fosstodon.org avatar

@grimalkina
That sucks. It's a bizarre blind spot for a field that has people try to make computers do things useful to humans requiring a lot of mental effort. Some engagement with psychology appears reasonable...

Bizarre but not too surprising; there is a cultural undercurrent of "we are beings of pure reason unhindered by emotion" ("and therefore <totally wacky thing> is very sensible")

  • All
  • Subscribed
  • Moderated
  • Favorites
  • JUstTest
  • rosin
  • mdbf
  • osvaldo12
  • ethstaker
  • tacticalgear
  • DreamBathrooms
  • thenastyranch
  • magazineikmin
  • modclub
  • Youngstown
  • everett
  • slotface
  • kavyap
  • megavids
  • GTA5RPClips
  • khanakhh
  • cisconetworking
  • tester
  • ngwrru68w68
  • normalnudes
  • Durango
  • InstantRegret
  • cubers
  • provamag3
  • anitta
  • Leos
  • lostlight
  • All magazines