UDP/Datagram Sockets with ReactPHP When you send data through the sockets, there are situations when you really do not care if some packets are lost during the transition. For example, you are streaming a live video from your camera. The order of the frames is less important than timely delivery, you only want the frames to arrive at the clients as soon as possible. And it also does not matter if some of the frames are lost. You are not going to make a resend request just to make sure that all the frames are shown to the client in the correct order because otherwise your live video will be delayed.
Building Scalable Applications Using Event Sourcing and CQRS About a year ago, I came across the terms event sourcing and CQRS. I have been fascinated by it ever since. Right now, I am in the middle of building out event-driven microservice infrastructure at Andela using event sourcing. Check out Building Out an Antifragile Microservice Architecture @ Andela — Design Consideration; my previous blog post to find out some of the design consideration we had to make.
How to Analyze Tweet Sentiments with PHP Machine Learning As of late, it seems everyone and their proverbial grandma is talking about Machine Learning. Your social media feeds are inundated with posts about ML, Python, TensorFlow, Spark, Scala, Go and so on; and if you are anything like me, you might be wondering, what about PHP?
Building a realtime dashboard powered by Laravel and Vue (2017 edition) At Spatie we have a tv screen against the wall that displays a dashboard. This dashboard displays the tasks our team should be working on, important events in the near future, which music is playing at our office, and so on.
What’s all this “immutable date” stuff, anyway? A simple but real-world example of the difference between a mutable and immutable object, and why you should care…
Maybe in PHP Doing functional programming in a language as PHP, which is almost completely used as an imperative or object oriented way, is not always easy. Good progresses have been made thanks to the introduction of callable type hints in PHP 5.4 and the diffusion of functional interfaces like the ones present in PSR-7.
Doctrine sharding We chose Doctrine as our ORM so let’s see what it offers to us. First of all you have to note that Doctrine is composed mainly by two different parts: DBAL and ORM. ORM leverages DBAL functionalities and it’s completely transparent for sharding. DBAL is the layer we’re interested in. Please note we’re using DBAL 2.5.12 as the moment of writing.
Using non-breakable spaces in test method names Yes. This article is about using non-breakable spaces to name tests. And the fact that it’s awesome. And why you should use them too.
Build A Simple Chat With ReactPHP Socket: Server In this article, we are going to build a simple chat server based on ReactPHP Socket Component. With this component, we can build simple async, streaming plaintext TCP/IP or a secure TLS socket server.
Make your Laravel App Fly with PHP OPcache Every time you execute a PHP script, the script needs to be compiled to byte code. OPcache leverages a cache for this bytecode, so the next time the same script is requested, it doesn’t have to recompile it. This can save some precious execution time, and thus make your app faster (and maybe save some server costs).
Your interpreter isn’t safe anymore — The PHP module rootkit Before I begin, I want to make it clear that I condemn the act of using rootkits or any other form of malware without clear consent from the individual or organization being targeted. This post aims to educate the reader about the dangers of malicious PHP modules and outline the very real threat that they pose.
Being a Full Stack Developer A full stack developer who can get from a prototype to full MVP (minimum viable product) is often considered a jack of all trades, master of none, and with good reason. To define the modern full stack developer, we first need to focus on what the full stack developer used to be.
Event-Driven PHP with ReactPHP: Event Loop And Timers PHP was born in the 90s and was a very powerful tool for creating web pages. From its born it has a synchronous run-time, that means that we start execution of some function, and the code flow is blocked until this function is being executed. And it was not considered as something bad. On the opposite many libraries consider that the blocked flow is normal.
Easy PSR-7 with Zend Diactoros It’s no mystery that I’m a fan (most-of-the-time) of the Zend Framework — heck I’m a Zend Framework 2 Certified System Architect (Phew! Big title). But as a crusader for decoupled libraries I was beginning to be disillusioned by the gentle giant and it’s enormous spiderweb of dependancies.
The case for singleton objects, façades, and helper functions Last year I took several Scala courses on Coursera. It was an interesting experience and it has brought me a lot of new ideas. One of these is the idea of a singleton object (as opposed to a class). It has the following characteristics
Factory and Repository in the Domain I’m a big fan of the book Domain Driven Design, and for some time I’ve been pushing the principles and patterns in my workplace. I’ve never managed to get ‘into’ the more theoretical parts of the book, and I chuckle each time one of my colleagues refers to the “contours of the domain”, however it’s up there with books that have caused a substantial shift in my thinking. #advanced #ddd
Building Searchable Encrypted Databases with PHP and SQL This question shows up from time to time in open source encryption libraries' bug trackers. This was one of the "weird problems" covered in my talk at B-Sides Orlando (titled Building Defensible Solutions to Weird Problems), and we've previously dedicated a small section to it in one of our white papers.
The question is, How do we securely encrypt database fields but still use these fields in search queries?