Git Product home page Git Product logo

onecode21days's Introduction

Challenge #OneCode21Days Accepted

What's new?

  • You get a mentor.
  • It's Pair Coding!
  • It is easy.
  • It requires a smaller time period.
  • And helps in starting with Open Source Contributions

Why this challenge?

All big companies like Google, Facebook, Amazon, Paytm, BookMyShow etc, they all have one requirement in common and that is requirement for knowledge of Data Structures and Algorithms. One can learn languages and frameworks for development to showcase in their resume but they still ask for Data Structures and Algorithms.

I have suffered enough due to lack of knowledge for the same. Therefore, I want to start a challenge where one can choose a partner for him/herself and they both can code daily for 1 hour. And then they will review each other codes. They will add comments in each other's code as to where it could have been better. They also need to add a new learning each day for 21 days.

How is it different from other challenges?

  • It brings Pair Programming concept with a new twist.
  • Everyone becomes a mentor.
  • It is easier to commit to.
  • It does not take much time.
  • one need not focus much on sharing and posting and logging . Just code and show progress.

Why 21 days?

No, it does not take 21 days to break an old habit. Similarly 100 daysare again not enough to break a habit. Generally the time can vary in the amount depending upon a person. Also if one aspires to change a habit, following a 100 days pattern is quite difficult, it usually happens not to be completed. Reasons could be like sometimes we need to go somewhere and then we thinks to cover it up later. And sometimes we miss it casually, thinking one day won't affect us.

The need is to go straight for a predecided amount of time and without a break. So this is why I chose 21 days. It is easier and we can code for 1 hour.

What do we get?

  • We learn how to code 'Algorithms'.
  • We get a mentor as a friend.
  • We learn how to code with good practices.
  • It builds up the confidence towards Coding & Problem Solving, thus lowering all the related fears.
  • We will start to aim for bigger companies, thus bigger opportunities.
  • Less Imposter Syndrome.
  • Doing alogorithms alone is tiresome and you can get stuck in between, thus Pair coding helps.
  • We learn a lot.
  • It cuts the competition nature of practice. We bring in ourselves a learning nature.
  • And, Woahh, We get a working/Active GitHub account! :)

What you need to do, if you join the challenge:

**Fork this repo by clicking on the fork button on the top of this page. This will create a copy of this repository in your account. **

  1. Find a partner that you think you can relate to. Someone who can code or wishes to learn to code and someone you can communicate to.
  2. Then you both agree upon a level of algorithms you both will be working together on. By level, I mean the level of difficulty. Do not choose a very hard level to start with.
  3. You both code for 1 hour daily on a different set of problem from any site you like.
  4. After you both are done with your daily coding, you need to push it to this forked repository in directory that I have created, in a different file each day with the naming convention - "[NAME OF THE PERSON]-DAY-[Day NUMBER]". eg DHRUVAM-DAY-1.
  5. Then you both can check each other's code and try to understand and review what could have been done better. Try to review the coding styles, naming conventions, code coverage, code efficiency etc.
  6. You both add in the comments what could have been better at the end of the file like I have done in this Readme file that you're reading right now with a "REVIEW SECTION" heading.
  7. Also add a "Today's New Lesson" heading under which you both add anything you learnt today from anywhere around the world(from other resources, I mean) regarding coding or algorithms or programming languages. This will help you both to learn something new everyday and this new thing can be anything and as small as that "In java, the member variable boolean has a default value of false". It does not matter that something you learn about is old or new. If it's new for you, you put that damn thing there!
  8. You and your partner, both challenge at least one another person on whatever social media platform you like with a hashtag #OneCode21Day. Help the world grow with you!
  9. I have added two folder named "PartnerOneCodeInside" and "PartnerTwoCodeInside". You both keep your codes there for everyday with a naming convention that I have mentioned in point number: 3.
  10. To push your code daily into the respective folders, you need to go through this, click here .
  11. Tweet or Instagram or Facebook Share your progress every day using the same hashtag

Why sharing the progress?

This is a good question. Sharing the progress lets you self-retrospect and you gain satisfaction. Each day you share, people come to know about your efforts and work and thus, it remove the feeling of competition. Our lives is too small to compete. Let's share and spread the love.

REVIEW SECTION

  • If you have any questions or ideas about #OneCodeOneDay (or other ideas), connect me on Twitter, Linkedin, Facebook, Instagram or Medium.
  • If you like the concept, please โ˜… star it (on top right of the page) :) Does not take much of your time :)

onecode21days's People

Contributors

dhruvamsharma avatar sumanyurosha avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.