Difference between revisions of "SPO600 Communication Tools"

From CDOT Wiki
Jump to: navigation, search
(Other Communication Tools)
 
(34 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
[[Category: SPO600]][[SPO600]] students use a number of communication tools that have been built and heavily adopted by Open Source communities. This page contains set-up instructions for some of these communication tools.
 
[[Category: SPO600]][[SPO600]] students use a number of communication tools that have been built and heavily adopted by Open Source communities. This page contains set-up instructions for some of these communication tools.
  
 +
== Summary: What you Need to Do ==
 +
 +
To participate in the SPO600 course, you need to:
 +
# Create a blog (if you don't already have one) or create a tag/category for SPO600 if you're going to use an existing blog. Collect these pieces of information:
 +
#* '''The URL of your main public blog page'''
 +
#* '''The URL of your blog feed - this is the link that will provide an RSS or ATOM feed of your blog content. (If you're using a tag/category, make sure that your feed includes only posts with that tag/category).
 +
# Create an SSH key pair.
 +
# Fill in [https://forms.office.com/r/Mxe4wcBJ41 this form] to send this information to your professor.
 +
 +
Instructions on how to do these things is detailed below.
 +
 +
<!--
 
== Wiki ==
 
== Wiki ==
  
The OpenSource@Seneca wiki is located at http://zenit.senecac.on.ca/wiki/ (this page is part of it). To create an account, click on the [[Special:Userlogin|log in / create account]] link in the upper-right corner and follow the instructions there (mail the Wiki administrator <code>cdot-wiki-admin@senecacollege.ca</code> from your Learn account, and check your mail for a welcome message and instructions - note that it usually takes a day or more for wiki account creation, which is a manual process to guard against spammers). Once you have created an account and logged in, most of the pages within the Wiki will have an ''Edit'' link at the top of the page, and you can use this link to add to, edit, or correct any page.
+
The OpenSource@Seneca wiki is located at http://wiki.cdot.senecacollege.ca (this page is part of it). To create an account, click on the [[Special:Userlogin|log in / create account]] link in the upper-right corner and follow the instructions there (mail the Wiki administrator <code>cdot-wiki-admin@senecacollege.ca</code> from your Learn account, and check your mail for a welcome message and instructions - note that it usually takes a day or more for wiki account creation, which is a manual process to guard against spammers). Once you have created an account and logged in, most of the pages within the Wiki will have an ''Edit'' link at the top of the page, and you can use this link to add to, edit, or correct any page.
  
After creating your account, please update your user page with your personal details including your IRC nick (you can get to your personal page by clicking your name, above), and add yourself to the [[People]] page (linking your entry to your user page). Also add yourself to [[Fall 2012 DPI908/SBR600 Participants]].
+
After creating your account, please update your user page with your personal details including your IRC nick (you can get to your personal page by clicking your name, above), and add yourself to [[Current SPO600 Participants]] page.
  
 
'''Tip:''' You can have the system "watch" pages that interest you. First, go to your preferences page using the '''my preferences''' link (which appears at the top of each page when you're logged in), and  check the box marked "E-mail me when a page I'm watching is changed". Next, click on the "watch" link on the top of any pages for which you want to receive change notification. For example, you may want to be informed when a change is made to pages that you have created, and you may also want to be notified when a page containing due dates or assignment details is changed.
 
'''Tip:''' You can have the system "watch" pages that interest you. First, go to your preferences page using the '''my preferences''' link (which appears at the top of each page when you're logged in), and  check the box marked "E-mail me when a page I'm watching is changed". Next, click on the "watch" link on the top of any pages for which you want to receive change notification. For example, you may want to be informed when a change is made to pages that you have created, and you may also want to be notified when a page containing due dates or assignment details is changed.
Line 11: Line 23:
 
{{Admon/important|This is a Wiki!|...Which means you can edit it. Obviously, don't change things such as assignment due dates (!), but feel free to create new pages, add text to existing pages, fix any typos you find, and add resources and links.}}
 
{{Admon/important|This is a Wiki!|...Which means you can edit it. Obviously, don't change things such as assignment due dates (!), but feel free to create new pages, add text to existing pages, fix any typos you find, and add resources and links.}}
  
== Blog and Planet ==
+
-->
 +
 
 +
== Blog ==
 +
 
 +
A ''blog'' (short for ''weblog'') is a (usually personal) website where dated articles are posted over a period of time. In the open source community, blogs are used to announce new projects, project releases, and general information, to comment on current happenings, to record personal reflections, and to comment on other people's blog postings. Many Open Source communities aggregate posts from their community members into a [https://en.wikipedia.org/wiki/Planet_(software) Planet] so that it is possible to view posts from the entire community on one web page.
 +
 
 +
There are many free or inexpensive blog hosting services available (including Blogger.com and Wordpress.com). Alternatively, you can host your own blog using blog software (caution! - it's a lot more work to host your own blog!).
 +
 
 +
Once you have your blog set up, find these two URLs:
 +
# The main public URL for your blog. This will be different from the URL that you use to create posts on your blog.
 +
# The ''feed'' URL for your blog. This is the URL that provides a machine-readable feed of your posts in RSS or ATOM format which can be processed by other software.
 +
 
 +
<!--The OpenSource@Seneca planet is [https://telescope.cdot.systems Telescope].
 +
-->See the Open Source@Seneca [[Blog Guidelines]] for information about setting up your blog and including your postings in Telescope.
 +
 
 +
{{Admon/tip|Submitting Coursework|In this course, most coursework is submitted by blogging. Therefore, it is important to write blog posts frequently (at least 2x per week), with good content, writing, and links.}}
 +
 
 +
{{Admon/tip|Read the Planet|It's a good idea to read Telescope several times a week. Finding out what your colleagues are doing can give you useful ideas and accelerate your own project work.}}
 +
 
 +
== SSH ==
 +
 
 +
[[SSH]] is a tool that provides remote access to a computer system. This can include command-line access, but also file transfers, graphical user interface (GUI) access, and secure ''tunnels'' to remote services.
 +
 
 +
=== Creating a Public/Private Key Pair ===
 +
 
 +
{{Admon/note|OpenSSH Assumed|These instructions assume a Linux, Windows 10, or Mac OS/X system running OpenSSH. Other SSH clients will have different procedures, and you'll need to check that the key produced is in OpenSSH format (you can convert key types using the <code>ssh-keygen</code> command on a Linux system such as Matrix if needed).}}
 +
 
 +
# Enter this command: <code>ssh-keygen -t ed25519</code>
 +
#* Answer the questions asked by ssh-keygen. Use default values for most questions. The use of a passphrase is '''strongly''' recommended. Avoid changing the filename from the default (unless there is a really good reason), because the location, name, and permission of keys is critical. '''DO NOT FORGET YOUR PASSPHRASE!'''
 +
#* ssh-keygen will produce two files; the name will be the same but the location will vary according to the operating system in use:
 +
#** <code>~/.ssh/id_ed25519</code> - your private key - do not let anyone else have this file
 +
#** <code>~/.ssh/id_ed25519.pub</code> - your public key - this file can be freely shared with anyone
 +
#* The permissions on these files matter! Take this in to account if you move these files or copy them between systems:
 +
#** <code>~/.ssh</code> directory must have permission 0700 (rwx------)
 +
#** <code>~/.ssh/id_ed25519</code> must have permission 0600 (rw-------)
 +
#** <code>~/.ssh/id_ed25519.pub</code> should have permission 0644 (rw-r--r--)
 +
{{Admon/tip|Key Type and Length|ssh-keygen can generate multiple types of keys, including rsa, dsa, ecdsa, and ed25519. Any of these types serves the same purpose, and rsa/dsa can be generated with varying key lengths. The longer the key, the more difficult it is to break the key by guessing it (trying successive values until the right key is found) - each bit added to the key doubles the number of possible key values. Key lengths of 1024-4096 bits are considered reasonably secure; as computers become faster, key lengths should be increased. Better yet, use the ed25519 eliptic curve option, which is considered the most secure format supported by the current OpenSSH implementation (8.4 as of the time of writing).}}
 +
 
 +
== Submitting your Blog URLs and SSH Public Keys ==
 +
 
 +
Once you have the blog feed and public key ready, enter them on the [https://forms.office.com/r/Mxe4wcBJ41 Blog and SSH Information Form].
 +
 
 +
== Updating your SSH Key ==
 +
 
 +
If you need to update your SSH key, you can do so by logging in to your SPO600 account(s).
 +
 
 +
If you do not have access to your account, please send an email to your professor, with the subject line "SPO600 SSH Key". Attach a '''copy''' of your updated SSH '''public''' key named <code>''yourUserId''.pub</code>
  
A ''blog'' (short for ''weblog'') is a (usually personal) website where dated articles are posted over a period of time. In the open source community, blogs are used to announce new projects, project releases, and general information, to comment on current happenings, to record personal reflections, and to comment on other people's blog postings. Many Open Source communities aggregate posts from their community members into a [http://planetplanet.org Planet] so that it is possible to view posts from the entire community on one web page.
+
Warning: Sending a new SSH public key to your professor will invalidate your previous key.
  
See the Open Source@Seneca [[Blog Guidelines]] and [[Open Source@Seneca Planet List|Planet List]] for information about setting up your blog and including your postings in our Planet.
+
<!-- == IRC ==
  
The OpenSource@Seneca planet is at http://zenit.senecac.on.ca/~chris.tyler/planet/
+
IRC stands for ''Internet Relay Chat'' and provides immediate, text-based chat facilities. See the [[Irc|IRC]] article on this wiki for details. Some open source projects use IRC extensively, others are moving away from it.
 +
-->
  
{{Admon/tip|Submitting Coursework|In this course, most coursework is submitted by blogging. Therefore, it is important to write blog posts frequently, with good content, writing, and links.}}
+
== Other Communication Tools ==
  
== IRC ==
+
=== Email ===
  
IRC stands for ''Internet Relay Chat'' and provides immediate, text-based chat facilities. See the [[Irc|IRC]] article on this wiki for details.
+
When communicating with your professor by email, please use your Seneca-provided e-mail address as the "From:" address (<code>''yourname''@myseneca.ca</code>). Because your professor receives a '''huge''' amount of email, it's critical to include your course code in the subject line of each of your messages.
  
== Email ==
+
<!--
 +
=== Slack ===
  
When communicating with your professors by email, please your Seneca-provided e-mail address as the "From:" address (<code>''yourname''@myseneca.ca</code>). Because your professor receives a huge amount of email, it's helpful if you include your course code in the subject line of each of your messages.
+
Slack is an online discussion system. Sign up to use the [https://seneca-open-source.slack.com Seneca Open Source Slack] workspace (sign-up with your @myseneca.ca email; this same Slack workspace is used in the [[OSD600]]/[[DPS909]] course, so you may already have an account if you're also taking that course).
  
 
== Etherpad ==
 
== Etherpad ==
  
 
Etherpad is a collaborative editor. Seneca's Etherpad system is located at http://etherpad.cdot.proximity.on.ca and etherpad URLs can be tracked at the [[Etherpad Index]].
 
Etherpad is a collaborative editor. Seneca's Etherpad system is located at http://etherpad.cdot.proximity.on.ca and etherpad URLs can be tracked at the [[Etherpad Index]].
 +
-->
  
= Community Communication Resources =
+
=== Community Communication Resources ===
  
Each open source community uses some combination of email, IRC, blogs, wiki, and bug-tracking systems to facilitate communication. Learn the tools used by the communities you are interacting with, and communicate with their preferred tools.
+
Each open source community uses some combination of email, [[Irc|IRC]], blogs, wiki, and bug-tracking systems to facilitate communication. Learn the tools used by the communities you are interacting with, and communicate with their preferred tools.

Latest revision as of 09:10, 6 September 2023

SPO600 students use a number of communication tools that have been built and heavily adopted by Open Source communities. This page contains set-up instructions for some of these communication tools.

Summary: What you Need to Do

To participate in the SPO600 course, you need to:

  1. Create a blog (if you don't already have one) or create a tag/category for SPO600 if you're going to use an existing blog. Collect these pieces of information:
    • The URL of your main public blog page
    • The URL of your blog feed - this is the link that will provide an RSS or ATOM feed of your blog content. (If you're using a tag/category, make sure that your feed includes only posts with that tag/category).
  2. Create an SSH key pair.
  3. Fill in this form to send this information to your professor.

Instructions on how to do these things is detailed below.


Blog

A blog (short for weblog) is a (usually personal) website where dated articles are posted over a period of time. In the open source community, blogs are used to announce new projects, project releases, and general information, to comment on current happenings, to record personal reflections, and to comment on other people's blog postings. Many Open Source communities aggregate posts from their community members into a Planet so that it is possible to view posts from the entire community on one web page.

There are many free or inexpensive blog hosting services available (including Blogger.com and Wordpress.com). Alternatively, you can host your own blog using blog software (caution! - it's a lot more work to host your own blog!).

Once you have your blog set up, find these two URLs:

  1. The main public URL for your blog. This will be different from the URL that you use to create posts on your blog.
  2. The feed URL for your blog. This is the URL that provides a machine-readable feed of your posts in RSS or ATOM format which can be processed by other software.

See the Open Source@Seneca Blog Guidelines for information about setting up your blog and including your postings in Telescope.

Idea.png
Submitting Coursework
In this course, most coursework is submitted by blogging. Therefore, it is important to write blog posts frequently (at least 2x per week), with good content, writing, and links.
Idea.png
Read the Planet
It's a good idea to read Telescope several times a week. Finding out what your colleagues are doing can give you useful ideas and accelerate your own project work.

SSH

SSH is a tool that provides remote access to a computer system. This can include command-line access, but also file transfers, graphical user interface (GUI) access, and secure tunnels to remote services.

Creating a Public/Private Key Pair

Note.png
OpenSSH Assumed
These instructions assume a Linux, Windows 10, or Mac OS/X system running OpenSSH. Other SSH clients will have different procedures, and you'll need to check that the key produced is in OpenSSH format (you can convert key types using the ssh-keygen command on a Linux system such as Matrix if needed).
  1. Enter this command: ssh-keygen -t ed25519
    • Answer the questions asked by ssh-keygen. Use default values for most questions. The use of a passphrase is strongly recommended. Avoid changing the filename from the default (unless there is a really good reason), because the location, name, and permission of keys is critical. DO NOT FORGET YOUR PASSPHRASE!
    • ssh-keygen will produce two files; the name will be the same but the location will vary according to the operating system in use:
      • ~/.ssh/id_ed25519 - your private key - do not let anyone else have this file
      • ~/.ssh/id_ed25519.pub - your public key - this file can be freely shared with anyone
    • The permissions on these files matter! Take this in to account if you move these files or copy them between systems:
      • ~/.ssh directory must have permission 0700 (rwx------)
      • ~/.ssh/id_ed25519 must have permission 0600 (rw-------)
      • ~/.ssh/id_ed25519.pub should have permission 0644 (rw-r--r--)
Idea.png
Key Type and Length
ssh-keygen can generate multiple types of keys, including rsa, dsa, ecdsa, and ed25519. Any of these types serves the same purpose, and rsa/dsa can be generated with varying key lengths. The longer the key, the more difficult it is to break the key by guessing it (trying successive values until the right key is found) - each bit added to the key doubles the number of possible key values. Key lengths of 1024-4096 bits are considered reasonably secure; as computers become faster, key lengths should be increased. Better yet, use the ed25519 eliptic curve option, which is considered the most secure format supported by the current OpenSSH implementation (8.4 as of the time of writing).

Submitting your Blog URLs and SSH Public Keys

Once you have the blog feed and public key ready, enter them on the Blog and SSH Information Form.

Updating your SSH Key

If you need to update your SSH key, you can do so by logging in to your SPO600 account(s).

If you do not have access to your account, please send an email to your professor, with the subject line "SPO600 SSH Key". Attach a copy of your updated SSH public key named yourUserId.pub

Warning: Sending a new SSH public key to your professor will invalidate your previous key.


Other Communication Tools

Email

When communicating with your professor by email, please use your Seneca-provided e-mail address as the "From:" address (yourname@myseneca.ca). Because your professor receives a huge amount of email, it's critical to include your course code in the subject line of each of your messages.


Community Communication Resources

Each open source community uses some combination of email, IRC, blogs, wiki, and bug-tracking systems to facilitate communication. Learn the tools used by the communities you are interacting with, and communicate with their preferred tools.