<commit_before>---
title: OS setup
layout: ways-of-working
---

<section id="system_setup">
    <h1>System Setup</h1>

        <p>You have to run Linux or OSX when working at Western Cape Labs. If you run Linux, we highly recommend that you use a Debian-based distribution like Ubuntu or Linux Mint - you're on your own if you use something else.</p>

    <h2>Useful Software</h2>

        <p>Below are really useful things to install on a new system with some basic Linux installation instructions. As installation procedures change over time you might have to do something a bit differently. Generally the easiest way to install things is from the OS available packages, with:</p>

            <pre><code>
                sudo apt-get install thepackageyouwanttoinstall  # Linux
                brew install thepackageyouwanttoinstall  # Mac
            </code></pre>

        <p>But you should probably read the latest install instructions online before doing any installation. If you do an installation and see any warning messages, stop and ASK!</p>

    <h3>Git</h3>

        <p>We use Git for software version control of all our projects. Github stores our code remotely. If you don't have a Github account, go make one now! If you have one already, make sure your email addresses are setup correctly - including adding your @westerncapelabs.com email address. Then do:</p>

            <pre><code>
                sudo apt-get install git
                git config --global user.name yourgithubusername
                git config --global user.email youremail
            </code></pre>

        <p>You can read up on setting up SSH Authentication, but to get started quickly you can just use HTTPS Authentication. However, to prevent having to enter your username and password every time, use a credential helper to set how often you get password-prompted to every 24 hours (86400 seconds)</p>

            <pre><code>
                git config --global credential.helper cache
                git config --global credential.helper 'cache --timeout=86400'
            </code></pre>

    <h3>Git Flow</h3>

        <p>Git flow is integral to the way we work. Try the following installation:</p>

            <pre><code>
                sudo apt-get install git-flow
                # Edit ~/.gitconfig to keep remote branches
                git config --global gitflow.feature.finish.keepremote true
            </code></pre>

    <h3>Hub</h3>

        <p>Hub allows for issue to pull-request conversion. Don't worry if you don't know what that means. Just try to install it</p>

            <pre><code>
                git clone https://github.com/github/hub.git
                cd hub
                script/build
                mv ./hub /usr/local/bin  # move to somewhere in your PATH
            </code></pre>

    <h3>Text Editor</h3>

        <p>Our two favourite editors are <strong>Sublime Text 3</strong> and <strong>Atom</strong>. Sublime Text is loved by just about everyone who has used it, but it 'kind of' costs $70, while Atom is free and is practically a clone of Sublime Text. Sublime Text 'kind of' costs $70 because you can try it for free forever, you just have to ignore a pop-up 'buy me!' message every now and then. Or convince Mike to buy it for you :) If you haven't been using Sublime Text yet, Atom is probably your better bet.</p>
        <p>All that being said, feel free to use another editor if you prefer. But you should install something good (Nano won't cut it!)</p>
<commit_msg>try to adjust comment legibility<commit_after>---
title: OS setup
layout: ways-of-working
---

<section id="system_setup">
    <h1>System Setup</h1>

        <p>You have to run Linux or OSX when working at Western Cape Labs. If you run Linux, we highly recommend that you use a Debian-based distribution like Ubuntu or Linux Mint - you're on your own if you use something else.</p>

    <h2>Useful Software</h2>

        <p>Below are really useful things to install on a new system with some basic Linux installation instructions. As installation procedures change over time you might have to do something a bit differently. Generally the easiest way to install things is from the OS available packages, with:</p>

            <pre><code class="python">
                sudo apt-get install thepackageyouwanttoinstall  # Linux
                brew install thepackageyouwanttoinstall  # Mac
            </code></pre>

        <p>But you should probably read the latest install instructions online before doing any installation. If you do an installation and see any warning messages, stop and ASK!</p>

    <h3>Git</h3>

        <p>We use Git for software version control of all our projects. Github stores our code remotely. If you don't have a Github account, go make one now! If you have one already, make sure your email addresses are setup correctly - including adding your @westerncapelabs.com email address. Then do:</p>

            <pre><code>
                sudo apt-get install git
                git config --global user.name yourgithubusername
                git config --global user.email youremail
            </code></pre>

        <p>You can read up on setting up SSH Authentication, but to get started quickly you can just use HTTPS Authentication. However, to prevent having to enter your username and password every time, use a credential helper to set how often you get password-prompted to every 24 hours (86400 seconds)</p>

            <pre><code>
                git config --global credential.helper cache
                // try a comment
                <!-- or another comment -->
                git config --global credential.helper 'cache --timeout=86400'
            </code></pre>

    <h3>Git Flow</h3>

        <p>Git flow is integral to the way we work. Try the following installation:</p>

            <pre><code>
                sudo apt-get install git-flow
                # Edit ~/.gitconfig to keep remote branches
                git config --global gitflow.feature.finish.keepremote true
            </code></pre>

    <h3>Hub</h3>

        <p>Hub allows for issue to pull-request conversion. Don't worry if you don't know what that means. Just try to install it</p>

            <pre><code>
                git clone https://github.com/github/hub.git
                cd hub
                script/build
                mv ./hub /usr/local/bin  # move to somewhere in your PATH
            </code></pre>

    <h3>Text Editor</h3>

        <p>Our two favourite editors are <strong>Sublime Text 3</strong> and <strong>Atom</strong>. Sublime Text is loved by just about everyone who has used it, but it 'kind of' costs $70, while Atom is free and is practically a clone of Sublime Text. Sublime Text 'kind of' costs $70 because you can try it for free forever, you just have to ignore a pop-up 'buy me!' message every now and then. Or convince Mike to buy it for you :) If you haven't been using Sublime Text yet, Atom is probably your better bet.</p>
        <p>All that being said, feel free to use another editor if you prefer. But you should install something good (Nano won't cut it!)</p>

{'fraction_non_alphanumeric': 0.0754084625052367, 'fraction_numerical': 0.008099427454266164, 'mean_word_length': 2.4383101296207395, 'pattern_counts': {'":': 0, '<': 114, '<?xml version=': 0, '>': 114, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4987413', 'n_tokens_mistral': 1914, 'n_tokens_neox': 1771, 'n_words': 909}