@joachim@drupal.community
@joachim@drupal.community avatar

joachim

@joachim@drupal.community

'Jaz dood' - my 6yo.

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

selwynpolit, to drupal

I’m starting a new job on Monday and I’ve had lots of time to update my free online book: Drupal at your Fingertips. Please share it with your network. https://selwynpolit.github.io/d9book/

joachim,
@joachim@drupal.community avatar

@selwynpolit That image looks like AI. Please don't.

ben, to fediverse
@ben@werd.social avatar

There's no good way to prevent AI models from being trained on art published on the fediverse. But there's work we can do to prevent it and protect the artists who post there. https://werd.io/2024/protecting-artists-on-the-fediverse

joachim,
@joachim@drupal.community avatar

@ben What about automatically applying glaze to images that go through servers? (https://glaze.cs.uchicago.edu/what-is-glaze.html)

joachim,
@joachim@drupal.community avatar

@toolbear @mlncn It is harder for people to instigate new social norms. Rules help with that. E.g. smoking in public places. I mean, tech blogs on here keep posting AI images and nobody's telling them to quit it.

joachim, to steam
@joachim@drupal.community avatar

has a tag for retro-styled games 'boomer shooters', and WHAT?? Do they mean boomers as in the generation? Boomers were not playing , etc. It was GenX gamers! I know, I was there!

supergarv, (edited ) to php German
@supergarv@phpc.social avatar

Property methods (in , and frameworks like )...

(Boost for reach, trying to get a feel for this)

joachim,
@joachim@drupal.community avatar

@supergarv Are we voting based on what we know, or on how we think they should work?

joachim,
@joachim@drupal.community avatar

@supergarv I wrote a typed data system where getters will autovivify internal objects. But the state as the outside world sees it remains the same. Does that count as changing state or not?

joachim,
@joachim@drupal.community avatar

@supergarv It shouldn't. Though it did cause me some headscratching one time when I was debugging, but that was a) because I hadn't documented my code well enough 🙄 and b) there is an actual bug in there that I don't know how to resolve from a conceptual POV.

joachim,
@joachim@drupal.community avatar

@supergarv Yup! It's a case I hadn't considered properly when I designed the system and I can't see any behaviour which would be 'correct'. I need to have a big rethink and do a 2.0 one day.

joachim, to programming
@joachim@drupal.community avatar

I've just seen a pattern in where a method could return two lists of things. Instead of doing that, it takes as a parameter a callable, and passes the two lists to the callable. Instead of:

[$a, $b] = getLists($param);
// Act on both lists.

we have:

$callable = function($a, $b) {
// Act on both lists
}
actOnLists($param, $callable);

Is that a pattern?

joachim,
@joachim@drupal.community avatar

@das_g Thanks for the analysis! actOnLists() isn't lazy, but it does need to make queries. Further complexity is that it actually retrieves more than one pair of lists. I imagine the higher-order function pattern was written here to avoid returning an array of arrays, or writing a value object class for just this one purpose. I'm not sure how much of a gain I consider that though, as I find the current pattern hard to get my head round.

kate, to random
@kate@fosstodon.org avatar

In the same way most of us say “goodbye” without realising it derives from “god be with ye”, maybe one day people will end conversations with “likensubscribe”

joachim,
@joachim@drupal.community avatar

@kate My 7yo says 'send!' when passing a card in a card game.

johnquiggin, to random
@johnquiggin@aus.social avatar

Why you should never fill in the backstory from @pluralistic The best case for me was when the Doctor Who writers finally succumbed to the temptation to show the Time Lords on Gallifrey, who turned out to be about as exciting as the UK House of Lords

https://pluralistic.net/2024/05/27/cmon-do-it-again/

joachim,
@joachim@drupal.community avatar

@johnquiggin @pluralistic This is why I think the timeless child is a good thing, even if its execution was a bit rubbish - we once again have a mysterious backstory for the Doctor.

joachim, to random
@joachim@drupal.community avatar

I really hate haddocks' eyes in code #documentation 'Defines the Foo class', 'Provides an implementation of the foo plugin'. No. It IS the Foo class. It IS the foo plugin.

joachim, to Dragonlance
@joachim@drupal.community avatar

@openstreetmap Something really needs to be done about the 'Transport map' layer, because this is absolutely NOT a usable transport map: https://www.openstreetmap.org/#map=15/50.8451/4.3570&layers=T

joachim,
@joachim@drupal.community avatar

@ekes That rendering was available as a layer on the OSM site for a while, and then removed. No idea why! It's definitely better, though the shades of blue for tram and metro are far too alike.

joachim, to drupal
@joachim@drupal.community avatar

New concept for doing in forms: https://www.drupal.org/project/declarative_form_ajax. Feedback welcome on the associated core issue.

joachim, to programming
@joachim@drupal.community avatar

Is there a concept in for whether an is inward or outward? For example, suppose I have an interface whose intention is that other code can implement it, but it's only supposed to be called by the internals of my code: it's public for implementation, but internal for callers.

joachim,
@joachim@drupal.community avatar

@jbutz Yes, Drupal plugins is where I've encountered this. My module consumes the plugins, but other modules can implement further plugins to extend functionality.

joachim,
@joachim@drupal.community avatar

@aaronfc APIs can go in both directions as well though - for example, a service that you can call and whose class you can replace is an API that's both inward and outward. You can call it and you can implement it.

joachim,
@joachim@drupal.community avatar

@rupertj @internal is the total opposite of API though - it means the whole thing can change at any time. A plugin interface isn't internal, it's a one-sided API.

joachim,
@joachim@drupal.community avatar

@aaronfc Some interfaces are meant to be called and implemented. Some are only meant to be implemented and not called. There might be cases (I can't think of any) that are only meant to be called and not implemented.

joachim,
@joachim@drupal.community avatar

@aaronfc Yes, plugins. You implement them to extend them, but the inventing module is in charge of calling them.

jpoesen, to random
@jpoesen@drupal.community avatar

Dealing with regular expressions?

You need https://regex101.com.

joachim,
@joachim@drupal.community avatar

@jpoesen @rachel @pcambra Ok the regex crosswords are okay but the regex wordle is EVIL.

joachim, to random
@joachim@drupal.community avatar

The thing is, if I wanted my computer to record me, I'd want it to record the three sentences I typed without noticing that my app had crashed and whose text has vanished because I was typing into an unresponsive window. How the fuck is a screen recording going to get me those back, huh Microsoft? #Recall

marcprecipice, to cycling
@marcprecipice@xoxo.zone avatar
joachim,
@joachim@drupal.community avatar

@marcprecipice @KidicalMass Two requisites of any #KidicalMass ride: a kid with toy baby carrier on their bike containing their teddy, and an old dude riding a recumbent come to support and show solidarity!

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