How to Prepare for the 42 Piscine

Table of Contents

One year ago to the day, I crossed the threshold of 42 school in Paris for the very first time. I was taking the plunge to try my luck in the Piscine trial. That month-long coding boot camp was a true intellectual and emotional whirlwind. I paddled as best I could to the finish line and ended up selected.

This article describes how the 42 Piscine works and shares some advice from my personal experience at 42 school. We will go over a few practical considerations, a few useful skills to have in advance, as well as how to mentally prepare for the Piscine.

What is 42 School?

42 is a worldwide network of tuition-free computer science schools where students learn to code. With its excellent reputation among companies, every 42 student finds work at the end of their curriculum. Some even go on to build their own startups.

42 school building in Paris at night.
42 school building in Paris ( source)

What sets this school apart is its unique pedagogy: there are no teachers, no lectures or courses. Computer programming is an applied discipline, so students can self-teach and leverage peer-to-peer learning methods. The curriculum is made up of concrete projects that explore a specific concept, which students must complete either alone or in teams. Students then correct each other with evaluation grids. Machine exams test each student’s progress regularly.

In addition, 42 school offers its students a great deal of freedom: the campus is open 24/7 all year around. So students can organize as they see fit and many work or pursue other studies at the same time.

Why 42?

If it’s all self-teaching, couldn’t you just as well learn from home by watching YouTube tutorials ?

Besides the conferences, the partnerships and the workshops, the great advantage 42 provides is the other students. We learn together, we teach, we advise and correct each other. Every student, regardless of their level, is both a student and a teacher. This pedagogical model prepares us well for company environments where everyone has their individual responsibilities and qualities that contribute to the whole. With this peer-to-peer learning process, 42 also prepares us for working life: we learn rigor, we grow past our own limits, we develop our interpersonal skills and build a professional network for the future.

Of course, this learning model is not for everyone. It’s not always easy to manage our time and our progress with no stable framework to hold us accountable and no teachers to methodically impart knowledge. Plus, 42’s goal is to quickly train new developers: the curriculum is exclusively focused on coding. Some will prefer a more traditional institution that integrates several related courses to acquire a more global knowledge about computer science. In order to really know if the 42 school method works for you, there’s no better way than to jump in and go through the Piscine trial.

What is the 42 Piscine?

The Piscine (meaning “swimming pool” in French) is a month of intensive learning, a pre-selection gauntlet to be accepted as a 42 student. This is where you take the plunge and see if you sink or manage to stay afloat. During these four weeks, candidates code 7 days a week to complete individual and group projects as well as automated exams. I can say without a shadow of a doubt that I have never learnt as much and as quickly as during the Piscine.

Computer cluster at 42 school in Paris, where the Piscine takes place.
Cluster at 42 Paris.

Beyond the intensive learning, the Piscine is also a human experience. You meet other candidates from every walk of life. You chat, you help each other out, you work together and sometimes unfortunately, you clash. Overall, the atmosphere is very energetic and supportive, and through this unforgettable experience, strong friendships are forged.

The Piscine is also the means by which 42 measures each candidates’ motivation and progress over time in order to select its future students, who will then be allowed to continue the curriculum within the school.

Who is the 42 Piscine For?

42 prides itself on opening its doors to all, irrespective of age, gender, or experience level, but is it really the case in practice?

As a woman undergoing a career change in her thirties, I wondered about this before my Piscine. I worried about finding myself surrounded by young rapscallions barely out of high school. This was only half the case. Not only were most of them mature and friendly, they were only a part of the candidates I had the chance to meet.

The other part was composed of people of all ages: some students, some changing careers, and even some retired! There were restaurant employees, theater performers, musicians, primary school teachers, law students, bed and breakfast managers, French people, foreigners… All had come to learn to code, with the dream of starting their own company, of undertaking a specific project, of becoming the next Bill Gates, or simply with the vague desire to get a well-paying job. Some were even there completely by chance, without really knowing what to expect!

So what exactly can you expect at the 42 Piscine?

How Does the 42 Piscine Work?

42 is a school that iterates upon itself, which means it is constantly evolving. What I describe here should be taken with a grain of salt, since the way the Piscine works could have changed since mine in August 2021.

The 42 “pool” lives up to its name: from the very first minutes there, you’ll start splashing, trying to understand what in the world is expected of you. You get no information, no manual, and the 42 pedagogical staff answers none of your questions.

Got a question ? Ask the peer on your right.

Otherwise, try the peer on your left.

Your reference guide is called Google / man / Internet / ….

42 “motto”, written at the beginning of each Piscine subject.

In order to preserve that adventurous spirit of discovery, this article will only give you a bird’s eye view of the 42 Piscine, without revealing too much…

The Modules

The 42 Piscine is centered around a collection of 16 modules, each containing several exercises. Each module touches upon a specific concept and each exercise is a building block for the next. As you validate modules, you earn experience points that contribute to your overall level. You also unlock the next modules, as in a video game.

The Evaluation Process for Modules

The modules are validated according to a correction point system. You start the Piscine with 5 points and you must spend two to ask for two other random peers to come correct you. Once they have carefully inspected your module, it is automatically tested by a third corrector: the Moulinette (also known as Deepthought). It’s a program that verifies that your code runs correctly and respects the 42 norm. The Moulinette is harsh: the smallest mistake, the exercise gets a 0 and the following exercises are not taken into account for the final grade. This means that if you have a module for which you’ve completed 10 exercises, if the first three are correct but the fourth one has a small error, you’ll get a 30/100 grade, even if the next six exercises are all correct.

In order to earn back some correction points, you’ll have to go evaluate your peers’ work. For that, all you need to do is set some time slots when you’ll be available and the system will assign you someone who needs a correction. The system that assigns corrections is random, which means you might very well have to correct someone further along than you are! That is quite deliberate: it’s an opportunity to exchange ideas with someone who can steer you right for a module you will be attacking in the future.

A Bit of Advice Concerning Modules

The first two available modules, Shell00 and Shell01, are about the Shell commands and aim to get you accustomed to the terminal and git, two essential tools throughout the Piscine and beyond. The following modules, C00 to C13, are all about the C programming language, with which you’ll have to recode basic functions and create small programs.

You should complete these modules at your own rhythm. Very few people validate all of them! When I was selected, I had only validated the 10th module, C07. It is better to take the time to really digest the concepts than to scramble through the modules too fast without remembering much. After all, you must be able to apply the concepts you learn in these modules during the weekly exams…

The Exams

Every Friday, the clusters are emptied and the machines rebooted into exam mode for 4 hours. These exams test the concepts that the modules cover. The difficulty of the exercises increases as you validate them, and the next exercise only gets unlocked when you validate the previous one. Each exercise earns a certain amount of points to get to a final grade of 100. Of course, each exercise is graded in real time by the Moulinette. The final exam takes place on the last day of the Piscine, lasts 8 hours, and counts for more than any of the others.

Machine exam during a Piscine at 42 school in Paris.
Machine exam at 42 Paris ( source)

These exams are a great opportunity to test your knowledge and your resourcefulness. With no internet access or peer help, there is no other choice than to rely on what you’ve learnt. It is very common to get a grade of 0, especially at the first exam: the exam-launching process is never explained! Don’t worry about it and don’t get discouraged, a 0 doesn’t mean you’ve lost all hope of getting selected, far from it. A bad grade isn’t disqualifying either: the important thing is to show progress and surpass yourself at each exam.

The time you spend in the exam itself is not tracked, you are free to leave whenever you choose. However, it is a good idea to stay until the very end if you haven’t gotten to 100% yet. At almost every single one of my exams at 42, I remained stuck on some exercise for an hour or more. In the last few minutes, right when I was ready to throw in the towel, I’d try one last thing and bam! Success! Staying until the very last moment can really make the difference between an average and a good grade.

The Rushes

By validating modules and exams, you show your learning ability, especially in a self-teaching environment like 42. But during the Piscine, 42 is also looking at your interpersonal skills, particularly during team projects.

That is where rushes come in, the optional weekend-long group projects. The subject of the project and the randomized teams are revealed on Friday night after the exam. You need to finish and submit the rush by 11:42 PM on Sunday. Every member of the group needs to be present during the evaluation the next week. The rush corrector is either a student already at 42, or a pedagogical staff member.

Working in a Team

You don’t get to choose your teammates for a rush, teams are randomly assigned. You might find yourself with a teammate much less advanced than you, in which case it’s very important to take the time to explain to them how the code works and the concepts involved. The rush evaluators will grade based on the worst explanation of your code! For that same reason, if you happen to be teamed up with peers who are further along than you, you should ask them about the things you don’t understand so that they can figure out how to fill in the gaps. You should never hesitate to ask the same questions over and over if the topic is still not clear to you: their grade depends on it just as much as yours.

Rushes are great ways to boost your knowledge by learning from your teammates and the subjects are also very interesting and fun to work on. The only downside to signing up for a rush is that you might find yourself with uninterested or absent teammates. Despite this, it is better to try and fail the rushes than not attempt them at all. But beware: you should only attempt them if you intend to participate! It’s a very bad idea to commit to a team project when you know very well that you won’t be available during the weekend…

The BSQ

The last group project of the Piscine is the BSQ, which requires a team of two. It takes place during the last week of the Piscine and for this one, you get to choose your teammate. Because of its difficulty, very few candidates attempt it, preferring to concentrate on preparing for the final exam. However, the BSQ is worth as much as the final exam, and those who validate it multiply their chances of being selected.

Community Service

One thing to avoid during the Piscine is community service (known as “TIG” on the French-speaking campuses). You get community service time for breaking the rules of the campus. When you get community service, your session on the 42 computers gets locked for 2 to 8 hours depending on the severity and number of your offences. During that time, you cannot advance on your projects and you must perform the pedagogical staff’s bidding. The tasks assigned to you could be cleaning all of the 900 or so keyboards in the building or reciting the 42 campus rules to each one of your peers, for example. During the Piscine, even two hours can be precious!

To avoid community service, make sure to read the campus rules, which are readily available on the intra. Certain very important rules might be surprising, like:

  • never set your water bottle (or any other bottle) on the table.
  • no eating in the clusters.
  • don’t pet/wake/move Norminet, the 42 Paris campus cat.
  • never plug your earphones directly into the iMac jacks (use a Bluetooth headset or a USB to Jack adapter).

These rules exist among other things to preserve the computer hardware made available to all of us. During my Piscine, with Covid-19 sanitary protocols still in place, wearing your mask the wrong way or walking opposite to the prescribed directions were also grounds for community service.

What are the 42 Acceptance Criteria?

The selection criteria of the 42 Piscine are a well-guarded secret. Even the students are not informed about the reasons behind their selection. However, since 42 is looking primarily to measure the adaptability of each candidate to its educational framework, we can guess that the following factors play a role in the selection process:

  • your exam results, particularly your progression from one exam to the next.
  • your global level at the end of the Piscine, which you can see on the intra. It takes into account the validated modules and rushes, as well as exam grades.
  • your motivation: the time you spend in the clusters each day and your regularity.
  • your involvement: your participation in team projects and school events.
  • your helpfulness: your comments sent and received after each evaluation, your Voxotron votes (every week during the last three weeks of the Piscine, a Voxotron is organized to allow you to vote for 10 other people who helped you the most that week).

How to Prepare for the 42 Piscine?

In order to succeed in the 42 Piscine, you must be able to give it your all. By taking the time to prepare for your Piscine — having good living conditions, acquiring a few basic skills in advance, getting into the right frame of mind —, you’ll increase your odds of being selected.

Practical Considerations for the 42 Piscine

42 is a school that stays opened 24/7. This allows you to organize your time however you wish and to come and work whenever you prefer. However, the Piscine trial will demand a large amount of your time. It is therefore a good idea to attempt it at a time you are free and have no other commitments, even on weekends. At the 42 Paris campus, there are typically Piscines in February, March, July, August and September.

Cluster Conditions During the Piscine

The building at 42 Paris has three floors, called clusters, each boasting around 300 computers. During the Piscine, two of these floors will be accessible to you, while the third stays reserved to students. As you can imagine with so many computers and candidates in one room, the clusters can get very loud. In order to have a little bit of quiet, to listen to music or hear the contents of a video, you should bring:

  • noise-cancelling headphones or earbuds,
  • a USB to Jack adapter or Bluetooth headphones. (Plugging your headphones into the iMac jack ports is forbidden)

In order to memorize what you learn, it’s also a good idea to have some way of taking notes. A physical notebook is an option, or a virtual one like a google doc will be very useful during the Piscine.

A Places to Sleep and Eat During the Piscine

Some online videos show a big room transformed into improvised camping grounds during the Piscine at 42 Paris. Because of Covid, there was no option to stay in the building to sleep during my Piscine. And that wasn’t a bad thing. Sleeping at 42 was never ideal, even back in the day: you can’t expect to get any real rest in such noisy conditions. New accommodations are being built across the street from the Paris campus. NOC42, which will be available to future Piscine candidates. For now and for other campuses, the best option for those who live far away is to stay with friends and family or book an Airbnb.

Norminet, the 42 Paris school's cat, waiting for his meal at the food truck in the courtyard during the Piscine.
Norminet, member of 42 Paris staff, waiting for his meal at the food truck.

Regarding meals, a food truck is available on the 42 Paris campus. There are also vending machines, a fridge and microwaves. Restaurants around the school also offer discounts to 42 students and candidates during the Piscine.

Languages Spoken at 42

Most of the Piscine candidates will of course speak their local language. On the Paris campus, that is obviously French. If you are a foreigner and don’t speak the local language, you shouldn’t have too much trouble finding English speakers on any 42 campus. In the computer science field, many people learn at least the basics of English in order to understand documentation which is overwhelmingly written in English.

The intra and the subjects of modules, rushes and exams are available in multiple languages. However, the English subjects are considered the official versions, and if you have any doubts about a subject in a local language, you should refer to the English version for clarification.

Skills to Learn in Preparation for the 42 Piscine

As 42 stresses, there are no prerequisites for the Piscine. But there’s no harm in familiarizing yourself in advance with the concepts you will confront during the Piscine.

The first thing to note is that all of the keyboards at 42 are QWERTY. If you are used to another keyboard configuration such as AZERTY, you’ll need some time and some practice to adjust!

Getting Used to Linux or MacOS

My Piscine at 42 Paris was one of the last ones under MacOS: all of the computers now run Linux, although other campuses might run MacOS. Both of these operating systems work in a similar way, and the skills you learn on one, you can transfer to the other. This isn’t the case for Windows. If you regularly use Windows, you should get used to either Linux or MacOS.

In any case, there is no need to go buy the latest Macbook pro in order to prepare for the Piscine! It’s much more affordable to install Ubuntu, an easy and free to use Linux distribution, on your PC, whether dual-booted or in a virtual machine. You can even run Ubuntu off of a USB thumb drive. The official website has tutorials on how to try or install the Ubuntu operating system.

Getting Used to the Terminal

Throughout the Piscine, you’ll need to use the Linux or MacOS terminal. A terminal is a program that provides you a text-based interface to give the operating system instructions. The little I’d learned about the terminal from the video game Hacknet went a long way during my Piscine! Notably, the most useful skills to have are:

  • moving around the file system with the cd, pwd and ls commands.
  • creating and deleting files and directories with the touch, mkdir and rm commands.
  • viewing the contents of a file with the cat, head, tail and less commands.
  • understanding redirections with chevrons >> and pipes |.

You’ll save time at the beginning of the Piscine if you get used to the terminal and to the syntax of the Shell, the program that interprets and executes the commands you type in the terminal. That’s what the two first modules are all about.

Another very important skill to learn is how to edit files with the command line text editor, Vim. Vim is particularly difficult to master, but once you know it well, you’ll realize how powerful it really is and come to love it.

Get to Know the Basics of Code

During the 42 Piscine, you’ll exclusively learn the C programming language. You don’t need to have any prior knowledge of it. That said, it is very helpful to know programming basics, whether it be in C or some other language. Prior knowledge of the following basic principles helped me a lot:

  • variables,
  • functions,
  • while loops ( for and do...while loops are forbidden during the Piscine),
  • if-else conditions ( switch-case conditions are also forbidden).

With these foundations, you won’t have much trouble during the Piscine’s first C modules. Keep in mind that many Piscine candidates have never touched code in their lives and still manage to hang on. You learn a lot and quickly touch on more advanced concepts, but the modules are still accessible. If you wish to explore further, you can look at two other useful concepts you’ll learn about during the Piscine: recursion and pointers.

Mentally Preparing for the Piscine Experience

In order to succeed in the 42 Piscine, you need to have and maintain the right state of mind. The Piscine is not a traditional competition. For the best possible odds of being selected, you need to show not only resourcefulness, but also solidarity, perseverance and resilience.

The Piscine is Not a Competition

It’s easy to think of the Piscine as a competition. After all, you have to be one of the best to get selected, don’t you? But just as 42 is nothing like a traditional school, its Piscine is nothing like a classic competition.

42 does not expect you to be competing with your peers, quite the contrary. The goal is not to surpass the others, it is to surpass yourself. For that matter, the pedagogical staff often told us that it wouldn’t be unthinkable for an entire Piscine to be selected. It’s never happened yet, but it does show that each candidate is evaluated on their own merits in relation to the 42 standard, not in comparison to the other candidates in their Piscine.

You Can’t Do the Piscine in Isolation

The Piscine is above all a collaborative experience. It is difficult, even impossible, to succeed in the Piscine sitting all alone in your corner.

Event in the courtyard of 42 school in Paris, in front of the cantina.
The courtyard in front of the cantina at 42 Paris.

Many times, you’ll find yourself at a dead-end, facing an obstacle that you can’t seem to overcome no matter how many tests or google searches you perform. Since time is a precious commodity during the Piscine, you can’t afford to stay stuck on the same concept for several days in a row. This is when you need to let go of your shyness or ego and tap on someone’s shoulder to ask for help.

Asking someone for help is also doing them a favor. Having to explain something to someone is the best way to reinforce your own knowledge. That’s why it’s also very important to give others a hand to help them integrate a concept that you understand well.

Similarly, evaluations are precious exchange moments for both the person correcting and the person being evaluated. During this time, you need to take the time to explain your point of view, as well as be receptive to the constructive criticism you receive and to the other person’s reasoning.

Of course, there will be times when you need to concentrate without being tapped on the shoulder all the time. It’s also important to take some time to concentrate by finding a seat away from your friends and putting your noise-cancelling headphones on, or even taking a break.

The Piscine is Not a Sprint, it’s a Marathon

A month is over in the blink of an eye. The Piscine does not fail to overwhelm you with modules and team projects to complete. That doesn’t mean you should see it as a sprint. The best approach is to advance at your own rhythm and assimilate what you learn in order to be able to reproduce it during the exams. There is no need to get caught up in the frenzy and do everything as fast as possible.

Don’t compare yourself to the other candidates in your Piscine. Some will validate modules very quickly. They might have arrived with more advanced skills, they might be cheating, they might be spending 17 hours a day working and pulling all-nighters.

That last strategy is risky. Unlike a computer’s CPU, your brain needs rest in order to perform well during the day. Sleep also helps you assimilate everything you’re learning, and you’ll often wake up with solutions to problems you fell asleep with the day before. So it’s better to have reasonable days, 10 or 11 hours as an absolute maximum, and get some good rest. Otherwise, you’ll quickly burn out. The Piscine is a marathon. You need to find a stable rhythm you can maintain from the beginning to the end.

Cluster of 42 school in Paris.
Cluster of 42 school in Paris.

Sleep is also very important for your immune system. At 42, you’ll be in an enclosed space, in close proximity to many people. You’ll share keyboards with them, and keyboards have 20,000 times more germs than the average toilet seat! Covid or not, it’s very likely you might get sick during the Piscine, especially if you don’t sleep enough. Ever since the health crisis, 42 also provides hand sanitizer and cleaning wipes to disinfect keyboards. We should all use them!

Learning to Swim in the Deep End

The 42 Piscine plunges you unceremoniously into the deep end. You’ll often feel stupid and overwhelmed, and every ripple will feel like an insurmountable wave. The minute you overcome the roller, you’ll realize the pool you thought you were swimming in is in fact a lake. And the next wave reveals an even bigger ocean.

In these circumstances, it’s easy to lose heart. The Piscine is an intense trial! During my Piscine, I once cracked under the pressure and had to go to the bathroom and cry. There’s no shame in admitting it, and I know I’m not the only one. You pull yourself together, realize you’re not alone, ask for help and keep going.

This feeling of swimming in the deep end never really disappears. It goes beyond the Piscine and even 42. It comes from the very nature of the computer science field: it’s a constantly evolving one. In order to succeed in the Piscine, in the 42 curriculum and beyond, you need to get comfortable swimming in the deep end and learn to appreciate the unknown and revel in it.

One, Two, Three, Dive!

Before you can actually take the plunge, you need to choose your campus. That’s the campus where you intend to do not only the Piscine but the common core of the 42 curriculum. You can only transfer to another campus after validating the common core. The list of 42 network campuses is available here, on 42’s official website. Some high-demand campuses like Paris might have long waiting lists. Women will experience shorter waiting lists thanks to 42’s efforts to encourage them to pursue careers in programming. Some Piscine spots are temporarily reserved for them.

Whichever 42 campus you choose to apply to, you will first have to pass two online tests. The first is a memory test that lasts about two minutes. The second is a Robozzle-type logic game you need to devote a couple of hours to. After passing those, you’ll need to complete a check-in. This is to confirm your desire to go through the Piscine, verify your identity and visit your future Piscine’s premises.

42 Paris school's key card. Each student and Piscine candidate has one to access the building. At the back, the message Don't panic is written.
Don’t panic, written on the back of the 42 Paris key card.

Finally, you’ll be able to dive in head first! Whether the 42 pedagogy works for you or not, whether you are selected or not, you won’t regret having participated in this unforgettable experience. But with enough motivation, resourcefulness, rigor, support and perseverance, you will have a good chance of succeeding in the Piscine to continue your curriculum at 42. If you’ve read this article to the end and taken its advice to heart, you’ll be a full-fledged student before you know it!

Good luck to all future Piscine candidates!

Comments

Related Posts

Malloc: Allocating Memory in C

In compiled programming languages ​​like C, it is often useful, or even necessary, to allocate memory dynamically on the heap, in order to accommodate variables of larger or uncertain size.

Read More

Creating and Killing Child Processes in C

In order to execute another program within ours or to execute part of our program simultaneously, it can often be very useful to create child processes.

Read More

Threads, Mutexes and Concurrent Programming in C

For efficiency or by necessity, a program can be concurrent rather than sequential.

Read More