I'm working more and more with Matlab for some university projects. If you want to know why PHP is successful, you can look at Matlab for a similar scenario.
PHP sometimes requires an ugly syntax and many inconsistencies, but it has so many extensions and batteries-included features (datetime extension, shipped database drivers) that you can get things done very easily.
Matlab it's the same on the engineering's scale: it's probably the only language designed by someone who does not know that arrays are universally accessed by square brackets [] and not by parentheses (). However, it has so many built-in goodness that you can rectify an image with 10 lines of code, if you know what you're doing.
Here are my original articles published this week on DZone.
Practical PHP Testing Patterns: Layer Test
Zend_Glossary, an hands-on glossary about the terms used in Zend Framework, like filter, validator, boostrap, etc.
Practical PHP Testing Patterns: Test Method
Meaningless docblocks considered harmful, which explains why you should not misuse your docblocks.
A journey in web development, [computer] science, engineering:
getting to know what lies under the hood -- Giorgio Sironi
Sunday, November 28, 2010
Monday, November 22, 2010
Paamayim Nekudotayim
I think that few will get it, but I am confident in the geekness of my readers (probably Italian are at an advantage here.)
Sunday, November 21, 2010
Weekly roundup: Agile Day insights
You always learn something new at conferences. The most valuable insight I got from the Italian Agile Day, held last friday in Genoa, was:
Practical PHP Testing Patterns: Shared Fixture
Zend Application demystified
Practical PHP Testing Patterns: Back Door Manipulation
The best tools for writing UML diagrams
Building construction as a metaphor for software development is a frequent misunderstanding. In construction, you have an architect for the design phase and hundreds of workers for the actual construction. In software, the deliverable of the design phase is the source code, and the construction consists in an automated build. Therefore, you have no workers, and everyone is an architect. -- from the keynote of Paolo PerrottaBy the way, here are the articles I wrote last week, before heading for Agile Day.
Practical PHP Testing Patterns: Shared Fixture
Zend Application demystified
Practical PHP Testing Patterns: Back Door Manipulation
The best tools for writing UML diagrams
Thursday, November 18, 2010
Italian Agile Day 2010
Tomorrow I'm going to Italian Agile Day in Genoa. It is not a long trip, but I will wake up at 5 am.
If you want to chat, code or insult buzzword-obsessed professors together, look for me there.
Twitter stream: #iad2010
If you want to chat, code or insult buzzword-obsessed professors together, look for me there.
Twitter stream: #iad2010
Monday, November 15, 2010
The PHPUnit Refcard is out
My PHPUnit Refcard is now available for download. Hope you enjoy it.
Do you occasionally forget the syntax for creating Mocks and Stubs in PHPUnit? Or wonder how a command line option work? Or if there is an assertion that may be perfect for the test you're writing? Then this Refcard can help you.
The Refcard is a PDF cheatsheet of 6 pages, which interleaves code samples with explaining test and sample outputs. Getting to know PHPUnit to use it at its full potential will be a little easier now. :)
Do you occasionally forget the syntax for creating Mocks and Stubs in PHPUnit? Or wonder how a command line option work? Or if there is an assertion that may be perfect for the test you're writing? Then this Refcard can help you.
The Refcard is a PDF cheatsheet of 6 pages, which interleaves code samples with explaining test and sample outputs. Getting to know PHPUnit to use it at its full potential will be a little easier now. :)
Sunday, November 14, 2010
Weekly roundup: Refcard upcoming
It seems that my Refcard will be published tomorrow (November 15th). Follow refcardz.dzone.com to get a promptly update on publishing.
Refcardz are 6-page cheat sheet which you can use as a reference while programming.
For example, my team printed various copies of the Git Refcard when starting out with this tool. My Refcard instead is related to a popular testing harness.
Here are my original articles for this week.
Practical PHP Testing Patterns: Standard Fixture describes the concentration of fixture creation code in a single place, which eliminates duplication but may result in overgeneralization.
The Dark Side of Lean discusses Toyota's mindset, with the hope that Lean software development is different enough from it to avoid copying the Japanese work values. Which are: live to work.
Practical PHP Testing Patterns: Fresh Fixture describes the creation of new fixtures for each different test to run.
It's just like putting LEGO bricks together... Or not? in which the validity of LEGO bricks as a software metapho is discussed.
Refcardz are 6-page cheat sheet which you can use as a reference while programming.
For example, my team printed various copies of the Git Refcard when starting out with this tool. My Refcard instead is related to a popular testing harness.
Here are my original articles for this week.
Practical PHP Testing Patterns: Standard Fixture describes the concentration of fixture creation code in a single place, which eliminates duplication but may result in overgeneralization.
The Dark Side of Lean discusses Toyota's mindset, with the hope that Lean software development is different enough from it to avoid copying the Japanese work values. Which are: live to work.
Practical PHP Testing Patterns: Fresh Fixture describes the creation of new fixtures for each different test to run.
It's just like putting LEGO bricks together... Or not? in which the validity of LEGO bricks as a software metapho is discussed.
Sunday, November 07, 2010
Weekly roundup: TEDx edition
Yesterday I attended TEDxLakeComo, historically the first TEDx Italian event now in its second edition. TEDx is a spin-off of the TED global conference: a program of independently organized events which respect the spirit of TED: ideas worth spreading.
I think the power of TED and TEDx is in its wide variety of topics and speakers, that maintain are however connected in a single thread (at least in this edition). In a single day I attended talks about cloning, robotics, climate change, pandemics, and the free market. The world problems - energy, pollution, climate, economics - are all more interrelated than I thought.
Here are my original articles for this week, published on Web Builder Zone.
Practical PHP Testing Patterns: Test Automation Framework
5 features of PHP that seem hacks, but save your life
From Doctrine 1 to Doctrine 2
Practical PHP Testing Patterns: Minimal Fixture
I think the power of TED and TEDx is in its wide variety of topics and speakers, that maintain are however connected in a single thread (at least in this edition). In a single day I attended talks about cloning, robotics, climate change, pandemics, and the free market. The world problems - energy, pollution, climate, economics - are all more interrelated than I thought.
Here are my original articles for this week, published on Web Builder Zone.
Practical PHP Testing Patterns: Test Automation Framework
5 features of PHP that seem hacks, but save your life
From Doctrine 1 to Doctrine 2
Practical PHP Testing Patterns: Minimal Fixture