Profile avatar
caen.bsky.social
Fullstack Laravel/PHP developer focused on backend cybersecurity. Building Laravel-based static site generator @HydePHP in public. Occasionally funny.
65 posts 377 followers 202 following
Regular Contributor
Active Commenter

HydePHP - The Static Site Generator with Caen De Silva

As an open-source maintainer there is truly nothing more rewarding than seeing someone create amazing things with the help of something I created. www.linkedin.com/feed/update/...

"Conventional" commits is such a bamboozle given that there really isn't a single fixed convention, thus failing to solve the problem it's named for trying to solve.

I'm so happy #HydePHP is getting a community, and that they're creating packages! This one just came out, and it looks so cool. Can't wait to try it out this weekend! #php #phpc github.com/melasistema/...

Sure, AI can be great for writing tests, but I still think there is a huge value in writing at least the first few ones yourself. When you sit there and write code to replicate code paths, you will probably find great refactoring opportunities and bugs the AI would have missed.

Instead of using arrays and having too many concerns in a single class, HydePHP v2 will have code refactored to use internal typed value objects. These won't change the public API, but it makes it so much easier for me to write and test new code, and maintain existing features.

With the #Laravel Artisan console testing helpers, is there a way to get all the output from the command? I know I can do `withoutMockingConsoleOutput()` but then I can't use fluent testing helpers which I need to interact with input when there are questions.

Stuff like this is so extra, but I think it's really fun to work with. And #PHP and #Laravel makes it so easy!

Tip: When using ternary expressions, at least temporarily split them to multiple lines so you can see if your test is covering all code paths! If they're all in a single line, that line is green even if only one path is tested. #php #phpc

Just learned that it's possible to create custom Git commands!

The next minor update of #HydePHP will automatically transliterate logographic writing systems to ASCII compatible representations when generating slugs in order to improve internationalization. What more can we do to improve support for developers making sites with HydePHP in other languages?

Bugfix update of HydePHP released! A small holiday gift to #Docker and Alpine #Linux users: Moving away from the unsupported GLOB_BRACE issues, using a more robust internal implementation. github.com/hydephp/fram...

I'm so glad #Sonnet is back on #Claude

Okay so it looks like I wasn’t kidding when I said my passion is open source

Pro tip: If you make #PHP packages that need to work on multiple operating systems, make sure you don't use `GLOB_BRACE` since some Linux distros don't support it. Use Symfony Finder or even RecursiveDirectoryIterator from the start to save you some headache.

If you want a tastier alternative to foobars, and that's alphabetical! gist.github.com/caendesilva/...

Excited to announce that I’m starting as a Backend Developer at #Grebban today! 🚀 I’ll be working with #PHP and #Laravel, two things I’m really passionate about. Can’t wait to join the team and get started! 🙌

People underestimate the value in things that "just work". It's a low bar, but it's exceedingly hard to meet. But it pays off. Take Apple as an example, people (and especially companies) are willing to pay a high premium for an ecosystem of products that Just Work, and that work well together.

Okay I'm loving this UI so far. I'm actually thinking about making this the default. Personally, I don't think I've ever wanted to publish all #Laravel views for a package. Am I weird? What are people's thoughts on this? There will be a button and a flag to select all views of course.

HydePHP v2 will make use of Laravel Prompts! Look at this gorgeous thing! #Laravel #PHP

Well this Google card is really nice! Is it autogenerated, or did someone write this?

Would you trust a web host that stores your admin panel password using encryption instead of a proper one-way hash?

Gemini 1.5 Pro with 2M context window is really really good for analyzing changes across massive diffs. Wanted to double check my release notes were up to date for a parent PR with around 10 sub-PRs, and totalling 20 000 line changes over almost 500 commits. Looks to be really accurate!

Which style do people prefer? $extraAttributes is an array that may or may not be empty, and may or may not contain a class key. In my opinion the first one is more readable, but it's annoying me that there is so much repetition. The second doesn't look as readable to me though

What do people think about adding a fluent cache helper method to #Laravel Eloquent? #php #phpc

This is a map of the Internet. And it is beautiful. Source and details: en.wikipedia.org/wiki/Compute...

Went back and made some updates to one of my first open-source projects: A #Laravel blog starter kit. Upgraded to Laravel 11, and added a simple analytics feature! github.com/caendesilva/...

Turned 23 today, and wanted to reflect on what I've learned this past year. Thanks for everyone in the wonderful #Laravel and #PHP community, and beyond, for being a part of my journey! blog.desilva.se/posts/turnin...

If anyone has a relatively simple #WordPress website (preferably a blog with lots of content), I would love to do a free migration to #HydePHP. Let me know! Only requirements are: - It needs to work as a static site, so no dynamic content - I'm allowed to do a blog post and/or video cast