Speaker

Ferdinando Santacroce

Ferdinando Santacroce

Uncovering better ways of developing software and organizations

Alla scoperta di modi migliori per sviluppare software e organizzazioni

Brescia, Italy

Ferdinando helps people and companies grow.
He collaborates with Intré and Agile Reloaded, coaching teams on software and skills development.
He has been a developer, a teacher and a trainer.
He published a book for Packt, "Git Essentials".
He's an Italian Agile Movement active member.
He's a conference folk: he likes to participate, speak and organize them.

Ferdinando aiuta aziende e persone a crescere.
È stato sviluppatore, insegnante e formatore.
Collabora con Agile Reloaded e Intré, aiutando team nello sviluppo di software e prodotti.
Ama imparare e stare tra le persone. Organizza e partecipa a numerose conferenze.
Da grande vuole fare lo scrittore.

Area of Expertise

  • Information & Communications Technology

Topics

  • Agile Methodologies
  • Agile Coaching
  • TDD
  • Extreme Programming
  • Software Development
  • object oriented programming
  • DDD
  • Refactoring
  • java
  • csharp
  • Scrum
  • Kanban
  • Git
  • Web
  • Test-Driven Development
  • Software testing
  • Teamwork

Sessions

Agile Testing Matrix en it

Software development is a discipline that includes multiple means of quality assurance. Testing, with its many practices and tools, is one of the most important. Every developer should have a clear picture of the possibilities available in this field. This talk brings together common knowledge on the subject and offers an up-to-date outline for choosing the approach and tools best suited to each circumstance.

From coal to software: Socio-Technical Systems en it

Writing software is a complex job.
Organizations are complex, as are people and their relationships, and the environments in which they move. For this reason, the improvement effort undertaken by companies is often directed at process, at the organizational matter, and (not even too frequently) at the managerial side. The actual work to be done, the technical issue, remains in the background, almost as if it were a detail.
In the postwar period, someone was called upon to solve an intricate dilemma. The introduction of a promising innovation, which should have significantly increased the efficiency of a coal mine, turned out to be a failure. Starting with these early observations, we will look at the fundamentals of "Socio-Technical Systems," finally arriving at my own personal experiences. We will see how environment, people and technology are three inseparable aspects, on which one must work simultaneously in order to change for the better.

Dal carbone al software: i sistemi socio-tecnici en it

Scrivere software è un lavoro complesso.
Le organizzazioni sono complesse, così come lo sono le persone e le loro relazioni, e gli ambienti in cui si muovono. Per questo motivo, lo sforzo di miglioramento intrapreso dalle aziende è spesso rivolto ai processi, alla questione organizzativa e (nemmeno troppo frequentemente) a quella manageriale. L’effettivo lavoro da svolgere, la questione tecnica, rimane in secondo piano, quasi fosse un dettaglio.
Nel dopoguerra qualcuno fu chiamato a risolvere un bel dilemma. L’introduzione di una promettente innovazione, che avrebbe dovuto aumentare sensibilmente l'efficienza di una miniera di carbone, si rivelò un disastro. A partire da queste prime osservazioni, vedremo i fondamenti dei “Socio-Technical Systems”, arrivando infine alle mie personali esperienze. Vedremo come ambiente, persone e tecnologia siano tre aspetti inscindibili, sui quali si deve lavorare contemporaneamente al fine di cambiare in meglio.

Agile Testing Matrix en it

Lo sviluppo del software è una disciplina che include molteplici mezzi per garantire la qualità. Il testing, con le sue molte pratiche e strumenti, è uno dei più importanti. Ogni sviluppatore dovrebbe avere un quadro chiaro delle possibilità disponibili in questo campo. Questo talk raccoglie le conoscenze comuni sull'argomento e offre uno schema aggiornato per scegliere l'approccio e gli strumenti più adatti a ogni circostanza.

Object Calisthenics it en

Il lavoro dello sviluppatore è simile a quello di un atleta.
Per continuare a offrire prestazioni di qualità è necessario tenersi in allenamento (o iniziare a farlo, per chi ancora non c'avesse pensato...).
In questo workshop impareremo una serie di esercizi "fondamentali" al fine di stimolare la nostra muscolatura Object-Oriented.

Make me agile but not yet en it

My job is about helping companies find better ways to achieve their goals by introducing elements of agility into people, teams and organizations.

People who contact a professional in this field often do not have first-hand experience. He/she may have read about it, or heard someone speak highly of it.
She sees companies succeeding because of this "new" approach, and consequently reaches out to those she believes can help her achieve the same results.
Often, however, people underestimate the scope of the intervention, believing that simply "installing" a framework will smooth out all the issues.

Unfortunately, things do not work that way....
One must go through numerous stages of awareness, reach degrees of maturity, through a generally challenging process.
Indeed, it is not uncommon to have to proceed through preparatory work, which has little to do with agility, so that teams and individuals can take in its first rudiments.
A misstep at this delicate stage can jeopardize the success of the entire initiative.

In this talk, I will share some insights on how to embark on this journey, one baby step at a time, being careful not to prematurely play the agility card.

Rendimi agile ma non subito en it

Il mio lavoro consiste nell'aiutare le aziende a trovare modi migliori per raggiungere i loro obiettivi, introducendo elementi di agilità in persone, team e organizzazioni.

Chi contatta un professionista di questo settore spesso non ha esperienze di prima mano. Ha magari letto qualcosa, o sentito qualcuno che ne parlava bene.
Vede aziende aver successo grazie a questo "nuovo" approccio, e di conseguenza si rivolge a chi ritiene possa aiutarla a ottenere gli stessi risultati.
Spesso però si sottovaluta la portata dell'intervento, credendo che basti "installare" un framework per appianare tutte le questioni.

Sfortunatamente, le cose non funzionano così...
Bisogna passare per numerosi stadi di consapevolezza, raggiungere gradi di maturità, attraverso un processo generalmente impegnativo.
Anzi, non è raro dover procedere attraverso un lavoro preparatorio, che non c'entra molto con l'agilità, affinché i team e le persone possano accoglierne i primi rudimenti.
Un passo falso in questa delicata fase può compromette il successo dell'intera iniziativa.

In questa conversazione condividerò qualche spunto su come intraprendere questo viaggio, un passettino alla volta, facendo attenzione a non giocarsi prematuramente la carta dell'agilità.

I'm a mediocre developer en it

There's a question that had been with me for a long time: am I a mediocre developer?
The world of software development is populated by a motley fauna, and over time I have learned to recognize the people who cross my footsteps. And it is also thanks (or through their fault) that this state of mind has matured.
I decided to share what I discovered in order to put myself in a mirror, made with other people, in order to verify if someone else has lived the same vicissitudes as me, and maybe to be able to find an answer to this question thanks to them.

I already presented this talk at italian Agile Days 2018, Brescia, and FEVR Meetup, Verona, in Italian.

Sono uno sviluppatore mediocre en it

E' da un po' di tempo che sto cercando di capire se sono uno sviluppatore mediocre o meno.
Il mondo dello sviluppo software è popolato da una fauna variegata, e col tempo ho imparato a riconoscere le persone che incrociano i miei passi. Ed è anche grazie (o per colpa) loro che è maturato questo mio stato d'animo.
Ho deciso di condividere quanto scoperto per confrontarmi con altre persone, per verificare se qualcun'altro ha vissuto le mie stesse vicissitudini, e magari riuscire grazie a loro a trovare una risposta a questa domanda.

Ho già proposto questa sessione agli Italian Agile Days 2018, Brescia, ed al meetup FEVR, Verona.

Object Calisthenics it en

The work of a developer is similar to the work of an athlete.
To continue having great performances, it is necessary to keep in training (or start training, for those who haven't thought about it yet...).
In this workshop, we will learn a series of "fundamental" exercises in order to stimulate our Object-Oriented muscles.

Growing Teams en it

As a developer, over time I studied and applied different techniques to build software that can evolve harmoniously on solid foundations. Now I'm realizing that, by analogy, some practices can be used effectively even to evolve development teams.
In this session I will share reflections and ideas about the growth of teams and people that make it up.

Growing Teams en it

Come sviluppatore, nel tempo ho appreso ed applicato diverse tecniche per costruire software in grado di evolversi armonicamente su solide basi. Ora mi sto rendendo conto che, per analogia, alcune pratiche possono essere utilizzate efficacemente per far evolvere team di sviluppo.
In questa sessione condividerò riflessioni e spunti per far crescere i team e le persone che lo compongono.

Testing the untestable en it

Legacy code is profitable code we are afraid to change.
Few or no tests, strong coupling and low cohesion, scattered ifs everywhere...
Have you ever had to deal with codebases like this before?
You wanted to write tests, but this was almost impossible because of the code itself?
Before thinking about a "Big Rewrite", there are some techniques that come to help, allowing us to evolve our product little by little, improving it without necessarily throwing everything away.
In this workshop, we will use some approaches to Characterization Tests. These techniques allow us to get good coverage in a reasonable time, enabling refactoring and the subsequent modification and extension of functionalities.

Workshop for 4 to 40 people (if more than 12, we will adopt a Fish Bowl style Mob).
We'll work in Mob Programming, with only one computer.
Pairs of driver-navigators will take turns at the keyboard, while attendees can intervene to ask questions or offer suggestions.
The programming language can be agreed, personally I use C# and Java.
Participants do not need to bring a computer.
We need a table and a projector.
A marker board or flip chart is welcome :)

Testare l'intestabile en it

Il codice legacy è tutto quel codice che genera business ma che abbiamo paura di modificare: pochi o nessun test, forte accoppiamento, if come se piovesse...
Vi è mai capitato di avere a che fare con codebase di questo genere? E magari di voler iniziare a scrivere dei test, ma questo è risultato pressoché impossibile a causa del codice stesso?
Prima di pensare al "Big Rewrite", ci sono alcune tecniche che possono venirci in aiuto, permettendoci di far evolvere il nostro prodotto poco alla volta, migliorandolo senza per forza buttarlo via tutto e subito.
In questo workshop useremo alcuni approcci ai test di caratterizzazione, come il Golden Master e i test di approvazione; queste tecniche consentono di ottenere una buona copertura in tempi ragionevoli, abilitando il refactoring e di conseguenza la successiva modifica ed estensione delle funzionalità.

Workshop per max 16 persone.
Si lavora in Mob Programming, con un solo computer.
Coppie di driver-navigator si alterneranno alla tastiera, mentre i restanti mobber potranno intervenire per fare domande o dare suggerimenti.
Il linguaggio di programmazione può essere concordato, personalmente uso C# e Java.
Non serve che i partecipanti portino un computer.
Servono tavoli e prese per la corrente, una lavagna o flipchart ed anche un accesso Wi-Fi.

Agile Venture Milano 2020 Sessionize Event

February 2020 Milan, Italy

eXtreme Programming User Group Bergamo

I'm co-host, organizer and speaker

January 2020 Bergamo, Italy

Italian Agile Days 2019 Sessionize Event

November 2019 Modena, Italy

Agile Venture Firenze 2019 Sessionize Event

September 2019 Florence, Italy

Agile Venture Bolzano Sessionize Event

May 2019 Bolzano, Italy

Agile Venture Prato Sessionize Event

September 2018 Prato, Italy

Ferdinando Santacroce

Uncovering better ways of developing software and organizations

Brescia, Italy

Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.

Jump to top