The Future of WordPress
July 10, 2014 @ 13:14:07
voice your opinion now!
On the Envato blog there's a recent post that covers some of the future of WordPress resulting from some discussions at a recent Future of WordPress panel from the WP Think Tank.
There's one thing that we can all agree on: the future of WordPress is bright. Outside of this, the ever-passionate WordPress community is a hotbed for debates on where WordPress should go from here. With 22% of websites running on WordPress, a vibrant open-source community, amazing themes and plugins and a developer-friendly mindset, WordPress is stronger today than it has ever been. So what's next?
Their list includes changes touching just about all parts of the application including plenty of UI updates, a continued focus on backwards compatibility a shift towards plugin-driven development. This would allow new features to be installed as plugins when they're ready rather than modifying the core package. There's also some emphasis being put on making it work for "more than just blogging" and push towards more enterprise-level acceptance.
SitePoint PHP Blog:
Automate PHP with Phake - Real World Examples
July 10, 2014 @ 12:51:07
voice your opinion now!
The SitePoint PHP blog has posted part two of their series looking at using Phake for automation in your applications. In this second part they take some of the basics they shared in part one and apply them in some more practical examples.
In part one, we covered the basics of Phake and demonstrated ways of executing tasks with it, covering groups, dependencies, and arguments. In this part, we'll look at some sample real world applications of Phake. Note that the following examples are largely based on things that I usually do manually that need some sort of automation.
He includes three different task examples, each with the code to make them happen (and descriptions of what it's doing):
- Uploading Files to Server with a Phake task
- Seeding the Database
- Syncing Data
You can find out more about Phake on the project's GitHub page (including grouping, aborting and describing tasks).
Refactoring Legacy Code Part 8 - Inverting Dependencies for a Clean Architecture
July 10, 2014 @ 11:04:13
voice your opinion now!
NetTuts.com has posted part eight in their series looking at refactoring legacy code - Inverting Dependencies for a Clean Architecture. In this latest post they move away from just refactoring the code and start to look more at fixing the architecture of the application.
Old code. Ugly code. Complicated code. Spaghetti code. Gibberish nonsense. In two words, Legacy Code. This is a series that will help you work and deal with it. It's now time to talk about architecture and how we organize our newly found layers of code. It's time to take our application and try to map it to theoretical architectural design.
They look at the current structure of the code (well, of their refactored version) and how to apply the Dependency Inversion Principle (part of the SOLID methodology) via interfaces. The code is included for the refactor as well as tests to add to their "Golden Master" test suite to ensure continued correct functionality.
Three Devs & A Maybe Podcast:
Laravel, Forge and Homestead with Taylor Otwell
July 10, 2014 @ 10:42:44
voice your opinion now!
The Three Devs & A Maybe podcast has posted a new episode with special guest Taylor Otwell of Laravel framework fame. In this latest episode (#33) they talk with him about the framework, the Forge product and the Homestead project (a packaged VM environment ready to host Laravel applications).
This week we are very lucky to have the creator of Laravel, Taylor Otwell on the show. Starting off with his journey into the world of programming (through .NET), we move on to discuss how Laravel came to being. We then touch upon our experiences experimenting with different programming stacks, and what features of C# he would like to see introduced into PHP. Finally, we ask Taylor what resources he would recommend to someone just starting out in the industry.
Other topics mentioned in this episode include the Laracasts website, FuelPHP and PhoneGap. You can listen to this latest episode either through the in-page player or by downloading the mp3 directly. You should also consider subscribing to their feed to get the latest shows as they're released.
A better PHP testing experience Part II Pick your test doubles wisely
July 10, 2014 @ 09:36:27
voice your opinion now!
Matthias Noback has posted the second part in his look at a better PHP testing experience, focusing this time on picking test doubles wisely. Test doubles are a more general term for what most developers who test code might call a "mock".
In the introduction to this series I mentioned that testing object interactions can be really hard. Most unit testing tutorials cover this subject by introducing the PHPUnit mocking sub-framework. The word "mock" in the context of PHPUnit is given the meaning of the general concept of a "test double". In reality, a mock is a very particular kind of test double. [...] Each type of test double has its own merits and it is vital to the quality of your test suite that you know when to use which one.
He builds on the "non-assertion centric" approach he talked about in the first part and how a similar problem could be caused by the large amount of work needed to create complex mocks. He points out that having to create them in a specific way and the mocks being a bit difficult to use can make the tests fragile and easily broken. He looks at a few different kinds of test doubles (mocks, dummies, spies) with code examples for each for added clarification. He also makes two recommendations for testing instead of complex mocking: create the actual mock classes instead of just mocks and don't overuse mocking.
Packagist Latest Releases for 07.10.2014
July 10, 2014 @ 08:08:38
voice your opinion now!
Recent releases from the Packagist:
- hampel/user (1.1.1, 1.1.0, 2.1.0)
Configurable User model for Laravel
- watson/active (1.2.2)
Laravel 4 helper for recognising the current route, controller and action
- voceconnect/voce-cached-nav (1.3)
Serve cached copies of WordPress navigation menus by replacing your template calls to `wp_nav_menu` with `voce_cached_nav_menu`.
- nubs/which-cli (v1.0.0)
A symfony/console command similar to the standard which command.
- nubs/which (v1.0.0)
A library for locating commands in a PATH.
- cakedc/search (2.4.0)
Search Plugin for CakePHP
- stillman/kohana-templatecontroller (v1.1.0)
Extended controller class for Kohana 3.x with standalone actions and filters
- watson/testing (1.1.1)
Laravel controller and model testing helpers.
- kebir/menu-generator (1.0.1)
Simple Menu Generator
- cakedc/migrations (2.3.1)
Migrations Plugin for CakePHP
- drupal/console (0.2.7)
Drupal 8 Console scaffolding module generator
- naneau/filegen (0.0.3)
A PHP File and Directory Generating Tool
- geekwright/dummy (v1.0.1)
XOOPS dummy module for testing
- rawebone/injector (1.0.2)
A library providing a low level service injection API
- smallneat/laravel-bootstrap-forms (1.0.2, 1.0.1, 1.0.0)
Registers some form macros that output bootstrap 3 markup, with support for errors
- clue/solusvm-api-react (v0.1.0)
Simple async access to packagist.org's API, like listing project details, number of downloads, etc.
- alxmsl/primitives (v1.1.0-alpha, v1.0.0)
Simple library with primitives: sets, queues etc.
- webcms2/webcms2 (v0.5.3)
WebCMS2 content management system for Nette framework. This package contains system libraries and admin module.
- condenast/pangea (1.6.007)
- brunty/laravel-environment (0.2, 0.1.3)
Generate and work with .env files from the command line via an artisan command within Laravel.
- clouddueling/mysqldump-php (v1.3.1)
This is a php version of linux's mysqldump in terminal "$ mysqldump -u username -p..."
- dreamscapes/enumeration (0.3.3)
A simple Typedef Enum implementation for php
- kisma/kisma (0.2.50, 0.2.49)
PHP Utility Belt
- esensi/model (0.3.2)
The base model traits of Esensi
- seine/seine (v2.0.0beta1)
Seine - Write spreadsheets of various formats to a stream
- scheb/two-factor-bundle (v1.1.0)
Provides two-factor authenticaton for Symfony2
- ftven/sdk-common (1.0.0)
SDK COMMON Classes
- raymondidema/user-package (0.3, 0.2, 0.1)
- phpdocumentor/phpdocumentor (v2.6.1)
Documentation Generator for PHP
- scriptotek/simplemarcparser (v0.6.1)
A simple MARC21/XML parser
- g4/constants (0.1.1, 0.1.0)
G4 constants that are used for all day stuff and this is good way to organize them
- wtfzdotnet/php-tmdb-api (v1.3.0)
PHP wrapper for TMDB (TheMovieDatabase) API v3. Supports two types of approaches, one modelled with repositories, models and factories. And the other by simple array access to RAW data from The Movie Database.
- arkanmgerges/tasker (0.6.0, 0.5.0)
Run parallel tasks to be executed
- anouar/paypalpayment (1.0)
laravel-paypalpayment is simple package help you process direct credit card payments, stored credit card payments and PayPal account payments with your L4 projects using paypal REST API SDK.
- googleads/googleads-php-lib (5.3.1)
Google Ads APIs Client Library for PHP (AdWords, Adx, and DFP)
- spiffy/spiffy-config (1.0.2)
ZF2 module that provides route annotations directly in controllers.
- raymondidema/validator (1.0)
Yet Another Form Validator
- memeoirs/paymill-bundle (v0.2.4)
Paymill payments for Symfony apps
- adclick/leadoffice-api (1.5.1)
Accelerators to communicate with LeadOffice APIs
- phiber/sample-app (v0.3.2)
A sample application for Phiber framework.
- appdynamics/ansible-php (v1.0.0)
Helper library for Ansible modules written in PHP
- webonaute/doctrine-fixtures-generator-bundle (v1.0.1)
Generate Fixture from your existing data in your database. You can specify the Entity name and the IDs you want to import in your fixture.
- mikehaertl/phpwkhtmltopdf (2.0.0)
A slim PHP wrapper around wkhtmltopdf with an easy to use and clean OOP interface
- danielstjules/stringy (1.5.2)
A string manipulation library with multibyte support
- integrated/library (0.1.1.8)
- integrated/content-bundle (0.1.1.8)
Integrated Content Bundle
- braintree/braintree_php (2.28.0)
Braintree PHP Client Library
- phiber/phiber (v0.6.4-alpha)
PHP's easy MVC
- voceconnect/wp-large-options (1.0.1)
You may wish to store a larger option value than is recommended on WordPress.com. If your option data will exceed 400K, or is of an unpredictable size (such as an HTML fragment etc.) you should use the wp_large_options plugin to store the option in a cache-safe manner. Failure to do this could result in the option not being cached, and instead fetched repeatedly from the DB, which could cause performance problems.
- bugsnag/bugsnag (v2.2.10)
Official Bugsnag notifier for PHP applications.
- crowdvalley/crowdentials-api-wrapper (0.1.0)
Provides a wrapper for Crowdentials Api
- nette/nette (v2.0.16-RC, v2.1.5-RC)
Nette Framework - innovative framework for fast and easy development of secured web applications in PHP. Write less, have cleaner code and your work will bring you joy.
- components/angular.js (1.2.19, 1.3.0-beta.14)
Shim repository for Angular.js
- phraseanet/phraseanet (3.8.5)
- ultractiv/lean (0.0.5.8, 0.0.5.7, 0.0.5.6, 0.0.5.5)
The PHP framework for simple, REST API backend. It gets out of your way, so you can get your work done.
- naonaox1126/vizualizer_twitter (v1.3.2)
Visual Framework in PHP
- userapp/userapp (1.0.1)
PHP client library for UserApp.
- userapp/widget (0.6.1)
PHP user widget for UserApp.
- hrevert/ht-img-module (0.1.0-beta3)
Image manipulation module for Zend Framework 2
- hypercharge/hypercharge-php (1.25.2, 1.25.1)
Hypercharge PHP Library / SDK
- kingsquare/json-schema-form (0.4, 0.3, 0.2)
A framework-agnostic PHP Implementation for generating simple forms based on json-schema
- temafey/phalcon-extjs (v0.6.6)
Extjs cms platform based on Phalcon framework
- joomlatools/joomla-console (v1.1.0)
This command-line script helps to ease the management of Joomla sites in your development environment.
- siliconstraits/cems-php-sdk (0.5.1)
PHP SDK for SSS CEMS platform
- opendi/nominatim (0.1)
A simple interface to OSM Nominatim search.
- claroline/web-resource-bundle (2.0.0)
Claroline web resource plugin
- glukash/glu-image (0.1.0, 0.0.11, 0.0.10, 0.0.9, 0.0.8, 0.0.7, 0.0.6)
- harp-orm/validate (0.2.1, 0.1.0)
Object validaiton library
- artistan/urlencode (1.0.2)
Allow Urlencoded slashed and more in routing parameters
- heroku/heroku-buildpack-php (v24)
Toolkit for starting a PHP application locally, with or without foreman, using the same config for PHP/HHVM and Apache2/Nginx as on Heroku
- ibrows/sonata-translation-bundle (1.0.11)
Integration of lexik translation into sonata admin
- nette/sandbox (v2.0.16, v2.1.5)
The sandbox is a pre-packaged Nette Framework project, basic configured structure for your application.
- imsamurai/active-record-for-cakephp (1.3.0, 1.2.7)
Implementation of active record for CakePHP
- sinergi/config (0.4.3)
PHP configurations loading
- nazka/location-bundle (0.3.0)
Addresses, countries and provinces doctrine entities.
- fm/feeder (v0.0.15)
Library containing functions to download, parse, transform and export different types of feeds.
- folklore/eloquent-picturable (v0.1.1)
Laravel 4 package to add pictures capabilities to Eloquent Models
- embed/embed (v1.5.5)
PHP library to retrieve page info using oembed, opengraph, etc
- alicephp/alicephp (0.1.2)
- heliopsis/ezforms-bundle (1.1.1)
Symfony forms handling within eZPublish contents
- avisota/contao-message-renderer-mailchimp (2.0.2)
Renderer that use MailChimp templates.
- gushphp/gush-bitbucket-adapter (1.1.3)
Bitbucket adapter for Gush
- icap/lesson-bundle (1.4.0)
- claroline/video-player-bundle (2.0.0)
Claroline video player plugin
- debranova/project (1.1.2)
General code for Debranova Projects
- kbrabrand/silex-swagger-ui (0.1.1)
A silex service provider that integrates the Swagger UI documentation browser into silex
- debranova/general (1.1.4, 1.1.3, 1.1.2)
General shared code for Debranova
- phpconsole/phpconsole (3.0.3)
A detached logging facility for PHP to aid your daily development routine
- debranova/program (1.1.2)
General code for Debranova Program
- ttree/oembed (1.1.2)
oEmbed utility package for TYPO3 Flow & Fluid with support for TYPO3 Neos
- icap/dropzone-bundle (0.6.11, 0.6.10)
- roumen/sitemap (v2.4.6)
A simple sitemap generator for Laravel.
- icap/blog-bundle (v1.1.1, v1.1.0)
Claroline blog plugin from ICAP
- claroline/rss-reader-bundle (3.0.0)
Claroline RSS reader plugin
- harp-orm/locations (0.2.0)
Regions, Countries and Cities.
- penneo/penneo-sdk-php (v1.0.4)
Penneo SDK for PHP
- icedevelopment/mysql-workbench-schema-exporter (v220.127.116.11)
MySQL Workbench Schema Exporter
- icap/notification-bundle (v1.1.4)
Notification bundle for Claroline Connect. See https://github.com/claroline/Claroline
- colymba/gridfield-gallery-theme (v1.0.0)
SilverStripe 3 GridField component adding file or image thumbnail gallery view
- mike-roetgers/dependency-graph (0.2.0)
Dependency graph for PHP
- blablacar/memcached-bundle (v1.0.3)
BlaBlarCar Memcached bundle
- claroline/pdf-player-bundle (2.0.0)
Claroline PDF player plugin
- pabloezequiel/environment (1.0.2, 1.0.1)
Add a flag to your Laravel dev environments.
- syringe/dependency-injection (1.3.2)
Syringe Dependency Injection Component
- icap/wiki-bundle (v3.1.3)
Claroline wiki plugin from ICAP
- claroline/image-player-bundle (2.0.0)
Claroline image player plugin
- hampel/wordpress-auth-laravel (2.0.1)
WordPress Auth Driver for Laravel
- arhframe/iocart (1.0.2)
Ioc which use the spring style.
- arhframe/annotations (0.3)
Annotations for arhframe framework.
- chriskacerguis/randomstring (1.0.0)
simple class to generate a random string (good for random generated passwords)
- liip/monitor-bundle (2.0.2)
Liip Monitor Bundle
- graze/monolog-extensions (1.4.2)
Monolog extensions for use within Graze
- alxmsl/cli (v1.0.2)
Simple library for php-cli script options support
- potsky/laravel-localization-helpers (1.1.3, 1.1.2)
An artisan command package for easy translation management
- orchestra/model (v2.2.1)
Orchestra Platform 2 Model Component
- radic/blade-extensions (v0.2.0)
Laravel package providing additional Blade extensions: foreach (with $loop data like twig), break, continue, set,array (multiline), etc
- hypercharge/hypercharge-schema (1.24.8)
Hypercharge API JSON Schema
- mmoreram/controller-extra-bundle (v1.1.2, v1.1.1)
Some specific controller features
- rippleffect/user-bundle (2.0.3, 2.0.4)
Rippleffect User Bundle
- harp-orm/materialized-path (0.2.0)
Materialized path nesting for Harp ORM models
- landingi/loggly-bundle (v0.0.2)
Bundle for Symfony2 that extends Monolog for Loggly support
- yoya/io_bit (2.1.1)
Bit I/O library
- linfo/linfo (v2.0.1)
App and library for easily parsing and displaying system information of the host, like network/torrents/cpu/memory/usb/pci/sound cards/filesystems/raid array/ipmi/etc.
- alxmsl/connection (v1.0.3, v1.0.2)
Simple library for support storage connections
- mikehaertl/php-tmpfile (1.0.0)
A convenience class for temporary files
- stolz/assets (0.0.4)
An ultra-simple-to-use assets management library
- sinergi/registry (0.1.1)
PHP Dependency Injection helper that is object oriented and IDE friendly
- fastfeed/fastfeed (v0.3.0)
A simple to use Feed Client Library.
- tiny/tiny (1.1)
The TinyMVC Framework Libraries
- pieterb/webdav-php (1.1.1)
A library to create a webDAV server
- simsite/project (v0.6.1, v0.6)
SimSite Project Skeleton
- anlutro/l4-core (0.16.11, 0.16.10)
Core L4 functionality.
- saxulum/saxulum-menu-provider (1.0.2, 1.0.1)
Saxulum Menu Provider
- openbuildings/spiderling (0.2.15)
Crawl the web with kohana, phantomjs or selenium
- zol/fixed-column-width-parser (0.1.1)
Parse fixed column width files according to given schema
- messagebird/php-rest-api (1.1.1)
MessageBird REST API client for PHP
- rezozero/slir (2.1.0)
SLIR (Smart Lencioni Image Resizer) resizes images, intelligently sharpens, crops based on width:height ratios, color fills transparent GIFs and PNGs, and caches variations for optimal performance.
- cakedc/recaptcha (2.2.4)
Recaptcha Plugin for CakePHP
- bazilio/yii2-async (0.0.1)
Provides translucent api for moving large tasks out of request context
- tomverran/robots-txt-checker (1.01)
Given a robots.txt file, user agent and URL path will tell you whether you're allowed to access a page
- bootflat/bootflat (2.0.3)
An open source Flat UI KIT based on Bootstrap (3.2.0). A faster, easier and less repetitive way for web developers to create elegant web apps.
- blablacar/memcached-client (v1.0.4)
BlaBlarCar Memcached client
- zol/fixed-column-width-parser-bundle (0.1.0)
Provide Symfony integration for fixed-column-width-parser
- latrell/swagger (0.1.3, 0.1.0)
Swagger for Laravel
- aerialship/saml-sp-bundle (1.0.0)
Symfony2 SAML2 authentication bundle
- arhframe/yamlarh (1.1.3)
Inject data and import other yaml file into your yaml file.
- innova/path-bundle (v2.0.0)
Claroline Path Bundle
- raymondidema/commandee (2.0)
- majes/teel-framework (v1.13)
The "MajeS'teel Edition" distribution
- stage1/docker-php (v0.1.1, v0.2.0)
A Docker PHP client
- codedazur/social (V0.1.3, V0.1.2)
- eventhorizon/assets-bundle (v1.1.1)
- rybakit/phive-task-queue (v0.1.0)
A lightweight task queue on top of rybakit/phive-queue
- claroline/core-bundle (3.0.0)
Claroline core bundle
- pahanini/yii2-refiner (v0.6, v0.5)
Helps to add additional where params to active query (refine query)
- anlutro/form (0.3.7)
Dynamic form builder.
- authbucket/oauth2-bundle (1.0.0-rc1)
- mikehaertl/php-shellcommand (1.0.2)
An object oriented interface to shell commands
- gentle/bitbucket-api (0.5.2)
Bitbucket API wrapper for PHP >= 5.3
- behat/behat (v3.0.11)
Scenario-oriented BDD framework for PHP 5.3
- sokil/php-mongo (1.0.17)
Active Record for PHP Mongo
- devco/europaphp (1.4.1)
A feather-weight, extremely-fast, diverse, scalable and productive PHP 5.4 View Controller framework.
- pingpong/shortcode (1.0.1)
Laravel 4 - Simple shortcode based on wordpress shortcode
- authbucket/oauth2 (1.0.0-rc1)
The standard compliant OAuth2.0 library based on the Symfony2 Components
SitePoint PHP Blog:
10 Essential Sublime Text Plugins for Full-Stack Developers
July 09, 2014 @ 12:32:33
voice your opinion now!
Users of the Sublime Text 2 editor already know how flexible and useful it can be in developing their own software. SitePoint has a new post that wants to help enhance that experience even more with a list of 10 essential plugins you can use as a full-stack developer.
When I started with web development a few years ago, Vim was my first choice of text editor. It was easy to work with and I could get the basics done without much hassle. [...] In spite of the "Vim vs Emacs" debate out there, about a year ago I decided to try out a native text editor and Twitter was abuzz with one of them (no prizes for the guessing which one.) The creators of Sublime Text say it's a text editor you'll fall in love with and, having worked with it for almost a year now, I must say I completely agree with them.
Among their "top 10" list are things like:
- Package Control
Each item on the list comes with a link to the library, a brief description of what it has to offer and a screenshot (in most cases) of it at work.
Running WordPress on OpenShift An Introduction
July 09, 2014 @ 11:07:47
voice your opinion now!
On the NetTuts site today there's a new tutorial that wants to help you get WordPress installed on OpenShift, the platform-as-a-service offering from RedHat that includes full PHP support.
OpenShift is a very good platform for running a WordPress site. PagodaBox and AppFog fair for hosting PHP applications for free; however, PagodaBox is quite slow, and has a hard limit of 10MB of MySQL for free plan. AppFog no longer supports custom domain on their free plan. You can also run PHP on Heroku, but it's a bit on the slow, as well. OpenShift solves all of above problems: It's fast enough, offers a free custom domain, offers large disk space, and a significant amount of MySQL storage.
They start by introducing some of the features OpenShift offers and the basics of what it includes in the free plans. They then walk you through the full process to getting an account set up and creating the environment for the WordPress install:
- Sign Up for an Account
- Setup Your Publish Key
- Get Your WordPress Up (includes code changes if porting an existing installation)
- Use Your Own Domain
- Setup phpMyAdmin
They also offer some tips post-installation to help keep things up and running (monitored), enabling remote SSH access and using SFTP to connect to the application if there's a need.
Master Zend Framework:
How to view an Instagram Photo Stream in Zend Framework 2
July 09, 2014 @ 10:53:59
voice your opinion now!
On the Master Zend Framework site Matthew Setter has a new tutorial showing how to pull in Instagram photo feeds in a Zend Framework 2 application via their on developer functionality.
In today's tutorial, we're going to learn how to retrieve and display an Instagram photo stream in Zend Framework 2. We're going to cover the essentials of adding the libraries we'll need to composer.json, handling authentication and then retrieving and displaying our photo stream in a controller action. We'll be doing all of this by using composer to create a new Zend Framework 2 project, based on the ZF2 Skeleton App project and then add a new controller and action which will handle the work involved.
The tutorial uses a basic skeleton application and a PHP Instagram library to make the connection to their API. He shows you how to register your application with Instagram and set up the OAuth configuration to handle the authorization process. He walks you through the creation of the controller, setup of session support and the creation of a "photosAction" to view the results of the photo feed pull. He includes a screenshot of what the end result should look like with it all up and working.
Don't see your event here?
Let us know!