Programming Resources | Python | Javascript | Artificial Intelligence Updates | Computer Science Courses | AI Books
54.3K subscribers
880 photos
1 video
4 files
334 links
Everything about programming for beginners
* Python programming
* Java programming
* App development
* Machine Learning
* Data Science

Managed by: @love_data
Download Telegram
Machine Learning – Essential Concepts 🚀

1️⃣ Types of Machine Learning

Supervised Learning – Uses labeled data to train models.

Examples: Linear Regression, Decision Trees, Random Forest, SVM


Unsupervised Learning – Identifies patterns in unlabeled data.

Examples: Clustering (K-Means, DBSCAN), PCA


Reinforcement Learning – Models learn through rewards and penalties.

Examples: Q-Learning, Deep Q Networks



2️⃣ Key Algorithms

Regression – Predicts continuous values (Linear Regression, Ridge, Lasso).

Classification – Categorizes data into classes (Logistic Regression, Decision Tree, SVM, Naïve Bayes).

Clustering – Groups similar data points (K-Means, Hierarchical Clustering, DBSCAN).

Dimensionality Reduction – Reduces the number of features (PCA, t-SNE, LDA).


3️⃣ Model Training & Evaluation

Train-Test Split – Dividing data into training and testing sets.

Cross-Validation – Splitting data multiple times for better accuracy.

Metrics – Evaluating models with RMSE, Accuracy, Precision, Recall, F1-Score, ROC-AUC.


4️⃣ Feature Engineering

Handling missing data (mean imputation, dropna()).

Encoding categorical variables (One-Hot Encoding, Label Encoding).

Feature Scaling (Normalization, Standardization).


5️⃣ Overfitting & Underfitting

Overfitting – Model learns noise, performs well on training but poorly on test data.

Underfitting – Model is too simple and fails to capture patterns.

Solution: Regularization (L1, L2), Hyperparameter Tuning.


6️⃣ Ensemble Learning

Combining multiple models to improve performance.

Bagging (Random Forest)

Boosting (XGBoost, Gradient Boosting, AdaBoost)



7️⃣ Deep Learning Basics

Neural Networks (ANN, CNN, RNN).

Activation Functions (ReLU, Sigmoid, Tanh).

Backpropagation & Gradient Descent.


8️⃣ Model Deployment

Deploy models using Flask, FastAPI, or Streamlit.

Model versioning with MLflow.

Cloud deployment (AWS SageMaker, Google Vertex AI).

Join our WhatsApp channel: https://whatsapp.com/channel/0029Va8v3eo1NCrQfGMseL2D
3
### Learn GitHub Easily 🤩

Here's all you need to get started 🙌

1. Introduction to GitHub
- What is GitHub?
- Differences between Git and GitHub
- Creating a GitHub account

2. Creating a Repository
- Setting up a new repository
- Understanding repository settings (public vs. private)
- Adding a README file

3. Cloning a Repository
- Cloning repositories to your local machine
- Understanding SSH vs. HTTPS cloning

4. Managing Repositories
- Navigating the GitHub interface
- Viewing and editing files
- Understanding branches in GitHub

5. Committing Changes
- Making changes locally and pushing to GitHub
- Committing changes with meaningful messages
- Synchronizing changes with git pull and git push

6. Branching and Merging
- Creating branches on GitHub
- Comparing branches
- Merging branches through pull requests

7. Pull Requests (PRs)
- Creating a pull request
- Reviewing pull requests
- Merging pull requests and resolving conflicts

8. Issues and Project Management
- Creating and managing issues
- Using labels, milestones, and assignees
- Introduction to GitHub Projects for task management

9. Collaboration Features
- Using GitHub Discussions
- Code reviews and comments
- Mentioning team members and using notifications

10. GitHub Actions
- Introduction to CI/CD with GitHub Actions
- Creating simple workflows
- Using actions from the GitHub Marketplace

11. GitHub Pages
- Setting up GitHub Pages for static sites
- Using Jekyll for site generation

12. Managing Releases
- Creating and managing releases
- Understanding versioning (tags)

13. Security Features
- Setting up branch protections
- Enabling two-factor authentication (2FA)
- Managing collaborator permissions

14. Exploring GitHub API
- Overview of GitHub API
- Making API requests for repositories and issues

15. GitHub CLI
- Introduction to GitHub Command Line Interface
- Common commands and usage

16. Best Practices
- Writing effective commit messages
- Structuring your repositories
- Managing large projects and dependencies

17. Resources for Continued Learning
- GitHub documentation and guides
- Online tutorials and courses
- Community forums and events
5
How do analysts use SQL in a company?

SQL is every data analyst’s superpower! Here's how they use it in the real world:

Extract Data

Pull data from multiple tables to answer business questions.

Example:

SELECT name, revenue FROM sales WHERE region = 'North America';


(P.S. Avoid SELECT *—your future self (and the database) will thank you!)


Clean & Transform

Use SQL functions to clean raw data.

Think TRIM(), COALESCE(), CAST()—like giving data a fresh haircut.


Summarize & Analyze

Group and aggregate to spot trends and patterns.

GROUP BY, SUM(), AVG() – your best friends for quick insights.


Build Dashboards

Feed SQL queries into Power BI, Tableau, or Excel to create visual stories that make data talk.

Run A/B Tests

Evaluate product changes and campaigns by comparing user groups.

SQL makes sure your decisions are backed by data, not just gut feeling.


Use Views & CTEs

Simplify complex queries with Views and Common Table Expressions.

Clean, reusable, and boss-approved.


Drive Decisions

SQL powers decisions across Marketing, Product, Sales, and Finance.

When someone asks “What’s working?”—you’ve got the answers.


And remember: write smart queries, not lazy ones. Say no to SELECT * unless you really mean it!

Hit ♥️ if you want me to share more real-world examples to make data analytics easier to understand!

Share with credits: https://t.iss.one/sqlspecialist

Hope it helps :)
2👍1
Important skills every self-taught developer should master:

💻 HTML, CSS & JavaScript — the foundation of web development

⚙️ Git & GitHub — track changes and collaborate effectively

🧠 Problem-solving — break down and debug complex issues

🗄️ Basic SQL — manage and query data efficiently

🧩 APIs — fetch and use data from external sources

🧱 Frameworks — like React, Flask, or Django to build faster

🧼 Clean Code — write readable, maintainable code

📦 Package Managers — like npm or pip for managing libraries

🚀 Deployment — host your projects for the world to see

Web Development Resources: https://whatsapp.com/channel/0029VaiSdWu4NVis9yNEE72z
1
Master C programming in 30 days with free resources

Week 1: Basics
1. Days 1-3: Learn the basics of C syntax, data types, and variables.
2. Days 4-7: Study control structures like loops (for, while) and conditional statements (if, switch).

Week 2: Functions and Arrays
3. Days 8-10: Understand functions, how to create them, and pass parameters.
4. Days 11-14: Dive into arrays and how to manipulate them.

Week 3: Pointers and Memory Management
5. Days 15-17: Learn about pointers and their role in C programming.
6. Days 18-21: Study memory management, dynamic memory allocation, and deallocation (malloc, free).

Week 4: File Handling and Advanced Topics
7. Days 22-24: Explore file handling and I/O operations in C.
8. Days 25-28: Learn about more advanced topics like structures, unions, and advanced data structures.
9. Days 29-30: Practice and review what you've learned. Work on small projects to apply your knowledge.

Throughout the 30 days, make sure to:
- Code every day to reinforce your learning.
- Use online resources, tutorials, and textbooks.
- Join C programming communities and forums for help and discussions.
- Solve coding challenges and exercises to test your skills (e.g., HackerRank, LeetCode).
- Document your progress and make notes.

Free Resources to learn C Programming
👇👇

Introduction to C Programming

CS50 Course by Harvard

Master the basics of C Programming

C Programming Project

Let Us C Free Book

Free Interactive C Tutorial

Join @free4unow_backup for more free courses

ENJOY LEARNING 👍👍
1
🚀 Coding Projects & Ideas 💻

Inspire your next portfolio project — from beginner to pro!

🏗️ Beginner-Friendly Projects

1️⃣ To-Do List App – Create tasks, mark as done, store in browser.
2️⃣ Weather App – Fetch live weather data using a public API.
3️⃣ Unit Converter – Convert currencies, length, or weight.
4️⃣ Personal Portfolio Website – Showcase skills, projects & resume.
5️⃣ Calculator App – Build a clean UI for basic math operations.

⚙️ Intermediate Projects

6️⃣ Chatbot with AI – Use NLP libraries to answer user queries.
7️⃣ Stock Market Tracker – Real-time graphs & stock performance.
8️⃣ Expense Tracker – Manage budgets & visualize spending.
9️⃣ Image Classifier (ML) – Classify objects using pre-trained models.
🔟 E-Commerce Website – Product catalog, cart, payment gateway.

🚀 Advanced Projects

1️⃣1️⃣ Blockchain Voting System – Decentralized & tamper-proof elections.
1️⃣2️⃣ Social Media Analytics Dashboard – Analyze engagement, reach & sentiment.
1️⃣3️⃣ AI Code Assistant – Suggest code improvements or detect bugs.
1️⃣4️⃣ IoT Smart Home App – Control devices using sensors and Raspberry Pi.
1️⃣5️⃣ AR/VR Simulation – Build immersive learning or game experiences.

💡 Tip: Build in public. Share your process on GitHub, LinkedIn & Twitter.

🔥 React ❤️ for more project ideas!
4
📌 Python Cheatsheet: Master the Foundations & Beyond
Start learning Python →

⬇️ Core Python Building Blocks

Basic Commands
→ print() – Display output
→ input() – Get user input
→ len() – Get length of a data structure
→ type() – Get variable type
→ range() – Generate a sequence
→ help() – Get documentation

Data Types
→ int, float, bool, str – Numbers & text
→ list, tuple, dict, set – Data collections

Control Structures
→ if / elif / else – Conditional logic
→ for, while – Loops
→ break, continue, pass – Loop control

⬇️ Advanced Concepts

Functions & Classes
→ def, return, lambda – Define functions
→ class, init, self – Object-oriented programming

Modules
→ import, from ... import – Reuse code

⬇️ Special Tools

Exception Handling
→ try, except, finally, raise – Handle errors

File Handling
→ open(), read(), write(), close() – Manage files

Decorators & Generators
@decorator, yield – Extend or pause functions

List Comprehension
→ [x for x in list if condition] – Create lists efficiently


Like for more ❤️
6
Common Programming Interview Questions

    How do you reverse a string?
    How do you determine if a string is a palindrome?
    How do you calculate the number of numerical digits in a string?
    How do you find the count for the occurrence of a particular character in a string?
    How do you find the non-matching characters in a string?
    How do you find out if the two given strings are anagrams?
    How do you calculate the number of vowels and consonants in a string?
    How do you total all of the matching integer elements in an array?
    How do you reverse an array?
    How do you find the maximum element in an array?
    How do you sort an array of integers in ascending order?
    How do you print a Fibonacci sequence using recursion?
    How do you calculate the sum of two integers?
    How do you find the average of numbers in a list?
    How do you check if an integer is even or odd?
    How do you find the middle element of a linked list?
    How do you remove a loop in a linked list?
    How do you merge two sorted linked lists?
    How do you implement binary search to find an element in a sorted array?
    How do you print a binary tree in vertical order?

Conceptual Coding Interview Questions

    What is a data structure?
    What is an array?
    What is a linked list?
    What is the difference between an array and a linked list?
    What is LIFO?
    What is FIFO?
    What is a stack?
    What are binary trees?
    What are binary search trees?
    What is object-oriented programming?
    What is the purpose of a loop in programming?
    What is a conditional statement?
    What is debugging?
    What is recursion?
    What are the differences between linear and non-linear data structures?


General Coding Interview Questions

    What programming languages do you have experience working with?
    Describe a time you faced a challenge in a project you were working on and how you overcame it.
    Walk me through a project you’re currently or have recently worked on.
    Give an example of a project you worked on where you had to learn a new programming language or technology. How did you go about learning it?
    How do you ensure your code is readable by other developers?
    What are your interests outside of programming?
    How do you keep your skills sharp and up to date?
    How do you collaborate on projects with non-technical team members?
    Tell me about a time when you had to explain a complex technical concept to a non-technical team member.
    How do you get started on a new coding project?

Best Programming Resources: https://topmate.io/coding/886839

Join for more: https://t.iss.one/programming_guide

ENJOY LEARNING 👍👍
1
Tech Stack Roadmaps by Career Path 🛣️

What to learn depending on the job you’re aiming for 👇

1. Frontend Developer
❯ HTML, CSS, JavaScript
❯ Git & GitHub
❯ React / Vue / Angular
❯ Responsive Design
❯ Tailwind / Bootstrap
❯ REST APIs
❯ TypeScript (Bonus)
❯ Testing (Jest, Cypress)
❯ Deployment (Netlify, Vercel)

2. Backend Developer
❯ Any language (Node.js, Python, Java, Go)
❯ Git & GitHub
❯ REST APIs & JSON
❯ Databases (SQL & NoSQL)
❯ Authentication & Security
❯ Docker & CI/CD Basics
❯ Unit Testing
❯ Frameworks (Express, Django, Spring Boot)
❯ Deployment (Render, Railway, AWS)

3. Full-Stack Developer
❯ Everything from Frontend + Backend
❯ MVC Architecture
❯ API Integration
❯ State Management (Redux, Context API)
❯ Deployment Pipelines
❯ Git Workflows (PRs, Branching)

4. Data Analyst
❯ Excel, SQL
❯ Python (Pandas, NumPy)
❯ Data Visualization (Matplotlib, Seaborn)
❯ Power BI / Tableau
❯ Statistics & EDA
❯ Jupyter Notebooks
❯ Business Acumen

5. DevOps Engineer
❯ Linux & Shell Scripting
❯ Git & GitHub
❯ Docker & Kubernetes
❯ CI/CD Tools (Jenkins, GitHub Actions)
❯ Cloud (AWS, GCP, Azure)
❯ Monitoring (Prometheus, Grafana)
❯ IaC (Terraform, Ansible)

6. Machine Learning Engineer
❯ Python + Math (Linear Algebra, Stats)
❯ Scikit-learn, Pandas, NumPy
❯ Deep Learning (TensorFlow/PyTorch)
❯ ML Lifecycle (Train, Tune, Deploy)
❯ Model Evaluation
❯ MLOps (MLflow, Docker, FastAPI)

React with ❤️ if you found this helpful — content like this is rare to find on the internet!

Credits: https://whatsapp.com/channel/0029VahiFZQ4o7qN54LTzB17

Coding Projects: https://whatsapp.com/channel/0029VazkxJ62UPB7OQhBE502

ENJOY LEARNING 👍👍
7
Road map for Full stack Developer

1. HTML
2. CSS
3. JS
4. React Js
5. Next Js
6. Node Js
7. Express Js
8. Mongo Database
9. Python
10. C
11. C++
12. Java

Optional

13. Php
14. Laravel
4
Note :-
1. MongoDB is highly versatile and supports a wide array of programming languages, including C, C++, C#, Go, Java, Node.js, PHP, Python, Ruby, Rust, Scala, and Swift, among others.

2. Python is a versatile programming language used in diverse applications, including web development, data science, machine learning, AI, automation, game development, and more, thanks to its readability, flexibility, and rich ecosystem of libraries.

3. Java is a versatile programming language used for a wide range of applications, including developing mobile apps (especially Android), desktop GUI applications, web applications, enterprise software, and even in areas like big data, embedded systems, and game development.

4. C is a versatile language used in diverse applications, including operating systems, embedded systems, game development, database systems, and compilers.

5. C is a procedural programming language, while C++ is an object-oriented programming language. C++ is a superset of C, and includes many of C's features.
1
DSA (Data Structures and Algorithms) Essential Topics for Interviews

1️⃣ Arrays and Strings

Basic operations (insert, delete, update)

Two-pointer technique

Sliding window

Prefix sum

Kadane’s algorithm

Subarray problems


2️⃣ Linked List

Singly & Doubly Linked List

Reverse a linked list

Detect loop (Floyd’s Cycle)

Merge two sorted lists

Intersection of linked lists


3️⃣ Stack & Queue

Stack using array or linked list

Queue and Circular Queue

Monotonic Stack/Queue

LRU Cache (LinkedHashMap/Deque)

Infix to Postfix conversion


4️⃣ Hashing

HashMap, HashSet

Frequency counting

Two Sum problem

Group Anagrams

Longest Consecutive Sequence


5️⃣ Recursion & Backtracking

Base cases and recursive calls

Subsets, permutations

N-Queens problem

Sudoku solver

Word search


6️⃣ Trees & Binary Trees

Traversals (Inorder, Preorder, Postorder)

Height and Diameter

Balanced Binary Tree

Lowest Common Ancestor (LCA)

Serialize & Deserialize Tree


7️⃣ Binary Search Trees (BST)

Search, Insert, Delete

Validate BST

Kth smallest/largest element

Convert BST to DLL


8️⃣ Heaps & Priority Queues

Min Heap / Max Heap

Heapify

Top K elements

Merge K sorted lists

Median in a stream


9️⃣ Graphs

Representations (adjacency list/matrix)

DFS, BFS

Cycle detection (directed & undirected)

Topological Sort

Dijkstra’s & Bellman-Ford algorithm

Union-Find (Disjoint Set)


10️⃣ Dynamic Programming (DP)

0/1 Knapsack

Longest Common Subsequence

Matrix Chain Multiplication

DP on subsequences

Memoization vs Tabulation


11️⃣ Greedy Algorithms

Activity selection

Huffman coding

Fractional knapsack

Job scheduling


12️⃣ Tries

Insert and search a word

Word search

Auto-complete feature


13️⃣ Bit Manipulation

XOR, AND, OR basics

Check if power of 2

Single Number problem

Count set bits

Coding Interview Resources: https://whatsapp.com/channel/0029VammZijATRSlLxywEC3X

ENJOY LEARNING 👍👍
1
Essential Programming Languages to Learn Data Science 👇👇

1. Python: Python is one of the most popular programming languages for data science due to its simplicity, versatility, and extensive library support (such as NumPy, Pandas, and Scikit-learn).

2. R: R is another popular language for data science, particularly in academia and research settings. It has powerful statistical analysis capabilities and a wide range of packages for data manipulation and visualization.

3. SQL: SQL (Structured Query Language) is essential for working with databases, which are a critical component of data science projects. Knowledge of SQL is necessary for querying and manipulating data stored in relational databases.

4. Java: Java is a versatile language that is widely used in enterprise applications and big data processing frameworks like Apache Hadoop and Apache Spark. Knowledge of Java can be beneficial for working with large-scale data processing systems.

5. Scala: Scala is a functional programming language that is often used in conjunction with Apache Spark for distributed data processing. Knowledge of Scala can be valuable for building high-performance data processing applications.

6. Julia: Julia is a high-performance language specifically designed for scientific computing and data analysis. It is gaining popularity in the data science community due to its speed and ease of use for numerical computations.

7. MATLAB: MATLAB is a proprietary programming language commonly used in engineering and scientific research for data analysis, visualization, and modeling. It is particularly useful for signal processing and image analysis tasks.

Free Resources to master data analytics concepts 👇👇

Data Analysis with R

Intro to Data Science

Practical Python Programming

SQL for Data Analysis

Java Essential Concepts

Machine Learning with Python

Data Science Project Ideas

Learning SQL FREE Book

Join @free4unow_backup for more free resources.

ENJOY LEARNING👍👍
7👏1
Beginner’s Roadmap to Learn Data Structures & Algorithms

1. Foundations: Start with the basics of programming and mathematical concepts to build a strong foundation.

2. Data Structure: Dive into essential data structures like arrays, linked lists, stacks, and queues to organise and store data efficiently.

3. Searching & Sorting: Learn various search and sort techniques to optimise data retrieval and organisation.

4. Trees & Graphs: Understand the concepts of binary trees and graph representation to tackle complex hierarchical data.

5. Recursion: Grasp the principles of recursion and how to implement recursive algorithms for problem-solving.

6. Advanced Data Structures: Explore advanced structures like hashing, heaps, and hash maps to enhance data manipulation.

7. Algorithms: Master algorithms such as greedy, divide and conquer, and dynamic programming to solve intricate problems.

8. Advanced Topics: Delve into backtracking, string algorithms, and bit manipulation for a deeper understanding.

9. Problem Solving: Practice on coding platforms like LeetCode to sharpen your skills and solve real-world algorithmic challenges.

10. Projects & Portfolio: Build real-world projects and showcase your skills on GitHub to create an impressive portfolio.

Best DSA RESOURCES: https://topmate.io/coding/886874

All the best 👍👍
4
Programming Languages & What They’re Really Good At

Python 🐍 – Data analysis, automation, AI/ML

Java – Android apps, enterprise software

JavaScript – Interactive websites, full-stack apps

C++ ⚙️ – Game development, system-level software

C# 🎮 – Unity games, Windows apps

R 📊 – Statistical analysis, data visualization

Go 🚀 – Fast APIs, cloud-native apps

PHP 🐘 – WordPress, backend for websites

Swift 🍎 – iOS/macOS apps

Kotlin 📱 – Modern Android development
5
Let's understand Frontend Development in detail today:

What is Frontend Development?

Frontend development is the process of building the visual and interactive part of a website or web application—everything the user sees and interacts with in their browser. It focuses on user experience (UX), design implementation, and browser-side logic.


1. HTML, CSS, JavaScript – Core Web Technologies

HTML (HyperText Markup Language): It structures the content. Think of it as the skeleton of a webpage—headings, paragraphs, images, links, buttons, etc.

CSS (Cascading Style Sheets): It styles the webpage—colors, fonts, spacing, layouts, and responsiveness.

JavaScript: It adds interactivity—form validations, modals, dropdowns, sliders, and more.


2. Flexbox & Grid – Modern CSS Layouts

Flexbox: A one-dimensional layout system perfect for aligning items in rows or columns (like navigation bars or cards in a row).

CSS Grid: A two-dimensional layout system best for more complex, grid-based designs like entire webpages or dashboards.

3. Responsive Design – Mobile-Friendly Websites

Using media queries and fluid layouts, responsive design ensures your website looks and works great on all screen sizes—mobiles, tablets, and desktops.

Tools: CSS Flexbox/Grid, relative units (%, em, rem), and frameworks like Bootstrap or Tailwind CSS.


4. JavaScript ES6+ – Modern JavaScript Features

Modern JavaScript (from ECMAScript 6 onwards) introduced cleaner, more powerful ways to write code:

Arrow functions: const add = (a, b) => a + b;

Promises & Async/Await: For handling asynchronous operations like API calls smoothly.

Destructuring, Spread/Rest Operators, Classes, Modules: Better syntax and code organization.


5. React, Vue, or Angular – Frontend Frameworks

These frameworks/libraries make building dynamic, scalable web apps easier.

React (by Meta): Component-based, fast, and widely adopted.

Vue: Lightweight, beginner-friendly, reactive.

Angular (by Google): Full-fledged framework with built-in features for large-scale apps.


6. APIs & Fetch/Axios – Connect Frontend with Backend

Frontend apps often need data from external sources (like databases or other services).

API (Application Programming Interface): A bridge between frontend and backend.

Fetch API & Axios: JavaScript libraries used to send/receive data (GET, POST, etc.) from APIs.


7. State Management – Redux, Vuex, or Context API

As web apps grow, managing data (state) between components becomes complex.

State Management tools help control and share app data predictably.

Redux (React): Centralized state container

Vuex (Vue): Official state manager

Context API (React): Lightweight alternative for passing data


Frontend development is all about creating smooth, attractive, and interactive user interfaces. To excel, you must balance design sensibility with technical skills, and stay updated with modern tools and trends.

Here you can find Frontend Development Resources: https://whatsapp.com/channel/0029VaxfCpv2v1IqQjv6Ke0r

ENJOY LEARNING👍👍
4
9 tips to understand APIs better:

Learn how HTTP methods work (GET, POST, PUT, DELETE)

Understand status codes (200, 404, 500)

Explore APIs using Postman

Read API documentation carefully

Start with public APIs for practice

Understand JSON structure and parsing

Use headers for authentication (API keys, tokens)

Practice making API calls in code (Python, JS, etc.)

Handle errors and edge cases in responses

Web Development Resources ⬇️
https://whatsapp.com/channel/0029VaiSdWu4NVis9yNEE72z

React with emoji for more content like this
1👌1
As a fresher, gaining experience in a broad area like web development or mobile app development can be beneficial for programmers. These fields often have diverse opportunities and demand for entry-level positions. Additionally, exploring fundamental concepts like data structures, algorithms, and version control is crucial. As you gain experience, you can then specialize based on your interests and the industry's evolving demands.
1
⌨️ MongoDB Cheat Sheet

MongoDB is a flexible, document-orientated, NoSQL database program that can scale to any enterprise volume without compromising search performance.


This Post includes a MongoDB cheat sheet to make it easy for our followers to work with MongoDB.

Working with databases
Working with rows
Working with Documents
Querying data from documents
Modifying data in documents
Searching
3