Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Unit testing on AS400? Yes we can! (With Kotlin)
1. Franco Lombardo – Agile software developer @Sme.UP
franco.lombardo@smeup.com
Twitter: @f_lombardo
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
Unit testing on AS400?
Yes we can! (With Kotlin)
2. AS400 ~= RPG
AS400 programs
~=
RPG programs
(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
How can you learn it?
6. RPG – Available only on IBM i
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
How can you create prototypes?
7. RPG – Available only on IBM i
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
Infrastructure as code?
How to create and distribuire
pre-configured machines? (DevOps)
8. RPG – Available only on IBM i
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
Horizontal scalability?
9. RPG – IBM proprietary
Could the language grow
independently from IBM?
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
10. RPG – IBM proprietary
How to add new technologies
quickly?
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
11. RPG interpreter – Toward a better RPG
Our idea:
create an RPG interpreter
- Open Source
- Portable: working both on IBM i,
and on other platforms (Kotlin + ANTLR)
- Extendable
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
extendable
12. RPG interpreter – From RPG to a DSL
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
13. RPG interpreter – Unit tests in RPG
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
14. RPG interpreter – A modern ecosystem
• Unit Tests
• Editor
• Debugger
• Version Control System
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
Side effects of our project:
15. RPG interpreter – A sample workflow
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
16. RPG interpreter – 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 – JaRIKo
8-9 Novembre 2019ITALIAN AGILE DAYS 2019
A great team (thanks to Strumenta.com), but..
We want you!
https://github.com/smeup/jariko
19. Erbusco (BS) Headqarters
Via Iseo, 43 – 25030
+39 030 7724111
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) - Italy
www.smeup.com
Notes de l'éditeur
Tecnologia e innovazione
Alison Butterill,
Guarda caso le tecnologie che girano sul mio portatile sono quelle che consentono il «DevOps». «Sulla mia macchina funzionava»