HTML
The code that structures a web page. Would I even be a web developer if I didn't know HTML?
I'm Randall Wilk
I design and develop Laravel web applications utilizing the TALL stack (Tailwind, Alpine.js, Laravel and Livewire). Server management is also something I handle on a regular basis.
I'm a full-stack developer based in Wausau, WI. I'm passionate about PHP, and I specialize in the Laravel framework. Although I specialize in PHP, I didn't actually start out with this language.
One of the first languages I learned was c#. I learned software development using c# and WPF forms while working towards my Associate's degree. In 2016, I received my Associate of Applied Science in Software Development degree from Northcentral Technical College.
Prior to receiving my Associate's degree, I started working for my first tech employer, Invizon, however my work there involved using PHP and WordPress - neither of which I had any experience in. Because of this, I decided to make web development my focus for my Bachelor's degree, and in 2019 I received a Bachelor of Science in Web Technologies from Bellevue University.
Right around the time I received my Bachelor's, I started working for my current employer, Riverwood Educational Services, Inc. Although I do manage some client sites, the majority of my time here is spent building and maintaining a technology asset deployment system for charter schools.
Some of the technologies I'm most comfortable working with include PHP/Laravel, MySQL, Tailwind CSS, Alpine.js and Laravel Livewire. For testing, I've recently started using Pest PHP and I'm in the process of converting some of my open source package test suites into Pest.
The code that structures a web page. Would I even be a web developer if I didn't know HTML?
Another fundamental part of every web page; CSS is a critical skill to have for styling a website.
The language that makes it possible to add interactivity to a web page. I know enough Vanilla JavaScript to do what I need to do on a site.
A popular general-purpose scripting language suited for web development. PHP is my primary programming language.
If I can use it and it makes sense for a project, I will choose Laravel. I honestly don't know if I would have the passion I have for web development today if it wasn't for Laravel.
Before Tailwind, I used Bootstrap. The flexibility I get for styling from Tailwind is second-to-none to other CSS frameworks and I don't think I would ever use anything else ever again.
Alpine.js was a complete game changer for me. With Alpine, I am able to sprinkle in interactivity into my pages much easier and nicer than when I was using Vue.
Another game changer for me, Laravel Livewire makes building interactive components almost trivial, and drastically reduces the amount of custom JavaScript I need to write in an application.
Almost every web app needs a database, and I prefer to use MySQL or occasionally MariaDB, which is a fork of MySQL.
Pest is a testing framework with a focus on simplicity.
Vite is a lightning fast front-end build tool and has become my preferred build tool in new projects.
Another front-end build tool I'm skilled with. Even though I don't use it as much anymore, I still know my way around Webpack.
I got my start with PHP using WordPress. If I need to, I know how to build custom themes and plugins for a WordPress site.
Most programming I do is OOP. Since Laravel heavily relies on OOP, I'm very familiar with OOP concepts and the MVC design pattern.
Although I usually prefer OOP, functional programming still has its place, especially on the front-end with JavaScript.
GIT (version control) is a critical skill I think every developer should have.
Although I usually use Laravel Forge for server provisioning and management now, I still know my way around a Linux server. Even with Forge, I still need to SSH into a server sometimes and run some commands manually.
Even though I'm stronger as a back-end developer, I still have a good understanding on how to make a website or application look "good".
User experience design is another important skill to have. I have a good understanding on how to design a UI that is accessible and easy to use for end-users.
Building accessible websites and applications is important to allow for a better experience for everyone. I may not know everything about web accessibility but I always challenge myself to make my works as accessible as I possibly can.
I always to try to optimize my builds as much as I can for a performant web application.
Testing is an important skill I have for catching bugs in an application and just making sure everything works the way it is supposed to.
GitHub is used as my development and version control platform. I feel that GitHub provides the best experience for contributors.
Cloudflare is amazing for speeding up a site using CDNs and helping secure it.
Forge takes care of the hard parts of provisioning and maintaining a server for me, and allows me to spend more time developing my applications.
All my projects are hosted on DigitalOcean droplets. It's the best scalable hosting platform for me.
Ray makes debugging web apps much easier and enjoyable.
My packages are free to use, and any support I receive helps me maintain my open source packages, which can take up a substantial amount of time.