This entry is part 1 of 7 in the series Sylius for Magento and PHP Developers. Later posts include Symfony's Service Container, Symfony: Autowiring Services, A Brief Look at Every Symfony Service Configuration, Symfony Routes and Stand Alone Controllers, Symfony Routing Configuration Keys, and Basic and Advanced Sylius Routing. I [...]
astorm
Alpine Linux has become increasingly important as it’s a popular base linux for Docker containers. One it’s many quirks is it doesn’t use Debian (apt) or RPM (yum) software repositories. Insteak alpine uses a package managment client called apk, which reads from repositories that are neither debian, nor RPM [...]
astorm
I’ve been digging into the internals of Linux package management systems the past few days (side note: if you’re successfully delivering a piece of packaged unix software to the entire linux community without the help of the distro maintainers: my hat’s off to you) and it took me a surprising amount of time to unearth [...]
astorm
I haven’t used it yet, but based on the intro docs and kicking a few tires, deployer seems like a fine “implemented in PHP” deployment system — or maybe I’m just a sucker for any modern PHP system that hasn’t jumped on the type safety bandwagon.
astorm
Just using the old blog as a bookmark service for this arrays v. slices in Go articles. I think this came across my radar a year or so ago because the official go docs sort of blow past arrays to get to the “new” stuff. If you’re in a hurry — Overall, slices are cleaner, more flexible, and less bug-prone than [...]
astorm
In my longer introduction to PHP generators we didn’t talk much about a generator’s “key” values. In other words — when presented with code like this function someGeneratorFunction() { yield 'foo'; yield 'baz'; yield 'bar'; } $generator = someGeneratorFunction(); foreach($generator as $key=>$value) { echo [...]
astorm
Despite maintaining an open source version of their code base, there were a lot of things about a pre-Adobe Magento that gave a lot us in the open source world cause for — not alarm exactly — but some heavy side-eye. One of those was Magento’s approach to composer. On one hand — huzzah! Composer support! On the [...]
astorm
Generators landed back in PHP 5.5 and I’ve mostly ignored them. I had a vague understanding that they were a feature that allowed you to build iterators that didn’t require loading up a huge data structure with all your information. This also seemed to be the gist of most online generator tutorials. So, in the practical world [...]
astorm
I did another quick survey of what’s state of the art for PHP and Amazon’s Lambda (i.e. Serverless, i.e. Amazon will run a function for you in the cloud that can respond to HTTP requests and interact with Amazon’s various services, getting you out of the sys-admin business). One project I see cropping up in my various [...]
astorm
I just updated my example Magento 2 travis build file to work with the newer versions of M2 coming out of GitHub. This file does the heavy lifting of cloning an M2 Magento repo, running the installer, and adding the composer module you want to test to the project. Travis remains one of those how is this free wonders for anyone doing [...]
astorm
This entry is part 6 of 6 in the series Just Enough C for PHP. Earlier posts include Just Enough C for PHP, Just Enough C for PHP: Running C Programs, Just Enough C for PHP: Variables and Types, Just Enough C for PHP: C Macros, and There's no Such Thing as PHP. This is the most recent post in the series. So far in this series we’ve [...]
astorm
I’m still finding the PHP Internals Books to be a welcome breath of fresh air. Today is was their instructions on getting a working build enviornment for the PHP-SRC repo up and running. Straight forward, no nonsense instructions. There’s a bit of assuming you know your way around compiling things but that’s always [...]
astorm
Thanks to Nicolas Batty (who seems to have the good sense to live offline) for a correction to the old Magento 2: Fixing Area code Not Set Exceptions quickies post. In the original post I’d recomended a fix for area code not set errors in Magento 2 CLI command by doing something like the following public function __construct( [...]
astorm
Fuzzers are a category of security testing software that will throw all sorts of random data at a software system looking for flaws that can then be exploited by individual penetration testers. Sort of like throwing a bunch of paint around the room trying to find the invisible man. I found this talk about a PHP Internals Fuzzer from [...]
astorm
This post by Julia Evans (author and artist of the amazing Bite Sized Linux zine) caught my eye. I can’t tell if this is an old-man-computer thing or if it’s a legitimate troubling trend (probably both), but as consumer web sites increasingly become a Squarespace/Wix sort of thing and not a DIY sort of thing, the DIY tools [...]
astorm
Vinai Kopp (of magetv fame) just released a small project with an improved cache cleaner for Magento 2, and it includes a file watcher. i.e. if you change a file that typically requires you to clean your cache to see changes, (like a controller or a layout XML file), this watcher will automatically notice and clear your cache for you. It [...]
astorm
Zephir is a programming language for building PHP extensions. As in, the .so files that extend the PHP language itself. Normally you need to use the C programming language to create a PHP extension, but Zephir is an intermediate language you can compile down to C code, (using the provided tooling). Its build system also automatically [...]
astorm
Filing the prose project under things I want to checkout if I ever have time, if only to see how it handles comma spliced sentances like this one.
astorm
In the begining (or near enough to it), PHP had a set of functions for talking to MySQL databases — mysql_connect, mysql_query, mysql_.... While newer database APIs like the mysqli_ functions and PDO came along these older functions hung in there and remained hugely popular right up until the end. The end being their removal from [...]
astorm
I don’t have any first hand experience with it, but Moltin’s a new-to-me API Only ecommerce service/start-up. API only meaning there’s no UI, just REST endpoints for you to call and perform the basic operations of any ecommerce system. If you only have shallow knowledge of other open source and commercial ecommerce [...]
astorm