The problem as I see it
Where to start? Let me start by telling you that most of the books you read are wrong. The code samples you copy of the internet to do a specific task are wrong (the wrong way to handle a GET request), the function you copied from that work colleague who in turn copied from a forum is wrong (the wrong way to handle redirects). Start to question everything. Maybe this blog post is wrong this is the kind of mindset you require in order to protect your sites from XSS. You as a...
After five years I am still in love with the PHP Unconference Hamburg (Germany), which took place last weekend. On Saturday morning I was as thrilled as if I was going to the first date with a person I had just fallen in love to. Facts: 200 tickets sold in 20 minutes! 350 tickets sold in total, 280 attending. One can't compare this pure madness with any german PHP (un)conference I have presented at during the past 11 years. The continued success of this local german event makes me break my own tradition...
Earlier this year, I wrote about Aspects, Intercepting Filters, Signal Slots, and Events,
in order to compare these similar approaches to handling both asychronous
programming as well as handling cross-cutting application concerns in a cohesive
I took the research I did for that article, and applied it to what was then a
"SignalSlot" implementation within Zend Framework 2, and refactored that work
into a new "EventManager" component. This article is intended to get you up and
running with it....
SemanticScuttle will be
distributed as .phar file with the
The command line interface uses PEAR's awesome
package, which needs to be packaged up in the Phar file to make it work
out of the box.
I let Phing handle all of the deployment
of new versions, and generating the Phar file is handled by Phing, too.
In general, adding files to a .phar is easy, even a bunch of
PEAR installed files:
Put their absolute locations in a tag and
New from NetTuts.com today there's a tutorial for those using the CodeIgniter framework for their application. It shows how to upload files with Ajax and a simple form (with jQuery and AjaxFileUpload).Uploading files asnychronously can be a pain at the best of times, but when coupled with CodeIgniter, it can be a particularly frustrating experience. I finally found a way that not only works consistently, but keeps to the MVC pattern.They help you create a database table to store the file information in...
Hasin Hayder has recently posted a tutorial to his blog showing how to use the Zend_Crypt_Rsa library for encrypting/decrytping data in a Zend Framework application.Public/private key based encryption is very popular because of the strength it sets in encryption, specially above 1024 bits. Now there are external library to encrypt data using RSA encryption like RSA in phpclasses.org - the fun is we were also using this library in one of our ZF based project. But last week I've found that there is a...
In his latest post to his Web Species blog Juozas Kaziukenas looks at dependency management in PHP applications and offers a few suggestions of how you can make them easier to track.Rarely a project lives by itself, especially in the days of frameworks. Furthermore, there are a lot of great open source libraries you might want to use to save time. But all of this raises a new problem - how could we manage all those dependencies. Here are some thoughts on this problem and how you might want to solve it;...
Federico Cargnelutt has a new post to his blog showing you how to create a REST API for your site using the Apify (complete with a shiny new 1.0 release).Web services are a great way to extend your web application, however, adding a web API to an existing web application can be a tedious and time-consuming task. Apify takes certain common patterns found in most web services and abstracts them so that you can quickly write web APIs without having to write too much code.Some code snippets are included to...
On the SitePoint podcast, there's a new episode with Lorna Mitchell where she and host Louis Simoneau talk about taking your PHP to the next level, some of her work in Open Source and her involvement in their upcoming advanced PHP book.Episode 129 of The SitePoint Podcast is now available! This week our regular interview host Louis Simoneau (@rssaddict) interviews Lorna Mitchell (@Lornajane) one of a team of 3 co-authors working on an upcoming release for SitePoint, an advanced book on PHP.You can either...
Latest PEAR Releases:
The PHPBenelux Conference is ready for its third edition and takes place
January 27th & 28th in Antwerp (Belgium). We're
calling for papers
until October 15th and we're very much looking forward to your submissions.
These are the topics we're aiming for:
Content Management Systems
General and in depth programming skills
HTML5 & co (with a PHP twist)
All information about the conference and the CFP can be found on our
GObject Introspection (GIR) is a way to create automatic bindings to GNOME libraries for various different programming languages. I've written before about the benefits of bringing GIR to PHP, and now it seems something similar is happening on Node.js.
node-gir has been written by Tim Caswell, with help from Sebastian Wick and Piotr Pokora.I've been following the progress for a while, and today, during a flight from Helsinki to Salzburg, I was finally able to open a Midgard repository connection with it....
I'm getting worried about Google. Long one of the champions of the open web alongside Mozilla, the rise of social networking silos and the app economy seem to have scared them. And like any scared organism, they lash out.
Many of their plans to make web competitive against native development environments are good, there is indeed much to improve in the stack. But what I'm uneasy with is the unilateral way they go about it, preferring "big reveals" and post-facto standardization instead of the open...
Today, it is my pleasure to announce the release of Apify 1.0. You can download this release from GitHub. Thanks to everyone who has contributed to this release in any way.
Apify is a small and powerful open source library that delivers new levels of developer productivity by simplifying the creation of RESTful architectures. You can see it in action here. Web services are a great way to extend your web application, however, adding a web API to an existing web application can be a tedious and...
Saying "yes" is my default response when a friend asks for my support. But when my Carola KAhntopp asked me a while ago to participate in a presentation about presenting (meta alert!) at this year's PHP @ FrOSCon I committed myself to help without knowing what I would be getting myself into.
The title of Carola's presentation, "PHPopstars", was a play of words on the reality television franchise Popstars. The idea was that there were five "finalists" (Kore Nordmann, Tobias Schlitt, Judith Andresen,...
The journey from idea to mature software typically follows three very high level stages: Proof of Concept Evolve Mature and maintainEach stage will involve the usual development concerns (analysis, specification, design, implementation, integration, stage & tests) with all the corresponding artefacts (stories, acceptance criteria, points, etc.) involving sprints, scrums and whatever other rituals in your culture. The concerns at each stage can also be broken down further. For example, design will...
New from the Decal blog today there's a general post about testing, not writing tests for your code but testing methods for your site as a whole (like A/B testing). This is the first part of a series.For a long time, we here at Working Software have been strong believers in the "content precedes design" philosophy, as famously espoused by Jeffrey Zeldman and summarised here on UX Myths. [...] We are relaunching this website so we'd gone through the process of creating our "content first" wireframe using...
On the Script-Tutorials blog today there's a new tutorial posted showing you how to easily add watermarks to your images dynamically, either as a part of a cache generation or on upload.I will show you how to use GD library. And, main task today is adding watermark to image and generate result as PNG image into browser. We will using PHP and GD library. This is nice library to work with images at server side. Also (as additional tasks) I will draw little frame over image and will draw some text. Between,...