Giter Site home page Giter Site logo

rebcabin / mastering-42 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from haglobah/mastering-42

2.0 1.0 0.0 3.67 MB

less pain, more gain.

Home Page: https://haglobah.github.io/Mastering-42/

License: MIT License

Perl 65.98% Racket 10.42% OpenEdge ABL 6.06% CSS 13.87% Raku 3.67%

mastering-42's Introduction

Mastering-42

less pain, more gain. An opinionated strategy guide on how to get the most out of 42 School, and/or learning to program in general.

This guide is written from 42 Students for 42 Students. Its website is built on top of Pollen.

Why?

You probably only got to this guide in the first place because there was something missing you needed to properly go on with your work at 42. We've seen and experienced these obstacles, and decided to do something about it.

With this guide, we try to get everyone of us the team mate we would've liked to have when we were stuck, or even unsure how to start.

Getting up and Running

  1. Download & Install Racket: download.racket-lang.org
  2. Install Pollen:
λ raco pkg install pollen
  1. Fork this repo
  2. (when creating new files, add them to index.ptree)
  3. Start Pollens' project server:
λ raco pollen start
  1. edit some file; reload your browser window; see the change.

How do I get that damn "♢"?

If you're using VS Code, open your keybindings.json and paste the following:

{"key": "ctrl+alt+l",
 "command": "type",
 "args": {
 "text": "◊"},
 "when": "editorTextFocus"}

Contributing

First of all, thanks for considering to contribute! 😊

There are two main ways to contribute:

  1. Fixing something in/Adding something to an existing guide.
  2. Adding a whole new guide.

For both of these options, you have to:

  1. Fork the repo
  2. Create a new branch that is named after the issue you want to fix.
  3. Add what you want to add
    1. For typos/small fixes, just edit the file, and commit.
    2. For new guides, you have to add the file to index.ptree as well as to index.poly.pm, as well as to git.
  4. Open the pull request
  5. Assign a person to review your fix/guide

Also, there is the option to create issues — the better they are described, the more we can do about it.

If you want to join us (to maintain the repo) or have any other questions, just write @bhagenlo or @skienzle on Slack.

Writing

Style guide

Considering styling & content formatting, we're trying to create a consistent experience across the whole repo.

In general, we:

  • format code and file names as code
  • format concepts that are mentioned for the first time as concept
  • format menus or buttons as button or menu > sub-menu

We use sections as the main tool for content that can be minimized. Sec-hints are only for hints that are only relevant for some people, or only relevant once or twice.

And, last but not least, there is a narrator you can make use of :)

Tags

So that writing becomes even easier, here are all the tags with their corresponding effects:

Tag Effect
◊title[#:sub "by marvin" #:version "42"]{libft} Title of the Subpage, along with its subtitle and version.
◊heading[1]{libft} A Heading with its level(1 in this case).
◊sec[#:sub "Don't try this at Home!" 2 #:open? #f]{Burning your PC.} A Section which can be opened (or closed), with subtitle and level.
◊link["https://intra.42.fr"]{The Intra} A Link.
◊b{bold} bold text.
◊e{italic} emphasized text.
◊quote-block{This is a quote.} An indented blockquote (those blue ones)
◊narr{Here speaks the narrators voice..} Non-indented monospaced grey text.
◊irr{You've heard that already, time and again} Text that is more and more irrelevant, though it might be helpful as a reminder a few times before it vanishes completely (during the course of the holy graph, for example).
◊hline{} A red, horizontal line.
◊spoiler{This could spoil you. Do you want that?} A Spoiler that only makes itself visible on click.
◊hint[#:type "info"]{This is a piece of information for the reader} A hint for the reader. It can be a info(blue), warning(yellow), error(red) or a resolved(green)
◊sec-hint[#:type "error" "Click here to expand."]{This is what gets shown on expansion.} An expandable hint. (that expands and shrinks on click)
◊img["./path/to/img.jpg" #:height 10 #:width 100]{This is a caption.} An image  —  beware that if you explicitly set height and width, you most likely distort the picture.
◊ol{◊li{}} An ordered list.
◊ul{◊li{}} An unordered list.
◊ol-mark{a.}/◊ul-mark{o} Something that formats anything as a list point, so that one can mention it in the accompanying text.
◊code{#this is code.} Inline code.
◊code-block['python]{#this is python code.} A code block, with syntax highlighting.

mastering-42's People

Contributors

haglobah avatar ludmuterol avatar aktai0n avatar scaletsang avatar sherlocked97 avatar

Stargazers

Kyle Summers avatar Brian Beckman avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.