| Recording Acceptance Tests |
Rating: 0.00 (0 votes) 
In this conclusion to a three-part article series on acceptance testing with Ruby on Rails you ll learn how to use the Selenium IDE and how and why to record the results of your acceptance tests. This article is excerpted from chapter 11 of the book em Practical Rails Projects em written by Eldon Alameda Apress ISBN 159 597818 ....
Recompile one file & boost performance Quickly find & fix hotspots with Intel® Parallel Studio. Get the eval guide. |
|
|
|
 |
| Site News: Blast from the Past - One Year Ago in PHP |
Rating: 0.00 (0 votes) 
Here's what was popular in the PHP community one year ago today:Community News: The DooPHP Framework
NETTUTS.com: Using htaccess Files for Pretty URLS
PHPBuilder.com: Building a PHP Calendar
IT World: How Microsoft Made PHP Suck Less on Windows
CatsWhoCode.com: 15 PHP regular expressions for web developers
Reinhold Weber's Blog: MVC anatomy for PHP developers
Giorgio Sironi's Blog: Never write the same code twice: Dependency Injection
NETTUTS.com: How to Create A Simple Web-based Chat Application
DevShed: PHP 5 Helpers: Calling Methods Out of Object Scope
Sameer Borate's Blog: Top 25 Most Dangerous Programming Errors
Symfony Blog: The symfony Reference Guide: The new book about symfony
IBM developerWorks: MVC with Agavi - Add forms and database support with Agavi and Doctrine
PHPClasses.org: India will become number 1 source of PHP developers soon
Kevin van Zonneveld's Blog: Prepare for PHP 5.3
Chris Hartjes' Blog: So You Want To Telecommute? Part 1 - Building Trust
|
|
|
|
 |
| Giorgio Sironi's Blog: Missing the point (OOP in scripting languages) |
Rating: 0.00 (0 votes) 
On his blog today Giorgio Sironi has a response to this post from the I Am Learning PHP blog asking if web scripting languages really need OOP functionality.
Yesterday I came across a question: Do Web-Scripting Languages Really Need OOP? Here's my answer: only if you want to do more than an Hello World script (which is paradoxically how old school programmers measure the utility of a language.) I'll express some of my thoughts without compromises, which will be up to you.
He opposes the claims of the other post, noting that there's a reason most PHP frameworks are object-oriented and his concern with some of the comments on the post. He also responds to two of the comments on the post - one about the private scope and the other about namespaces.
|
|
|
|
 |
| Jani Hartikainen's Blog: The "do X or die()" pattern must die |
Rating: 0.00 (0 votes) 
Jani Hartikainen has a suggestion for all PHP developers out there - stop using die() for handling errors!
What's the most common pattern for error handling you see in beginner's PHP code? - That's right, do_X() or die('do_X failed);. That's nice and all, as at least you have some sort of error handling, but I think this way of handling errors must go. There is no place for it in modern PHP code - it's the worst way to handle errors, not much better than not handling them at all.
He talks about why die() is so bad and some alternatives to it - trigger_error (with a custom error handler) and exceptions. When used correctly, these two can help your script correctly catch and handle errors without the mess of a die().
|
|
|
|
 |
| DevShed.com: Asirra Captcha PHP Integration |
Rating: 0.00 (0 votes) 
On DevShed.com today there's a new tutorial about implementing the Asirra CAPTCHA system (from Microsoft) into your application for spam prevention.
Unlike other types of captcha that utilize difficult text obfuscation techniques (such as Google reCaptcha), this system utilizes images of dogs and cats, such as those shown in this screenshot.
They describe some of the reasons to use the system (hard to break, doesn't use sessions, easy to integrate) and how it works. They show how to implement the system on both the server and client side.
|
|
|
|
 |
| TigerFish Interactive: Drupal 6: Posting AJAX callbacks in SimpleTest |
Rating: 0.00 (0 votes) 
On the TigerFish Interactive blog today there's a new post for Drupal-ers out there about using the SimpleTest plugin for Drupal 6 to run automated tests against Ajax callbacks.
In Drupal 6's excellent SimpleTest module, a method called drupalPost() allows you to simulate a button press on a form by taking the form's data and using HTTP POST to submit it. But what if you want to POST data to an AJAX callback URL? By default, SimpleTest checks which submit button you have pressed, but of course, when POSTing using AJAX, you probably won't have pressed a button!
After doing some searching on a problem he had - submitting a form without the actual form on a page - he decided the best solution was to create a base class that inherits from DrupalWebTestCase. This base class allowed him to make a POST request (via curl) to the page and simulate a form request. The code for the method is included.
|
|
|
|
 |
| 99Points.info: Youtube Style Share Button With URL Shortening using CURL, jQuery and PHP |
Rating: 0.00 (0 votes) 
In a recent post on the 99Points.info blog Zeeshan Rasool walks you through the steps to create a share button with URL shortening using PHP, jQuery and curl.
These days every website must contain a section that is called '?Share This'?. After creating facebook style posting and youtube style rating system I have now come to share button. I have created youtube style share button with url shortening script. Try the demo and use this awesome tutorial on your web pages.
His tutorial includes all of the code needed - Javascript, PHP and some CSS - to create a small "share this" button that can be embedded in your site to open pages on the remote sites with the shortened URL for the current page.
|
|
|
|
 |
| Sean Coates' Blog: A Case of Mistaken Iterator |
Rating: 0.00 (0 votes) 
In a new post to his blog today Sean Coates talks about some of his work with Iterators in PHP and how, despite a bad example in the manual, he solved his issue (and updated the PHP manual too).
In the back end, we have models that connect to CouchDB. These models implement the Iterator pattern to allow easy traversal of a record's keys. [...] Little did I realize that this implementation is very broken. [...] Over the past few years, I've implemented many iterators in this way, using PHP's implicit array manipulation functions (reset(), current(), key(), next()).
He points out some issues with how PHP handles array index tracking and how, in the previous PHP manual example, it incorrectly checked for "false" against the current array value. His updated version doesn't have this issue. You can see it here.
|
|
|
|
 |
| Commands for Acceptance Testing |
Rating: 0.00 (0 votes) 
In this second part of a three-part article series on acceptance testing with Ruby on Rails you will learn the various commands that are performed during this process and start your first acceptance test. This article is excerpted from chapter 11 of the book em Practical Rails Projects em written by Eldon Alameda Apress ISBN 159 597818 ....
Recompile one file & boost performance Quickly find & fix hotspots with Intel® Parallel Studio. Get the eval guide. |
|
|
|
 |
 |
| Hokuten.net: A WordPress User's Guide to Drupal |
Rating: 0.00 (0 votes) 
If you're a WordPress user and have been wanting to get into Drupal, you should check out this guide on hokuten.net. It gives you information on two main points - installation and theming.
Anyone who has worked with both knows that anything you can do in WordPress, you can do in Drupal, and vice versa. It just takes some elbow grease. [Drupal] is a great thing to learn because of its broad market, but WordPress developers might find some difficulty getting acclimated'"Drupal has a much higher learning curve.
They mention some of the differences between the installation of the two (creating settings files, making additional directories) and a table showing the correlating theme files between the two.
|
|
|
|
 |
| WebHostingHero Blog: A Look at the Original PHP Developers |
Rating: 0.00 (0 votes) 
On the WebHostingHero blog today there's a new post going back to the roots of the PHP language and some of the original contributors like Rasmus Lerdorf, Zeev Suraski and Andi Gutmans.
When PHP began in 1995, it represented a fork on common object oriented programming languages. Designed to help provide scripting for the web, the language took on a life of its own as it became one of the primary web development standards. Today, PHP is used by millions worldwide and powers a majority of sites.
They talk about how some of the original developers are active in helping to better the languages (directly and indirectly) and how the advocacy of the community has helped it grow even stronger over the years. There's also mini-spotlights on each of the three mentioned above.
|
|
|
|
 |
| IBM developerWorks: Build a web-based notification tool with XMPP |
Rating: 0.00 (0 votes) 
On the IBM developerWorks site there's a recent tutorial about using PHP and Javascript with the XMPP to create a small web-based notification tool (called Pingstream).
Real-time web applications are networked applications, with web-based user interfaces, that display Internet information as soon as it's published. Examples include social news aggregators and monitoring tools that continually update themselves with data from an external source. In this tutorial, you will create Pingstream, a small notification tool that uses PHP and JavaScript to communicate over the Extensible Messaging and Presence Protocol (XMPP), a set of XML technologies designed to support presence and real-time-communications functionality.
You'll need to already have the usual software installed - PHP, Apache and MySQL - as well as a few others: Openfire, jQuery, Strophe, XMPPHP and LastRSS. They introduce some of the concepts behind real-time messaging, the XAMPP protocol and, of course the code to show how to create their service.
|
|
|
|
 |
| Gonzalo Ayuso's Blog: Clustering PHP applications. Tips and hints |
Rating: 0.00 (0 votes) 
In a new post to his blog today Gonzalo Ayuso offers some tips for those out there wanting to cluster their PHP applications effectively.
Sometimes a web server and a database is fair enough to meet our project requirements. But if the project scales we probably need to think in a clustered solution. This post is an attempt at being an unsorted list of ideas working with clustered PHP applications. Maybe more than a list of ideas is a list of problems that you will face when swapping from a standalone server to a clustered server.
He touches on a few different topics you might need to consider:
consistency in source code
writing to the file systems
deployment problems
authentication/authorization issues
handling sessions/logs/cache files
|
|
|
|
 |
| Dynamic Drop-down Menus: Javascript Progressive Enhancement |
Rating: 0.00 (0 votes) 
In this conclusion to a nine-part series on Progressive Enhancement we ll take the drop-down menu that we designed in the previous part and make its behavior dynamic with the addition of jQuery s animate method. Users with JavaScript disabled on their browsers however will still be able to make complete use of the menu....
Recompile one file & boost performance Quickly find & fix hotspots with Intel® Parallel Studio. Get the eval guide. |
|
|
|
 |
 |
| Sebastian Bergmann's Blog: Using HipHop for Static Analysis |
Rating: 0.00 (0 votes) 
In a new blog entry today Sebastian Bergmann quickly shows a method of performing some code analysis on code transformed by HipHop for PHP.
HipHop for PHP, the source code transformer that turns PHP code into C++ code that can then be compiled with g++, can also be used for static code analysis to find problems in PHP source code.
He includes a script that creates an XML document that both Checkstyle and PHP_CodeSniffer can use to check for a valid format on his sample "CodeErrors.js" file. He includes the script to create this XML file.
|
|
|
|
 |
| Marco Tabini's Blog: PHP 5.2 support ends just as its adoption begins |
Rating: 0.00 (0 votes) 
In a new post to his blog Marco Tabini has voiced his opinion on the decision made by the PHP development group to set the end of life of the PHP 5.2.x series with the latest release (5.2.14).
n case you missed it, the PHP team has just released 5.2.14, which effectively ends active support for the 5.2 branch. [...] The logic behind this decision is...puzzling.
He mentions the recent announcements of a few large PHP-based projects to officially support PHP 5.2 and how, because of the large jump in functionality from pre-5.2, it might be a good idea to reconsider this (preemptive?) retirement. He adds that making a move like this without consideration to these larger products could reflect negatively on the language itself. Be sure to check out the comments for more views from other members of the community.
|
|
|
|
 |
| Nick Belhomme's Blog: PHP 5.3.3 Namespaces |
Rating: 0.00 (0 votes) 
In a new post to his blog Nick Belhomme takes a look at namespaces in PHP 5.3 - what they are and how to use them (complete with code snippets of a small sample project).
With PHP5.3.3 recently released I really feel it is time that php developers are taking namespaces seriously. If you don't I guarantee you will be out of a job within five years. Namespaces are a fundamental part of the future of PHP.
He also makes his sample project available for download so you can follow along a bit better. He shows how to create a namespace, how to use them in both simple and more complex examples.
|
|
|
|
 |
| NETTUTS.com: 20 Steps to a Flexible and Secure WordPress Installation |
Rating: 0.00 (0 votes) 
On NETTUTS.com today there's a new tutorial about installing and configuring a secure WordPress installation for your site.
A comprehensive WordPress installation, albeit simple to produce, often requires multiple steps '" many of which can easily be omitted accidentally. How many times have you forgotten to customize your permalink structure? How about adding in a sitemap plugin? What about changing your timezone? If you've installed WordPress more than once, chances are you've missed something. Take the following steps and you'll never miss anything again.
Some of the steps are larger - "Get WordPress from SVN", "Add .htaccess Rules", "Apply the 4G Blacklist" - and some are smaller changes like setting up profiles, changing read/write/discussion settings and generating a sitemap. This is a great guide even if you already have WordPress installed.
|
|
|
|
 |