Frameworks are hot topics in the web-industry and have been for some time. In this vast sea of flavors is Symfony – an extensive PHP framework that follows the ever popular MVC paradigm. Its learning curve is probably a little steeper than its fellow competitors, like CodeIgniter. Don’t worry, once it grows on you, you’ll feel more powerful than ever and you’ll be able to develop fantastic applications.
By now, everyone knows about Test-Driven Development and unit testing. But are you using the testing frameworks to their fullest?
It’s likely that, at some point, you’ll want to implement recurring or subscription payments for a SaaS or other service. Thankfully, PayPal offers the tools we need to implement a fully integrated subscription payment solution.
The aim of this tutorial is to show off Python’s data structures and the best way to use them. Depending on what you need from a data structure, whether it’s fast lookup, immutability, indexing, etc, you can choose the best data structure for the job and most of the time, you will be combining data structures together to obtain a logical and easy to understand data model.
By Rey Bango
Have you ever meet a brash punk kid that annoys you to no end but he’s so damn talented that you can’t help but want to work with him? That’s how I felt when I first met David Walsh several years ago. Since then, I’ve seen him mature into a respected and often quoted software developer and most recently, a new dad. He hasn’t lost his snark and feistiness and he continues to hone his skills daily, often sharing his best tips on his awesome namesake blog.
By Patkos Csaba
This tutorial was inspired by a speech given by Robert C. Martin that I watched a year or so ago. The main subject of his talk is about the possibility of picking The Last Programming Language. He addresses topics such as why should such a language exist? And what it should look like? However, if you read between the lines, there was another interesting idea that caught my attention: the limitations that each programming paradigm imposes upon on us programmers. So before we get into how we could go about converting a procedural based PHP app into an object oriented one, I want to cover a little bit of theory beforehand.
Out of the box, you get a sleek, intuitive and informative error page each time something goes pants-up in your application. Even better, under all that is a very straight-forward, but flexible, toolset for dealing with errors in a way that makes sense for whatever it is that you’re doing.
The library’s main features are:
PHPUnit has hinted at parallelism since 2007, but, in the meantime, our tests continue to run slowly. Time is money, right? ParaTest is a tool that sits on top of PHPUnit and allows you to run tests in parallel without the use of extensions. This is an ideal candidate for functional (i.e Selenium) tests and other long-running processes.
ParaTest at your Service
ParaTest is a robust command line tool for running PHPUnit tests in parallel. Inspired by the fine folks at Sauce Labs, it was originally developed to be a more complete solution for improving the speed of functional tests.
Since its inception – and thanks to some brilliant contributors (including Giorgio Sironi, the maintainer of the PHPUnit Selenium extension) – ParaTest has become a valuable tool for speeding up functional tests, as well as integration tests involving databases, web services, and file systems.
ParaTest also has the honor of being bundled with Sauce Labs’ testing framework Sausage, and has been used in nearly 7000 projects, at the time of this writing.
By Rey Bango
We spend a lot of time following the thought leaders in web development, in many cases using the tools and libraries they’ve built, reading the posts they’ve written, articulating cool techniques they’ve learned, and in some cases, attending the defining conference for a specific language. But wouldn’t it be great to learn what they focus on and what they use to build such awesomeness?
I reached out to a group of some of the best and brightest developers in web development to answer those very questions. These are developers that have made strong contributions to the web development community, are highly regarded by their peers for their technical abilities, and continue to help push web development forward via content, code, and leadership. You can check out their bios, below, for more details about them.