School 42 Barcelona - C Piscine 2023 (August)
In August 2023, I joined 42 Barcelona. During this period, I participated in an intensive "Bootcamp" where I had the opportunity to learn the fundamentals of programming, specifically using C.
The 42 Barcelona Campus is open 24/7, which means that everything depended on me. Without teachers, textbooks, or schedules, my progress relied on my hard and soft skills.
During these challenging 26 days, I had to improve my self-study abilities, refine my information research skills, and, most importantly, enhance my teamwork skills because there were over 150 other students like me who were being tested to pass the C Piscine.
I made some great friends, and everyone was eager to help each other while learning simultaneously.
Before these 26 days, I already had experience in programming with JavaScript and PHP, but after this period, I gained a deeper understanding of what happens behind the scenes in the default functions I used to implement in my code. I successfully passed the C Piscine, which makes me excited about the prospect of learning many other technologies.
Honestly, I recommend that everyone should try this "Bootcamp." KEEP LEARNING!
See you at 42 BCN!
Shell00 - Introduction to C
- ex00: z - Show a "Z" Using "cat"
- ex01: testShell00 - Show the Following: -r--r-xr-x 1 XX XX 40 Jun 1 23:42 testShell00, using the "ls -l" Command
- ex02: exo2.tar - Modify the File Permisions
- ex03: id_rsa_pub - Create your Own SSH Key
- ex04: midLS - Create a File with a Command Inside
- ex05: git_commit.sh - Script for Showing the Last 5 Commits
- ex06: git_ignore.sh - Script for Showing the Ignored Giles by Git
- ex07: b - Use of "diff"
- ex08: clean - Search and Destroy Specific Files
Shell01 - Introduction to C
- ex01: print_groups.sh - Show the User Login Groups
- ex02: find_sh.sh - Find all of the ".sh" Files
- ex03: count_files.sh - Count all of the Files in the Current Repo
- ex04: MAC.sh - Show the MAC Addresses of your Computer
- ex05: "?$'MaRViN'$?" - Create the "?$'MaRViN'$?" File
- ex06: skip.sh - Customize a "ls -l" Command
- ex07: r_dwssap.sh - Create a Command equal to cat/etc/passwd
C00 - Introduction to C
- ex00: ft_putchar - Print a Character
- ex01: ft_print_alphabet - Print the Alphabet
- ex02: ft_print_reverse_alphabet - Print the Alphabet in Reverse
- ex03: ft_print_numbers - Print the Numbers 0 to 9
- ex04: ft_is_negative - Print the Numbers 9 to 0 in Reverse
- ex05: ft_print_comb - Combine Numbers into Different Double Combinations
- ex06: ft_print_comb2 - Combine Numbers into Two Different Pa¡rs of Digit
- ex07: ft_putnbr - Print Any Number Within The Max / Min Int
- ex08: ft_print_combn (not finished) - Print all Combinations of n Digits in Increasing Order
C01 - Pointers and If Statements
- ex00: ft_ft - Make a Pointer to 42
- ex01: ft_ultimate_ft - Make a Pointer to a Pointer to a...to 42
- ex02: ft_swap - Swap Two Values, Using a Temporary Variable
- ex03: ft_div_mod - Use Div and Mod to Return a Value
- ex04: ft_ultimate_div_mod - Store Values, Swap Them, use Div and Mod
- ex05: ft_putstr - Write a String
- ex06: ft_strlen - Get the Length of a String
- ex07: ft_rev_int_tab - Revert the Order of Elements in an Integer Array.
- ex08: ft_sort_int_tab - Sort an Array of Integers in Ascending or Descending Order.
C02 - Introduction To Strings and Arrays
- ex00: ft_strcpy - Copy a String
- ex01: ft_strncpy - String Copy With an Unsigned Int
- ex02: ft_str_is_alpha - Conditional Statements using Arrays
- ex03: ft_str_is_numeric - Check a String is Numbers
- ex04: ft_str_is_lowercase - Check a String is Lowercase
- ex05: ft_str_is_uppercase - Check a String is Uppercase
- ex06: ft_str_is_printable - Check a String is Printable
- ex07: ft_strupcase - Make a String Uppercase
- ex08: ft_strlowcase - Make a String Lowercase
- ex09: ft_strcapitalize - Make the First Letter of Every Word Uppercase
- ex10: ft_strlcpy - Copy a String from one Location to Another while Ensuring a Specified Maximum Size
- ex11: ft_putstr_non_printable - Show the Non Printable Characters in Hexadecimal Format
C03 - String Functions, Manipulation and Concatanation
- ex00: ft_strcmp - Compare Two Strings, Returning a Value
- ex01: ft_strncmp - Compare Two Strings, Returning a Value, Using Unsigned Ints
- ex02: ft_strcat - Concatanate Two Strings
- ex03: ft_strncat - Concatanate Two Strings, Using Unsigned Ints
- ex04: ft_strstr - Find the First Occurrence of a Substring within a Larger String.
- ex05: ft_strlcat - Concatenate two strings while ensuring a specified maximum size
C04 - Analysing String Qualities and Manipulating Ints
- ex00: ft_strlen - Get the Length of a String
- ex01: ft_putstr - Print a String
- ex02: ft_putnbr - Print Any Number Within The Max / Min Int
- ex03: ft_atoi (not finished) - Convert a String into an Integer
Rush00 - Using of While Loops and Printing Characters
- files - Print Characters Following a Path
# C Language
The primary language learned at the 42's Piscine is C: dealing with variables,
pointers, memory allocation, macros, as well as creating functions and programs,
including the use and creation of libraries and Makefiles.
# Shell
The first two days of the bootcamp are dedicated to learning basic to intermediate
shell commands to seamlessly navigate through the terminal.
# Git
All projects are submitted via a remote git repository, which demands students to
be at ease with such a system.
# Self-learning and proactiveness
At 42, self-learning is at the core of its peer to peer learning methodology. There
are no teachers whatsoever; the learning process is based on googling, enquiring
your classmates, and empirical knowledge, each student learning at their own pace.
# Teamwork
On weekends, a 48h team project called "Rush" is proposed: a 3-member group randomly
chosen by the school's system must collaboratively develop a fully running application.
The major challenge here is to equalize the different knowledge levels while finding a
common work methodology that allows all team members to contribute to the project.
# Time management and resiliency
The school is open 24/7. Thus, the so-called "pisciners" are free to work whenever
they want, which demands excellent time management skills and resiliency for not
"drowning" amid the massive load of work demanded by the non-stop 26-day program.