While finite state machines and Petri nets sound too abstract or even out of place for web development, rest assured, they can be quite useful in your applications. If you have news articles that go from draft to review and then to published or webshop orders which are created, updated, and dispatched only to get returned and refunded, you might want to look into using state machines. Let’s learn one new pattern, see what popular libraries are out there, and how to use them to keep your business rules well organized and your concerns separated.
This article is part two of a three-part series on parsing text with PHP. The previous installment dealt with basic parsing techniques; particularly how parsing becomes easier when you limit your parsing toolkit to only a few, well chosen, tools that you’ll use over and over again. This article is dedicated to fault tolerant parsing techniques. This series will finish with the third article which describes how to use regular expressions.
As the development of PHP software has evolved, so has the tooling that can support it. Similarly, as projects have grown, so have the project teams working together. This growth in project teams has resulted in a need for more complex deployment processes and increased communication. Today’s top development teams are leveraging Continuous Integration robots such as GitLab CI and tightly integrating them with their communication platforms. You can as well with minimal effort!
Do you work on projects where you begin coding before knowing what your data looks like? Or are you part of the vast majority of developers who have had little or no training in database theory, relational calculus, Structured Query Language, or sets? Could you be working on a project without a database administrator to set up relational tables, indexes, and schemas? Or are you tired of embedding ugly lines of SQL in your pristine PHP code? There is new hope for you.
Issues and issue tracking are central to your team’s communications about what’s getting worked on and needs fixing. Having a clear and agreed upon standard for working with them will keep your team focused and productive while minimizing misunderstanding.
Last month we covered the basics of CakePHP and how to get started creating routes, controllers, database tables, and retrieving data. This month we’re going to dive into returning HTML views, as well as creating and validating forms to create new widgets.
If you have trouble making change for a dollar without a calculator, and don’t care, this article may not be for you. Otherwise, come along with me! We’ll be converting between numbering systems. We’ll create an algorithm for converting between decimal (integer) and hexadecimal numbers.
A solid practice in protecting user credentials is to never store passwords in plaintext on the server. Modern content management systems and PHP frameworks leverage strong one-way functions to store only hashes of passwords. This technique protects your users should your database ever be breached by an attacker. An even stronger mechanism, however, would never send a plaintext password to the server in the first place.
I recently returned from another fantastic edition of the Dutch PHP Conference in the Netherlands, where I spoke to many people about open source software. In fact, every year they host a “Code Night” which encourages open source contributions, and they’re not the only conference to do this. If you’ve followed my column, you’ll already be aware of how much I encourage folks to start looking into how they can help with open source software.
Proportionally fewer people are graduating from college with degrees in computer science & related fields. In 2005 and 2015, there were approximately the same number of Computer Science graduates, but there were overall 31% more college graduates, meaning that the percentage of CS degrees dropped significantly. Why is this happening?
Leave a comment
Use the form below to leave a comment: