Friday, June 29, 2012

Roundup: the Lean tools series continues

Here are my posts about the Lean tools for software development proposed by the Poppendiecks and my daily experience with them. I've published also some independent tutorials that may help you in testing legacy code or cook up some functional JavaScript.

The Turing test explains which are the most popular interpretations of the famous test for distinguishing between humans and machines.
Lean tools: Pull systems is about limiting Work-In-Progress with a counter intuitive inversion.
Functional JavaScript with Underscore.js explains how to work with this library.
Lean Tools: Queuing Theory is about a scheduling technique that works on both people and computers.
Record and replay for testing of legacy PHP applications lets you record HTTP requests for repeating them in tests later on.
Lean tools: Cost of delay tries to put a price tag on delays in releasing a feature.
My take on Utility and Strategic software is a little essay on this dichotomy established by Fowler. In short, you want to work on strategic systems.
Lean Tools: Self-Determination is about eliminating Taylorism and assembly lines from our profession.
The Duck is a Lie is a critique on duck typing.
Lean Tools: Motivation is about what gives a team motivation, and it's not money.

Sunday, May 27, 2012

Sunday, April 15, 2012

Biweekly roundup: Selenium and Android

At PHP Goes Mobile on Friday I held a short talk about using Selenium 2 (with the WebDriver API) for driving an android browser, either on a real device or an emulator. Here are the slides (only the title is in Italian).


Here are also my articles published in the last two weeks on DZone.
Finding wiring bugs is possible not only with end-to-end tests, but also by analyzing the wiring itself.
Lean tools: Feedback describes feedback as not only one of the basis of the Agile manifesto but also of Lean.
Commodities in the IT world analyzes today's trends of commoditized technologies and value-adding ones, comparing open and closed platforms (Amazon, Apple...).
2 years of Vim and PHP distilled contains the most important take-aways from my 2-year experience with this editor.
The Page Object pattern helps removing duplication and introducing abstraction into a test suite using browser-based tests.
Software versions, the necessary evil contains some thoughts on versions and necessity for software and libraries upgrade.
Lean tools: Iterations describes a common application of feedback.
What's in a name? That which we call a rose / by any other name would smell as sweet. Naming is commonly underrated in software engineering.

Sunday, April 01, 2012

Weekly roundup: announcing a new startup

Have you ever read a blog post, Wikipedia or TVTropes article and get spoiled about how Darth Vader is actually Luke's father? (Sorry)
Even with streaming and a network accessible from all over the world, watching movies and TV series at our own pace is increasingly difficult as even the most innocent-looking web pages can contain news about Bruce Willis's death, about how that name was his sled and that Harvey Dent becomes Two-Face.
My new startup, SpoilerAlert SRL, will produce browser extensions that read the text embedded in HTML pages and cut away possible spoilers or blank the lines containing them. I'm sure many people will pay for this service!
Possible follow-ups to the initial service are filtering spoilers also from YouTube videos (not showing clips from too-new Doctor Who episodes) and allowing the user to specify an in-universe chronological point like Already watched Episode V or Already watched Victory of the Daleks; in the latter case only revelations from newer episodes of the series will be filtered.
How we will do this is an highly-guarded patent-pending technology for parsing natural language and store web pages in the Time Vortex. If you want to get an invitation for the service...

P.S. These are my articles published this week on DZone.
Including PHP libraries via Composer
Bullets for legacy code
The return of Vim
Lean Tools: Value Stream Mapping

Sunday, March 25, 2012

Weekly roundup: basic testing

Here are my "slides" for the (Italian) talk I held at PHP.TO.START this week. It has been nice to meet so passionate colleagues in Turin, not only from the PHP field but also in the startup arena. If I can't find you and you see this, comment here or ping me on Twitter so that I can follow you.
The talk's topic is the evolution of testing in PHP - from manual to automatic and from a scope oriented to correctness to an aid in design.


Here are my original articles published this week on DZone.
Lean Tools: Seeing Waste is the first of a series of articles on Lean tools in their software development version (Lean is a movement that goes beyond the software field, of course.)
PHP objects in MongoDB with Doctrine contains code for working with the Doctrine Object-Document Mapper and for integrating it with the ORM.
TravisCI Intro and PHP Example shows you how to setup an open source project to build itself on Travis CI (for free).
Sometimes Python is magic because of its __methods.

Sunday, March 18, 2012

Biweekly roundup: PHP.TO.START sold out

Apparently the Turin event taking place this week is sold out. If you will be present, feel free to come up to me for geek chatting or OO/PHP/testing questions (which is the topic I will talk about.)

In the last two weeks I have published several new articles on DZone, also about other pieces of the web:
A Zend Framework 2 tryout is my review of the Zend Framework 2 beta releases, along with a list of what you don't have to learn again for now.
Asynchronous and negative testing is about testing that something does not happen in a running system.
All the mouse events in JavaScript is a collection of all and only the DOM events that are generated by a mouse, divided into classic and HTML5 ones.
Everything you need to know about Python exceptions is about the try..except..else..finally construct and the exception hierarchy of Python.
All about JMS messages topic's is a must-know for working with ActiveMQ and similar message-based middleware - I know middleware sounds like a buzzword, but I assure you it has a specific meaning.
CSS Bits: The Mouse Cursor is about customizing the mouse cursor appearance (interestingly, without any JavaScript code).
Bootstrap: rapid development and the complexity of a framework is my review of Bootstrap, a front end framework shipping some standard CSS solutions and UI widgets.
Test-Driven Emergent Design vs. Analysis is an essay about the dichotomy between writing code with the support of tests and exploring new classes and objects via other fluffy means like paper and boards. You know, that old thing called thinking.

Sunday, March 04, 2012

Weekly roundup: PHP Goes Mobile rescheduled

PHP Goes Mobile has been rescheduled for April 13th in Milan; I will present my short talk on PHPUnit_Selenium usage on an Android device. See you there!

Here are my articles published this week on DZone.
Audio in HTML 5: state of the art explains how to use <audio> and Audio JavaScript objects to play music or sounds in a web page.
TDD in Python in 5 minutes is a dive into the unittest Python module.
Running JavaScript inside PHP code - yes, you read that right. Highly experimental.
Gradient descent in Octave is a walkthrough in a staple machine learning technique.

Featured post

A map metaphor for architectural diagrams

It is a (two-dimension) representation of a pipe. The map is not the territory , but in software engineering terms they are models of it....

Popular posts