Skip to content

Updated the existing documentation readme.md, proposal.md and created a new folder Documentation #44

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 8 commits into from
May 11, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions Documentation/ML_algorithms.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
"This readme file provides information about ML algorithms."
1 change: 1 addition & 0 deletions Documentation/Model Explanation and Analysis.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
"This readme file explains the machine learning models used in the project."
1 change: 1 addition & 0 deletions Documentation/Visualization_techniques.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
"This readme file provides information about visualization techniques."
1 change: 1 addition & 0 deletions Documentation/code_analysis.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
"This readme file provides information about code analysis."
91 changes: 57 additions & 34 deletions PROPOSAL.md
Original file line number Diff line number Diff line change
@@ -1,48 +1,63 @@
# Project Proposal

## Finding Insights from Stackoverflow Developer Survey
## Finding Insights from Stack Overflow Developer Survey

Stack overflow is a professional community for developers, Stackoverflow conducts a survey every year the collected data from 2011 has been available for open source on the web with the latest dataset 2020 released on March 5th, 2021. If the dataset analysed professionally using modern tools, would enable us to answer real-world questions effectively. The dataset has covered 275 questions in total.
Stack Overflow is a professional community for developers, conducting an annual survey. The collected data from 2011 onwards has been available for open source on the web, with the latest dataset released in 2020. Analyzing this dataset professionally using modern tools would enable us to answer real-world questions effectively. The dataset includes responses to 275 questions.

### Project Goal:

1. To perform Analysis on 3 years Stackoverflow Dataset and get insights.
2. To perform Data Analysis and answer the below questions.
+ Impact of igher education on salary of the surveyed developers.
+ Impact of education/experience/responsibilities on gender inequalities.
+ Impact on participation rate due to different ethnicity.
+ To find whether there is any difference between men and women's income.
+ Impact on the increase in popularity of a language in the current year due to developer’s interest in the previous year.
1. **Perform Analysis on 3 years of Stack Overflow Dataset:** Extract insights from the data.
2. **Data Analysis Goals:** Answer the following questions:
- What is the impact of higher education on the salary of surveyed developers?
- How do education, experience, and responsibilities affect gender inequalities?
- How does ethnicity impact participation rates?
- Is there a difference in income between men and women?
- How does the previous year's interest in a language affect its popularity in the current year?
3. **Data Visualization Goals:**
- Identify the most commonly used language.
- Analyze the distribution of surveyors based on their developer roles.
- Explore factors affecting job satisfaction.
- Predict the growth of languages for upcoming years based on survey answers.
- Provide insights for IT environment, hiring employees, job seekers, and building a solid résumé.

3. To perform data visualization on
### Data Source and Background

- The most commonly used language.
The dataset is sourced from the annual Stack Overflow developer survey, covering responses from developers in 180 countries. The data range from 2011 to 2020, with the focus being on the last 3 years. Respondents primarily come from the US, India, and EMEA regions, with a background in developer/coding experience. The dataset includes survey data gathered from 180 countries, with responses ranging from "Not at all important" to "Very important" and "Not at all satisfied" to "Very satisfied."

- Distribution of surveyors based on their developer role.
### Data Format

- Factors affecting Job satisfaction.
The data is in CSV format, consisting of 252,199 observations and 62 variables.

- Predicting the growth of languages for upcoming years based on the survey answers.
### Projected Work for Insights

###### The Insights can be used to provide information regarding IT environment, hiring employees and job seekers and build a solid résumé.
#### Data Wrangling

### Data Source and Background
- **Dealing with Null Values:** Handle unanswered questions marked as ‘NA’ or ‘Not Applicable’ to ensure precise analysis.
- **Data Conversion/Manipulation:** Convert data for analysis, considering that respondents answered the survey through radio buttons rather than yes or no patterns (Univariate analysis).

The dataset is very diverse and came from a [Stackoverflow developer survey](https://insights.stackoverflow.com/survey/?_ga=2.208907280.304952146.1616422967-1864686930.1616422967) with 275 questions answered from 180 countries. Stackoverflow has data collected through surveys from 2011 to 2020, but for the project, the purpose is to analyze the data of the last 3 years. The people who completed the survey mostly from the US, India, and EMEA regions. The majority of the survey respondents had the background of developer/ coding experience. The data are available in the CSV format ranging from 40 to 150 MB with data of 1.5 Lakh survey participants.The dataset includes survey data gathered from 180 countries, the response ranges from Not at all important to very important/ Not at all satisfied to very satisfied.
#### Techniques Expected to Use in the Project

### Data Format
- ML Algorithms: Utilize algorithms like Random Forest, KNN, AUC for classification problems, logistic regression, and linear regression.
- Data Visualization: Employ data visualization techniques for better understanding and presentation of insights.
- Parameter Analysis: Analyze parameters to fine-tune models and improve accuracy.

The data is in a schema CSV file that consists of 252,199 observations and 62 variables.
#### Project Plan

### Projected work needs to be done for Insights.
**Week 8:** Project Base Setup
- Source control setup on [GitHub](https://github.com/Sanjayviswa/Stackoverflow_survey_Analysis)
- Project Management using tools like MS Project
- Complete Data Wrangling & Basic Analysis

###### Data Wrangling
**Week 10:** Baseline Model Building
- Implement algorithms and build baseline models

**Dealing Null Values**: As this is a developer survey and few questions left unanswered by the respondents as ‘*NA*’ or ‘*Not Applicable*’ so dealing with null values is important to get precise information. Data conversion/ manipulation is also required, as the developer responded to the survey through radio buttons rather than yes or no pattern(Univariate analysis).
**Week 11:** Model Evaluation
- Run tests and evaluate the performance of models

###### Techniques expect to use in the project
**Week 12:** Finalization
- Prepare video presentation summarizing the analysis and insights

Planning to use ML Algorithms like Random, may include, KNN, AUC for classification problems, training model, logistic regression,data visualization, parameter analysis, Linear Regreesion, Root Mean square.
#### Additional Technical Details

> Linear regression(RFE techniques)

Expand All @@ -53,20 +68,28 @@ $$
> Root Mean Squared Error Calculations

$$
rmse = \sqrt{(\frac{1}{n})\sum_{i=1}^{n}(y_{i} - x_{i})^{2}}
rmse = \sqrt{\left(\frac{1}{n}\right)\sum_{i=1}^{n}(y_{i} - x_{i})^{2}}
$$


## Potential Impact and Benefits

#### Project plan

**Week 8:** Creating Project base, Source control([GitHub](https://github.com/Sanjayviswa/Stackoverflow_survey_Analysis)), Project Management(MS Project).

- Complete Data Wrangling & basic Analysis.

**Week 10**: Complete baseline Model building with algorithms.
- **Inform Decision-Making:** The insights derived from the analysis of the Stack Overflow Developer Survey data can inform decision-making processes in various domains, including education, recruitment, and workforce development.
- **Address Gender and Ethnic Inequalities:** By analyzing the impact of education, experience, and responsibilities on gender and ethnic inequalities, this project can contribute to raising awareness and identifying strategies to address these disparities in the tech industry.
- **Support Career Development:** The findings from the analysis can provide valuable insights for developers seeking to advance their careers, make informed decisions about their education and training, and enhance their job satisfaction.
- **Contribute to Open Source Community:** By contributing to this project, developers have the opportunity to collaborate with others, share their expertise, and contribute to open-source initiatives aimed at improving data analysis techniques and tools.
- **Empower Data-Driven Decision Making:** The project's focus on ML algorithms, data visualization, and predictive analytics empowers stakeholders to make data-driven decisions, enabling them to stay ahead in a rapidly evolving technology landscape.

**Week 11:** Run tests and evaluate model.
## 👨‍💻 Contributing

**Week 12:** Prepare video presentation.
- **Contributions Welcome:** We welcome contributions from the community to help enhance this project. Whether you're a seasoned developer or just starting out, there are various ways you can contribute:
- **Code Contributions:** Help improve the analysis code, implement new features, or optimize existing algorithms.
- **Data Wrangling:** Assist in cleaning and preprocessing the dataset to ensure accurate analysis.
- **Documentation:** Enhance project documentation, including the README file, to make it more comprehensive and user-friendly.
- **Bug Fixes:** Identify and fix any bugs or issues encountered during the analysis.
- **Feature Requests:** Suggest new features or improvements to further enhance the project.
- **How to Contribute:** To contribute, simply fork the repository, make your changes, and submit a pull request. Be sure to follow the contribution guidelines outlined in the repository.
- **Contributors Recognition:** We greatly appreciate all contributions to this project and will acknowledge contributors in the README file.
- **Join the Discussion:** Feel free to join the discussion on our [GitHub repository](https://github.com/Sanjayviswa/Stackoverflow_survey_Analysis) to share your ideas, ask questions, or collaborate with other contributors.

Crafted by @Sanjayviswa.
107 changes: 26 additions & 81 deletions readme.md
Original file line number Diff line number Diff line change
@@ -1,124 +1,69 @@
<img src="https://stackoverflow.design/assets/img/logos/so/logo-stackoverflow.png" align="left" height="100" width="450" >
<br>
<br>
<br>
<br>
<br>
<br>
# Stack Overflow Analysis Guidelines

[![MIT License](https://img.shields.io/apm/l/atomic-design-ui.svg?)](https://github.com/tterb/atomic-design-ui/blob/master/LICENSEs)
<img src="https://img.shields.io/github/last-commit/Sanjayviswa/Stackoverflow-Analysis">
<img src="https://img.shields.io/github/languages/code-size/Sanjayviswa/Stackoverflow-Analysis">
## 👨‍💻 Demo Video

# Stackoverflow Analysis Guidelines
## 👨‍💻 Demo video


https://user-images.githubusercontent.com/30715153/168960157-e9448ea4-206c-44c0-bbd5-5e4770c0411f.mp4

You can start working with repo with simple changes and i have updated couple of issue .
Check out the Main Code: [Stackoverflow-Analysis](https://github.com/sanjay-kv/Stackoverflow-Analysis/blob/main/Stackoverflow_Survey_Analysis.ipynb)
[Watch the demo video](https://user-images.githubusercontent.com/30715153/168960157-e9448ea4-206c-44c0-bbd5-5e4770c0411f.mp4)

## 👇 Prerequisites

Before installation, please make sure you have already installed the following tools:
Before installation, please ensure you have the following tools installed:


- [Git](https://git-scm.com/downloads) Learn Git step-by-step by following the instructions provided [here](https://recodehive.com/how-to-install-git-git-tutorial/).
- [Git](https://git-scm.com/downloads) Learn Step by Step instruction here.
- [recodehive](https://recodehive.com/how-to-install-git-git-tutorial/)
- [Git](https://git-scm.com/downloads) - Learn Git step-by-step by following the instructions provided [here](https://recodehive.com/how-to-install-git-git-tutorial/).
- [Anaconda](https://anaconda.org/anaconda)
- [Jupyter Package](https://anaconda.org/anaconda/jupyter)

## 🛠️ Installation Steps

1. Fork the project
Fork the sanjay-kv/Stackoverflow-Analysis/ repository
Follow these instructions on [how to fork a repository](https://help.github.com/en/articles/fork-a-repo)
2. Clone the project
```
git clone [email protected]:your-username/Stackoverflow-Analysis.git
```
3. Download the orginal data from the [drive link](https://drive.google.com/drive/folders/13W20DfCW2W5GEeKTYTl7R6xV5hmPS2Do?usp=sharing)
4. Open Jupyter Notebook and place the file in the project folder *Make sure you selecting the correct path*
1. **Fork the project**: Fork the `sanjay-kv/Stackoverflow-Analysis` repository. Follow these instructions on [how to fork a repository](https://help.github.com/en/articles/fork-a-repo).
2. **Clone the project**: `git clone [email protected]:your-username/Stackoverflow-Analysis.git`
3. **Download the original data** from the [drive link](https://drive.google.com/drive/folders/13W20DfCW2W5GEeKTYTl7R6xV5hmPS2Do?usp=sharing)
4. **Open Jupyter Notebook** and place the file in the project folder. Make sure you're selecting the correct path.

## Development

We love your desire to give back, and want to make the process as welcoming to newcomers and experts as possible. We're working on developing more intuitive tutorials for individuals of all skill levels and expertise, so if you think the community would value from being walked through the steps you're going through please share! ❤️

## Finding Insights from Stackoverflow Developer Survey

Stack overflow is a professional community for developers, Stackoverflow conducts a survey every year the collected data from 2011 has been available for open source on the web with the latest dataset 2020 released on March 5th, 2021. If the dataset analysed professionally using modern tools, would enable us to answer real-world questions effectively. The dataset has covered 275 questions in total.
We welcome contributions from all levels of experience. If you think the community would benefit from being walked through the steps you're going through, please share! ❤️

### Project Goal:
## Finding Insights from Stack Overflow Developer Survey

1. To perform Analysis on 3 years Stackoverflow Dataset and get insights.
2. To perform Data Analysis and answer the below questions.
+ Impact of higher education on salary of the surveyed developers.
+ Impact of education/experience/responsibilities on gender inequalities.
+ Impact on participation rate due to different ethnicity.
+ To find whether there is any difference between men and women's income.
+ Impact on the increase in popularity of a language in the current year due to developer’s interest in the previous year.
Stack Overflow is a professional community for developers, conducting a survey annually. Analyzing the dataset professionally using modern tools can enable us to answer real-world questions effectively. The dataset covers 275 questions in total.

3. To perform data visualization on
### Project Goals:

- The most commonly used language.

- Distribution of surveyors based on their developer role.

- Factors affecting Job satisfaction.

- Predicting the growth of languages for upcoming years based on the survey answers.

###### The Insights can be used to provide information regarding IT environment, hiring employees and job seekers and build a solid résumé.
1. Perform Analysis on the last 3 years' Stack Overflow Dataset to extract insights.
2. Analyze the impact of higher education, experience, and responsibilities on salary and gender inequalities.
3. Investigate participation rates based on ethnicity and differences in income between men and women.
4. Explore the popularity of programming languages and predict their growth based on survey responses.

### Data Source and Background

https://user-images.githubusercontent.com/30715153/169042852-150e59cf-b742-40bb-bcbd-c34a330c1518.mp4


The dataset is very diverse and came from a [Stackoverflow developer survey](https://insights.stackoverflow.com/survey/?_ga=2.208907280.304952146.1616422967-1864686930.1616422967) with 275 questions answered from 180 countries. Stackoverflow has data collected through surveys from 2011 to 2020, but for the project, the purpose is to analyze the data of the last 3 years. The people who completed the survey mostly from the US, India, and EMEA regions. The majority of the survey respondents had the background of developer/ coding experience. The data are available in the CSV format ranging from 40 to 150 MB with data of 1.5 Lakh survey participants.The dataset includes survey data gathered from 180 countries, the response ranges from Not at all important to very important/ Not at all satisfied to very satisfied.
The dataset comes from the annual Stack Overflow developer survey, covering responses from developers in 180 countries. The data are available in CSV format, ranging from 40 to 150 MB, with responses from 1.5 Lakh survey participants.

### Data Format

The data is in a schema CSV file that consists of 252,199 observations and 62 variables.

### Projected work needs to be done for Insights.

###### Data Wrangling
The data is in a CSV file format with 252,199 observations and 62 variables.

**Dealing Null Values**: As this is a developer survey and few questions left unanswered by the respondents as ‘*NA*’ or ‘*Not Applicable*’ so dealing with null values is important to get precise information. Data conversion/ manipulation is also required, as the developer responded to the survey through radio buttons rather than yes or no pattern(Univariate analysis).
### Expected Work

###### Techniques expect to use in the project

Planning to use ML Algorithms like Random, may include, KNN, AUC for classification problems, training model, logistic regression,data visualization, parameter analysis, Linear Regreesion, Root Mean square.
Data wrangling tasks include handling null values and converting data for analysis. Techniques such as ML algorithms and data visualization will be employed.

## 👨‍💻 Contributing

- Contributions make the open source community such an amazing place to learn, inspire, and create.
- Any contributions you make are **greatly appreciated**.
- Check out our contribution guidelines(yet to update) for more information.
- Contributions are greatly appreciated. Check out our contribution guidelines (yet to be updated) for more information.

## 🛡️ License

LinkFree is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## 💪 Thanks to all Contributors

Thanks a lot for spending your time helping this project grow. Thanks a lot! Keep rocking 🍻
Thanks to all contributors for helping this project grow! 🍻

<a href="https://github.com/sanjay-kv/Stackoverflow-Analysis/graphs/contributors">
<img src="https://contrib.rocks/image?repo=sanjay-kv/Stackoverflow-Analysis" />
</a>

## 🙏 Support

This project needs a ⭐️ from you. Don't forget to leave a star ⭐️





This repo is crafted with ♥ and owned/maintained by @sanjay-kv

Don't forget to leave a star ⭐️ for this project!

Crafted with ♥ by @sanjay-kv.