--- tags: Tutorial, BrainHack School, Slack --- # Quick Start Guide During BrainHack School you will be exposed to a wide variety of new tools, from collaboration tools to analysis tools. At times this might make you feel a little anxious, even a little bit imposter that you didn't know them already. Don't worry if you feel overwhelmed, we are all here to help. If you complete the school more equipped than when you started, we will have achieved our main goal. Indeed, one of the difficulties in neuro-data science is not necessarily learning _how_ to use a tool, but rather learning that the tool even exists, and who to get in touch with that might know how to use it. (Keep in mind that everyone knows some tools, but not all of them!) That said, here's a little *Getting Started Guide* on the common tools we will use throughout the BrainHack School: :::info We made a bunch of GIFs because GIFs are worth 5000 words. You can see them when you click on ::: :::spoiler :warning: GIF - Click to **open** this useless GIF :arrow_down: ![useless GIF](https://media.giphy.com/media/c1c1M1a2yZDd9aVReu/giphy.gif) ::: <br> ::: success **Pssst:** If you find typos or have tips to share, feel free to edit this document! This is an open and collective effort. ::: ## Slack Welcome to the BrainHack School Slack group: a place for participants and instructors to discuss, network, collaborate, and share resources. [Slack](https://slack.com) will be your primary communication tool throughout the 4 weeks of BHS. * If you are familiar with Slack and are simply overwhelmed by the prospect of yet another Slack group, feel free to [jump straight to the unique features Section we've set up for you](#3-Communicating-with-others). * If you’re new to Slack, keep on reading. We will first give some quick pointers to help you configure and use the tool in a way that works best for you. 1. [Configuring your account](#1-Configuring-your-account) 2. [Notification settings](#2-Channel-and-Notification-settings) 3. [Communicating with others](#3-Communicating-with-others) 4. [Particularities of BrainHack School's Slack](#4-BrainHack-School-Features) Any questions? Ask us in the [#help-general](https://brainhack-school2020.slack.com/archives/C013YQ3P0C8) channel, if you don't know how to join a channel, you should read the next section :speak_no_evil:. ## 1. Configuring your account ### PROFILE When you set up your profile there are three things to bear in mind: * **Your username** – please use a name by which others will be able to identify you. Your email address is visible to others. * **Your avatar** – please add a profile picture or other identifier that you’re comfortable with so that others can associate your posts with you more easily. * **Your time zone** – this determines when Slack will notify you and can also help others know whether it’s a reasonable time of day to get in touch. [Offiel help on How to edit your profile]( https://slack.com/intl/en-ca/help/articles/204092246-Edit-your-profile). :::spoiler :warning: GIF - To **edit** your profile :arrow_down: ![Edit your profil](https://i.imgur.com/m77UZwX.gif) ::: ### STATUS UPDATES Status updates can be a useful way to let others know your availability. For example, if you’re away eating or busy geeking, you may want to let others know that you’ll be slower to respond or entirely absent from the group. Remember that your status will be visible to everyone in the Slack group. To update your status, click your name in the top left of the screen and select `update status`. You can select when you want your status update to be removed by stipulating a timeframe from the “clear after” dropdown. You can clear a status update at any time by clicking on your name and selecting `clear status` from the dropdown. :::spoiler :warning: GIF - To update your status :arrow_down: ![How to update your status](https://i.imgur.com/253qHXY.gif) ::: ## 2. Channel and Notification settings ### How to find, join and create channels By default, you’re automatically added to the main channels (#general, #schedule, #introductions, #help-installation, & #random) that everyone belongs to. There are additional channels that you may be interested in, and more will be created as we move along. You will be automatically invited to relevant channels. :::spoiler :warning: GIF - To **find** a channel :arrow_down: ![Find a channel](https://i.imgur.com/LqSDBSF.gif) ::: :::spoiler :warning: GIF - To **create** a channel :arrow_down: ![Create a channel](https://i.imgur.com/RYFhouz.gif) ::: <br> :::danger A note on creating channel. You are free to create as many channels as you would like. However, channels dedicated to projects should be made public (not private) so people can collaborate or help you. ::: ### Configure your notifications Slack notifications are great, but they may bother you when you try to focus on your project. There are a lot of options for you to determine how and when you are informed about content – and at what level of granularity. #### For the overall group 1. Click on your `name` at the top left of the page and select “`preferences`” from the dropdown 1. In the Notifications section you have options which include: * Set times when you do not want to be disturbed by notifications * Enable desktop notifications * Choose to be alerted when certain keywords are mentioned #### Channel by channel 1. When you’re in a channel, click the “`i`” icon at the top right. Choose “`more`” and then click “`notifications`.” * Here you have the option to ignore any @channel messages, or mute the channel entirely. #### Following a specific thread If another group member posts something of particular interest you can choose to follow that thread. Find how to reply in thread in [Section 3](#3-Communicating-with-others). 1. Click the `ellipsis (three dots)` to the right of the original post and select “`follow message`” from the dropdown. #### Getting a reminder about a specific thread You additionally have the option to be reminded about a thread at a more convenient time. From the `ellipsis` to the right of the original post select “`remind me about this`” from the dropdown and choose a timeframe. ### Muting or leaving channels If a channel has become too noisy, you can additionally: * **Mute** it: When you’re in a channel, click the “`i`” icon at the top right. Choose “`more`” and then choose “`mute`” from the dropdown. * **Leave** it: When you’re in a channel, click the “`i`” icon at the top right. Choose “`more`” and then choose “`leave`” from the dropdown. :::spoiler :warning: GIF - To **mute** or **leave** a channel :arrow_down: ![Mute or leave a channel](https://i.imgur.com/Fijcsel.gif) ::: ## 3. Communicating with others ### A FEW POINTS OF ETIQUETTE #### Use threads to continue conversations * When someone posts a brand new item in a channel, anyone in the channel can reply directly to it, creating a thread. Threads allow separate conversations to take place in the group without confusion – and for members to choose which of those conversations to follow more closely. * To add a comment to a thread, click the :left_speech_bubble: to the right of an existing post. :::spoiler :warning: GIF - How to **thread** :arrow_down: ![Threading](https://i.imgur.com/JMc0Ii9.gif) ::: #### Use @channel, @here and other handles sparingly * If you type **@channel** or **@here** or other general handles (**@participants** or **@instructors**, & **@admin**) in a post or comment that will send a notification to everyone in that channel. Please use this only for items that really do need everyone’s attention. #### Respect the context of this shared space * We want it to be somewhere where learning can happen in a supportive, safe environment. * Please **DO NOT** take conversations out of context and copy/paste them elsewhere without the permission of all the individuals who posted. #### Not all communications will be synchronous * While IM-based conversations can feel very immediate, please don’t feel that you have to respond to messages immediately, nor expect others to respond immediately. We’re all busy, really busy! #### Message Editing & Deletion * You are allowed to edit your messages at any time. That means if you edit a message after someone replied to it, make it clear that you edited something if it changes the meaning of your message. See the example in the GIF below. :::spoiler :warning: GIF - To **edit** a message :arrow_down: ![Edit a message](![](https://i.imgur.com/aC7I0gm.gif) ::: ### SENDING PRIVATE/DIRECT MESSAGES It can be helpful to others when you’re sharing resources and brainstorming solutions to “work out loud” in a specific thread because then your learning becomes a future resource for others, too. However, sometimes you want to start a private conversation. To do this, go to the `direct messages` (DM) section on the bottom left of the left-hand side bar. Click the `+` icon to start a new message. You can add more than one recipient to create a group message. #### Direct message when necessary You may feel tempted to use DM instead of asking questions in dedicated channels. If an instructor believes others will benefit from the answer, they will probably encourage you to ask your question in the appropriate channel. If you have a question, others likely have the same one, we are all learning from each other. That said, DM are useful to discuss privately with other people (one or many) and you don't want to flood a channel. :::warning DM yourself is a great way to quick jot down some notes :fire: ::: :::spoiler :warning: GIF - To DM yourself or someone else :arrow_down: ![DM](https://i.imgur.com/KVxxVEV.gif) ::: ### Sending files Yes, you can send files (< 1 GB) in public channels and in direct messages. [How to](https://slack.com/intl/en-ca/help/articles/201330736-Add-files-to-Slack) ### Sending code snippets When you want to share a code snippet in a channel or to someone, it is important to keep the code formatted. Whether you need to paste an output from your terminal or some python code or anything coding-related, you have three options: * Use the little `code` button in the typing area. * Hit `CTRL + SHIFT + C` to activate *Code mode*. * Write your code between 3 ticks `` ```code``` ``. Slack will generate a code block for you. * :::spoiler :warning: GIF - Generating a `code` block :arrow_down: ![](https://i.imgur.com/iYExExD.png) ::: ### Emojis When you click on the emoji icon in the conversation or to add a reaction, you can see custom ones we’ve added. You can find images for things like :brainhack:, etc. Take a look at them and feel free to [add more custom emoji](https://slack.com/intl/en-ca/help/articles/202931348-Use-emoji-and-emoticons) yourself. ## 4. BrainHack School Features We have set some useful features for you. ### @handles In addition to the @channel and @here handles, we've created useful handle to target specific crowd. The **@participants** handle will notify the 60 students at once, while, you guess it, the **@instructors** will notify **all** the instructors. If you are in trouble and it's urgent, you know how to get our attention! There is another special handle, the **@support**. This is an escalation point for members to contact if they need support, see or receive messages that violates BrainHack's Code of Conduct. Its purpose is to list all the people on the Code of Conduct Committee. When you click on **@support**, you will see who you can contact privately to report a misconduct and/or get support. ### Channels #### Prefixes To keep our Slack organised, we've set channel prefixes. These are self-explanatory: | Prefixe | Purpose | | | -------- | -------- | -------- | | #help- | For questions, assistance, and resources on a topic | Create as many as you want (e.g, #help-installation, #help-python, etc.) | | #week- | Content and discussion related to a week will happen within those channels | Each week is unique, so a channel (or more if needed) will be dedicated for each week. | | #proj- | For collaborating and discussing about a project | Each project will have its own public channel. Choose a clever acronym, puns are encouraged | #### Dedicated channels [#general](https://brainhack-school2020.slack.com/archives/CVDL6NEC8): Will probably become messy once the School has started. [#announcements](https://brainhack-school2020.slack.com/archives/C011TUN4G31): You are looking for collaborators to work on your project or you want to share some good news? This is the place to do it. [#introductions](https://brainhack-school2020.slack.com/archives/C0127EQSHGD) : We are > 75 people, so this is where everyone will introduce themselves. You should receive a small form to fill up by Monday, May 11th. This will be automatically posted in #introductions. [#schedule](https://brainhack-school2020.slack.com/archives/C0127A3QJTX): Refer to the [Schedule section below](#Schedule-amp-Call-links). tl;dr: Sessions + Zoom links + Passwords will be posted there. [#help-installation](https://brainhack-school2020.slack.com/archives/C0121EXGHP1): Need help to install something ? This is the place to ask! [#help-general](https://brainhack-school2020.slack.com/archives/C013YQ3P0C8): Need help *in general* ? This is the place to ask! [#snack-club](https://brainhack-school2020.slack.com/archives/C012M2TJQM7): There is a section below describing the purpose of the #snack-club. tl;dr: This is where you go to network and meet other attendees! Grab a *donut* and make new friends. [#feedback](https://brainhack-school2020.slack.com/archives/C013BK0G2V8): This year is a totally different format, and we have implemented many new things. It can go really smooth or really bad, but getting feedback is crucial to improve your experience. We would appreciate to get as much constructive feedback as possible in the #feedback channel. ### Schedule & Call links The sole purpose of the #schedule channel is to announce what is going on. There will be a daily summary each morning at 8:00AM EDT and event reminders 10 minutes before each session. URL to Zoom sessions and password will be provided as well. Any change to the schedule will be displayed. In the spirit of doing all things open, we generate a calendar feed so you can import the .ics feed directly into your favorite calendar app. Copy and paste this URL in your app: [webcal://school.brainhackmtl.org/schedule/index.ics](webcal://school.brainhackmtl.org/schedule/index.ics). :::spoiler :warning: How to import it in Google Calendar :arrow_down: ![](https://i.imgur.com/sxYAtsR.gif) ::: <br> You want to organize a social event, and put it in the calendar? Ping us and we'll show you how to make it happen! ### Video/audio Calls on Slack If you plan to hold a small meeting with your team, you don't even have to leave your channel! On our Slack, you can hold video/audio calls up to **15 people** and **screensharing** is enable. This is helpful for one-on-one meetings as well as for debugging purposes. You can start a video call either in a public channel (which will call everyone in the channel) or in a direct message. :::spoiler :warning: GIF - How to **videocall** :arrow_down: ![Videocall]![](https://i.imgur.com/dkgoli6.gif) ::: ### Snack-club / Networking One of the best part of BrainHack School is getting to know each other. For this, we got the best apps in the game - **Donut** and **Snack-club**. While both add-ons were added to facilitate networking and make sure we make real connections with others, they serve a different purpose. Hopefully these two options will help mitigate the social isolation during these hard times. #### Donut: Each week, you will be randomly paired with 2 other participants. Donut will take care of the conversation starter, don't worry ;). You will then decide on a time that works best for the three of you to chat over a beverage. We can increase the frequency if you would like to randomly meet more people. #### Snack-Club: - _Snacks_ are spontaneous video conversations with ice-breakers. - Anyone can start a snack using `/snack` command in the #snack-Club channel. When someone asks to snack, we pair them with someone who is already in the `#snack-club` channel. The people that we think you will enjoy having a snack with receive a prompt asking them to join you (without revealing who you are). The person decides whether now is a good time or postpone it. ![](https://i.imgur.com/aShJ4kX.png =50%x)![](https://i.imgur.com/5V6GypN.png =50%x) We have never tried those options in real settings, so feedback is welcome. ### GitHub Bot The GitHub Bot will become your best friend to keep everyone on your team up to date of what is happening on your GitHub repository. To invite the GitHub Bot to your #proj-boringname channel: Use `/github subscribe OWNER/REPO` within your channel to start receiving updates. These are **enabled by default**, and can be disabled with the `/github unsubscribe owner/repo [feature]` command: - `issues` \- Opened or closed issues - `pulls` \- New or merged pull requests, as well as draft pull requests marked "Ready for Review" - `statuses` \- Statuses on pull requests - `commits` \- New commits on the default branch (usually `master`) - `deployments` \- Updated status on deployments - `public` \- A repository switching from private to public - `releases` \- Published releases These are **disabled by default**, and can be enabled with the `/github subscribe owner/repo [feature]` command: - `reviews` \- Pull request reviews - `comments` \- New comments on issues and pull requests - `branches` \- Created or deleted branches - `commits:all` \- All commits pushed to any branch - `+label:"your label"` \- Filter issues, pull-requests and comments based on their labels. You can subscribe or unsubscribe from multiple settings at once. For example, to turn on activity for pull request reviews and comments: `/github subscribe owner/repo reviews comments` And to turn it back off:`/github unsubscribe owner/repo reviews comments` :::info You want more help? Simply type **`/github help`** to list all commands. ::: It will probably ask you to connect to your GitHub account before you can modify what should triggers updates. ### Sendtask app (To-do list) Sendtask lets you manage tasks, communicate with colleagues or other partners, upload files, schedule due dates and auto-reminders. Create and assign tasks, set due dates, and see your Sendtask to-do list directly in Slack! By now, you should know the drill: `/sendtask_help` will display all the commands you can use. ### GIFs We, at BrainHack, love GIFs. Whether you pronounce it JIF or GIF, it doesn't matter. To send one, simply use the command `/giphy TEXT` :::spoiler :warning: GIF - How to send a **GIF** :arrow_down: ![Giphy](https://i.imgur.com/91DV0zE.gif) ::: --- ## To be continued... What else do you want a quick start guide on? * Markdown format? * HackMD (the software use to produce this document?)... * GitHub? * VSC? * ... # References The Slack section was adapted from an original by the Center for Scientific Collaboration and Community Engagement ([CSCCE](https://www.cscce.org/)) under a [CC BY 4.0 license](https://creativecommons.org/licenses/by/4.0/): [10.5281/zenodo.3763730](http://dx.doi.org/10.5281/zenodo.3763730). © BrainHackMTL - Licensed under a [CC BY 4.0 license.](https://creativecommons.org/licenses/by/4.0/)