Why I stopped working with Wordpress
- PHP overhead ist slow
- PHP is insecure
- Wordpress is slow
- Wordpress is insecure
- Caching doesn’t work reliably enough
- Wordpress and plugin updates:
- Must be installed because they fix security issues
- Must be tested in order not to create bugs
- Must be installed locally, so that in case of bugs the live version is not corrupted
- Need roughly one day of work. Every month!
- Synchronization between local and productive environment is error-prone
- Minification and request count reduction are super complicated
- Responsive images? What are responsive images?
- What you see is what you neither want nor get
- Image damage for web developer
- Developing is gruesome
Shortly: Lets hang our CMS into a plugin infested bug feast into the internet, where everyone can guess the password without ruffle (but excitement). But hey, at least it is slow.
What I am using now
I am using Hugo.
- Local CMS only
- Markdown and HTML possible
- Database is a folder structure consisting of .md files with FontMatter
- Structure is very thoughtful and intuitive
- Generation is fast
- The speed of static web pages is unbeatable
- Very developer friendly
- Native translation management
- Gulp-, Webpack- and own Integration
- Local gulp server mit Webpack (“Blaupause”)
- No third-party template, own development
- ES6 using Babel
- Full responsive (Rem mediaquery)
- Responsive images
- Font Awesome
- Simple Apache
There is always room for improvement. Here are the things about Hugo that bother me the most:
- The templates on the Hugo page are quite bad. You should create your own.
- Hugo seems to not be that easy for non-developer.
- Being a Node developer I am spoiled. I cannot integrate new functions into this Go application as if it was Node.
- No native support for responsive images. I had to hack them myself (using gulp magic).
- I cannot affect markdown parsing. This means I cannot use proper BEM :(
Potential future developments
- Flexbox fallback
- Lazy images (scroll position)
- More effects! (because of reasons)
- Everything needs to fly in on scroll
- The navigation should inherit the color of the content sections
- Cool AJAX transitions with fade and loaders and animated scroll
- More tracking. Because more data always means more better.