There is a file in the Livewire codebase FULL of duplication. There certainly is an abstraction just begging to be made. Why can't I find it? What do I do about that?
Today I talk to my past self. Telling him to submit more pull-requests, and not fear being "seen" as a bad developer.
Today, I talk about a significant change I made to my life: unfollow everyone on Twitter.
Sometimes, you just have to do the hard thing, put your thinking cap on, and open the black box. In my case, I had to really sit down and understand how Livewire's DOM-diffing algorithm works, and THEN I was able to clear my head and move forward.
Let's chat about a super practical pattern I use in everyday life. Often when I'm adding a feature or a "concern" I try to isolate the entire changeset to one file. It's surprisingly effective.
Now that you understand DOM diffing, you can commiserate with me, and help brainstorm a fork in the road I'm dealing with. Do I keep improving an existing package? Or REWRITE!!!
Words like "virtual dom", "dom diffing and patching", "vDom", and "render functions" are all intimidating (spoiler: they're not actually). However, they are a HUGE part of any front-end framework, and Livewire is no exception. Therefore, we will be diving into what they mean, and how Livewire uses them, so we can lay a foundation for future episodes.
I'm sitting in my office, about to make a decent size refactor to Livewire's core, and thought I'd tell you about it!
Livewire aims to be thrifty when it comes to resource usage (ajax requests being the biggest). Here is an example of a little feature I recently implemented with a really clever extra bit thrown in there.
I want Livewire to require as little configuration as possible. The fewer things the user has to do to get up and running and productive, the better. Here is an example of a cross-roads I came to, and then how the direction I picked is telling of the framework.
Often times, the obvious interface for a feature is not-so-obvious when you're writing it. The process of not settling for less is invigorating to me, and this episode is a perfect example of that.
The "make:livewire" command is one of the first things a new Livewire user types. It feels natural, and lacking in surprise. Surprisingly, it was quite a long road that led me here. Let's walk down that road.
Naming things is really hard. Livewire is no exception. Today we'll talk about where the name came from, how it's evolved, and how it is still evolving.
The question that has haunted me since the beginning, and how I overcame the fear of it.
Welcome to the new podcast. This episode is a quick intro to the project.