@Crell@phpc.social avatar

Crell

@Crell@phpc.social

Anything worth doing is worth doing well.

Anything worth doing well is worth teaching others to do well.

Author of Thinking Functionally in PHP, now on LeanPub: https://leanpub.com/thinking-functionally-in-php

#tootfinder

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

ramsey, to Starwars
@ramsey@phpc.social avatar

I’m only a few episodes into this season (3rd season) of , and wow! It’s darker and with an ambiance/tone like . I like it.

Crell,
@Crell@phpc.social avatar

@ramsey Ooof. Andor was too dark for me.

bphogan, to random
@bphogan@mastodon.social avatar

Can we please stop being “Ruby developers” or “JavaScript developers” and start being “people who solve problems with code”?

Languages and frameworks are tools.

Never once have I met a “hammer carpenter.”

“If you use a screwdriver you’re doing it wrong. “

Let’s grow up.

Crell,
@Crell@phpc.social avatar

@andrewfeeney @ramsey @grmpyprogrammer @bphogan I think that's still over stating it. If you're used to Makita tools, you can pick up a Dewalt tool and use it effectively in about 7 seconds.

Even switching between closely related languages (Java, Kotlin, C#, for instance) can take weeks to build up muscle memory.

Identity is a very complex topic. In many ways, language identity is a thing because we lack other good identity groups, and suck at identifying self identity in a non-tribal way.

oliver, to php
@oliver@phpc.social avatar

If you were about to start a medium-sized project, what would you choose as an , and why? It should be something stable and well maintained. If the business takes off, then there should be no need to replace that layer.

Caveat: imagine that Doctrine and Eloquent haven't been invented yet.

Crell,
@Crell@phpc.social avatar

@oliver Absent Doctine, I'd build the the thinnest layer on top of Postgres I can that gives me typed values. No mapping logic, no ORM hooks, just easily packaged and mockable SQL.

Both PDO and Postgres are very well maintained.

Crell, to react
@Crell@phpc.social avatar

This article uses as it's main example, but it applies to , , even just a much. I say that as a recovering Drupal dev who used to use the standardization argument.

Greedy management is the reason we can't have nice things.

https://www.baldurbjarnason.com/2024/react-electron-llms-labour-arbitrage/

Crell,
@Crell@phpc.social avatar

@assertchris I believe the core point that what wins is what most commoditizes cheap labor, regardless of its technical quality, is valid, and the examples cited fit that point.

I admittedly can speak more of Laravel and Drupal personally. "Make amateurs able to do things halfway decent without knowing what they're doing" is a core design principle of both systems. Which in turn drives down labor costs and quality.

Crell,
@Crell@phpc.social avatar

@grmpyprogrammer Iterate that a few times and you're getting 20% of the quality. At which point you're over paying either way.

As Cal is fond of saying, "if you think it's expensive to hire a professional, wait until you see what an amateur costs."

Crell, to php
@Crell@phpc.social avatar

Null is problematic, but why? Let's see why, and let that guide us to new alternatives.

https://peakd.com/hive-168588/@crell/much-ado-about-null

sirber, to php
@sirber@fosstodon.org avatar

I forgot how fun it is to develop with . It's sad that most of the jobs with it are WordPress related 😒

Crell,
@Crell@phpc.social avatar

@maxalmonte14 @sirber I kinda enjoy Kotlin. I very much do not enjoy the JVM ecosystem, Gradle, Spring Boot...

Crell,
@Crell@phpc.social avatar

@maxalmonte14 @sirber It's honestly the most boring modern language. Java with less crappy syntax. There's some bits of it that are weird, but otherwise it's just kinda... Fine? Not exciting or interesting, just... Fine.

sirber, to php
@sirber@fosstodon.org avatar

I started a prototype of a framework-less architecture, using , on my playground. Separated public and private files, enabled autoloading using composer and PSR-4. It's fun! 😀

https://gitlab.com/sirber/playground/-/tree/main/php/pure?ref_type=heads

Crell,
@Crell@phpc.social avatar

@sirber Isn't that the same as a custom framework? :-)

awoodsnet, to random
@awoodsnet@phpc.social avatar

@ramsey what did you use to make thai site? Looks fantastic! https://uuid.ramsey.dev/en/stable/index.html

Crell,
@Crell@phpc.social avatar

@jaapio @ramsey @heiglandreas @awoodsnet I may have to look into this...

Crell, to php
@Crell@phpc.social avatar

from 2014 to 2024:

This language is pretty sweet, NGL.

https://www.youtube.com/watch?v=p_6ewdiwnRo

nixCraft, to random
@nixCraft@mastodon.social avatar

Code never lies, comments sometimes do. Great quote. Do you agree?

Crell,
@Crell@phpc.social avatar

@lazydev @nixCraft @kevlin A common fallacy is to assume that if code is not intrinsically obvious then it's clearly the fault a of a bad developer.

lewiscowles1986, to random
@lewiscowles1986@phpc.social avatar

TIL via @Crell tht PHP is getting C-sharp style getter / setter "hooks"

nice.

IDK if the way I think about objects is the issue, but inherritance here feels weird.

If I have a struct and the only way to set values on it is via a header file where some macro modifies my input; then there is a layer of direct setting, that I'm not sure would translate to another struct with same address locations / names, without that header.

So if folks stack the hooks does perf get progressively worse?

Crell,
@Crell@phpc.social avatar

@lewiscowles1986 I have no idea what the "header file" has to do with it.

For PHP, hook inheritance is basically the same as methods. You override the parent hook/method. You can call it if you want, in which case it's the cost of a method call, like overriding any other method.

If your inheritance hierarchy is deep enough that it causes a performance issue, then your hierarchy is too deep and that's the issue to fix.

ramsey, to random
@ramsey@phpc.social avatar

What’s up with 19.2 fl oz beer cans? I mean, I like the size, but it’s not an even amount of anything. It equates to 567.81 ml.

Yes, I know American units are wonky, but sometimes they’re weird because they actually equal to an even metric number. For example, they sell 16.9 fl oz water bottles because that’s a half liter.

So, what gives on the 19.2 fl oz / 567.81 ml measurement for these tall cans?

Crell,
@Crell@phpc.social avatar

@ramsey @doktrock This is why we can't have nice things.

https://xkcd.com/927/

Crell, to php
@Crell@phpc.social avatar

Only use inheritance when you want both hierarchical code reuse and subtype polymorphism.

https://youtu.be/C3B5IIlt4-0

On a similar vein, my article from a decade ago:

https://www.garfieldtech.com/blog/beyond-abstract

Crell, to php
@Crell@phpc.social avatar

ICYMI, I spoke with Brent Roose about the new property hooks feature coming to 8.4, the RFC process, and how we can make it better.

https://www.youtube.com/live/ULUrhIrjyAg

ramsey, to random
@ramsey@phpc.social avatar

Has fedi engagement picked up recently, or am I just posting quality content?

Crell,
@Crell@phpc.social avatar

@ramsey @ericmann The degree of confusion about what the GPL and free software are for in that thread is mind boggling.

Crell, to random
@Crell@phpc.social avatar

One of the advantages of having stock in your employer is you get to see annual reports, which has little gems like the CEO to median employee payment ratio.

To be clear, I like our CEO and think he's doing a good job. Our ratio is also not unusual for businesses of our size and age, AFAIK.

But if you want to know why the country is going to hell, that little ratio tells you everything you need to know.

Crell, to email
@Crell@phpc.social avatar

I just had an impressively pleasant customer service experience with @fastmail. Turns out it wasn't even their issue, but they responded quickly and in exactly the level of detail I needed.

It's so sad that it's so uncommon that it's worth tooting about...

#Email #SaaS #CustomerServices

Crell,
@Crell@phpc.social avatar

@Romm @fastmail I've been with them for a decade and a half. Not no complaints, but very few.

molly0xfff, to web
@molly0xfff@hachyderm.io avatar

If you've ever found yourself missing the "good old days" of the #web, what is it that you miss? (Interpret "it" broadly: specific websites? types of activities? feelings? etc.) And approximately when were those good old days?

No wrong answers — I'm working on an article and wanted to get some outside thoughts.

Crell,
@Crell@phpc.social avatar

@molly0xfff Being able to make a web page in notepad, without a compile step.

Not assuming a website is trying to spy on me.

Not assuming someone is going to hold every word I say against me a few years later.

Not needing to know 5 programming languages to get anything done.

Not having to "perform" for the audience on social media.

Not needing to assume every page is a bald faced lie until proven otherwise.

Planet Aggregators for topical RSS feeds.

Crell, to random
@Crell@phpc.social avatar

A Christian woman's take on conservatives.

https://youtu.be/l-EFggDLOW8

Crell, to random
@Crell@phpc.social avatar

Genesis 19 is not about homosexuality.

https://youtu.be/3hnxHoa6oWE

Crell, to php
@Crell@phpc.social avatar

I'm about to go live with Brent Roose of for his podcast, talking about the new Property Hooks RFC, the RFC process, improving PHP, and all that stuff.

Watch live here:

https://www.youtube.com/watch?v=ULUrhIrjyAg

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