Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/mae-avadiaev/ecole-42-cursus

1st and 2nd years of École 42. Proficiency in C, C++, Asm, OOP, SQL and system administration.
https://github.com/mae-avadiaev/ecole-42-cursus

asmx86 c cpp98 network oop postgresql sql system-administration

Last synced: about 1 month ago
JSON representation

1st and 2nd years of École 42. Proficiency in C, C++, Asm, OOP, SQL and system administration.

Awesome Lists containing this project

README

        

1st and 2nd years of École 42. Proficiency in C, C++, Asm, OOP, SQL and system administration.

### Projects:
1. # Libft [![mclown's 42 Libft Score](https://badge42.vercel.app/api/v2/cl1or1xbp011209jw9sdpd6hm/project/2023403)](https://github.com/JaeSeoKim/badge42)

The aim of this project was to recode **44 functions** of the **C standart library** as well as some other **utility functions** that works with the **list data structure** to form a **library** that I further used in the other projects.

**[70 hours]**

2. # Netwhat [![mclown's 42 netwhat Score](https://badge42.vercel.app/api/v2/cl1or1xbp011209jw9sdpd6hm/project/2037011)](https://github.com/JaeSeoKim/badge42)

I discovered the Network's inner structure and learned how it works on different levels. Than I passed the quiz.

**[100 hours]**

3. # Get_next_line [![mclown's 42 get_next_line Score](https://badge42.vercel.app/api/v2/cl1or1xbp011209jw9sdpd6hm/project/2038576)](https://github.com/JaeSeoKim/badge42)

This **function** **reads content** line-by-line from a **file descriptor**.

**[70 hours]**


4. # Ft_printf [![mclown's 42 ft_printf Score](https://badge42.vercel.app/api/v2/cl1or1xbp011209jw9sdpd6hm/project/2051495)](https://github.com/JaeSeoKim/badge42)

I recoded the **printf** function and learned how to use **variadic arguments**.

**[70 hours]**

5. # Exam Rank 02 [![mclown's 42 Exam Rank 02 Score](https://badge42.vercel.app/api/v2/cl1or1xbp011209jw9sdpd6hm/project/2061449)](https://github.com/JaeSeoKim/badge42)

I recoded a light version of the get_next_line in less than 2 hours in Vim editor without any additional materials.

**[2 hours]**

6. # Ft_Server [![mclown's 42 ft_server Score](https://badge42.vercel.app/api/v2/cl1or1xbp011209jw9sdpd6hm/project/2061450)](https://github.com/JaeSeoKim/badge42)

I installed a complete web server using Docker, wrote some scripts to automate tasks, set up Wordpress, phpMyAdmin, and SQL database.

**[180 hours]**

7. # Cub3d [![mclown's 42 cub3d Score](https://badge42.vercel.app/api/v2/cl1or1xbp011209jw9sdpd6hm/project/2061621)](https://github.com/JaeSeoKim/badge42)

I made a **dinamic view** inside the maze using **Raycasting technique**. This project is inspired by the world-famous eponymous 90's game, which was the first FPS ever. I used MiniLibX, it is a tiny graphics library which allowed me to do the most basic things for rendering colored pixels on the screen. TRY IT!

**[280 hours]**

![cub3d](https://user-images.githubusercontent.com/60491116/162406600-fcf117f3-47e2-4031-9fe4-5a32afe13971.gif)


## How to play?
Go to your terminal and paste
```
git clone https://github.com/Mitya-Avadyaev/Ecole-42-Cursus.git ~/SYNC42cursus
cd ~/SYNC42Cursus/cub3d && make && ./cub3d map.cub
```

| Action | Key |
| ------ | --- |
| Move forvard | w |
| Move backwards | s |
| Move right | d |
| Move left | a |
| View left | → |
| View right | ← |
| Exit | esc |

8. # Libasm [![mclown's 42 libasm Score](https://badge42.vercel.app/api/v2/cl1or1xbp011209jw9sdpd6hm/project/2140316)](https://github.com/JaeSeoKim/badge42)

I recoded **7 functions** of standard C library using **Asm**. Assembler is one of the most low-level programming languages for a computer, or other programmable device. It may also be called symbolic machine code.

Webp net-resizeimage (2)

**[70 hours]**

9. # Exam Rank 03 [![mclown's 42 Exam Rank 03 Score](https://badge42.vercel.app/api/v2/cl1or1xbp011209jw9sdpd6hm/project/2214472)](https://github.com/JaeSeoKim/badge42)

During this exam I coded micro paint which read an "operation file" and printed circles in the terminal in Vim editor without any aditional materials.

**[3 hours]**

10. # SQL_Piscine (School 21)


I used **PostgreSQL** and **pgAdmin**. I designed data bases, generated data, refactored tables, created views and trigger functions, retrievied data for analysis via complex queries, and also visualised it using **Grafana**.

![Webp net-resizeimage](https://user-images.githubusercontent.com/60491116/162394862-67e45bc0-51d1-4077-afbc-a4356ac9f382.jpg)

**[180 hours]**

11. # Philosophers [![mclown's 42 Philosophers Score](https://badge42.vercel.app/api/v2/cl1or1xbp011209jw9sdpd6hm/project/2207096)](https://github.com/JaeSeoKim/badge42)

In the main part of the project I saw how to create **threads** of a process and discovered **mutexes**. In the bonus part I wrote the same project using **proceses** instead of threads and **semaphores** instead of mutexes.

![philo3](https://user-images.githubusercontent.com/60491116/162404372-880eb23e-ba45-49a6-b30c-926018fc44c8.gif)

**[70 hours]**

12. # Exam Rank 04 [![mclown's 42 Exam Rank 04 Score](https://badge42.vercel.app/api/v2/cl1or1xbp011209jw9sdpd6hm/project/2285248)](https://github.com/JaeSeoKim/badge42)

I had 3 hours to write a program that behaves like executing a shell command i.e microshell in Vim editor without any additional materials.

**[3 hours]**

13. # CPP_Piscine [![mclown's 42 CPP Module 08 Score](https://badge42.vercel.app/api/v2/cl1or1xbp011209jw9sdpd6hm/project/2362958)](https://github.com/JaeSeoKim/badge42)

In this project I dived into **OOP**: polymorphism, inheritance, orthodox canonical classes, abstract classes, exeptions, casts, templates, and iterators. I used **C++98**.

Webp net-resizeimage (1)

**[70 hours]**

14. # NetPractice [![mclown's 42 NetPractice Score](https://badge42.vercel.app/api/v2/cl1or1xbp011209jw9sdpd6hm/project/2378660)](https://github.com/JaeSeoKim/badge42)

One more project related to system administration. It's about solving networking problems to make a network run. I had to configure small-scale networks to complete 10 levels of the test.


Webp net-resizeimage

**[50 hours]**

15. # Exam Rank 05 [![mclown's 42 Exam Rank 05 Score](https://badge42.vercel.app/api/v2/cl1or1xbp011209jw9sdpd6hm/project/2384744)](https://github.com/JaeSeoKim/badge42)

I wrote 10 classes on C++98, instanciated them and made them interact. I had to write it in Vim editor without any aditional materials.

**[3 hours]**

16. # Exam Rank 06 [![mclown's 42 Exam Rank 06 Score](https://badge42.vercel.app/api/v2/cl1or1xbp011209jw9sdpd6hm/project/2551855)](https://github.com/JaeSeoKim/badge42)

I wrote a program that listened for client to connect on a certain port on 127.0.0.1 and let clients to speak with each other. I had to wrote it in Vim editor without any aditional materials.

**[3 hours]**