SlideShare ist ein Scribd-Unternehmen logo
1 von 56
Programming Freedom
Markiyan Rizun e-mail: mrizun@gmail.com pharo web-site: http://http://pharo.org/
Background
• Lviv Physics and Mathematics
Lyceum
• Ivan Franko National University of
Lviv (currently on 4th year)
• Internships in Lille, France
Background
Lille, France
Background
Lille, France
Background
Lille, France
Who are programmers?
Programmers …
Programmers create useful software
Programmers make cool games 
Programmers support medicine
Programmers develop technologies
Programmers help to manage finances
Programmers create future by solving problems
We make life better for everyone!
We make life better for everyone!
We make life better for everyone!
Programmers solve Everyone’s problems
But not the problems of Programmers
Code reading problem
Code reading problem
Code reading problem
Tools
Code reading problem
Tools
Code reading problem
Tools
Code rewriting problem
• Legacy code
• Your own bad code
• Wish to change API
• External library API has changed
• Etc.
Code rewriting problem
Code rewriting problem
• x1
• a
• myVar
• result
• length
• readStream
To rewrite code programmers use … ?
To rewrite code programmers use Their Hands
To rewrite code programmers use Find&Replace
To rewrite code programmers use Refactoring
Code rewriting problem
result := a >= b
ifTrue: [ a ]
ifFalse: [ b ]
Code rewriting problem
result := a max: b
Code rewriting problem
result := a >= b
ifTrue: [ a ]
ifFalse: [ b ]
result := a max: b
To rewrite code programmers use ...?
To rewrite code programmers use Tools!
Rewrite rules
Code Tool
New
code
Rewrite Tool
Innovative
IDE & Language
Friendly & Smart
Community
Innovative
IDE & Language
Community
Rewrite Tool
Friendly & Smart
Community
Innovative
IDE & Language
Friendly & Smart
Community
Innovative
IDE & Language
Open-source:
it’s yours!
Ecosystem
Programming
Markiyan Rizun e-mail: mrizun@gmail.com pharo web-site: http://http://pharo.org/

Weitere ähnliche Inhalte

Ähnlich wie Programming Freedom CS@UCU Lviv

Schoo Innovation Project - Robotics and Coding
Schoo Innovation Project - Robotics and CodingSchoo Innovation Project - Robotics and Coding
Schoo Innovation Project - Robotics and Coding
Hillary Rogers
 
Cool Things You Can Do with Python.pdf
Cool Things You Can Do with Python.pdfCool Things You Can Do with Python.pdf
Cool Things You Can Do with Python.pdf
Appdeveloper10
 
Computer Programming Languages in Psychological Perspective
Computer Programming Languages in Psychological PerspectiveComputer Programming Languages in Psychological Perspective
Computer Programming Languages in Psychological Perspective
ZunairaRasheed4
 

Ähnlich wie Programming Freedom CS@UCU Lviv (20)

Schoo Innovation Project - Robotics and Coding
Schoo Innovation Project - Robotics and CodingSchoo Innovation Project - Robotics and Coding
Schoo Innovation Project - Robotics and Coding
 
Why Use Elixir For Web Development.pdf
Why Use Elixir For Web Development.pdfWhy Use Elixir For Web Development.pdf
Why Use Elixir For Web Development.pdf
 
Python programming assignment help
Python programming assignment helpPython programming assignment help
Python programming assignment help
 
Cool Things You Can Do with Python.pdf
Cool Things You Can Do with Python.pdfCool Things You Can Do with Python.pdf
Cool Things You Can Do with Python.pdf
 
Computer Programming Languages in Psychological Perspective
Computer Programming Languages in Psychological PerspectiveComputer Programming Languages in Psychological Perspective
Computer Programming Languages in Psychological Perspective
 
Plc part 1
Plc part 1Plc part 1
Plc part 1
 
2R-3KS03-OOP_UNIT-I (Part-A)_2023-24.pptx
2R-3KS03-OOP_UNIT-I (Part-A)_2023-24.pptx2R-3KS03-OOP_UNIT-I (Part-A)_2023-24.pptx
2R-3KS03-OOP_UNIT-I (Part-A)_2023-24.pptx
 
Computer programminglanguages
Computer programminglanguagesComputer programminglanguages
Computer programminglanguages
 
How to choose a programming language 2.20.18 sd
How to choose a programming language   2.20.18 sdHow to choose a programming language   2.20.18 sd
How to choose a programming language 2.20.18 sd
 
Open source softwares
Open source softwaresOpen source softwares
Open source softwares
 
Open source softwares
Open source softwaresOpen source softwares
Open source softwares
 
Proglangauage1.10.18
Proglangauage1.10.18Proglangauage1.10.18
Proglangauage1.10.18
 
Web APIs: The future of software
Web APIs: The future of softwareWeb APIs: The future of software
Web APIs: The future of software
 
What is Coding
What is CodingWhat is Coding
What is Coding
 
What is a programming language.pdf
What is a programming language.pdfWhat is a programming language.pdf
What is a programming language.pdf
 
whatiscodingslideshare-180406204414.pptx
whatiscodingslideshare-180406204414.pptxwhatiscodingslideshare-180406204414.pptx
whatiscodingslideshare-180406204414.pptx
 
PHP vs Python Which is Best for Web Development.pdf
PHP vs Python Which is Best for Web Development.pdfPHP vs Python Which is Best for Web Development.pdf
PHP vs Python Which is Best for Web Development.pdf
 
Summarization Techniques for Code, Change, Testing and User Feedback
Summarization Techniques for Code, Change, Testing and User FeedbackSummarization Techniques for Code, Change, Testing and User Feedback
Summarization Techniques for Code, Change, Testing and User Feedback
 
Computer languages
Computer languagesComputer languages
Computer languages
 
Typescript Vs JavaScript.pdf
Typescript Vs JavaScript.pdfTypescript Vs JavaScript.pdf
Typescript Vs JavaScript.pdf
 

Kürzlich hochgeladen

CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
anilsa9823
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
anilsa9823
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 

Kürzlich hochgeladen (20)

Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 

Programming Freedom CS@UCU Lviv

Hinweis der Redaktion

  1. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  2. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  3. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  4. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  5. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  6. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  7. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  8. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  9. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  10. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  11. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  12. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  13. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  14. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  15. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  16. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  17. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  18. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  19. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  20. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  21. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  22. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  23. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  24. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  25. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  26. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  27. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  28. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  29. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  30. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  31. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  32. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  33. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  34. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.
  35. Usually we transform code because we want to: 1 Improve readability and quality of code 2 Make the integration of new features to the code easier 3 To change the API The transformation is a change of structure of code. We call it LHS and RHS part of transformation rule.