From 15c1378750213249b579c61e6eebb35eaa7edd67 Mon Sep 17 00:00:00 2001 From: Soorya Date: Sun, 6 Mar 2022 02:08:24 -0500 Subject: [PATCH 1/3] Update faq.md --- faq/faq.md | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 faq/faq.md diff --git a/faq/faq.md b/faq/faq.md new file mode 100644 index 0000000..e5d6817 --- /dev/null +++ b/faq/faq.md @@ -0,0 +1,62 @@ +--- +layout: default +title: Frequently Asked Questions +has_children: true +nav_order: 6 +--- + +# Frequently Asked Questions +This page serves as a resource to answer frequently asked questions regarding Software For Love. + +## General +**What are my general responsibilities and expectations as a volunteer?** +Please refer to [the following page.](https://software-for-love.github.io/documentation/code-of-conduct/SFL_Volunteer_Responsibilities.html) It contains information regarding general resposibilities for volunteers, as well as role-specific responsibilities. + +**What is a brief description of the roles at Software For Love?** + +To be answered by execs. + +**What is data science, and how does it differ from software development?** + +Software development is a set of activities that are done to create, implement, and maintain software solution. At Software For Love, Software developmers work on analyzing the needs of a client and working towards developing and implementing a software solution that works best for them. + +*See: What is a tech stack?* + +Data science, on the other hand, specifically focuses on the study of data. They usually work with large sums of data, and create algorithms to collect, preprocess, and analyze it. The end goal would be to try to understand and extract useful insights from the data. Data scientists tend to specifically use more database, data analysis, and data visualization tools. + +There are some similarities and overlap between the qualifications of a data scientist and a software developer. For example, both of them do write code; a data scientist may want to write some code to help them understand their data. However, there are large differences as well. The primary goal of a data scientist would be to understand and make sense of data, whereas for a software developer, to create a software solution to solve a problem. The skillset needed to be a good data scientist generally relies on a stronger foundation in mathematics and statistics. However, the skillset needed to be a good software developer is a strong understanding of the technologies, code frameworks, and libraries needed to develop a solution, as well as knowledge on how to write clean, sustainable, and maintainable code. + +**What's a tech stack?** + +Software solutions usually use a *tech stack*. A tech stack is just a set of technologies that are decided upon by a team to use to create a software solution. For simplicity, they are usually clumped into 2 distinct parts; a *front-end* (what the end user interacts with), and a *back-end* (what handles all of the logic behind the scenes). Working with the front-end and the back-end usually requires a different set of skills, and some software developers specialize in working with those technologies. Those developers may call themselves a *front-end developer* or a *back-end developer* respectively. A person who is generally proficient in both is known as a *full-stack developer*. When we say "software developer" here at SFL, we are usually looking for someone who could call themselves (or is looking to be) one of the three listed above. + +**What the heck is Netlify?** + +Netlify is a cloud computing company, and we use their services for quite a few projects at Software For Love. It allows us to easily build web applications and websites while doing extremely minimal *back-end* work. It also allows us to test our work, and deploy it very easily. This cuts down a lot of time for development and testing when we write code for our projects. It's free and fairly easy to use! + +*More details:* +Netlify is able to simply connect to your code repository on Github, and host your site. There are a bunch of other features that Netlify offers, such as serverless functions, automatic form handling, split testing, continuous deployment, and more. Furthermore, Netlify allows you to use these services for free with a very generous cap on bandwidth use and build time compared to other competitors. This also makes them a very budget-friendly option for us as well. + +**Does SFL only do websites?** +Software For Love is open to develop any type of software solution! However, we tend to find that most non-profits and charities are looking for web-based software solutions (web applications or websites). We also do consultations, to provide insight and guidance to how non-profits and charities can improve their existing software solutions so that they're able to maximize their impact. + +**What technologies and tools do you use?** +When developing web applications, we usually use a MERN stack in JavaScript. + +MERN stands for the following: +* MongoDB. This is a *NoSQL* database program. +* Express.js. This is a *back-end* web application framework for *Node.js*. +* React. This is a JavaScript library that can be used for developing clean and modern *front-end* user interfaces with ease. +* Node.js. This is the *runtime environment*. This is the environment that takes your code (just a bunch of text) and executes it. + +See: *What is a tech stack?* + +For a lot of our website, we also like to use GatsbyJS. Gatsby is a *React*-based framework. + +**How often do we get projects?** +We constantly receive project requests throughout the year. However, we typically begin new projects at the beginning of a term (early January, May, or September). + +**What does the process for starting a project look like?** +When a project request is received by Software For Love, executives set up a meeting with the prospective client and associated stakeholders to gain an understand of their organization, as well as their high-level software needs. An assessment is made to determine if our organization should take on this project. A large factor in this process is the legal status of this organization (whether they are a not-for-profit or charity), the social impact that this project would have, as well as whether we believe it would be a feasible project that we can take on. + +If executives at Software For Love decide to take on a project, then we will inform the prospective client and begin searching for a project manager. This project manager is then tasked with eliciting specific requirements for the project, crafting an appropriate timeline, and also interviewing candidates for their team. The project manager is expected to lead the project to completion. More information regarding the role of a project manager during a project [can be found here.](https://software-for-love.github.io/documentation/best_practises/pm.html) \ No newline at end of file From 02389b4075e18a15643548a834ae6a10834a5686 Mon Sep 17 00:00:00 2001 From: Soorya Date: Sun, 6 Mar 2022 02:09:58 -0500 Subject: [PATCH 2/3] Update faq.md --- faq/faq.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/faq/faq.md b/faq/faq.md index e5d6817..124e331 100644 --- a/faq/faq.md +++ b/faq/faq.md @@ -41,6 +41,7 @@ Netlify is able to simply connect to your code repository on Github, and host yo Software For Love is open to develop any type of software solution! However, we tend to find that most non-profits and charities are looking for web-based software solutions (web applications or websites). We also do consultations, to provide insight and guidance to how non-profits and charities can improve their existing software solutions so that they're able to maximize their impact. **What technologies and tools do you use?** + When developing web applications, we usually use a MERN stack in JavaScript. MERN stands for the following: @@ -54,9 +55,11 @@ See: *What is a tech stack?* For a lot of our website, we also like to use GatsbyJS. Gatsby is a *React*-based framework. **How often do we get projects?** + We constantly receive project requests throughout the year. However, we typically begin new projects at the beginning of a term (early January, May, or September). **What does the process for starting a project look like?** + When a project request is received by Software For Love, executives set up a meeting with the prospective client and associated stakeholders to gain an understand of their organization, as well as their high-level software needs. An assessment is made to determine if our organization should take on this project. A large factor in this process is the legal status of this organization (whether they are a not-for-profit or charity), the social impact that this project would have, as well as whether we believe it would be a feasible project that we can take on. If executives at Software For Love decide to take on a project, then we will inform the prospective client and begin searching for a project manager. This project manager is then tasked with eliciting specific requirements for the project, crafting an appropriate timeline, and also interviewing candidates for their team. The project manager is expected to lead the project to completion. More information regarding the role of a project manager during a project [can be found here.](https://software-for-love.github.io/documentation/best_practises/pm.html) \ No newline at end of file From 0452291b6e1c0c5ae02bec53b857367ca7edd897 Mon Sep 17 00:00:00 2001 From: Soorya Date: Sun, 6 Mar 2022 02:11:17 -0500 Subject: [PATCH 3/3] Update faq.md --- faq/faq.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/faq/faq.md b/faq/faq.md index 124e331..08c7893 100644 --- a/faq/faq.md +++ b/faq/faq.md @@ -9,14 +9,14 @@ nav_order: 6 This page serves as a resource to answer frequently asked questions regarding Software For Love. ## General -**What are my general responsibilities and expectations as a volunteer?** +### **What are my general responsibilities and expectations as a volunteer?** Please refer to [the following page.](https://software-for-love.github.io/documentation/code-of-conduct/SFL_Volunteer_Responsibilities.html) It contains information regarding general resposibilities for volunteers, as well as role-specific responsibilities. -**What is a brief description of the roles at Software For Love?** +### **What is a brief description of the roles at Software For Love?** To be answered by execs. -**What is data science, and how does it differ from software development?** +### **What is data science, and how does it differ from software development?** Software development is a set of activities that are done to create, implement, and maintain software solution. At Software For Love, Software developmers work on analyzing the needs of a client and working towards developing and implementing a software solution that works best for them. @@ -26,21 +26,21 @@ Data science, on the other hand, specifically focuses on the study of data. They There are some similarities and overlap between the qualifications of a data scientist and a software developer. For example, both of them do write code; a data scientist may want to write some code to help them understand their data. However, there are large differences as well. The primary goal of a data scientist would be to understand and make sense of data, whereas for a software developer, to create a software solution to solve a problem. The skillset needed to be a good data scientist generally relies on a stronger foundation in mathematics and statistics. However, the skillset needed to be a good software developer is a strong understanding of the technologies, code frameworks, and libraries needed to develop a solution, as well as knowledge on how to write clean, sustainable, and maintainable code. -**What's a tech stack?** +### **What's a tech stack?** Software solutions usually use a *tech stack*. A tech stack is just a set of technologies that are decided upon by a team to use to create a software solution. For simplicity, they are usually clumped into 2 distinct parts; a *front-end* (what the end user interacts with), and a *back-end* (what handles all of the logic behind the scenes). Working with the front-end and the back-end usually requires a different set of skills, and some software developers specialize in working with those technologies. Those developers may call themselves a *front-end developer* or a *back-end developer* respectively. A person who is generally proficient in both is known as a *full-stack developer*. When we say "software developer" here at SFL, we are usually looking for someone who could call themselves (or is looking to be) one of the three listed above. -**What the heck is Netlify?** +### **What the heck is Netlify?** Netlify is a cloud computing company, and we use their services for quite a few projects at Software For Love. It allows us to easily build web applications and websites while doing extremely minimal *back-end* work. It also allows us to test our work, and deploy it very easily. This cuts down a lot of time for development and testing when we write code for our projects. It's free and fairly easy to use! *More details:* Netlify is able to simply connect to your code repository on Github, and host your site. There are a bunch of other features that Netlify offers, such as serverless functions, automatic form handling, split testing, continuous deployment, and more. Furthermore, Netlify allows you to use these services for free with a very generous cap on bandwidth use and build time compared to other competitors. This also makes them a very budget-friendly option for us as well. -**Does SFL only do websites?** +### **Does SFL only do websites?** Software For Love is open to develop any type of software solution! However, we tend to find that most non-profits and charities are looking for web-based software solutions (web applications or websites). We also do consultations, to provide insight and guidance to how non-profits and charities can improve their existing software solutions so that they're able to maximize their impact. -**What technologies and tools do you use?** +### **What technologies and tools do you use?** When developing web applications, we usually use a MERN stack in JavaScript. @@ -54,11 +54,11 @@ See: *What is a tech stack?* For a lot of our website, we also like to use GatsbyJS. Gatsby is a *React*-based framework. -**How often do we get projects?** +### **How often do we get projects?** We constantly receive project requests throughout the year. However, we typically begin new projects at the beginning of a term (early January, May, or September). -**What does the process for starting a project look like?** +### **What does the process for starting a project look like?** When a project request is received by Software For Love, executives set up a meeting with the prospective client and associated stakeholders to gain an understand of their organization, as well as their high-level software needs. An assessment is made to determine if our organization should take on this project. A large factor in this process is the legal status of this organization (whether they are a not-for-profit or charity), the social impact that this project would have, as well as whether we believe it would be a feasible project that we can take on.