IFCD0210 Product Backlog

ifcd0210
backlog

Backlog course

Backlog course

Product Backlog by Month

December 2025

Backlog course December 2024 table
Sprint Day Date Topics Details Topics
01 01 01/12/25 - Course Presentation
- Course Methodology
- Architecture:
(1) DataBase: SQL, noSQL, cloud, Redis
(2) Server: Spring Boot
(3) APIs: REST, webSocket, graphQl, etc..
(4) FrontEnd: React
(5) DevOps: Git, GitHub, Software LifeCycle Development, etc
(6) Agile: SCRUM
(7) Mindset
(8) Architecture
(9) AI: Spring Deep4J Price predictor
(10) Linux: bash

- SetUp tools: software, accounts, hardware, OS and apps
- albertprofe.dev
- Software LifeCycle Development
02 02/12/25 - Mutable (Java) vs. Immutable (React/Git)
- Apartment Predictor: data (.csv), create project, Apartment class

- What is a class, an object and how to create it (Java)
- 3 major operators: . invoke, = assign and new create object
- Java classes: have/do - be/have

- Spring Boot: Maven/pom.xml (dependencies) & Project-structure (root, entry-point, main)

- DevOps: doc, sandbox, git
- ApartmentPredictor: 1206a3b0

- Create Project
- Create Project TH-H2
- Java Class
- Sprint Init

- Housing Prices Dataset

- Gist: createrepo
03 03/12/25 - Agile: cone uncertainty

- ApartmentPredictor:
(1) Test Apartment and Post
(2)++ Refactor Post to Review
(3) Create Owner
(4) UML: inherence & composition

- We have 3 Root: project management, Spring Boot, /scr

- Git: commit, push, sync, clone, branch, commit , push, pull request

++ How will we code? Mooc, Analysis, Pseudo, PRA, Screen
- ApartmentPredictor: a068e5ac
- ApartmentPredictor: c23a462b

- Cone of uncertainty
- User story


04 04/12/25 - ApartmentPredictor:
(0) Project structure: pom.xml & Maven dependencies
(1) Test JUnit Apartment and Review
(2) Service: CRUD operations
(3) Create Reviewer

(4) UML: inherence & composition

- Git:
(1) Intro: time, space and role/user
(2) master/branch, local/remote, HEAD/head
(3) gh: gh auth login

++ Mermaid Diagrams
++ What is planning? Matching mental energies
++ MVC: intro
++ What is service, what is repository, what is test, what is db, what is controller
- Git
- Project JavaSE: Commit & push
- Gist: cheatsheet
- Login and logout to GitHub.com from CLI gh on linux
- gh repo create
- gh auth login


05 05/12/25 - ApartmentPredictor:
(1) Test Apartment and Review
(2) Service: CRUD operations
(3) Create Reviewer
(4) UML: inherence & composition
(5) Spring Boot JPA and H2
(6) Application.properties

(7) Update docs

- MC: Just Model and Controller
- Retrospective

++ Keywords categories to learn: Agile (15), devOps (15), Architecture (15), UML (15), Code (15)
++ List of fundamental vocabulary (200 words)
++ Spring Boot as a Restaurant for 5yo
++ MVC: scheme
++ Coding cycle: Agile > devOps > Architecture > UML > code
- ApartmentPredictor: 6cdff1297c

- Model
- View
- Controller

- Spring Boot for 5yo as Restaurant example
- Spring Boot OnProduction Fundamental Concepts

02 06 09/12/25 - Planning Sprint#02
++ Why is so important to plan? Retrospective

- ApartmentPredictor:
(1) Test Apartment, Review and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Create Reviewer first, why?
(4) UML: Composition
(5) Spring Boot JPA and H2
(6) Application.properties

- JUnit:
(1) asserts


- DDD, Domain-driven design
(1) coupling
(2) Project structure

++ Homework:
(1) Monotith vs Microservices
(2) Defining metrics for learning
- ApartmentPredictor: 6cdff1297c
- ApartmentPredictor: 04ff349
- ApartmentPredictor: 082af759

- DDD & coupling
- H2: install and using
- Model
- View
- Controller


- Inherence
- JUnit


- JPA Core concepts
07 10/12/25 - ApartmentPredictor:
(1) Test Apartment, Review and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Create Reviewer first, then Review and then, Apartment
(4) UML: Composition
(5) Spring Boot JPA and H2
(6) Application.properties
(7) Unidirectional / Bidirectional

- Populate DB: ImportCSVtoH2
- JUnit:
(1) asserts
(2) annotations: @Test

++ Approaches to test data: syndetic data, faker java, import .csv, data.sql, using native sql, json, Ai, etc…
++ Kind of problems: simple, complicated, complex, chaos
++ What are the impediment to have nice class notes? Know-how, habit, dispersion
- ApartmentPredictor: 84aa558

- JPA
- JPA Relationships

- Populate: ImportCSVtoH2

H2 data types
- Navigating organizational disruption and complexity
08 11/12/25 - ApartmentPredictor:
(1) Test Owner and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Create Reviewer / Òwner
(4) UML: Inherence
(5) Spring Boot JPA and H2
(6) Application.properties
(7) Person & Owner, Reviewer
(8) Unidirectional / Bidirectional
(9) @OneToMany / @ManyToOne

- Git/gh: undoing changes

++ Top-ten web app: vocabulary
++ Mindmap: how to create knowledge nodes
++ DataBase or data-store: how ids have evolved
- ApartmentPredictor: 06c83ded
- JPA_Relationships_Guide
- Annotations
- Web App Java 1994-2024

- Git: undoing changes
- Choosing the Right DynamoDB Partition Key
09 12/12/25 - ApartmentPredictor:
(1) Test Owner and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Create Reviewer / Òwner
(4) UML: Inherence
(5) Spring Boot JPA and H2
(6) Application.properties
(7) Interface: why is so relevant?

++ Java SE scope vs Spring Boot DI & @Autowired
++ Printing Apartments utility, different approaches: static context, @Autowired, genertic ? wildcard

- Retrospective
- ApartmentPredictor: 4338deb

- Interface
- JPA Inherence

- JPA DI
- JPA: mappings
- JPA relationshps
- JPA vendors

- Java SE scope
- Spring Boot: DI
03 07 15/12/25 - Planning Sprint#03
- Matching energies: high energy

- ApartmentPredictor:
(1) Test Apartment, Review and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Application.properties
(4) UML: Composition & Inherence
(5) Spring Boot JPA and H2
(6) Inherence
(7) House and Duplex

- Java SE: Mindmap
- JUnit:
(1) asserts
(2) annotations: @Test

- Homework:
(1) Monolith vs Microservices
(2) Defining metrics for learning
(3) Top-ten web app: vocabulary
(4) Spring Ecosystem as a Restaurant business
- ApartmentPredictor: 31ff8f1

- DDD & coupling
- Inherence
- JUnit


- JPA Core concepts
- SpringAsRestaurantBusiness-5yo
08 16/12/25 - ApartmentPredictor:
(1) Test Apartment, Review and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Application.properties
(4) UML: Composition & Inherence
(5) Spring Boot JPA and H2
(6) Inherence
(7) House and Duplex

- Lab#01: Java SE Inheritance

- Inherence keywords: super, extends, casting, override, abstract, Polymorphism
- ApartmentPredictor: 3d1e160

- Lab#01: Java SE Inheritance

- Interface
- JPA Inherence

09 17/12/25 - ApartmentPredictor:
(1) Test Apartment, Review and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Application.properties
(4) UML: Composition & Inherence
(5) Spring Boot JPA and H2
(6) fork and clone

- Git/gh: undoing changes & clone/fork
- Git 4D: time, space, direction, HEAD/head
- git:$ git log --branches --graph
- Authomate Sync to Local
- Create local and remote repo from everywhere
- Git commands
- Git: undoing changes
- Git
10 18/12/25 - ApartmentPredictor:
(1) Test Apartment, Review and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Application.properties
(4) UML: Composition & Inherence
(5) Spring Boot JPA and H2


++ Git flows:
(1) One gh account: branches policy (dev, hotfix, release, feature, etc..)
(2) Several gh accounts: Production, Development
(3) Clone-&-push
(4) Fork-&-sync
- ApartmentPredictor: cffb5f5aeb
- Git & gh flows



11 19/12/25 - ApartmentPredictor:
(1) Test Apartment, Review and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Application.properties
(4) UML: Composition & Inherence
(5) Spring Boot JPA and H2
(6) interface:
(7) abstract Person > Owner, Reviewer
(8) interface Notifiable, Registrable > Owner, Reviewer

++ Git: painters lab:
(1) Miro, Veermer, Picasso, Pollock
(2) pull request (4 options): from master, from feature, both, edit
- ApartmentPredictor: e87bf6141



-Painters.txt

- Person interfaces

January 2026

Backlog course January 2025 table
Sprint Day Date Topics Details Topics
04 12 07/01/26 - Planning Sprint#04:
(1) How to plan a project? FullStack, Full-Arcitecture, DataModel (JSON/UML), MockUp, feature, BusinessLosgic, pipeline devops
(2) Vaadin, Nextjs, Full Architecture

- ApartmentPredictor:
(1) Test Apartment, Review and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Application.properties
(4) UML: Composition & Inherence
(5) Spring Boot JPA and H2
(6) API rest & Postman
(7) Rest endpoint http://localhost:8080/api/apartment/getAll
(8) @RestController: ApartmentRestController
(9) PathVariable vs Requestparam

- Homework:
(1) Monolith vs Microservices
(2) Defining metrics for learning
(3) Top-ten web app: vocabulary
(4) Spring Ecosystem as a Restaurant business

- Ideas for projects: starterstory
- ApartmentPredictor: ee6a868
- API Rest
- RestController example
- starterstory

13 08/01/26 - ApartmentPredictor:
(1) Test Apartment, Review and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Application.properties
(4) UML: Composition & Inherence
(5) Spring Boot JPA and H2
(6) API rest
(7) Rest Postman & Swagger
(8) All CRUD operations implemented

- Containers:
(1) Optional
(2) ResponseEntity

- Request/Response Cycle: from Client request to Controller and JPA and ResponseEntity
- ApartmentPredictor: 8f9e22e1
- ApartmentPredictor API Rest docs
- Request/Response Cycle

14 09/01/26 - ApartmentPredictor:
(1) Test Apartment, Review and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Application.properties
(4) UML: Composition & Inherence
(5) Spring Boot JPA and H2
(6) API rest
(7) Rest Security
(8) Nested objects: Apartment 1:n Review
(9) JsonIgnore (stackOverflow & infinite recursion)
(10) POST, PUT, PATCH to update

- MF01: proves
- ApartmentPredictor: 6646d1c
- ApartmentPredictor: dc32409d
- ApartmentPredictor API Rest docs
- POST, PUT, PATCH to update
05 15 12/01/2026 - Sprint#05: plan 3-week React

- Java: circular reference
- @JsonIgnore
- @JsonManagedReference and @JsonBackReference.
- @JsonProperty

- Create jar

- React: intro
- React MOOC: React Lean
- Describing the UI: .jsx and what is a component

- Project: apartmentPredictor-react:
(1) Create project React: playground / vite
(2) Define UI: mockup
(3) Data: axios
(4) Build project: Npm, App.tsx, Vite
(5) React Components
(6) Hooks: useState and useEffect
- ApartmentPredictor-React: 133d71d4

- React Principles
- Create React App
- Create project vite
- Describing the UI

- CodeSandbox: Gregorio
16 13/01/2026 - React: intro
- React.dev: React Lean, Describing the UI
- React.dev: PROPS
- Material CSS

- Render cycle and immutability

- React Mindmap:
(1).jsx
(2) immutability
(3) render
(4) hooks
(5) ES6
(6) web
(6) react.dev

- Java vs React: comparing paradigms
- ApartmentPredictor-React: 0548b4eb

- Describing the UI
- Passing Props
- React, immutable?

- CodeSandbox: Gregorio
- Gregorio render
- Gregorio Repo GH

- React Principles
- React is JSX
- What is props




- React vs Java — key paradigm differences (high level)
17 15/01/2026 - Project: apartmentPredictor-react:
(1) Create project React: playground / vite
(2) Define UI: mockup
(3) Data: axios
(4) Build project: Npm, App.tsx, Vite
(5) React Components
(6) Hooks: useState and useEffect


- React.dev:
(1) Data List: map
(2) Conditional render
(3) React UI is a components tree: props

- CSS Frameworks
- React Roadmap

- React paradigm vs. Java paradigm
- Gregorio Repo GH
- Describing the UI
- Passing Props
- Conditional render
- Rendering lists

- Semantic / Material / Tailwind / Shadcn-ui
- Open Stack Course
- React Roadmap web
- React Roadmap pdf
- Vite / nvm





- Java vs React
- Gallery Scientist: codesandbox

18 16/01/2026 - Project: apartmentPredictor-react:
(1) Create project React: playground / vite
(2) Define UI: mockup
(3) Data: axios
(4) Build project: Npm, App.tsx, Vite
(5) React Components
(6) Hooks: useState and useEffect


- React.dev:
(1) Data List: map
(2) Conditional render
(3) React UI is a components tree: props

- Literal Object in JS is NOT a JSON
- Parsing
- Describing the UI
- Passing Props
- Conditional render
- Rendering lists

- Literal Object

- Gallery Scientist: codesandbox
- Gallery Scientist 2: codesandbox
- Gallery Scientist 3: codesandbox

- Parsing

- Web Application Java Basic Architectures
- Chat:React - WS - AWS Lambda DynamoDB


06 19 19/01/2026 - Sprint#06: plan maps, ES6 & hooks

- React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect
(3) maps

- Gallery Scientist: props, conditional render, map

++ ApartmentPredictor: sequential execution load component
- React Principles

- Gallery Scientist: codesandbox
- Gallery Scientist 2: codesandbox
- Gallery Scientist 3: codesandbox

- Describing the UI
- Passing Props
- Conditional render
- Rendering lists

20 20/01/2026 - React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect
(3) maps
(4) ES6

- React project init:
(1) mockup LF, feature, API (Postman)
(2) Component tree: AMZ example
- React Principles
- Describing the UI

- Gallery Scientist: codesandbox
- Gallery Scientist 2: codesandbox
- Gallery Scientist 3: codesandbox

- Maps
- Spread
- Miro LF

21 22/01/2026 - React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect
(3) maps
(4) Manage state & render cycle
(5) useState with literal objects
(6) component tree
(7) import/export default/named
- React Principles
- Describing the UI

- Semantic / Material / Tailwind / Shadcn-ui

- Gallery Scientist:4 codesandbox


- useState
- events
- Props
- Gallery Scientist:5 codesandbox
22 23/01/2026 - React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect
(3) maps
(4) Manage state & render cycle
(5) useState with literal objects
(6) useEffect sync & axios

- How to use {children} with props
+ How to create good useStates hooks names and manage state
- How to update a literal object
- React Principles
- Describing the UI
- Adding Interactivity

- TrafficLights
07 22 26/01/2026 - Sprint#07: hooks & forms

- React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState, useRef and useEffect
(3) maps & ES6
(4) render Cycle

- Traffic Lights:
(1) setTimeout
(2) useState phases (how to detect main state) variables
(3) useRef
(4) understand the render0 and the next 3 renders

- Forms: manage state
- React Principles

- Describing the UI
- Passing Props
- Conditional render
- Rendering lists
- Adding Interactivity



- TrafficLights
- basicRegisterForm

23 27/01/2026 - React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState, useRef and useEffect
(3) maps & ES6
(4) render Cycle

- Traffic Lights:
(1) setTimeout
(2) useState phases
(3) useRef
(4) forms

++ Mutable vs Immutable Literal Objects & Array :
(1) Mutable: person.name = e.target.value;
(2) Immutable: setPerson ({...person, name : e.target.value})
- React Principles
- Describing the UI
- Adding Interactivity

- TrafficLights
- basicRegisterForm

- Copying objects with the spread syntax

- Updating Arrays in State
24 29/01/2026 - React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect
(3) maps & ES6
(4) Manage state & render cycle
(5) useEffect: with who is syncing
(6) dependencies & return clean-up
(7) understanding AparmentPredicor-React

++ Axios: library http request and promises

++ ApartmentPredictor React:
(1) decoupling
(2) custom hook: useApartments

++ MF01:
(1) Prova Pràctica, teorica, avaluació continua
(2) PRA01
- React Principles
- Describing the UI
- Adding Interactivity
- Axios: post
- Semantic / Material / Tailwind / Shadcn-ui

- useEffect

- Custom hook

ApartmentPredictor-React: 0548b4eb
- ApartmentPredictor-React: f3e623dd


PRA01
25 30/01/2026 - React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect
(3) maps
(4) Manage state & render cycle
(5) useState with literal objects
(6) useEffect sync & axios

- ApartmentPredictor-React: decoupled version with custom hook

++ New future: reload/refresh button
- React Principles
- Describing the UI
- Adding Interactivity
- ApartmentPredictor-React: 13df0e4 - refresh-branch
- ApartmentPredictor-React: c40fe208


February 2026

Backlog course February 2025 table
Sprint Day Date Topics Details Topics
08 26 02/02/2026 - Sprint#08: ApartmentPredictor Full-Architecture

- ApartmentPredictor:
(1) Base Project Backend Spring Boot
(2) API Rest
(3) H2 DB Local & JPA
(4) Apartment <> Review <> Reviewer
(5) Data Loader
(6) Working on different environments

- Create JAR for React frontend

++ NoSQL introduction: dynamoDB AWS
++ GraphQL introduction: AppSync AWS
- ApartmentPredictor: fc1f60f88e
- API Rest

- working-on-different-environments
- data-loader: approaches
- SQL-ImportCSVtoH2
- data.sql

- Spring Data: NoSql

Spreadsheet Employee
27 03/02/2026 - ApartmentPredictor:
(1) Base Project Backend Spring Boot
(2) API Rest
(3) H2 DB Local & JPA
(4) Apartment <> Review <> Reviewer </> (5) Data Loader
(6) Working on different environments
(7) ManyToMany relationship
(7) Bridge Table: managed by JPA or need to create an Entity
(8) ManyToMany patterns: table details or data attached

++ How to detect patterns on ManyToMany:
(1) Data Relevance
(2) Data mutable or immutable
(3) Need of operate with data to implement feature
- ApartmentPredictor: 982bf562
- Populate Apartments by REST API

- JPA Relationships

28 05/02/2026 - React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect
(3) maps & ES6
(4) Manage state & render cycle
(5) useEffect: with who is syncing
(6) dependencies & return clean-up
(7) understanding AparmentPredictor-React
(8) Forms & SPA CRUD operations for Aparment
(9) decoupled version with custom hook
(10) reload/refresh button

- MF01:
(1) Prova Pràctica, teorica, avaluació continua
(2) PRA01
- React Principles
- Describing the UI
- Adding Interactivity

- ApartmentPredictor-React: f3e623dd


PRA01
29 06/02/2026 - React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect
(3) maps
(4) Manage state & render cycle
(5) useState with literal objects
(6) useEffect sync & axios


++ SQL vs NoSQL
++ Apartment NoSQLUNIQUE-TABLE strategy
++ Apartment: PK + SK, apartmentId, renovationId
++ ManyToMany JPA SQL: Apartment <> School
- React Principles
- Describing the UI
- Adding Interactivity
- ApartmentPredictor-React: c40fe208

- NoSql
- SpreadSheet NoSql Renovations
- Library3: API Rest Library Book @ManyToMany

- MF01 PP and AC Deliveries
- PRA01
09 30 09/02/2026 - Sprint#09: ApartmentPredictor Full-Architecture II

- ApartmentPredictor:
(1) Base Project Backend Spring Boot
(2) API Rest
(3) H2 DB Local & JPA
(4) Apartment <-> Review <-> Reviewer
(5) Apartment <-> School
(6) Apartment <-> Contract
(7) @ManyToMany

- AWS Amplify: build, deploy, hosting and publish
- AWS CD/CI: intro
- Spring Boot Deploy: Railway.com, Render.com by docker
- AWS: NoSQL: DynamoDB
- ApartmentPredictor: 46287da40
- API Rest

- Spring Data: NoSql
- NoSql
- Library3: API Rest Library Book @ManyToMany
- JPA Relationships

- SpreadSheet NoSql Renovations

- Amplify Docs

31 10/02/2026 - ApartmentPredictor:
(1) Base Project Backend Spring Boot
(2) API Rest
(3) H2 DB Local & JPA
(4) Apartment <-> Review <-> Reviewer
(5) Apartment <-> School
(6) Apartment <-> Contract
(7) @ManyToMany

- Spring Boot Deploy: Railway.com, Render.com by docker

++ What is planning?
Feature > DDD > UML > PseudoCode > Code
- ApartmentPredictor:
- API Rest
- Spring Data: NoSql
- NoSql

- Library3: API Rest Library Book @ManyToMany

- SpreadSheet NoSql Renovations
- JPA Relationships

schoolsAssignToApartment
32 12/02/2026 Class cancelled :-(

- React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect
(3) maps & ES6
(4) Manage state & render cycle
(5) useEffect: with who is syncing
(6) dependencies & return clean-up
(7) understanding AparmentPredictor-React
(8) Forms & SPA CRUD operations for Aparment
(9) decoupled version with custom hook
(10) reload/refresh button

- React Principles
- Describing the UI
- Adding Interactivity

- ApartmentPredictor-React: xxxx
33 13/02/2026 - ApartmentPredictor:
(1) Base Project Backend Spring Boot
(2) API Rest
(3) H2 DB Local & JPA
(4) Apartment <-> Review <-> Reviewer
(5) Apartment <-> School
(6) Apartment <-> Contract
(7) Person Inherence with Owner / Reviewer
(8) PseudoCode & Planning PRA#02
- PRA#02: Java UML + Implementation + H2 Data Population


- Spring Boot: JPA Inherence
- JPA Relationships Guide
- CACAJEC
- Postman: apartmentPredictorCRUD
10 34 16/02/2026 - Sprint#10: ApartmentPredictor Full-Architecture III

- React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect: with who is syncing / dependencies & return clean-up
(3) maps & ES6 & Manage state & render cycle
(4) Forms & SPA CRUD operations for Apartment: react Hook form
(5) decoupled version with custom hook > Context
(6) useContext

++ Architecture:
(1) Vaadin: Spring Boot + React (Hilla) / Flow (Java)
(2) NextJS: NodeJS + React
(3) Expo: AWS + React Native

++ Accordion: managing state, data top-down, state down-top

++ Draft definition what is team work:
(1) decision-making
(2) communication
(3) self and group organization
(4) all actions, whatever they are, are under project-first hierarch criteria
(5) without clear project roadmap, there is no team work
- React Principles
- Describing the UI
- Adding Interactivity
- Managing state

- react-hook-form
- Built-in React DOM Hooks
- React Hooks

- Context

- Nextjs / Vaadin / React Native / Expo
- Sharing State Between Components
35 17/02/2026 - React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect: with who is syncing / dependencies & return clean-up
(3) maps & ES6 & Manage state & render cycle
(4) Forms & SPA CRUD operations for Apartment: react Hook form
(5) decoupled version with custom hook > Context

- useContext
- useReducer
- React Principles
- Describing the UI
- Adding Interactivity
- Managing state

- Context / Reducer

- Extracting State Logic into a Reducer - Codesandbox
36 18/02/2026 - React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect: with who is syncing / dependencies & return clean-up
(3) maps & ES6 & Manage state & render cycle
(4) Forms & SPA CRUD operations for Apartment: react Hook form
(5) decoupled version with custom hook > Context

- useContext
- useReducer
- React JS App: router
- Material sideBar: Drawer
- React Principles
- Describing the UI
- Adding Interactivity
- Managing state

- React JS App: router
- Material UI React Drawer

- I made a tree visualizer
Codesandbox: Praga CRUD-1
Codesandbox: Praga CRUD-2 (telegram)
Codesandbox: Praga CRUD-3 (dynamic checkbox)
37 19/02/2026 - ApartmentPredictor:
(1) Base Project Backend Spring Boot
(2) API Rest
(3) H2 DB Local & JPA
(4) Apartment <-> Review <-> Reviewer
(5) Apartment <-> School
(6) Apartment <-> Contract <-> Owner
(7) Person Inherence with Owner / Reviewer
(8) PseudoCode & Planning PRA#02 II
- ApartmentPredictor: 5aead7
- PRA#02: Java UML + Implementation + H2 Data Population



- Spring Boot: JPA Inherence
- JPA Relationships Guide
- CACAJEC
- Postman: apartmentPredictorCRUD
11 38 23/02/2026 - Sprint#11: ApartmentPredictor Full-Architecture IV

- ApartmentPredictor:
(1) Base Project Backend Spring Boot
(2) API Rest
(3) H2 DB Local & JPA
(4) Apartment <-> Review <-> Reviewer
(5) Apartment <-> School
(6) Apartment <-> Contract <-> Owner
(7) Person Inherence with Owner / Reviewer
(8) Implementing & Testing PRA#02 II
(9) Postman: testing assign features

- JPA: Cascade, fetch, EAGER/LAZY, etc

- Architecture-Top9 Patterns
- ApartmentPredictor: d456471c
- Postman: apartmentPredictorCRUD
- PRA#02: Java UML + Implementation + H2 Data Population


- Spring Boot: JPA Inherence
- JPA Relationships Guide
- Lab#8-4, jpa-relationships
- CACAJEC
- Architecture-Top9 Patterns
39 24/02/2026 - ApartmentPredictor:
(1) Base Project Backend Spring Boot
(2) API Rest
(3) H2 DB Local & JPA
(4) Apartment <-> Review <-> Reviewer
(5) Apartment <-> School
(6) Apartment <-> Contract <-> Owner
(7) Person Inherence with Owner / Reviewer
(8) Implementing & Testing II
(9) Postman: testing assign features
(10) Error control

- JPA: Cascade, fetch, EAGER/LAZY, etc
- ApartmentPredictor: b12efcb4
- ApartmentPredictor: 27054e39
- Postman: apartmentPredictorCRUD

- Spring Boot: JPA Inherence
- JPA Relationships Guide
- CACAJEC
40 26/02/2026 - React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect: with who is syncing / dependencies & return clean-up
(3) maps & ES6 & Manage state & render cycle
(4) Forms & SPA CRUD operations for Apartment: react Hook form
(5) decoupled version with custom hook > Context

- useContext
- useReducer
- React JS App: router
- Material sideBar: Drawer

++ ApartmentPredictor-React: nodes tree v2

++ mathsWeb:
(1) MUI Drawer
(2) Theming: sx
- React Principles
- Describing the UI
- Adding Interactivity
- Managing state

- React JS App: router
- Material UI React Drawer

- ApartmentPredictor-React: 3a2560
- Codesandbox: Praga CRUD-1
- Codesandbox: Praga CRUD-2 (telegram)
- Codesandbox: Praga CRUD-3 (dynamic checkbox)
- Codesandbox: imageSize-context-1



- mathsWeb: repo
- mathsWeb: deployed
41 27/02/2026 - React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect: with who is syncing / dependencies & return clean-up
(3) maps & ES6 & Manage state & render cycle
(4) Forms & SPA CRUD operations for Apartment: react Hook form
(5) decoupled version with custom hook > Context
(6) CRUD feature (paint-compoments/reducer/api/context)
(7) Project management versions: ApartmentPredictor-React_index.md

- useContext: CRUD-Praga-5
- useReducer: CRUD-Praga-4

- Lab#02: React ThinkInReact
- React Principles
- Describing the UI
- Adding Interactivity
- Managing state

- ApartmentPredictor-React: c794305
- Codesandbox: Praga CRUD-4 (reducer)
- Codesandbox: Praga CRUD-5 (context)

- Lab#02: React ThinkInReact

March 2026

Backlog course March 2025 table
Sprint Day Date Topics Details Topics
12 42 02/03/2026 - Sprint#12: ApartmentPredictor Full-Architecture V

- React:
(1) Lab#02: ThinkInReact, Amazon
(2) Lab#03: ThinkInReact, eCommerce
(3) Lab#04: ThinkInReact, real-state
(4) Lab#05: ThinkInReact, thread-review
(5) Lab#09: ThinkInReact, Timers

- How We Hire Engineers When AI Writes Our Code:
(1) architecture
(2) tradeoff
(3) criteria
(4) understanding code
(5) creativity

- useReducer: CRUD-Praga-4
- useContext: CRUD-Praga-5

- React Principles
- Describing the UI
- Adding Interactivity
- Managing state

- Lab#02: ThinkInReact, Amazon
- Lab#03: ThinkInReact, eCommerce
- Lab#04: ThinkInReact, real-state
- Lab#05: ThinkInReact, thread-review
- Lab#06: ThinkInReact, timers

- How We Hire Engineers…
- Amazon in 1995

- Codesandbox: Praga CRUD-4 (reducer)
- Codesandbox: Praga CRUD-5 (context)
43 03/03/2026 - React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect: with who is syncing / dependencies & return clean-up
(3) maps & ES6 & Manage state & render cycle
(4) Forms & SPA CRUD operations for Apartment: react Hook form
(5) decoupled version with custom hook > Context
(6) Project management versions: ApartmentPredictor-React_index.md

- useReducer: CRUD-Praga-4
- useContext: CRUD-Praga-5

++ Middleware: .env, api axios, service, context & custom hook
- React Principles
- Describing the UI
- Adding Interactivity
- Managing state

- Codesandbox: Praga CRUD-4 (reducer)
- Codesandbox: Praga CRUD-5 (context)

- ApartmentPredictor-React: ad24af1cc
44 05/03/2026 - React:
(1) Project management versions: ApartmentPredictor-React_index.md: v2
(2) Middleware
(3) Folder structure

++ AI: basic vocabulary: Local Ai, Plugin at IDE, Agent, LM Studio, Hugging Face, Models, APIs, Windsurf. Idea AI assistants, etc…
- ApartmentPredictor-React: e9da9d8c
- ApartmentPredictor-React masterDoc v2

- Introducing OpenClaw AWS …
- AWS Bedrock
- Cascade agentic AI: JetBrains IDEs
- Idea plugin
- MiniMax
- Qwen
- ollama
- LM Studio


- Java jar v3 backend download
45 06/03/2026 - React:
(1) Project management versions: ApartmentPredictor-React_index.md:v2 and v3
(2) Folder structure
(3) Apartment CRUD
(4) Sidebar (Drawer) and Theming (sx)

- React dev tools: debugging

- MathsWeb: sidebar and theming
- ApartmentPredictor-React: b7efc5c4

- Project Structure
- React dev tools
- Chrome store



- mathsWeb: repo
- mathsWeb: deployed
13 43 09/03/2026 - Sprint#13: ApartmentPredictor React Full-Architecture VI

- React:
(1) Project management versions: ApartmentPredictor-React_index.md:v2 and v3
(2) Folder structure
(3) Apartment CRUD
(4) Sidebar (Drawer) and Theming (sx)

- MathsWeb: sidebar and theming

- Commit 26444: Where is the error?
- Commit e24f4f: CREATE error

- AWS: S3 bucket & Dynamodb NoSql
- ApartmentPredictor-React: 26444
- CREATE CRUD error
- Project Structure v2

- React Project Structure & dev tools
- React dev tools / - Chrome store

- mathsWeb: repo / - mathsWeb: deployed

- .gsheet: where is the error / - Java jar v3 backend download

44 10/03/2026 - React:
(1) Project management versions: ApartmentPredictor-React_index.md: v2 and v3
(2) Folder structure
(3) Apartment CRUD
(4) Sidebar (Drawer) and Theming (sx)

- Commit 8523d90: CREATE & UPDATE error

- MathsWeb: sidebar and theming
- userBorrowBookFront
- ApartmentPredictor-React: 80227d

- mathsWeb: repo / - mathsWeb: deployed / - userBorrowBookFront

- .gsheet: where is the error / - Java jar v3 backend download

- ApartmentPredictor-React: afeb8caf

45 12/03/2026 - React:
(1) Project management versions: ApartmentPredictor-React_index.md: v4
(2) Folder structure
(3) Apartment CRUD
(4) Sidebar (Drawer) and Theming (sx)
(5) Review for Apartment feature (Reviewers hardcoded)
(6) useNavigate

++ Why naviate is so relevant to React

++ React Filters: FilterBorrows from userBorrowBookFront
(1) filter object (to send to back)
(2) filtered objects (to get from back)
(3) api rest call with filter params (filter object)
- ApartmentPredictor-React: a6798cd



- useNavigate & navigate



- userBorrowBookFront
- FilterBorrows.jsx
46 13/03/2026 - React:
(1) Project management versions: ApartmentPredictor-React_index.md: v4
(2) Folder structure
(3) Apartment CRUD
(4) Sidebar (Drawer) and Theming (sx)
(5) Review for Apartment feature (Reviewers hardcoded)
(6) useNavigate



- ApartmentPredictor-React: bffd503
- ApartmentPredictor-React: 6540e60

- useNavigate & navigate / - useNavigate

14 47 16/03/2026 - Sprint#14: ApartmentPredictor Full-Architecture VII

- Java Spring Boot:
(1) ApartmentPrediction_masterDoc: v4
(2) Pagination and Pageable
(3) Testing Postman
(4) Cascade definition for Apartment

++ React: MUI React Pagination: Stack, Pagination, TableContainer
- ApartmentPrediction: c30e4d3
- ApartmentPrediction: 99d9d6d
- orphanremoval-and-cascade

- Paging and Sorting
- Pagination
- Pageable: repo
userBorrowBookPagination repo
- apartment-predictor_v4.jar
- PaginatedBooks.jsx
- MUI react-pagination
48 17/03/2026 - Java Spring Boot:
(1) ApartmentPrediction_masterDoc: v4
(2) Pagination and Pageable
(3) Testing Postman
(4) Cascade definition for Apartment

- AWS Cognito Auth:
(1) Create & configure user pool
(2) Define MockUp and flow
(3) install dependencies & project structure

- JPA Specification from Criteria API
- ApartmentPrediction: b225da

- Paging and Sorting
- Pagination
- Pageable: repo

- repo docs AWS auth
- AWS-CognitoReactJS-Auth.md

- AlbertProfe/authReactCognitoJS · GitHub
- AlbertProfe/authReactCognito · GitHub
- AlbertProfe/authReactCognitoHosted · GitHub

- JPA-specification-1.md
- BorrowSpecification.java
- IBM: Criteria API
49 19/03/2026 - Java Spring Boot:
(1) ApartmentPrediction_masterDoc: v5
(2) Pagination and Pageable
(3) Testing Postman
(4) Cascade definition for Apartment
(5) Queries: specification filter for Apartment

- Java & DB:
(1) JDBC SQL statement as string
(2) JPA 1.0: entityManager and born Java Persistence Query Language
(3) JPA 2.0 jpql mature, Criteria API and queryDSL

- JPA Specification from Criteria API
- ApartmentPrediction:220120f
- ApartmentPrediction:b2a3f1d

- JPA Query Methods :: Spring Data JPA
- Spring Boot: Lab#SB01-1: DataBase
- Spring Boot: JPA Queries – albertprofe wiki
- 2026 Spring Query Report

- JPA-specification-1.md
- JPA-specification-2.md
- Plain Apartment specification

- ApartmentPrediction_masterDoc_v5
50 20/03/2026 - Java Spring Boot:
(1) ApartmentPrediction_masterDoc: v5
(2) Pagination and Pageable
(3) Testing Postman
(4) Cascade definition for Apartment
(5) Queries
(6) JPA Specification from Criteria API : Reviewer & Joins

- JPQL: derived from name queries

- Postman Flow: how to automate testing requests

- ApartmentPrediction React: component page for filter
- ApartmentPrediction: 557a62
- ApartmentPrediction-React: f5f602

- JPA Query Methods :: Spring Data JPA
- Spring Boot: JPA Queries – albertprofe wiki

- Postman Flow: test query


- JavaOne 2026 AI
15 51 23/03/2026 - Sprint#15: ApartmentPredictor Full-Architecture VIII

- Java Spring Boot:
(1) ApartmentPrediction_masterDoc: v5
(2) Pagination and Pageable
(3) Testing Postman
(4) Cascade definition for Apartment
(5) Queries
(6) JPA Specification from Criteria API : Reviewer & Joins

- Queries: JPQL, Criteria API, native

- React:
(1) ApartmentPrediction-React_masterDoc: v5
(2) Component for Filter
- ApartmentPrediction: 25282b
- ApartmentPrediction-React: 9e8a550

- Spring Boot: JPA Queries
- query-creation definition
- query-creation
- query method subject keywords
- Spring Expression Language (SpEL)

- Lab#02: Derived Queries

- dijkstras-java
52 24/03/2026 - Java Spring Boot:
(1) ApartmentPrediction_masterDoc: v6
(2) Pagination and Pageable
(3) Testing Postman
(4) Cascade definition for Apartment
(5) Queries
(6) JPA Specification from Criteria API : Reviewer & Joins
(7) School: geoposition field

- Queries: JPQL, Criteria API, native

- React:
(1) ApartmentPrediction-React_masterDoc: v6.0, just skeleton
(2) Component page for School and entry-point component
(3) map for leafletjs
(4) create-assign school-apartment

- ApartmentPrediction-React_masterDoc: v6.1, refactor
(0) ApartmentPrediction-React API, Data & State Layers refactor:
(1) define current state
(2) which options do we have?
(3) decision-making: option c
(4) create a plan and implementation phases
- ApartmentPrediction: 4c01d893
- ApartmentPrediction-React: a012a86

- leafletjs
- leafletjs-react

- dataModel-refactor: repo
(1) datamodel-refactor.md
(2) data-layer-options.md
(3) refactor-plan-implement.md

- React Best Practices by Vercel: skill
53 26/03/2026 - ApartmentPrediction-React_masterDoc: v6.1, refactor
(0) ApartmentPrediction-React API, Data & State Layers refactor:
(1) define current state
(2) which options do we have?
(3) decision-making: option C
(4) create a plan and implementation phases
(5) code, implement and review it

++ Mindset: how to face AI times
- ApartmentPrediction-React: a5545183 at refactor-middleware-data

- dataModel-refactor: repo
(1) datamodel-refactor.md
(2) data-layer-options.md
(3) refactor-plan-implement.md
(4) refactor-plan-review.md
- React Best Practices by Vercel: skill

- Claude Code
- Open Code
- Amz Q Dev

- gDrive: refactor-plan-implement by students
54 27/03/2026 - ApartmentPrediction-React_masterDoc: v6.2, school CREATE
(0) form for create new School
(1) logic for School, new school and assign apartment
(3) map with schools


- Coding with AI, openCode, desktop IDE:
(1) OpenCode desktop IDE
(2) Tools and skills
(3) Test api rest with commands: api.ts
- ApartmentPrediction-React: 9c4d4597 at refactor-middleware-data-2

- api tools

- Rules
- Skills
- Tools
#16 55 30/03/2026 - Spring Boot: DynamoDB SDK v2.x dependency
(1) noSql: pK and sK
(2) Renovations/Person document
(3) Enhanced client
(4) noSqlPerson project

- AWS dynamoDB:
(1) create account
(2) create table, pk and sk
(3) root keys and save them
(4) local cli aws configure
- noSqlPerson: ca8baa
- noSqlPerson: 49fc58
- SpreadSheet NoSql Renovations

- Java 2.x: DynamoDB Enhanced Client
- Map Java objects
- putItem
- DynamoDB examples using SDK for Java 2.x: putItem

- dynamoDB-enhanced
- dynamoDB-enhanced: ommon-primitive-operations



Postman
56 31/03/2026 - Java Spring Boot:
(0) ApartmentPrediction_masterDoc: v7
(1) Renovation domain

- Spring Boot AWS personNoSQL Sandbox:
(0) DynamoDB SDK v2.x dependency
(1) noSql: pK and sK
(2) Renovations/Person document/item (gsheet)
(3) Enhanced client
(4) noSqlPerson project
(5) map field depending on sortkey
(6) Map<String, Object> extraAttributes
- ApartmentPrediction: xxxx
- noSqlPerson: 961260
- noSqlPerson: 46c778
- AWS SDK v2 Enhanced Client: Java
- Map approach

- SpreadSheet NoSql Renovations
- SpreadSheet NoSql person

April 2026

Backlog course April 2025 table
Sprint Day Date Topics Details Topics
#17 57 09/04/2026 - Plan Sprint#17/18
- Coding with AI, openCode, desktop IDE:
(1) OpenCode desktop IDE
(2) Tools and skills
(3) Test api rest with commands: api.ts

- ApartmentPrediction-React_masterDoc: v6.2, school CREATE
(0) form for create new School
(1) logic for School, new school and assign apartment
(3) map with schools


++ GraphQL:
(1) Cloud: AWS AppSync Server (+ WS/SSE)
(2) Spring Boot Starter GraphQL Server
(3) React Client (Middleware GraphQL)

++ NoSQL DynamoDB: how to relate items?
++ Person: Student <-> Teacher? Course? PK?
- api tools
- Rules / - Skills / - Tools
- dataModel-refactor: repo
(1) datamodel-refactor.md
(2) data-layer-options.md
(3) refactor-plan-implement.md
(4) refactor-plan-review.md
- React Best Practices by Vercel: skill


- AWS AppSync
- GraphQL
- Why invent something new?
- What is GraphQL?



- Spring Boot for GraphQL
- React query for GraphQL
- Apollo Client
58 10/04/2026 - Java Spring Boot:
(0) ApartmentPrediction_masterDoc: v7
(1) Renovation domain


- Spring Boot AWS personNoSQL Sandbox:
(0) DynamoDB SDK v2.x dependency
(1) noSql: pK and sK
(2) Teacher / Student /Person document/item (gsheet)
(3) Enhanced client
(4) noSqlPerson how to relate items? Pk? Social Club?
(5) map field depending on sortkey
(6) Map<String, Object> extraAttributes

++ Architectures:
(1) Spring Boot GraphQL + DyanmoDB + React
(2) React + Apollo + AWS (AppSync, DynamoDB)
(3) Spring Boot Client AppSync + AWS
- noSqlPerson: 46c778
- AWS SDK v2 Enhanced Client: Java
- Map approach

- dynamoDB-enhanced
- dynamoDB-enhanced: common-primitive-operations
- Postman

- SpreadSheet NoSql Renovations
- SpreadSheet NoSql person


#18 59 13/04/2026 - Spring Boot AWS personNoSQL Sandbox:
(1) noSql: pK and sK
(2) Teacher / Student /Person document/item (gsheet)
(3) noSqlPerson how to relate items? Pk? Social Club? Programming courses? Catalonia elementary schools?
(4) Defining unique-table
(5) Spring Boot graphQL
(6) Test with GraphiQL Playground / Postman

++ Microservices or Monolith ? Modulith
- noSqlPerson: 46c778
- noSqlPerson: e030a1
- SpreadSheet NoSql person

- Choosing the Right DynamoDB Partition Key
- What is a NoSQL database?
- Key Concepts

- Spring for GraphQL
- Getting started with Spring for GraphQL
60 14/04/2026 - Spring Boot AWS personNoSQL Sandbox:
(1) noSql : pK and sK
(2) Teacher / Student /Person document/item (gsheet)
(3) Create Programming Courses: GraphQL + noSQL DynamodDB
(4) query, mutation, subscription
(5) create a subscription: createPerson

- Reactive Programming: Webflux: Flux, Sink, Publisher, …
- Pub-Sub pattern
- noSqlPerson: 5ec944
- Adding GraphQL Subscriptions
- personNoSql + graphQL

- How shema works

- Web on Reactive Stack
61 16/04/2026 - Coding with AI, openCode, desktop IDE:
(1) OpenCode desktop IDE
(2) Tools and skills
(3) Test api rest with commands: api.ts

- ApartmentPrediction-React_masterDoc: v6.1, Middleware/Data Refactor guide

- Spring Boot AI: agents
- api tools
- Rules / - Skills / - Tools
- dataModel-refactor: repo
(1) datamodel-refactor.md
(2) data-layer-options.md
(3) refactor-plan-implement.md
(4) refactor-plan-review.md
- React Best Practices by Vercel: skill

- Spring Boot AI vs OpenCode
- OpenCode Multi-Agent
62 17/04/2026 - Coding with AI, openCode, desktop IDE:
(1) OpenCode desktop IDE
(2) Tools and skills
(3) Test api rest with commands: api.ts

- ApartmentPrediction-React_masterDoc: v6.2, school CREATE
(0) form for create new School
(1) logic for School, new school and assign apartment
(3) map with schools

- Java Spring Boot:
(0) ApartmentPrediction_masterDoc: v7
(1) Renovation domain


- dataModel-refactor: repo at refactor-middleware-data-2
(1) datamodel-refactor.md
(2) data-layer-options.md
(3) refactor-plan-implement.md
(4) refactor-plan-review.md

- OpenCode:folders

- ApartmentPrediction-React at refactor-middleware-data-2: 34f17ec

May 2026

Backlog course May 2025 table
Sprint Day Date Topics Details Topics

June 2026

  • Starting Pràctiques: 28/05/2026
  • Finishing Pràctiques: 12/06/2026
Back to top