There's no way around it, we have class dependencies within our other functions, methods, etc. Within the PHP community, the argument isn't whether or not it makes sense. Our argument centers around: what is the best approach? Ralph Schindler - he works for a company called Zend - lays out the history, the arguments, and drops some useful conclusions..
Over the past few years, there are a few concepts and programming patterns that have muscled their way into the hearts and minds of PHP developers from other languages and programming communities. These concepts range from the MVC application architecture as well as various modeling techniques (think ActiveRecord and Data Mapper), to a pure shift in the way we think about application architectures, like aspect-oriented programming (AoP) and event-driven programming. Perhaps it's because PHP has been...
Last week I had the opportunity to talk about User Centered Design and Agile at the annual Italian phpDay that was held in Verona (more on my talk further down). It was my third time at the conference and it was a pleasure to see how much it had grown. It is organised by the GRUSP, the Italian PHP user group that is at the heart of a growing, dedicated and passionate PHP community. Many of the attending developers are part of small companies and most of them had to go through quite a rough patch in the...
With all of the frameworks making their way around the PHP community, it's interesting to see different developers' takes on judging which is the best for their needs. In this new post to his blog Volker Dusch takes the opposite stance - he hates talking about frameworks.I just hate talking about frameworks! But as it seems not many people share that feeling so this is an attempt to write a rather short and linkable post on how i approach a new framework and by what standards i judge it. [...] I'm not...
James Morris has a new post to his blog talking about a way he's found to remove dependencies from parts of your code by using the Observer pattern (specifically with the SplObserver and SplSubject components of PHP's SPL libraries).Working on a symfony app, you usually have a mix of domain objects that are used by symfony actions, interspersed with symfony specific code such as logging and sfContext type stuff. A common bad practice I see is symfony specific code peppered inside of domain objects that...
James Cohen has a quick post about what he calls a "poor man's parallelization" for working with batch jobs. It takes in parameters that tell it which set of jobs to run through when looping.One common problem that I've seen time and time again with batch processing jobs (generally cronjobs) is that when they're written they run quickly. Over time their workload grows until eventually it's unacceptably slow. [...] To create a simple of way of separating the jobs in a consistent way we can use the modulus...
So I've been on the job hunt since November when I got laid off from my previous position.A It's been taking me a while, primarily because after having a number of jobs a€˜in a row', I'm really this time trying to find the a€˜perfect' fit.A A position that I'm going to stay in for the next 5+ years.A A My next career, not just the next job position that sounds interesting enough to work on for a while.
The job hunt has come (essentially) to a close, and I'll share more on that in the future.A But in...
On the Zend Developer Zone today there's a new post from Keith Casey about some of the design patterns he hates - ones that are misused too often and have become more of a "worst practice" at times than others.To be clear, I think Design Patterns have their place. When used properly, they can make our lives easier and our code better. When they're misused - "If the only tool you have is a hammer.." - then they can become the bane of our existence. Unfortunately, some Design Patterns seem more susceptible...
Rafael Dohms has, in a recent post to his blog, shown how to set up NetBeans to use PHPUnit tests with XDebug. This allows him to run his unit test and track down problems with the handy XDebug extension right from his IDE.Every now and then you run into this weird situation in your code, where something that was supposed to zig is now zagging and it makes no sense whatsoever. For me this ends up happening in my unit tests since i'm not running everything in the browser everytime and since my tests...
On PHPBuilder.com there's a new tutorial posted showing you how to create a user authentication system that uses sessions to handle the logged in user's information.Outside of installation and configuration issues, reader questions pertaining to user authentication and session management almost certainly rank among the most common I receive on an ongoing basis. The logic itself is pretty straightforward; however, even a simple implementation involves a number of small but important details which aren't...
One of the issues Web Developers face is making their application robust to prevent SQL injection attacks. Different approaches exist which help. Sometimes people use large abstraction layers (which, sometimes, don't make anything safe ...) and sometimes people use prepared statements as a way to secure queries. Now prepared statements were a nice invention some 30 years ago abut they weren't ment for making things secure and so they do have some shortcomings: One issue is that preparing and executing a...
Sit_Thumbnails
Simple MVC Shutdown Manager
CMS Detector
Sit Thumbnails
Simple CAPTCHA Image Verification
TID Engine
cDWF
Auto Pagination
AC full page cache
Cookie
Fuzzy logic
Pop Corn
adv_wdt
jQueryUI PHP wrapper
Earlier this year I was invited to speak at the Linuxwochen in Vienna first in May. The Linuxwochen is a conference taking place in different time slots at different cities in austria. Besides Vienna these are Graz, Linz, Krems, and Eisenstadt.
This years Vienna conference was hosted by the FH Technikum Wien, not only providing the accommodation and infrastructure for the conference, but also a very stable and reliable wireless network which is not too common on conferences.
What did I talk about?...
Almost without thinking about it, we use a variety of Design Patterns every day. As much as some make our lives easier and our code better, some haunt us in our dreams, and make us dread the morning.
In this new post to the QaFoo blog, there's a reminder about the the Call for Papers for this year's FrOSCon being open, including the need for proposals for the PHP@FrOSCon room.Yes, it's that time of the year again, where the call for papers for PHP@FrOSCon takes place. As in the past 5 instances of this amazing event, the PHP Usergroup Dortmund - in cooperation with other user groups e.g. from Cologne - will organize the PHP@FrOSCon project room with a dedicated session program. And it's time to...
Juozas Kaziukenas has suggested an alternative to the usual "how to set up a web server" tutorials and methods for developer environment. He suggests that maybe virtual machine images are the way to go.There are millions of articles on how to setup LAMP setup on your own machine to allow developing websites locally. I think this is a wrong approach as running server programs in one's computer creates a lot of potential problems. Better approach for this would be to use Virtual Machines as they allow...
Lorna Mitchell has posted about an API release she's made for the Joind.in website today - the first stages of a completely reworked version of the site's API.Following the principle of "release early, release often", I put live a very early version of the v2 API for joind.in today (so that I can use it in another project!). I haven't updated the documentation yet but in case anyone was thinking of consuming data from joind.in, this at least gives you an idea of the direction of the project so I thought...
While Andrey is busy implementing partitioned replication infrastructure code for the PHP replication and load balancing plugin (PECL/mysqlnd_ms), I continued my search for ideas to steal. Mr. Robert Hodges, I've robbed the idea of a service level and caching.. If an application is able to function with stale data read from a MySQL replication slave, it can also deal with stale data from a local cache. The replication plugin (PECL/mysqlnd_ms) could, in certain cases, populate the query cache plugin...
The Voices of the ElePHPant podcast has posted their latest episode - an interview with Ligaya Turmelle, one of the members of the PHP Women group.In this episode Cal asks Lig three questions about the PHP Women group:
What prompted you and the other organizers to start the PHP Women group?
If PHP Women is in technologies, why do you let guys participate in the community?
How do you recruit mentors for the Big Sis/Little Sis mentor program?
You can either listen to the episode via the in-page player or...
|
Latest PHP Tweets
|