SlideShare uma empresa Scribd logo
Franco Lombardo – Agile software developer @Gruppo Sme.UP
franco.lombardo@smeup.com
Twitter: @f_lombardo
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
Unit testing su AS400?
Con Kotlin si può fare!
AS400 ~= RPG
Programmi AS400
~=
Programmi RPG
(Report Program Generator)
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
RPG – Cos’è l’RPG?
"RPG is an IBM proprietary
programming language
and its later versions are
available only on IBM i
or OS/400-based systems"
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
Wikipedia
RPG – Cos’è l’RPG?
"RPG is an IBM proprietary
programming language
and its later versions are
available only on IBM i
or OS/400-based systems"
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
Wikipedia
RPG – Available only on IBM i
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
Come faccio ad impararlo?
RPG – Available only on IBM i
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
Come posso creare dei prototipi?
RPG – Available only on IBM i
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
Infrastructure as code?
Come posso creare e distribuire
macchine preconfigurate? (DevOps)
RPG – Available only on IBM i
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
Scalabilità orizzontale?
RPG – IBM proprietary
Come può crescere il linguaggio
indipendentemente da IBM?
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
RPG – IBM proprietary
Come aggiungo
nuove tecnologie al linguaggio?
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
Interprete RPG – Verso un RPG migliore
La nostra ipotesi di lavoro:
creare un interprete RPG
- Open Source
- Portabile: funzionante sia su IBM i,
sia su altre piattaforme (Kotlin + ANTLR)
- Estendibile
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
Interprete RPG – Da RPG a DSL
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
Interprete RPG – Estensioni – Test unitari
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
Interprete RPG – Ecosistema moderno
• Test unitari
• Editor
• Debugger
• Version Control System
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
Effetti collaterali:
Interprete RPG – Esempio flusso di lavoro
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
Interprete RPG – Visual Studio Code
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
https://github.com/smeup/smeup-rpg/blob/master/docs/visual_studio_code.md
Interprete RPG – Visual Studio Code
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
Interprete RPG – Smeup RPG
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
Abbiamo una grande squadra (grazie anche a Strumenta.com)
ma vogliamo anche te!
https://github.com/smeup/smeup-rpg
Franco Lombardo – Agile software developer @Gruppo Sme.UP
franco.lombardo@smeup.com
Twitter: @f_lombardo
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
Stiamo assumendo!!!
https://www.smeup.com/lavora-con-noi/
Interprete RPG – FizzBuzz: le regole del gioco
• Ricevo in ingresso un numero
• Se è divisibile per 3 restituisco ‘FIZZ’
• Se è divisibile per 5 restituisco ‘BUZZ’
• Se è divisibile per 3 e per 5 restituisco
‘FIZZBUZZ’
• Altrimenti restituisco il numero in
ingresso
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
Erbusco (BS) Sede Legale
Via Iseo, 43 – 25030
+39 030 7724111
Sedi del Gruppo Sme.UP
Paderno Dugnano (MI)
Via Varese 6/A – 20037
+39 02 910871
Rivoli (TO)
Via Pavia, 11/B – 10098
+39 011 906211
Savigliano (CN)
Corso Roma 54 – 12038
+39 0172 31412
Lecco (LC)
Via della Pergola, 73 – 23900
+39 0341 496864
Parma (PR)
Strada dei Mercati, 16/E – 43126
+39 0521 940611
Roma (RM)
Via Prenestina, 390 – 00171
+39 06 5940517
Vigonza (PD)
Via Trevisan 1, – 35010
+39 049 8936173
Modena (MO)
Via Canaletto, 164 – 41122
+39 059 451721
Reggio Emilia (RE)
Via A.Gramsci, 88/A -42124
+39 0522 516121
Brescia (BS)
Via Padova, 11 – 25125
+39 030 2585325
Villaverla (VI)
Piazza delle Fornaci, 4 – 36030
+39 0444 1835222
Vercelli (VC)
Corso Giuseppe Garibaldi, 51 – 13100
+39 0161 56924
Udine (UD)
Via Mantova 108/E, – 33100
+39 0432 540364
info@smeup.com
+39 030 7724111
SME UP S.p.A.
Via Iseo, 43 - 25030 Erbusco (BS)
www.smeup.com

Mais conteúdo relacionado

Mais de Franco Lombardo

Agile Happiness - Agile O'Day 2018
Agile Happiness - Agile O'Day 2018Agile Happiness - Agile O'Day 2018
Agile Happiness - Agile O'Day 2018
Franco Lombardo
 
Agile Happiness 2
Agile Happiness 2Agile Happiness 2
Agile Happiness 2
Franco Lombardo
 
Agile Happiness
Agile HappinessAgile Happiness
Agile Happiness
Franco Lombardo
 
Java per as400
Java per as400Java per as400
Java per as400
Franco Lombardo
 
Rock scissors-paper-kata
Rock scissors-paper-kataRock scissors-paper-kata
Rock scissors-paper-kataFranco Lombardo
 
A First Date With Scala
A First Date With ScalaA First Date With Scala
A First Date With Scala
Franco Lombardo
 
Primo Incontro Con Scala
Primo Incontro Con ScalaPrimo Incontro Con Scala
Primo Incontro Con Scala
Franco Lombardo
 

Mais de Franco Lombardo (7)

Agile Happiness - Agile O'Day 2018
Agile Happiness - Agile O'Day 2018Agile Happiness - Agile O'Day 2018
Agile Happiness - Agile O'Day 2018
 
Agile Happiness 2
Agile Happiness 2Agile Happiness 2
Agile Happiness 2
 
Agile Happiness
Agile HappinessAgile Happiness
Agile Happiness
 
Java per as400
Java per as400Java per as400
Java per as400
 
Rock scissors-paper-kata
Rock scissors-paper-kataRock scissors-paper-kata
Rock scissors-paper-kata
 
A First Date With Scala
A First Date With ScalaA First Date With Scala
A First Date With Scala
 
Primo Incontro Con Scala
Primo Incontro Con ScalaPrimo Incontro Con Scala
Primo Incontro Con Scala
 

TDD su AS400? Con Kotlin si può fare! - Italian Agile Days 2019

  • 1. Franco Lombardo – Agile software developer @Gruppo Sme.UP franco.lombardo@smeup.com Twitter: @f_lombardo 8-9 Novembre 2019ITALIAN AGILE DAYS 2019 Unit testing su AS400? Con Kotlin si può fare!
  • 2. AS400 ~= RPG Programmi AS400 ~= Programmi RPG (Report Program Generator) 8-9 Novembre 2019ITALIAN AGILE DAYS 2019
  • 3. RPG – Cos’è l’RPG? "RPG is an IBM proprietary programming language and its later versions are available only on IBM i or OS/400-based systems" 8-9 Novembre 2019ITALIAN AGILE DAYS 2019 Wikipedia
  • 4. RPG – Cos’è l’RPG? "RPG is an IBM proprietary programming language and its later versions are available only on IBM i or OS/400-based systems" 8-9 Novembre 2019ITALIAN AGILE DAYS 2019 Wikipedia
  • 5. RPG – Available only on IBM i 8-9 Novembre 2019ITALIAN AGILE DAYS 2019 Come faccio ad impararlo?
  • 6. RPG – Available only on IBM i 8-9 Novembre 2019ITALIAN AGILE DAYS 2019 Come posso creare dei prototipi?
  • 7. RPG – Available only on IBM i 8-9 Novembre 2019ITALIAN AGILE DAYS 2019 Infrastructure as code? Come posso creare e distribuire macchine preconfigurate? (DevOps)
  • 8. RPG – Available only on IBM i 8-9 Novembre 2019ITALIAN AGILE DAYS 2019 Scalabilità orizzontale?
  • 9. RPG – IBM proprietary Come può crescere il linguaggio indipendentemente da IBM? 8-9 Novembre 2019ITALIAN AGILE DAYS 2019
  • 10. RPG – IBM proprietary Come aggiungo nuove tecnologie al linguaggio? 8-9 Novembre 2019ITALIAN AGILE DAYS 2019
  • 11. Interprete RPG – Verso un RPG migliore La nostra ipotesi di lavoro: creare un interprete RPG - Open Source - Portabile: funzionante sia su IBM i, sia su altre piattaforme (Kotlin + ANTLR) - Estendibile 8-9 Novembre 2019ITALIAN AGILE DAYS 2019
  • 12. Interprete RPG – Da RPG a DSL 8-9 Novembre 2019ITALIAN AGILE DAYS 2019
  • 13. Interprete RPG – Estensioni – Test unitari 8-9 Novembre 2019ITALIAN AGILE DAYS 2019
  • 14. Interprete RPG – Ecosistema moderno • Test unitari • Editor • Debugger • Version Control System 8-9 Novembre 2019ITALIAN AGILE DAYS 2019 Effetti collaterali:
  • 15. Interprete RPG – Esempio flusso di lavoro 8-9 Novembre 2019ITALIAN AGILE DAYS 2019
  • 16. Interprete RPG – Visual Studio Code 8-9 Novembre 2019ITALIAN AGILE DAYS 2019 https://github.com/smeup/smeup-rpg/blob/master/docs/visual_studio_code.md
  • 17. Interprete RPG – Visual Studio Code 8-9 Novembre 2019ITALIAN AGILE DAYS 2019
  • 18. Interprete RPG – Smeup RPG 8-9 Novembre 2019ITALIAN AGILE DAYS 2019 Abbiamo una grande squadra (grazie anche a Strumenta.com) ma vogliamo anche te! https://github.com/smeup/smeup-rpg
  • 19. Franco Lombardo – Agile software developer @Gruppo Sme.UP franco.lombardo@smeup.com Twitter: @f_lombardo 8-9 Novembre 2019ITALIAN AGILE DAYS 2019 Stiamo assumendo!!! https://www.smeup.com/lavora-con-noi/
  • 20. Interprete RPG – FizzBuzz: le regole del gioco • Ricevo in ingresso un numero • Se è divisibile per 3 restituisco ‘FIZZ’ • Se è divisibile per 5 restituisco ‘BUZZ’ • Se è divisibile per 3 e per 5 restituisco ‘FIZZBUZZ’ • Altrimenti restituisco il numero in ingresso 8-9 Novembre 2019ITALIAN AGILE DAYS 2019
  • 21.
  • 22. Erbusco (BS) Sede Legale Via Iseo, 43 – 25030 +39 030 7724111 Sedi del Gruppo Sme.UP Paderno Dugnano (MI) Via Varese 6/A – 20037 +39 02 910871 Rivoli (TO) Via Pavia, 11/B – 10098 +39 011 906211 Savigliano (CN) Corso Roma 54 – 12038 +39 0172 31412 Lecco (LC) Via della Pergola, 73 – 23900 +39 0341 496864 Parma (PR) Strada dei Mercati, 16/E – 43126 +39 0521 940611 Roma (RM) Via Prenestina, 390 – 00171 +39 06 5940517 Vigonza (PD) Via Trevisan 1, – 35010 +39 049 8936173 Modena (MO) Via Canaletto, 164 – 41122 +39 059 451721 Reggio Emilia (RE) Via A.Gramsci, 88/A -42124 +39 0522 516121 Brescia (BS) Via Padova, 11 – 25125 +39 030 2585325 Villaverla (VI) Piazza delle Fornaci, 4 – 36030 +39 0444 1835222 Vercelli (VC) Corso Giuseppe Garibaldi, 51 – 13100 +39 0161 56924 Udine (UD) Via Mantova 108/E, – 33100 +39 0432 540364 info@smeup.com +39 030 7724111 SME UP S.p.A. Via Iseo, 43 - 25030 Erbusco (BS) www.smeup.com

Notas do Editor

  1. Tecnologia e innovazione
  2. Alison Butterill,
  3. Guarda caso le tecnologie che girano sul mio portatile sono quelle che consentono il «DevOps». «Sulla mia macchina funzionava»
  4. Tecnologia e innovazione