Recordings of sessions at our annual PHP UK Conference events.
PHP UK Conferences are held annually at the end of February each year, in the capital city of London. Attended by hundreds of delegates, speakers, sponsors, partners and volunteer assistants, they are run by volunteers from the PHP community and elected committee members of PHP London. Delegates are typically professional web developers and managers, along with some general PHP enthusiasts/evangelists and employment recruiters.
The events are a mix of split-track talk sessions, keynote presentations, panel sessions and unconference slots, along with space for exhibitors, various networking and social events, and a raffle. Costs are kept low and any profit made is used to fund PHP London throughout the rest of the year and/or is rolled into funding future conferences.
The only thing php need is lots of C wrappers instead of relying on extension and sapi methods that has bogged it down to just a web language. While language runtime does not restrict it, the php-src specifically favours web implementation and bias towards web friendly API. If php has to change, it will change by making use of FFI and WASM to bring in tons of tech that already exists and is very performant. Look at python library system where most of the cool code is written in C / CPP and brought in. Languages like php, go, rust ( partially as it can import C ), Java, JS runtimes are restricted by these native impmementation barriers. Some languages will wrap C code like projects using cgo or JNI to make things easier. We need more of that in PhP.
electron is a big no no, 100+ MB ram, and 60+MB distribution for a simple webpage hello world.. is insane! Tauri is not much better.. where are the times people tried to keep everything optimized, small (resource usage), and simple... JS world (where electron resides) has killed that..
Please write software in a proper language. And no, I'm not talking about JS. I said a proper language. I have insane hardware in my machine and yet you lot try your hardest to slow it down. Compared to a a few decades ago i basically have a super computer on my desk, and in my pocket. The fact that it doesnt feel like it should tell you something about the state of software today.
Thank you Gina! Great explanation of the different ways and the nuances involved in contributing to PHP project. I was prepared to find the process scary but you make it sound quite approachable.
PHP is very beautiful and my favorite programming language and when I'm coding with PHP it's like I'm traveling in galaxies. Thank you very much for providing this great information.
Great talk! Not sure if I understood the last question, but for validation you can apply "parse, don't validate"[0]. When validating some input, instead of returning a bool or throwing an exception, you return a type that encapsulates the input and that guarantees that it's valid so you don't have to validate the input again, avoiding things like shotgun parsing[1]. Those validations functions end up as pure functions, so you can test them without any ritual. Example: For a function that does email validation, you can have an input type "UnvalidatedEmail" and: * an output type "ValidatedEmail", and having the function probably throw an exception for invalid cases, but I would not recommend this, because exceptions are meant to be exceptional after all - most of the times you should expect receiving invalid emails, either from users or attackers; * or "Result<ValidatedEmail, EmailValidationError>"/"Either<ValidatedEmail, EmailValidationError>"/(in something like Go it's similar, you treat error as values)/etc, with no exceptions thrown. [0] lexi-lambda.github.io/blog/2019/11/05/parse-don-t-validate/ [1] langsec.org/papers/langsec-cwes-secdev2016.pdf
Thanks! "parse, don't validate" is exactly where I was going with my answer. I didn't want to mention Either. I actually removed it from my talk last minute, as it's not very popular or practical in PHP.
There are many admin interfaces written in PHP that are Linux frontend and FriendOS project is also using PHP. I'm not fun of Python so I sometimes use PHP for scripting under Linux.
Nice intro of serverless to the PHP community but I missed some why to use PHP as serverless when it misses some of the key benefits of serveless such as async. Also missed to mention the limitations of AWS Lambas such as run time (15 minutes).
Thanks for the feedback! Async (non-HTTP events) are mentioned in the talk if you're interested. I also mention the 15-minute limit in the questions if you want more details on this.