Posts

Showing posts from May, 2018

Java relative paths: trick or treat?

Image
We all had problems with relative paths in Java! Do not deny it! Every time I have to understand where the path is relative to is a puddle of blood, so how can we unveil this mystery? Will it be relative to the classpath? Will it be related to the project root? And in the tests? I usually use a little trick : in the point of the code where I want to use the relative path I write/log Java: new File(".").getAbsolutePath() Kotlin: File(".").AbsolutePath Simple and fast, at this point we know exactly where is the starting point for our relative path!

Contracts: diagonal saber vs. agile

Image
I have moved from a product company to a consulting firm and therefore I am dealing with issues that up to now I have not considered particularly interesting, but now they are. In particular, to make offers to customers I need to better understand what type of contract I can offer to support an agile development process . So what did I do? I studied! I picked up the book " Lean Software Development: An Agile Toolkit " and I tried to summarize what I studied and how much I shared with my colleagues in these slides. It's about how to move from diagonal saber contracts to agile contracts . How to go from arguing over contractual clauses to find a form of win-win cooperation. Do you know what a diagonal saber contract is? Do you know what are the main types of contract for software development? What can we learn from Toyota 's manufacturing experience? Is it all applicable to the world of software development? Find it out!! Contracts: diagonal