SlideShare a Scribd company logo
1 of 23
Cuis Smalltalk
Past, Present and What’s next
Hernán A. Wilkinson - @hernanwilkinson
10Pines founder – Professor at UBA
agile software development & services
Juan Vuletich - @juanvuletich
LabWare
Cuis Spirit
Some typical problems of the software world
● A system you don't understand is a system you can't help evolve
● Accidental complexity makes it harder to understand
● Code bloat makes it impossible to understand!
● Just implementing what you need might mean not understanding the rest
We can do better!
● A system can be as easy to understand as a well written book
● Accidental complexity can be kept to a minimum
● Code bloat can be avoided if you care
● Understanding where your work fits in a larger whole allows for consistency
● The system can help you understand
Not just technical but also human
Cuis Community
➔ Students per Semester: around 120
◆ Got +10 contributions this semester, from refactorings to bug fixing
➔ Active List members: A few dozen
➔ Package Authors: Around 20, over 100 packages
➔ The rest of the Smalltalk Community:
◆ People developing VMs for Smalltalk test their work on Cuis
◆ People using other dialects share discussion, fixes and enhancements with Cuis
◆ People using tools/packages developed in Cuis
➔ The “Wise Elders”: Smalltalk creators and pioneers love Cuis!
➔ Total: We estimate around 200 people use Cuis on a regular basis
We want everyone to feel safe,
to feel appreciated and
have a good time with Cuis
Active Projects
New Refactorings
(Thank you Nahuel Garbezza & Fernando Gasperi & students)
TDD Guru
(Thank you Matias Dinota)
Cuis University
Denotative Objects
LiveTyping
CUIS CI
(Thank you Gastón Caruso, Facu Gelatti, Nico Papagna & Ludat)
Other Research Projects
➔Generics for LiveTyping (Ana Felisatti & Mariano De Sousa)
➔Annotate closure types (Ines Sosa)
➔LiveTyping on JIT VM (Federico Grosso)
➔Type Checking improvements (Julian Luini)
➔Cuis OO Protector - COOP (Gaston Testay-Martin Gonzalez)
Vector Graphics Engine
● Both for Text and Graphics
● Unprecedented quality
● 100% Smalltalk
● High Performance OpenCL version will replace BitBlt
● Currently used for TrueType glyph rasterization
TrueType Fonts
● Entirely portable
● Doesn't use FreeType, host OS support or FFI
● 100% Smalltalk
● High quality (higher than FreeType, ClearType or Quartz)
● High performance
● Uses the Vector Graphics Engine
OpenCL
● OpenCL is the open standard alternative to CUDA
● Used for high performance computing on GPU and CPU
● OpenCL code embedded in Smalltalk code
● Immediate feedback, no external compile
● Used for satellite image processing & vector graphics engine
Alternative Graphics Backends
● Cairo (Mariano Montone)
○ https://github.com/Cuis-Smalltalk/Cairo
● OpenGL (Phil Bellalouna)
○ https://github.com/pbella/Cuis-OpenGL
What’s Next?
What’s next
� Image modularization to be able to use GitHub as real source code
repo
�Changes model improvements
�Make LiveTyping part of Cuis by default
�More Refactorings! (Simple and Complex ones)
�New VM with Boris JIT, Pocho’s PowerLand & LiveTyping
❓Compiler improvement based on LiveTyping to generate and
initialize the PIC at compile time!!
❓Image Bootstraping
Conclusion
Conclusion
✌Cuis is a Smalltalk that it is fulfilling its purpose
�It is a nice place to collaborate and learn
�Ample room for improvement and tools re-thinking
�It is an open and friendly community
Thanks!

More Related Content

Similar to Cuis Smalltalk Past, Present and What’s Next

PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...
PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...
PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...Puppet
 
Drupal and Devops , the Survey Results
Drupal and Devops , the Survey ResultsDrupal and Devops , the Survey Results
Drupal and Devops , the Survey ResultsKris Buytaert
 
My Linux Job: 21 Linux Pros Tell Us What They Do
My Linux Job: 21 Linux Pros Tell Us What They DoMy Linux Job: 21 Linux Pros Tell Us What They Do
My Linux Job: 21 Linux Pros Tell Us What They DoLibby Clark
 
Devops Devops Devops, at Froscon
Devops Devops Devops, at FrosconDevops Devops Devops, at Froscon
Devops Devops Devops, at FrosconKris Buytaert
 
Get Started with Flux
Get Started with FluxGet Started with Flux
Get Started with FluxWeaveworks
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOpsJulien Pivotto
 
Demystifying Digital Scholarship Workshop 6 Slides
Demystifying Digital Scholarship Workshop 6 SlidesDemystifying Digital Scholarship Workshop 6 Slides
Demystifying Digital Scholarship Workshop 6 SlidesPaige Morgan
 
Devops, the future is here, it's just not evenly distributed yet.
Devops, the future is here, it's just not evenly distributed yet.Devops, the future is here, it's just not evenly distributed yet.
Devops, the future is here, it's just not evenly distributed yet.Kris Buytaert
 
Continuous Infrastructure First
Continuous Infrastructure FirstContinuous Infrastructure First
Continuous Infrastructure FirstKris Buytaert
 
Building and Deploying MediaSalsa, an Open Source DAM as Saas platform
Building and Deploying MediaSalsa, an Open Source DAM as Saas platformBuilding and Deploying MediaSalsa, an Open Source DAM as Saas platform
Building and Deploying MediaSalsa, an Open Source DAM as Saas platformKris Buytaert
 
Lessons Learned from Xen [LFNW 2013]
Lessons Learned from Xen [LFNW 2013]Lessons Learned from Xen [LFNW 2013]
Lessons Learned from Xen [LFNW 2013]Russell Pavlicek
 
You Don't Need to be a Developer to Contribute
You Don't Need to be a Developer to ContributeYou Don't Need to be a Developer to Contribute
You Don't Need to be a Developer to ContributeNathan Handler
 
building intelligent systems with large scale deep learning
building intelligent systems with large scale deep learningbuilding intelligent systems with large scale deep learning
building intelligent systems with large scale deep learningmustafa sarac
 
Devops at Startup Weekend BXL
Devops at Startup Weekend BXLDevops at Startup Weekend BXL
Devops at Startup Weekend BXLKris Buytaert
 
web-rtc presentation on TNC 2013, Technical Advisory Committee meeting
web-rtc presentation on TNC 2013, Technical Advisory Committee meetingweb-rtc presentation on TNC 2013, Technical Advisory Committee meeting
web-rtc presentation on TNC 2013, Technical Advisory Committee meetingJan Meijer
 
Learning to Translate with Joey NMT
Learning to Translate with Joey NMTLearning to Translate with Joey NMT
Learning to Translate with Joey NMTJulia Kreutzer
 

Similar to Cuis Smalltalk Past, Present and What’s Next (20)

PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...
PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...
PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...
 
Drupal and Devops , the Survey Results
Drupal and Devops , the Survey ResultsDrupal and Devops , the Survey Results
Drupal and Devops , the Survey Results
 
My Linux Job: 21 Linux Pros Tell Us What They Do
My Linux Job: 21 Linux Pros Tell Us What They DoMy Linux Job: 21 Linux Pros Tell Us What They Do
My Linux Job: 21 Linux Pros Tell Us What They Do
 
Devops Devops Devops, at Froscon
Devops Devops Devops, at FrosconDevops Devops Devops, at Froscon
Devops Devops Devops, at Froscon
 
Get Started with Flux
Get Started with FluxGet Started with Flux
Get Started with Flux
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
Devops For Drupal
Devops  For DrupalDevops  For Drupal
Devops For Drupal
 
Demystifying Digital Scholarship Workshop 6 Slides
Demystifying Digital Scholarship Workshop 6 SlidesDemystifying Digital Scholarship Workshop 6 Slides
Demystifying Digital Scholarship Workshop 6 Slides
 
Devops, the future is here, it's just not evenly distributed yet.
Devops, the future is here, it's just not evenly distributed yet.Devops, the future is here, it's just not evenly distributed yet.
Devops, the future is here, it's just not evenly distributed yet.
 
Neodev
NeodevNeodev
Neodev
 
GitOps , done Right
GitOps , done RightGitOps , done Right
GitOps , done Right
 
Continuous Infrastructure First
Continuous Infrastructure FirstContinuous Infrastructure First
Continuous Infrastructure First
 
Building and Deploying MediaSalsa, an Open Source DAM as Saas platform
Building and Deploying MediaSalsa, an Open Source DAM as Saas platformBuilding and Deploying MediaSalsa, an Open Source DAM as Saas platform
Building and Deploying MediaSalsa, an Open Source DAM as Saas platform
 
OLITA Digital Odyssey Presentation on Open Source (with Randy Metcalfe)
OLITA Digital Odyssey Presentation on Open Source (with Randy Metcalfe)OLITA Digital Odyssey Presentation on Open Source (with Randy Metcalfe)
OLITA Digital Odyssey Presentation on Open Source (with Randy Metcalfe)
 
Lessons Learned from Xen [LFNW 2013]
Lessons Learned from Xen [LFNW 2013]Lessons Learned from Xen [LFNW 2013]
Lessons Learned from Xen [LFNW 2013]
 
You Don't Need to be a Developer to Contribute
You Don't Need to be a Developer to ContributeYou Don't Need to be a Developer to Contribute
You Don't Need to be a Developer to Contribute
 
building intelligent systems with large scale deep learning
building intelligent systems with large scale deep learningbuilding intelligent systems with large scale deep learning
building intelligent systems with large scale deep learning
 
Devops at Startup Weekend BXL
Devops at Startup Weekend BXLDevops at Startup Weekend BXL
Devops at Startup Weekend BXL
 
web-rtc presentation on TNC 2013, Technical Advisory Committee meeting
web-rtc presentation on TNC 2013, Technical Advisory Committee meetingweb-rtc presentation on TNC 2013, Technical Advisory Committee meeting
web-rtc presentation on TNC 2013, Technical Advisory Committee meeting
 
Learning to Translate with Joey NMT
Learning to Translate with Joey NMTLearning to Translate with Joey NMT
Learning to Translate with Joey NMT
 

More from Hernan Wilkinson

Hacia una síntesis de diseño a partir de entender qué es modelar con software
Hacia una síntesis de diseño a partir de entender qué es modelar con softwareHacia una síntesis de diseño a partir de entender qué es modelar con software
Hacia una síntesis de diseño a partir de entender qué es modelar con softwareHernan Wilkinson
 
Live Typing - California Smalltalkers
Live Typing - California SmalltalkersLive Typing - California Smalltalkers
Live Typing - California SmalltalkersHernan Wilkinson
 
Buenos Aires vs. (London vs. Chicago) Agiles 2020
Buenos Aires vs. (London vs. Chicago) Agiles 2020Buenos Aires vs. (London vs. Chicago) Agiles 2020
Buenos Aires vs. (London vs. Chicago) Agiles 2020Hernan Wilkinson
 
LiveTyping - Anotación automática de tipos para lenguajes dinámicos
LiveTyping - Anotación automática de tipos para lenguajes dinámicosLiveTyping - Anotación automática de tipos para lenguajes dinámicos
LiveTyping - Anotación automática de tipos para lenguajes dinámicosHernan Wilkinson
 
LiveTyping: Update and What is next
LiveTyping: Update and What is nextLiveTyping: Update and What is next
LiveTyping: Update and What is nextHernan Wilkinson
 
Live Typing - Automatic Type Annotation that improves the Programming eXperie...
Live Typing- Automatic Type Annotation that improves the Programming eXperie...Live Typing- Automatic Type Annotation that improves the Programming eXperie...
Live Typing - Automatic Type Annotation that improves the Programming eXperie...Hernan Wilkinson
 
El Desarrollo de Software como debería Ser - PyConAr 2018
El Desarrollo de Software como debería Ser - PyConAr 2018El Desarrollo de Software como debería Ser - PyConAr 2018
El Desarrollo de Software como debería Ser - PyConAr 2018Hernan Wilkinson
 
Lessons Learned Implementing Refactorings
Lessons Learned Implementing RefactoringsLessons Learned Implementing Refactorings
Lessons Learned Implementing RefactoringsHernan Wilkinson
 
El Desarrollo de Software como debería Ser - Nerdear.la 2018
El Desarrollo de Software como debería Ser - Nerdear.la 2018El Desarrollo de Software como debería Ser - Nerdear.la 2018
El Desarrollo de Software como debería Ser - Nerdear.la 2018Hernan Wilkinson
 
El Desarrollo de Software como debería Ser
El Desarrollo de Software como debería SerEl Desarrollo de Software como debería Ser
El Desarrollo de Software como debería SerHernan Wilkinson
 
Go/Ruby/Java: What's next?
Go/Ruby/Java: What's next?Go/Ruby/Java: What's next?
Go/Ruby/Java: What's next?Hernan Wilkinson
 
Exceptions: Why, When, How and Where!
Exceptions: Why, When, How and Where!Exceptions: Why, When, How and Where!
Exceptions: Why, When, How and Where!Hernan Wilkinson
 
Augmenting Smalltalk Syntax
Augmenting Smalltalk SyntaxAugmenting Smalltalk Syntax
Augmenting Smalltalk SyntaxHernan Wilkinson
 
Growing an open participative horizontal and based on trust company
Growing an open participative horizontal and based on trust companyGrowing an open participative horizontal and based on trust company
Growing an open participative horizontal and based on trust companyHernan Wilkinson
 
Como escribir buenos tests al hacer TDD
Como escribir buenos tests al hacer TDDComo escribir buenos tests al hacer TDD
Como escribir buenos tests al hacer TDDHernan Wilkinson
 
Desarrollando sistemas con metodologías y técnicas agiles
Desarrollando sistemas con metodologías y técnicas agilesDesarrollando sistemas con metodologías y técnicas agiles
Desarrollando sistemas con metodologías y técnicas agilesHernan Wilkinson
 

More from Hernan Wilkinson (20)

Hacia una síntesis de diseño a partir de entender qué es modelar con software
Hacia una síntesis de diseño a partir de entender qué es modelar con softwareHacia una síntesis de diseño a partir de entender qué es modelar con software
Hacia una síntesis de diseño a partir de entender qué es modelar con software
 
Live Typing - California Smalltalkers
Live Typing - California SmalltalkersLive Typing - California Smalltalkers
Live Typing - California Smalltalkers
 
Buenos Aires vs. (London vs. Chicago) Agiles 2020
Buenos Aires vs. (London vs. Chicago) Agiles 2020Buenos Aires vs. (London vs. Chicago) Agiles 2020
Buenos Aires vs. (London vs. Chicago) Agiles 2020
 
LiveTyping - Anotación automática de tipos para lenguajes dinámicos
LiveTyping - Anotación automática de tipos para lenguajes dinámicosLiveTyping - Anotación automática de tipos para lenguajes dinámicos
LiveTyping - Anotación automática de tipos para lenguajes dinámicos
 
LiveTyping: Update and What is next
LiveTyping: Update and What is nextLiveTyping: Update and What is next
LiveTyping: Update and What is next
 
Live Typing - Automatic Type Annotation that improves the Programming eXperie...
Live Typing- Automatic Type Annotation that improves the Programming eXperie...Live Typing- Automatic Type Annotation that improves the Programming eXperie...
Live Typing - Automatic Type Annotation that improves the Programming eXperie...
 
El Desarrollo de Software como debería Ser - PyConAr 2018
El Desarrollo de Software como debería Ser - PyConAr 2018El Desarrollo de Software como debería Ser - PyConAr 2018
El Desarrollo de Software como debería Ser - PyConAr 2018
 
Lessons Learned Implementing Refactorings
Lessons Learned Implementing RefactoringsLessons Learned Implementing Refactorings
Lessons Learned Implementing Refactorings
 
Dynamic Type Information
Dynamic Type InformationDynamic Type Information
Dynamic Type Information
 
El Desarrollo de Software como debería Ser - Nerdear.la 2018
El Desarrollo de Software como debería Ser - Nerdear.la 2018El Desarrollo de Software como debería Ser - Nerdear.la 2018
El Desarrollo de Software como debería Ser - Nerdear.la 2018
 
El Desarrollo de Software como debería Ser
El Desarrollo de Software como debería SerEl Desarrollo de Software como debería Ser
El Desarrollo de Software como debería Ser
 
TDD & Refactoring
TDD & RefactoringTDD & Refactoring
TDD & Refactoring
 
Go/Ruby/Java: What's next?
Go/Ruby/Java: What's next?Go/Ruby/Java: What's next?
Go/Ruby/Java: What's next?
 
Exceptions: Why, When, How and Where!
Exceptions: Why, When, How and Where!Exceptions: Why, When, How and Where!
Exceptions: Why, When, How and Where!
 
CuisUniversity
CuisUniversityCuisUniversity
CuisUniversity
 
Oop is not Dead
Oop is not DeadOop is not Dead
Oop is not Dead
 
Augmenting Smalltalk Syntax
Augmenting Smalltalk SyntaxAugmenting Smalltalk Syntax
Augmenting Smalltalk Syntax
 
Growing an open participative horizontal and based on trust company
Growing an open participative horizontal and based on trust companyGrowing an open participative horizontal and based on trust company
Growing an open participative horizontal and based on trust company
 
Como escribir buenos tests al hacer TDD
Como escribir buenos tests al hacer TDDComo escribir buenos tests al hacer TDD
Como escribir buenos tests al hacer TDD
 
Desarrollando sistemas con metodologías y técnicas agiles
Desarrollando sistemas con metodologías y técnicas agilesDesarrollando sistemas con metodologías y técnicas agiles
Desarrollando sistemas con metodologías y técnicas agiles
 

Recently uploaded

What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....kzayra69
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 

Recently uploaded (20)

What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 

Cuis Smalltalk Past, Present and What’s Next

  • 1. Cuis Smalltalk Past, Present and What’s next Hernán A. Wilkinson - @hernanwilkinson 10Pines founder – Professor at UBA agile software development & services Juan Vuletich - @juanvuletich LabWare
  • 2. Cuis Spirit Some typical problems of the software world ● A system you don't understand is a system you can't help evolve ● Accidental complexity makes it harder to understand ● Code bloat makes it impossible to understand! ● Just implementing what you need might mean not understanding the rest We can do better! ● A system can be as easy to understand as a well written book ● Accidental complexity can be kept to a minimum ● Code bloat can be avoided if you care ● Understanding where your work fits in a larger whole allows for consistency ● The system can help you understand
  • 3. Not just technical but also human
  • 4. Cuis Community ➔ Students per Semester: around 120 ◆ Got +10 contributions this semester, from refactorings to bug fixing ➔ Active List members: A few dozen ➔ Package Authors: Around 20, over 100 packages ➔ The rest of the Smalltalk Community: ◆ People developing VMs for Smalltalk test their work on Cuis ◆ People using other dialects share discussion, fixes and enhancements with Cuis ◆ People using tools/packages developed in Cuis ➔ The “Wise Elders”: Smalltalk creators and pioneers love Cuis! ➔ Total: We estimate around 200 people use Cuis on a regular basis
  • 5. We want everyone to feel safe, to feel appreciated and have a good time with Cuis
  • 7. New Refactorings (Thank you Nahuel Garbezza & Fernando Gasperi & students)
  • 8. TDD Guru (Thank you Matias Dinota)
  • 12. CUIS CI (Thank you Gastón Caruso, Facu Gelatti, Nico Papagna & Ludat)
  • 13. Other Research Projects ➔Generics for LiveTyping (Ana Felisatti & Mariano De Sousa) ➔Annotate closure types (Ines Sosa) ➔LiveTyping on JIT VM (Federico Grosso) ➔Type Checking improvements (Julian Luini) ➔Cuis OO Protector - COOP (Gaston Testay-Martin Gonzalez)
  • 14. Vector Graphics Engine ● Both for Text and Graphics ● Unprecedented quality ● 100% Smalltalk ● High Performance OpenCL version will replace BitBlt ● Currently used for TrueType glyph rasterization
  • 15. TrueType Fonts ● Entirely portable ● Doesn't use FreeType, host OS support or FFI ● 100% Smalltalk ● High quality (higher than FreeType, ClearType or Quartz) ● High performance ● Uses the Vector Graphics Engine
  • 16. OpenCL ● OpenCL is the open standard alternative to CUDA ● Used for high performance computing on GPU and CPU ● OpenCL code embedded in Smalltalk code ● Immediate feedback, no external compile ● Used for satellite image processing & vector graphics engine
  • 17. Alternative Graphics Backends ● Cairo (Mariano Montone) ○ https://github.com/Cuis-Smalltalk/Cairo ● OpenGL (Phil Bellalouna) ○ https://github.com/pbella/Cuis-OpenGL
  • 19. What’s next � Image modularization to be able to use GitHub as real source code repo �Changes model improvements �Make LiveTyping part of Cuis by default �More Refactorings! (Simple and Complex ones) �New VM with Boris JIT, Pocho’s PowerLand & LiveTyping ❓Compiler improvement based on LiveTyping to generate and initialize the PIC at compile time!! ❓Image Bootstraping
  • 21. Conclusion ✌Cuis is a Smalltalk that it is fulfilling its purpose �It is a nice place to collaborate and learn �Ample room for improvement and tools re-thinking �It is an open and friendly community
  • 22.