SlideShare a Scribd company logo
Programming in Java
5-day workshop
Workshop
Introduction
Matt Collison
JP Morgan Chase 2021
PiJ0.1: Workshop Introduction
Session overview
Welcome
• Round table introductions
Module Overview
• What is the course aim?
• What will we cover?
• How do I engage with learning on this course?
Pre-workshop survey and Q&As
Introduction
Dr Matt Collison
Lecturer in Computer Science
m.collison@exeter.ac.uk
Research interests
• Computer Science
pedagogy
• Data systems
• Bioinformatics
• Microbiome research
Teaching
• ECM1400 Programming
• ECM2434 Software
Engineering Group
Project
• BSc Computer Science
Programme director
Aim…
…to introduce Java as a new programming
language and provide a foundation in the
object-oriented programming paradigm
What does that look like?
• Be familiar with the fundamental concepts and tools for
programming and Java
• Be capable of problem solving with code, specifically Java
• Be able to decompose a problem
• Learn to be self sufficient
• Know how to ask the right questions – almost all questions
have been asked before usually in a different way
What will you learn in this
workshop?
Fundamentals
The basic constructs that make
up the building blocks of python
A set of techniques that can be employed
to overcome common challenges.
Design Patterns
Data Structures
The way we can access and
store structured information.
Control Flow
How to order the execution of
your code and algorithms.
Each dimension requires a different
type of knowledge and skills.
Individuals can excel at any one
A competency
framework for programming
Foundations
• What is Java and the JVM
• Variables and programs
• Primitive types and literals
• Classes and objects
• Methods
• Constructors
• Inheritance and privacy
Control Flow
• if statements
• switch case
• for loops
• while loops
• Conditional logic
• Operators
Data Structures
• Arrays
• Collections
• Lists
• HashMaps
• Slicing and dicing data
• Mutability
Design Patterns
• Exceptions
• Testing
• Build tools
• Dependencies
• The Java Software Lifecycle
Fundamentals
Control Flow
Data Structures
Design
patterns
Programming curriculum
What can you expect?
Teaching methods and materials
Competency-based learning
• Lessons – introduce the concepts
• The known knowns – Here is X
• Practical – provide practical examples
• The known knowns and known unknowns – Experimenting with X
• Cohort Q&A sessions – clarification
• The known unknowns – I don’t understand X
• Group project – exploratory problem-based learning
• The unknown unknowns
Synopsis – what’s it all about
From here…
To here…
Finish up here
Learning resources
The workshop homepage
https://mcollison.github.io/JPMC-java-intro-2021/
The course materials
https://mcollison.github.io/java-programming-foundations/
• Session worksheets – updated each week
Additional resources
• Think Java: How to think like a computer scientist
• Allen B Downey (O’Reilly Press)
• Available under Creative Commons license
• https://greenteapress.com/wp/think-java-2e/
• Oracle central Java Documentation –
https://docs.oracle.com/javase/8/docs/api/
• Other sources:
• W3Schools Java - https://www.w3schools.com/java/
• stack overflow - https://stackoverflow.com/
• Coding bat - https://codingbat.com/java
Continuous improvement and issue tracking
Pre-workshop survey - 2245 1226
https://www.menti.com/pdybdux6h2
Mentimeter results
• https://www.mentimeter.com/s/f59b0e6b0d25060a47391c2e3f2b9b
5a/2c64d4f64213

More Related Content

Similar to Pi j1.0 workshop-introduction

Applied Machine Learning Course - Jodie Zhu (WeCloudData)
Applied Machine Learning Course - Jodie Zhu (WeCloudData)Applied Machine Learning Course - Jodie Zhu (WeCloudData)
Applied Machine Learning Course - Jodie Zhu (WeCloudData)
WeCloudData
 
12_oop templa.pptx
12_oop templa.pptx12_oop templa.pptx
12_oop templa.pptx
RokaKaram
 
Upscale_Academy_Syllabus
Upscale_Academy_SyllabusUpscale_Academy_Syllabus
Upscale_Academy_Syllabus
Ivanna Kozychko
 
2CPP01 - Intro to Module
2CPP01 - Intro to Module2CPP01 - Intro to Module
2CPP01 - Intro to Module
Michael Heron
 
lecture1.pdf
lecture1.pdflecture1.pdf
lecture1.pdf
Tamer Nadeem
 
The Big Picture
The Big PictureThe Big Picture
The Big Picture
Munazza-Mah-Jabeen
 
Why and How to Get a PhD? (In software engineering)
Why and How to Get a PhD? (In software engineering)Why and How to Get a PhD? (In software engineering)
Why and How to Get a PhD? (In software engineering)
Lionel Briand
 
TDD Anti-patterns (2022 edition)
TDD Anti-patterns (2022 edition)TDD Anti-patterns (2022 edition)
TDD Anti-patterns (2022 edition)
Ahmed Misbah
 
Enriching Solr with Deep Learning for a Question Answering System - Sanket Sh...
Enriching Solr with Deep Learning for a Question Answering System - Sanket Sh...Enriching Solr with Deep Learning for a Question Answering System - Sanket Sh...
Enriching Solr with Deep Learning for a Question Answering System - Sanket Sh...
Lucidworks
 
DOD Presentation V2
DOD Presentation V2DOD Presentation V2
DOD Presentation V2
Cookie Lanfear
 
Eeri 314 pec 2013
Eeri 314 pec 2013Eeri 314 pec 2013
Eeri 314 pec 2013
Drifter92
 
Certified Professional Diploma in Data Science.pdf
Certified Professional Diploma in Data Science.pdfCertified Professional Diploma in Data Science.pdf
Certified Professional Diploma in Data Science.pdf
romanpaul8888
 
Introduction to Object Oriented Programming
Introduction to Object Oriented ProgrammingIntroduction to Object Oriented Programming
Introduction to Object Oriented Programming
umairmushtaq48
 
2CPP19 - Summation
2CPP19 - Summation2CPP19 - Summation
2CPP19 - Summation
Michael Heron
 
Core java training in Marathahalli, Bangalore
Core java training in Marathahalli, BangaloreCore java training in Marathahalli, Bangalore
Core java training in Marathahalli, Bangalore
SDLCT
 
Core java training in Marathahalli, Bangalore
Core java training in Marathahalli, BangaloreCore java training in Marathahalli, Bangalore
Core java training in Marathahalli, Bangalore
SDLCT
 
Workplace Simulated Courses - Course Technology Computing Conference
Workplace Simulated Courses - Course Technology Computing ConferenceWorkplace Simulated Courses - Course Technology Computing Conference
Workplace Simulated Courses - Course Technology Computing Conference
Cengage Learning
 
Keeping ontology development Agile
Keeping ontology development AgileKeeping ontology development Agile
Keeping ontology development Agile
robertstevens65
 
CEN6016-Chapter1.ppt
CEN6016-Chapter1.pptCEN6016-Chapter1.ppt
CEN6016-Chapter1.ppt
SumitVishwambhar
 
CEN6016-Chapter1.ppt
CEN6016-Chapter1.pptCEN6016-Chapter1.ppt
CEN6016-Chapter1.ppt
NelsonYanes6
 

Similar to Pi j1.0 workshop-introduction (20)

Applied Machine Learning Course - Jodie Zhu (WeCloudData)
Applied Machine Learning Course - Jodie Zhu (WeCloudData)Applied Machine Learning Course - Jodie Zhu (WeCloudData)
Applied Machine Learning Course - Jodie Zhu (WeCloudData)
 
12_oop templa.pptx
12_oop templa.pptx12_oop templa.pptx
12_oop templa.pptx
 
Upscale_Academy_Syllabus
Upscale_Academy_SyllabusUpscale_Academy_Syllabus
Upscale_Academy_Syllabus
 
2CPP01 - Intro to Module
2CPP01 - Intro to Module2CPP01 - Intro to Module
2CPP01 - Intro to Module
 
lecture1.pdf
lecture1.pdflecture1.pdf
lecture1.pdf
 
The Big Picture
The Big PictureThe Big Picture
The Big Picture
 
Why and How to Get a PhD? (In software engineering)
Why and How to Get a PhD? (In software engineering)Why and How to Get a PhD? (In software engineering)
Why and How to Get a PhD? (In software engineering)
 
TDD Anti-patterns (2022 edition)
TDD Anti-patterns (2022 edition)TDD Anti-patterns (2022 edition)
TDD Anti-patterns (2022 edition)
 
Enriching Solr with Deep Learning for a Question Answering System - Sanket Sh...
Enriching Solr with Deep Learning for a Question Answering System - Sanket Sh...Enriching Solr with Deep Learning for a Question Answering System - Sanket Sh...
Enriching Solr with Deep Learning for a Question Answering System - Sanket Sh...
 
DOD Presentation V2
DOD Presentation V2DOD Presentation V2
DOD Presentation V2
 
Eeri 314 pec 2013
Eeri 314 pec 2013Eeri 314 pec 2013
Eeri 314 pec 2013
 
Certified Professional Diploma in Data Science.pdf
Certified Professional Diploma in Data Science.pdfCertified Professional Diploma in Data Science.pdf
Certified Professional Diploma in Data Science.pdf
 
Introduction to Object Oriented Programming
Introduction to Object Oriented ProgrammingIntroduction to Object Oriented Programming
Introduction to Object Oriented Programming
 
2CPP19 - Summation
2CPP19 - Summation2CPP19 - Summation
2CPP19 - Summation
 
Core java training in Marathahalli, Bangalore
Core java training in Marathahalli, BangaloreCore java training in Marathahalli, Bangalore
Core java training in Marathahalli, Bangalore
 
Core java training in Marathahalli, Bangalore
Core java training in Marathahalli, BangaloreCore java training in Marathahalli, Bangalore
Core java training in Marathahalli, Bangalore
 
Workplace Simulated Courses - Course Technology Computing Conference
Workplace Simulated Courses - Course Technology Computing ConferenceWorkplace Simulated Courses - Course Technology Computing Conference
Workplace Simulated Courses - Course Technology Computing Conference
 
Keeping ontology development Agile
Keeping ontology development AgileKeeping ontology development Agile
Keeping ontology development Agile
 
CEN6016-Chapter1.ppt
CEN6016-Chapter1.pptCEN6016-Chapter1.ppt
CEN6016-Chapter1.ppt
 
CEN6016-Chapter1.ppt
CEN6016-Chapter1.pptCEN6016-Chapter1.ppt
CEN6016-Chapter1.ppt
 

More from mcollison

Pi j4.2 software-reliability
Pi j4.2 software-reliabilityPi j4.2 software-reliability
Pi j4.2 software-reliability
mcollison
 
Pi j4.1 packages
Pi j4.1 packagesPi j4.1 packages
Pi j4.1 packages
mcollison
 
Pi j3.1 inheritance
Pi j3.1 inheritancePi j3.1 inheritance
Pi j3.1 inheritance
mcollison
 
Pi j3.2 polymorphism
Pi j3.2 polymorphismPi j3.2 polymorphism
Pi j3.2 polymorphism
mcollison
 
Pi j3.4 data-structures
Pi j3.4 data-structuresPi j3.4 data-structures
Pi j3.4 data-structures
mcollison
 
Pi j2.3 objects
Pi j2.3 objectsPi j2.3 objects
Pi j2.3 objects
mcollison
 
Pi j2.2 classes
Pi j2.2 classesPi j2.2 classes
Pi j2.2 classes
mcollison
 
Pi j1.4 loops
Pi j1.4 loopsPi j1.4 loops
Pi j1.4 loops
mcollison
 
Pi j1.3 operators
Pi j1.3 operatorsPi j1.3 operators
Pi j1.3 operators
mcollison
 
Pi j1.2 variable-assignment
Pi j1.2 variable-assignmentPi j1.2 variable-assignment
Pi j1.2 variable-assignment
mcollison
 
Pi j1.1 what-is-java
Pi j1.1 what-is-javaPi j1.1 what-is-java
Pi j1.1 what-is-java
mcollison
 

More from mcollison (11)

Pi j4.2 software-reliability
Pi j4.2 software-reliabilityPi j4.2 software-reliability
Pi j4.2 software-reliability
 
Pi j4.1 packages
Pi j4.1 packagesPi j4.1 packages
Pi j4.1 packages
 
Pi j3.1 inheritance
Pi j3.1 inheritancePi j3.1 inheritance
Pi j3.1 inheritance
 
Pi j3.2 polymorphism
Pi j3.2 polymorphismPi j3.2 polymorphism
Pi j3.2 polymorphism
 
Pi j3.4 data-structures
Pi j3.4 data-structuresPi j3.4 data-structures
Pi j3.4 data-structures
 
Pi j2.3 objects
Pi j2.3 objectsPi j2.3 objects
Pi j2.3 objects
 
Pi j2.2 classes
Pi j2.2 classesPi j2.2 classes
Pi j2.2 classes
 
Pi j1.4 loops
Pi j1.4 loopsPi j1.4 loops
Pi j1.4 loops
 
Pi j1.3 operators
Pi j1.3 operatorsPi j1.3 operators
Pi j1.3 operators
 
Pi j1.2 variable-assignment
Pi j1.2 variable-assignmentPi j1.2 variable-assignment
Pi j1.2 variable-assignment
 
Pi j1.1 what-is-java
Pi j1.1 what-is-javaPi j1.1 what-is-java
Pi j1.1 what-is-java
 

Recently uploaded

The Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collectionThe Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collection
Israel Genealogy Research Association
 
PIMS Job Advertisement 2024.pdf Islamabad
PIMS Job Advertisement 2024.pdf IslamabadPIMS Job Advertisement 2024.pdf Islamabad
PIMS Job Advertisement 2024.pdf Islamabad
AyyanKhan40
 
PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.
Dr. Shivangi Singh Parihar
 
Pride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School DistrictPride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School District
David Douglas School District
 
clinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdfclinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdf
Priyankaranawat4
 
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptxChapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Mohd Adib Abd Muin, Senior Lecturer at Universiti Utara Malaysia
 
Smart-Money for SMC traders good time and ICT
Smart-Money for SMC traders good time and ICTSmart-Money for SMC traders good time and ICT
Smart-Money for SMC traders good time and ICT
simonomuemu
 
Azure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHatAzure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHat
Scholarhat
 
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama UniversityNatural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Akanksha trivedi rama nursing college kanpur.
 
S1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptxS1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptx
tarandeep35
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
Jean Carlos Nunes Paixão
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
amberjdewit93
 
How to Fix the Import Error in the Odoo 17
How to Fix the Import Error in the Odoo 17How to Fix the Import Error in the Odoo 17
How to Fix the Import Error in the Odoo 17
Celine George
 
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
eBook.com.bd (প্রয়োজনীয় বাংলা বই)
 
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
PECB
 
World environment day ppt For 5 June 2024
World environment day ppt For 5 June 2024World environment day ppt For 5 June 2024
World environment day ppt For 5 June 2024
ak6969907
 
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
National Information Standards Organization (NISO)
 
The simplified electron and muon model, Oscillating Spacetime: The Foundation...
The simplified electron and muon model, Oscillating Spacetime: The Foundation...The simplified electron and muon model, Oscillating Spacetime: The Foundation...
The simplified electron and muon model, Oscillating Spacetime: The Foundation...
RitikBhardwaj56
 
Introduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp NetworkIntroduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp Network
TechSoup
 
Main Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docxMain Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docx
adhitya5119
 

Recently uploaded (20)

The Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collectionThe Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collection
 
PIMS Job Advertisement 2024.pdf Islamabad
PIMS Job Advertisement 2024.pdf IslamabadPIMS Job Advertisement 2024.pdf Islamabad
PIMS Job Advertisement 2024.pdf Islamabad
 
PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.
 
Pride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School DistrictPride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School District
 
clinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdfclinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdf
 
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptxChapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
 
Smart-Money for SMC traders good time and ICT
Smart-Money for SMC traders good time and ICTSmart-Money for SMC traders good time and ICT
Smart-Money for SMC traders good time and ICT
 
Azure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHatAzure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHat
 
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama UniversityNatural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
 
S1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptxS1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptx
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
 
How to Fix the Import Error in the Odoo 17
How to Fix the Import Error in the Odoo 17How to Fix the Import Error in the Odoo 17
How to Fix the Import Error in the Odoo 17
 
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
 
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
 
World environment day ppt For 5 June 2024
World environment day ppt For 5 June 2024World environment day ppt For 5 June 2024
World environment day ppt For 5 June 2024
 
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
 
The simplified electron and muon model, Oscillating Spacetime: The Foundation...
The simplified electron and muon model, Oscillating Spacetime: The Foundation...The simplified electron and muon model, Oscillating Spacetime: The Foundation...
The simplified electron and muon model, Oscillating Spacetime: The Foundation...
 
Introduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp NetworkIntroduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp Network
 
Main Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docxMain Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docx
 

Pi j1.0 workshop-introduction

  • 1. Programming in Java 5-day workshop Workshop Introduction Matt Collison JP Morgan Chase 2021 PiJ0.1: Workshop Introduction
  • 2. Session overview Welcome • Round table introductions Module Overview • What is the course aim? • What will we cover? • How do I engage with learning on this course? Pre-workshop survey and Q&As
  • 3. Introduction Dr Matt Collison Lecturer in Computer Science m.collison@exeter.ac.uk Research interests • Computer Science pedagogy • Data systems • Bioinformatics • Microbiome research Teaching • ECM1400 Programming • ECM2434 Software Engineering Group Project • BSc Computer Science Programme director
  • 4. Aim… …to introduce Java as a new programming language and provide a foundation in the object-oriented programming paradigm
  • 5. What does that look like? • Be familiar with the fundamental concepts and tools for programming and Java • Be capable of problem solving with code, specifically Java • Be able to decompose a problem • Learn to be self sufficient • Know how to ask the right questions – almost all questions have been asked before usually in a different way
  • 6. What will you learn in this workshop?
  • 7. Fundamentals The basic constructs that make up the building blocks of python A set of techniques that can be employed to overcome common challenges. Design Patterns Data Structures The way we can access and store structured information. Control Flow How to order the execution of your code and algorithms. Each dimension requires a different type of knowledge and skills. Individuals can excel at any one A competency framework for programming
  • 8. Foundations • What is Java and the JVM • Variables and programs • Primitive types and literals • Classes and objects • Methods • Constructors • Inheritance and privacy
  • 9. Control Flow • if statements • switch case • for loops • while loops • Conditional logic • Operators
  • 10. Data Structures • Arrays • Collections • Lists • HashMaps • Slicing and dicing data • Mutability
  • 11. Design Patterns • Exceptions • Testing • Build tools • Dependencies • The Java Software Lifecycle
  • 13. What can you expect? Teaching methods and materials
  • 14. Competency-based learning • Lessons – introduce the concepts • The known knowns – Here is X • Practical – provide practical examples • The known knowns and known unknowns – Experimenting with X • Cohort Q&A sessions – clarification • The known unknowns – I don’t understand X • Group project – exploratory problem-based learning • The unknown unknowns
  • 15. Synopsis – what’s it all about
  • 19. Learning resources The workshop homepage https://mcollison.github.io/JPMC-java-intro-2021/ The course materials https://mcollison.github.io/java-programming-foundations/ • Session worksheets – updated each week
  • 20. Additional resources • Think Java: How to think like a computer scientist • Allen B Downey (O’Reilly Press) • Available under Creative Commons license • https://greenteapress.com/wp/think-java-2e/ • Oracle central Java Documentation – https://docs.oracle.com/javase/8/docs/api/ • Other sources: • W3Schools Java - https://www.w3schools.com/java/ • stack overflow - https://stackoverflow.com/ • Coding bat - https://codingbat.com/java
  • 21. Continuous improvement and issue tracking Pre-workshop survey - 2245 1226 https://www.menti.com/pdybdux6h2

Editor's Notes

  1. Big questions - – what motivates the module
  2. Most people put a picture of their face but you can already see that so here are my dogs. I really enjoy speaking to students. I specialise in teaching. Lecturing is difficult to engage with each student so please come and talk to me. Timing and perspective.
  3. It doesn’t look like other subjects Asking questions in Google is crucial to being a good programmer Time and time again you will come up against a problem that you simply can’t answer. Someone else will find the answer because they knew how to ask the right question
  4. All competencies are linked and overlap. They each require different - knowledge and - skills
  5. Foundations is about understanding how to define the language. Declaring the basics. Knowing what the rules of the language are. Information heavy knowledge based things. Like learning the words of a new language.
  6. Control flow is about how to control the language The contructs of the language. How to design algorithms and behavior. There are some rules but this is often bespoke. Decomposing a problem. Control behavior
  7. Data structures is about how to integrate the algorithm with stuff. The best way to capture information. Often optimization and imposing structure. The difference between ordering things and doing thing in an order.
  8. Examples of good practice for (relatively) complex problems. Allow you to programme in a more resilient, reliable  Condense it all down into something useful and practical. Pragmatism is a key principle in the development of python More creative guidelines. Examples of how these have been addressed. Pythonic design patterns are well defined. 
  9. Actually these are hierarchical. As you will notice there is depth and breadth. If you have learnt some of these before you will have to practice applying them. Learn the limitations and practicalities rather than the definitions.
  10. Workshops are more practical so it is difficult to know if you know it but you know what you are trying to achieve. One to one help for this phase.
  11. Many of you will be comfortable using computers although few of you will be confident programmers. The module aims to give you the basic knowledge and confidence to get stuck in and make a start.
  12. Once you’ve got a bit of confidence you’ll know enough to be dangerous. You will be able to make some headway although you will inevitably make some mistakes along the way. Programming will happen although it probably won’t be fluent because much of what you are doing is still new.
  13. By the end of the module both you and I will be confident in your programming abilities
  14. All resources hang from the ELE pages. How many of you have looked through them?
  15. 2245 1226