A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | Date | Activity | Module | Location | Lecturer | Notes | Weekly Excercise | Study more | ||||||||||||||||||
2 | 7/2/1403 | Intro to the course | 1. Ice-breaking and review | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | course objectives, grading policy | - | |||||||||||||||||||
3 | 7/7/1403 | OS and Linux Basics | 1. Ice-breaking and review | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | session2-linux.pdf | https://www.aparat.com/v/SjZMO?playlist=634448 , https://learn.microsoft.com/en-us/windows/wsl/install , https://www.coursera.org/learn/hands-on-introduction-to-linux-commands-and-shell-scripting | |||||||||||||||||||
4 | 7/9/1403 | Version Control with Git | 1. Ice-breaking and review | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | https://computerworkshop.netlify.app/git | Git/GitHub https://quera.org/course/assignments/73447/problems | https://www.coursera.org/learn/introduction-git-github | ||||||||||||||||||
5 | 7/14/1403 | Web, HTTP, (REST) API | 1. Ice-breaking and review | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | Session3 - Web API | HTTP: https://www.aparat.com/v/DdAyH , REST API: https://www.aparat.com/v/s48hyi8 , https://apipheny.io/free-api/ | |||||||||||||||||||
6 | 7/16/1403 | ChatGPT, Candidate topics of the hands-on project | Hands-on project | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | Advanced Programming (40244) - Fall 2024 https://quera.org/course/assignments/73926/problems/252445 | Using OpenWeatherMap and Tavily API in a simple C/Python program https://quera.org/course/assignments/73923/problems | https://docs.tavily.com/docs/rest-api/examples , https://openweathermap.org/api/one-call-3 | ||||||||||||||||||
7 | 7/21/1403 | DIKW (Data, Information, Knowledge, Wisdom) Database and Knowledge Base | 2. Data, knowledge, and conceptual modeling | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | Session 6 - DIKW | ||||||||||||||||||||
8 | 7/23/1403 | Data Modeling (Knowledge Graph, Ontology, Class Diagram) | 2. Data, knowledge, and conceptual modeling | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | Session 7 - Data Modeling | Create a simple knowledge graph or class diagram for the AI project. | https://enterprise-knowledge.com/whats-the-difference-between-an-ontology-and-a-knowledge-graph/ https://medium.com/codex/understanding-ontologies-and-knowledge-graphs-4664afc4f961 https://boardmix.com/articles/class-diagram/ | ||||||||||||||||||
9 | 7/28/1403 | MySQL, Neo4j, {Redis} | 2. Data, knowledge, and conceptual modeling | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | Session 8 - MySQL, Neo4j | SQL: https://www.w3schools.com/sql/default.asp , https://devopscube.com/sql-for-data-science/ , https://www.datacamp.com/cheat-sheet/sql-basics-cheat-sheet MySQL: https://gist.github.com/xei/26c22e1aee1cbad507fce3d74a4f3384 Neo4j: https://www.youtube.com/playlist?list=PL6UwySlcwEYJ9BKIiCk2bMfd_JKXwDPQJ , https://www.youtube.com/watch?v=IShRYPsmiR8 | |||||||||||||||||||
10 | 7/30/1403 | Building a knowledge graph for a movie recommendation system | Hands-on project | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | Session 9 - KG for Movie Recommender | MySQL and Neo4j | |||||||||||||||||||
11 | 8/5/1403 | AI, AI Agents, LLMs | 3. AI, AI Agents, LLMs, and Agentic applications | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | Session 10 - AI Agents | https://www.deeplearning.ai/courses/ai-for-everyone/ https://www.youtube.com/watch?v=aircAruvnKk https://research.ibm.com/blog/what-are-ai-agents-llm https://promptengineering.org/what-are-large-language-model-llm-agents/ | |||||||||||||||||||
12 | 8/7/1403 | Hallucination, RAG, GraphRAG | 3. AI, AI Agents, LLMs, and Agentic applications | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | Session 11 - RAG | ChatGPT, Prompt Engineering, RAG, GraphRAG | https://neo4j.com/blog/graphrag-manifesto/ https://microsoft.github.io/graphrag/ | ||||||||||||||||||
13 | 8/12/1403 | Ollama, LLMs and Embedding Models | 3. AI, AI Agents, LLMs, and Agentic applications | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | Session 12 - Ollama | https://ollama.com/blog/ollama-is-now-available-as-an-official-docker-image https://ollama.com/blog/llama3.2 https://www.deepset.ai/blog/the-beginners-guide-to-text-embeddings https://ollama.com/blog/embedding-models https://www.nomic.ai/blog/posts/nomic-embed-text-v1 https://docs.nomic.ai/reference/api/embed-text-v-1-embedding-text-post | |||||||||||||||||||
14 | 8/14/1403 | Finalize the architecture of Agentic Applications and RAG systems Mid-term exam | Hands-on project | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | https://quera.org/course/assignments/75812/problems | Call Ollama from a simple C/Python program | https://www.youtube.com/watch?v=gUrENDkPw_k https://blog.devops.dev/building-generative-ai-with-spring-boot-ai-and-integrating-ollama-llama3-af21e0cd756d | text embedding: https://www.nomic.ai/blog/posts/nomic-embed-text-v1 https://docs.nomic.ai/reference/api/embed-text-v-1-embedding-text-post | |||||||||||||||||
15 | 8/19/1403 | Intro to Java and JVM | 4. Core Java programming | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | Session 14 - JVM | https://www.javatpoint.com/history-of-java https://www.programiz.com/java-programming | |||||||||||||||||||
16 | 8/21/1403 | Java syntax basics, data types, variables, operations | 4. Core Java programming | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | Session 15 - Java Core | Java Core (A few algorithmic problems) | |||||||||||||||||||
17 | 8/26/1403 | Type casting, control structures, functions (methods) | 4. Core Java programming | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | Session 16 - Java Core II | ||||||||||||||||||||
18 | 8/28/1403 | Core OOP concepts, classes, objects message passing through methods Encapsulation (hiding internal state) Abstraction (defining controlled methods to manipulate internal state) | 5. Object-Oriented Programming | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | Session 17 - Programming Paradigms Session 17 - Object-oriented Programming | Java OOP 1 | |||||||||||||||||||
19 | 9/3/1403 | JVM Memory (stack and heap), Garbage Collection and Memory Leak, String Pool, Open Recursion, Constructors, Singleton pattern, Value vs Reference Passing, Static Members, Wrapper Classes, BigInteger, BigDecimal | 5. Object-Oriented Programming | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | Session 18 - Object-oriented Programming II | ||||||||||||||||||||
20 | 9/5/1403 | JVM Memory (stack and heap), Garbage Collection and Memory Leak, String Pool, Open Recursion, Constructors, Singleton pattern, Value vs Reference Passing, Static Members, Wrapper Classes, BigInteger, BigDecimal | 5. Object-Oriented Programming | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | Students implement inheritance in their agent design (e.g., subclass specific types of agents with unique methods). | Java OOP 2 | |||||||||||||||||||
21 | 9/10/1403 | Inheritance, Polymorphism (method overriding) | 5. Object-Oriented Programming | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | Session 20 - Inheritance & Polymorphism | ||||||||||||||||||||
22 | 9/12/1403 | Abstract Classes, Interfaces, Enums | 5. Object-Oriented Programming | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | Session 21 - Abstraction | Java OOP 3 | |||||||||||||||||||
23 | 9/17/1403 | Generics Java collections framework (ArrayList, HashMap, etc.) Consuming external APIs in Java. File I/O operations Exception handling | 5. Object-Oriented Programming | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | Session 22 - Java Core III | ||||||||||||||||||||
24 | 9/19/1403 | Workshop: Developing a super-simple RAG application | Hands-on project | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | Make API calls (e.g., calling an LLM for real-time data) and use the response in Java. | Java: Call an API and write to a file | |||||||||||||||||||
25 | 9/24/1403 | Workshop: Developing a super-simple RAG application | Hands-on project | ابن سینا الف ۱۱ | Hamidreza Hosseinkhani | Notes | ||||||||||||||||||||
26 | 9/26/1403 | Concurrency, Multithreading and Async Programming | 6. Advanced topics | ابن سینا الف ۱۱ | Moeein Aali | , Optimize the AI agent’s logic for faster response times using concurrency. | Multithreading in Java | |||||||||||||||||||
27 | 10/1/1403 | Functional Programming in Java | 6. Advanced topics | ابن سینا الف ۱۱ | Name | Lambdas, streams, and functional interfaces Use functional programming in parts of the AI agent’s logic (e.g., processing agent responses). | ||||||||||||||||||||
28 | 10/3/1403 | Web development using Spring Boot | 6. Advanced topics | ابن سینا الف ۱۱ | Name | Notes | - | https://blog.devops.dev/building-generative-ai-with-spring-boot-ai-and-integrating-ollama-llama3-af21e0cd756d | ||||||||||||||||||
29 | 10/8/1403 | Kotlin and Android Development | 6. Advanced topics | ابن سینا الف ۱۱ | Moeein Aali | Notes | ||||||||||||||||||||
30 | 10/10/1403 | Wrap-up | Hands-on project | ابن سینا الف ۱۱ | Name | Notes | - | |||||||||||||||||||
31 | 10/29/2024 | Final Exam | | Place | Name | 3:00 p.m. | ||||||||||||||||||||
32 | 10/14/2024 | Hands-on project defense | Hands-on project | Online | Hamidreza Hosseinkhani | Notes | ||||||||||||||||||||
33 | 11/20/2024 | Submit final scores on EDU | | Place | Name | Notes |