Two weeks ago I finally received a Mac mini M1 with the brand-new, ARM-based M1 (Apple Silicon) processor. There’s been a lot of speculation and conflicting information about its performance. I would like to talk about it in the context of web development. Just to give you an idea: it’s a monster worth every penny of its modest price.
Happy New Year 2021, everyone! This is the last part of my series on optimising Joomla sites. In the previous instalment we did some site building calisthenics. Today we'll talk about content. This is not necessarily a Joomla topic — it applies equally to WordPress, Drupal, Medium, Blogger and everything that publishes written words to the web.
In the third part of this series I described how to squeeze more performance out of your site by optimizing the static media files. Today I'll talk about putting the finishing touches which make your site more polished and professional. They mostly have to do with how your site interacts with search engines and social networks but there's also a little bit of performance to be found in there. I think information about polishing your site is the best way to send off this year.
In the first part of this series I described why tuning the performance of your site is something you should do for both philosophical and practical reasons, as well as where to start. That post was by necessity a bit generic. In the second part of this series we'll dive into some of the basic things you can do in Joomla to unlock a decent amount of performance.
Joomla is a very good CMS out of the box. It is reasonably fast, it has built-in support for structured data and even caching. Yet, it has an unwarranted bad reputation about being slow and bad for SEO. In this series of articles I will tell you how you can tune a Joomla 3 site to improve its SEO and PageSpeed score and how to avoid all the pitfalls when building your or your client's site. The end result is a site that's appealing to both search engines and living, breathing site visitors.
In this first part of the series we'll talk about why this is important, in general, and what are the obvious first steps you can take to get to that goal.
The past few weeks the PHP world is abuzz with Expose, an Open Source alternative to ngrok. If you're not familiar with either, they both let you share a site hosted on your local web server using a subdomain that can be accessed over the Internet. This is great for sharing a site with your client, testing HTTPS behavior with a valid TLS certificate, developing social media / SSO integrations, testing sites on real mobile devices etc.
Expose lets you run your own server for the full white label experience. It's also free of charge – except for the cost of running your own server, of course. In this article I'll tell you how to create your own Expose server and share your Joomla site with it.
Over the last few years I have standardized my access to remote servers, including GitHub, using a GPG signing subkey as the authentication credential. Having this stored in secure YubiKey hardware and locked behind a PIN is a step up in security; authenticating to the remote resource requires physical possession of an unphishable hardware token and knowledge of a PIN. Moreover, this allows me to sign GPG commits and tags.
While I had set this up on Linux and macOS since 2017 I only had the time and patience to do that on my tertiary machine, a Windows 10 one, in late 2019. I had to redo everything last week and I realised I couldn't remember a few non-obvious but critical steps. Hence this article where I explain how to combine a YubiKey, GPG4WIN, PuTTY and Git for Windows on Windows 10 to access your GitHub account – and any SSH server – securely and sign your commits.
The past few years we've seen an explosion of ″dark mode″ interfaces: bright foreground on a dark background. In this article we'll see why it's important to support it and how you can implement it on your Joomla! sites, including the emails they send out.
When you're thinking of a development, local web server with PHP you're probably thinking of an AMP stack: Apache, MySQL and PHP. In some cases your live environment may dictate using Microsoft Internet Information Services (IIS) -- typically the case with corporate deployments or when you're working with a client that's invested in the Windows platform. In those cases you are better off using IIS yourself to prevent nasty surprises from discrepancies between your local and live environments, most notably the fact that IIS does not understand .htaccess files.
In this article we will see how to create a local IIS development server on Windows 10 Professional with multiple versions of PHP and MySQL.