Consulta sobre DDD #1: Pregunta sobre las entidades en DDD (Identidad y UUID)
A raíz del libro “Domain-Driven Design in PHP” y los videos que tengo en Youtube, semanalmente, me van llegando consultas sobre temas de relacionados. Son bastante interesantes y me gustaría compartirlas así como mis respuestas. A los autores de los mails les he pedido permiso para publicar la conversión. Las iré agregando en la medida que pueda. La primera es de Álex sobre Entidades, Identidad y UUIDs.
Dot: Puzzles for smart masses
I have always been interested in games, just for fun, nothing serious. A game is IMHO the most difficult piece of software to write. Think for a second. It needs support for user input devices (mouse, keywords, gamepads, etc.), graphics (2D or 3D), sounds and music, physics, AI, networking when playing with more players and it has to perform really, really fast. That’s not the typical PHP web, is it? Today, I would like to present my first really small and silly game, and probably the last one :) for iOS/Android and the technologies behind it. Hope you like it.
Migrating progressively to Symfony without pain with StackPHP
In the previous post, I talked about how to migrated to Symfony without pain using Apache Dumper. The idea was to generate Symfony routes in an Apache configuration file or .htaccess so it can be included in your virtual host. By including a fallback route to your current framework entry point, you can create new routes in Symfony without touching your previous framework. You can develop normally your new Symfony app, just defining new routes or the same old ones and regenerating the routes file.
This approach has some small pitfalls. Each time a new Symfony route is created, the Apache configuration file with the routes must be regenerated. If you’re creating many routes, this can be annoying. As explained in the previous post, there is another option that fixes this issue and have more features, Stack. Now, it’s like in Atrápalo, let’s see how it’s working.
Migrating progressively to Symfony without pain
Atrápalo is a travel e-commerce website founded in 2000. Based in Barcelona, Spain, it sells flights, trips, tickets, booking restaurants, car renting, etc. to 10 different countries. It’s a 9000 world Alexa ranking and it’s running PHP. Since 2014, we are pushing hard in order to evolve technically using best practices, agile methodologies and distributed architectures. One of the key aspects is the framework.
We are currently migrating to Symfony in order to speed up the development process and reduce the maintenance costs. We are doing it progressively, step by step, without rewriting the whole application, no green-field project, without any dedicated team neither. All developers are involved in this process, and by policy, each new feature is developed using Symfony while the old features remain served by the old framework.
I would say this process is going quite smoothly, without pain. Based on some emails and tweets I have received, here are some tricks about how we are doing it. Hope it helps!
Economía del Desarrollo de Software – PHP Barcelona – Marzo 2015
Aquí os dejo las slides y el video de mi charla sobre “Economía del Desarrollo de Software” impartida en la Barcelona PHP Monthly Talk de Marzo y en la SmashTech “I’m a Developer”.
Atrápalo Tech 2014 figures
It’s almost a year ago since I started working at Atrápalo. The team has done an amazing job learning and applying all the changes in our software development process including the new architecture, testing practices, Scrum changes, branching strategy, releasing process, bugfixing, and so much more. Changing the way ourselves work is probably the most difficult part from a “status quo” change.
I will like to thank everyone in the team that has done the effort to make it possible. I know it’s not easy and sometimes not fun at first. There is still so much to do and 2015 is going to be even so much funnier. Following, there are just some figures about 2014. Thanks to the Atrapalo Team.
Javascript Apps, APIs, AJAX and CORS
If you are developing Javascript applications that make AJAX calls directly to an API that you don’t control, you will probably experiment issues with CORS. If you take a look to your console, the following message will appear:
XMLHttpRequest cannot load http://foo/bar. No ‘Access-Control-Allow-Origin’ header is present on the requested resource. Origin ‘http://localhost:8100’ is therefore not allowed access.
Subscribe yourself to PHP internals
On January, 31st, I was in the Barcelona PHP Day. Albert Casademont (@acasademont) was giving his talk about PHP 7. He talked about features, benchmarks and internals. He said that he was subscribed to the PHP Internals mailing list and I thought that more developers should too. However, it’s not so easy to get there.
“Implementing Domain-Driven Design” Workshop in Barcelona
Since 2012 and after two years reading and working with Domain-Driven Design approaches, in 2014, Christian (@theUniC) and me went to Berlin to get trained by Vaughn Vernon, author of “Implementing Domain-Driven Design” book. The training was fantastic, all the concepts that were going around on their minds up to that moment, got stuck into the ground in the 3 days IDDD workshop. However, they were the only two PHP developers there in a room full of Java and .NET. That was quite funny.
Domain-Driven Design: Code Structure and Application Services Webcast at @AtrapaloEng (Spanish)
Siguiendo con la formación de DDD en Atrápalo, os dejo la sesión de formación sobre Code Structure and Application Services. Que la disfrutéis.