๐ I'm incredibly happy to give you part 1 of my interactive blog post series about rigid body physics.
I started working on this almost 7 months ago (!) and it's been an absolute labor of love.
You'd make my day by checking it out and sharing it โค๏ธ
๐ดI'm incredibly excited to announce the release of Roach, the complete web scraping toolkit for PHP.
I'm super proud of this package and hope that you will find it useful, too!
๐ Get started here:
๐ปGithub repository:
๐ฅ I keep finding these sweet conveniences in Laravelโs HTTP client. For instance, thereโs a `withToken` method to attach the `Authorization` header to a request.
So much nice than having to add it manually. ๐ฅฐ
๐คPosting publicly to hold myself accountable.
๐ I'm writing a book on database indexing for developers. Hereโs the initial braindump of all the topics I want to explain in the book.
There will be a free web version and a paid PDF.
Please RT so I canโt bail out on this. ๐
๐ Iโm writing a book about database indexing targeted at developers. Itโs like my Laracon talk except better and way more in-depth.
๐ก Check it out if this sounds interesting to you and you want to stay up to date!
๐ก Did you know that thereโs a built-in way of getting all supported time zones in PHP? No need to hard code that stupid array every single time ๐
The first chapter of my book on database indexing will be about this basic query:
SELECT * FROM orders WHERE order_id = ?;
If you think thatโs too simple, think again! Not only does the query time improve by 2 orders of magnitude, thereโs a ton of stuff to learn about indices.
๐ Eloquent tip
If you need to insert or update a whole bunch of records in a loop, don't use `Model::updateOrCreate`.
Instead, use the `DB` facade's `upsert` method to use your database's built-in upsert functionality to do the whole thing in one query!
I always find it weird when people claim that
@tailwindcss
is difficult to maintain. Maintainability is one of the main benefits in my opinion.
I can immediately be productive on every project that uses Tailwind without having to understand its bespoke CSS conventions ๐
๐Excited to announce the release of Venture, a package built on top of Laravel jobs to help you manage and run complex workflows in your application.
Check it out over at Github:
If you RT, you're my favorite person โค๏ธ
I wish every API implemented a simple `/ping` endpoint so I can test if my auth token works.
I hate having to look through the docs to find the endpoint that returns the least sensitive or least amount of data to use as a "check", only to then complete discard that data ๐
I think I've figured out a really nice way of dealing with multi-step setup/wizards in Laravel. So dealing with things like persisting state between steps, automatically registering the required routes, etc.
I wonder if this is something people might be interested in ๐ค
๐ Super proud to announce the release of version 1.0.0 of Roach, the complete web scraping toolkit for PHP. ๐ด
The upgrade should be fairly painless, but check out the upgrade guide here:
Full release notes here:
Partaaaay ๐
I cannot stress enough how important consistency is to getting things done. You don't have to work in crazy 14 hour bursts.
Chip away at it. Every. Single. Day. Even if it's just two minutes.
*Anything* is better than doing nothing. And it really adds up fast.
๐ฅI just published my first ever YouTube video to my channel ๐
I worked on it for about 3 1/2 months and I'm super proud of how it turned out. It would make my day if you could check it out (and please the algorithm by commenting ๐ )โค๏ธ
๐ Iโm incredibly excited to announce the release of version 0.1.0 of Arcanist, magical multi-step forms for Laravel ๐ช
โ๏ธAutomatic route registration
โ Keeping track of state
โ Form validation
โ Dependencies between steps
โ ... and a lot more!
๐I will release Venture later today. A package to manage complex workflows built on top of Laravel jobs.
This is by far the coolest thing I've built in a while ๐ฅ
๐ด The Laravel adapter for RoachPHP has been updated to support Laravel 10 ๐
In case you didn't know, RoachPHP is the complete web scraping toolkit for PHP. Check out the full docs here:
Reminder to everyone thinking about writing a blog.
It doesn't matter if there are already 5000 blogs about the same topic. It might be *your* explanation that finally makes it click for someone.
๐ฅ If youโre using
@tailwindcss
together with a front-end router (like vue-router) that automatically attaches various โactiveโ classes to your links, you can write a plugin so you donโt have to write any custom CSS to style active links.
Weโre looking for an experienced Laravel developer to join us (Remote, Germany only for now)!
If you want to work with me on the Laravel application that spawned both Venture and Arcanistโor know someone who doesโshoot me a DM and we can talk!
๐ด I love, love, love this feature so much.
Scraping an initial URL for the links I actually want to crawl and then scraping each of these URLs using a *different* parsing callback is huge! ๐
Itโs such a common use case.
I really dislike the Single Responsibility Principle. Not because of what it is trying to teach. But have you ever tried to get two developers to agree on what a โresponsibilityโ is?
This is the most dystopian thing Iโve ever heard. โMaking learning optionalโฆโ
Motherfucker, learning is like the most fun thing you can do with your brain. Why would I ever want to make that optional?
๐ I am extremely excited to announce that Boardy is now live! ๐
Boardy lets everyone create beautiful, auto-updating dashboards without writing any code. Thereโs a 10-day trial with no credit card required up front so please go check it out!
Happy to announce that Iโll be speaking at
@LaraconOnline
! My talk is going to be about using the type system to make impossible states truly impossible
@schodemeiss
I just read
@s_bergmann
โs interview with the new PHP core maintainers and got excited by all the things they have planned (especially regarding the type system).
I've been quite sick recently but before that I had been working on a small SVG library to draw math diagrams. It's written in Vue so it's easy to make it interactive.
Thinking about packaging it up and throwing it on npm. I really like how clean it looks!
I have a hard time viewing someone as a senior developer if theyโve never worked on a project long enough to where they had to deal with the consequences of their decisions.
One thing I immensely appreciate about the Laravel community is everyone being so incredibly supportive of people wanting to build (and oftentimes sell) cool shit.
Thereโs (almost) no "how dare you charge money for this" or "why even build this" going on.
Love y'all โค๏ธ
๐ด Roach is completely framework agnostic. The actual functionality is inside the core package which you could use on its own.
Most of the time, you will want to require one of the framework-specific adapters, however. Iโve already written the Laravel adapter ๐
FullstackEU is probably going to be my last conference for a while. I've been in a really bad spot mentally for the last 4-5 months. I've basically lost my passion to do just about anything. I'll probably stay off Twitter for a while, too.
See y'all around ๐
I tested positive for COVID this morning which meant I was unable to give my talk at
@FullStackEU
today ๐ฅ Really sorry to anyone who was looking forward to it.
I spend close to 100 hours preparing this talk and having it all go to shit like this is beyond frustrating ๐ญ
๐ฅ Showing your (private) dashboard on a monitor thatโs hooked up to a random Raspberry Pi in a closet somewhere?
No problem, just scan the QR code with your phone to allow this browser to view your dashboard. No need to hook up a keyboard ๐
My YouTube video on coordinate spaces passed 5000 views. Not crazy numbers compared to the really popular videos. But given it's my first ever video and it's about a really niche topic, I'm super proud of it ๐
One thing I really appreciate about
@pestphp
is how easy it is to quickly stub out a bunch of test scenarios. I often just need to get these ideas out of my head so I don't forget about them ๐
Almost 7 months ago, my brother took is own life. Today would have been his 47th birthday.
Cherish your loved ones, everyone. Things can change really quickly.
Rest well, big brother. We miss you very much๐
Here are the slides for my
@LaraconEU
talk about database indexing:
I have also uploaded a dump of the example database I used if you want to play around with it yourself:
#LaraconEU
This whole PlanetScale thing is a great example of why Iโm always really hesitant about working for a US company. When youโre used to German labor laws, at-will employment seems like something out of a Franz Kafka novel.
English speakers will never understand the pain of teenagers starting to default to โSieโ instead of โDuโ when addressing you as you grow older ๐ฅฒ
๐ชIโm going to showcase Arcanist live on Youtube tomorrow. I will create a couple of multi-step forms from scratch to show how everything works. Let me know if you want to see anything in specific!
Drop by tomorrow at 5pm GMT+2!
Thanks everyone for listening to my talk! I'm going to publish the slides as soon as I figure out the best way of exporting a Keynote presentation to a PDF or something like that ๐
#laracon
I wanted to thank everyone who reached out to me, either in private or by replying to my tweet. I do appreciate every single one of your messages, they really do help.
Itโll take while, but Iโm going to be alright. โค๏ธ
Please take care of each other.