diff --git a/Basics/Hindi/6_if/Exercise/6_exercise1_2.py b/Basics/Hindi/6_if/Exercise/6_exercise1_2.py index 85d95f7a..978b1b5c 100644 --- a/Basics/Hindi/6_if/Exercise/6_exercise1_2.py +++ b/Basics/Hindi/6_if/Exercise/6_exercise1_2.py @@ -18,7 +18,7 @@ print("Both cities are in india") elif city1 in pakistan and city2 in pakistan: print("Both cities are in pakistan") -elif city1 in bangladesh and bangladesh in india: +elif city1 in bangladesh and city2 in bangladesh: print("Both cities are in bangladesh") else: - print("They don't belong to same country") \ No newline at end of file + print("They don't belong to same country") diff --git a/Basics/area.py b/Basics/area.py index 5adc2f64..9303b452 100644 --- a/Basics/area.py +++ b/Basics/area.py @@ -1,3 +1,5 @@ +# IT will calculate the area of a triangle +# Area of Traingle is=1/2*Base*Height def calculate_area(base, height): print("__name__: ",__name__) return 1/2*(base*height) diff --git a/DataScience/BangloreHomePrices/client/app.html b/DataScience/BangloreHomePrices/client/app.html index 12dc302e..a923f7ef 100644 --- a/DataScience/BangloreHomePrices/client/app.html +++ b/DataScience/BangloreHomePrices/client/app.html @@ -10,7 +10,7 @@

Area (Square Feet)

- +

BHK

diff --git a/DeepLearningML/14_imbalanced/handling_imbalanced_data_exercise.md b/DeepLearningML/14_imbalanced/handling_imbalanced_data_exercise.md index acf7be8c..6aa72830 100644 --- a/DeepLearningML/14_imbalanced/handling_imbalanced_data_exercise.md +++ b/DeepLearningML/14_imbalanced/handling_imbalanced_data_exercise.md @@ -6,7 +6,7 @@ 1. OVersampling: SMOT 1. Ensemble - [Solution](https://github.com/codebasics/py/blob/master/DeepLearningML/13_imbalanced/handling_imbalanced_data_exercise_solution_telecom_churn.ipynb) + [Solution](https://github.com/codebasics/py/blob/master/DeepLearningML/14_imbalanced/handling_imbalanced_data_exercise_solution_telecom_churn.ipynb) 2. Take this dataset for bank customer churn prediction : https://www.kaggle.com/barelydedicated/bank-customer-churn-modeling 1. Build a deep learning model to predict churn rate at bank diff --git a/DeepLearningML/16_cnn_cifar10_small_image_classification/cnn_cifar10_dataset.ipynb b/DeepLearningML/16_cnn_cifar10_small_image_classification/cnn_cifar10_dataset.ipynb index 28bd4eb2..348e5e76 100644 --- a/DeepLearningML/16_cnn_cifar10_small_image_classification/cnn_cifar10_dataset.ipynb +++ b/DeepLearningML/16_cnn_cifar10_small_image_classification/cnn_cifar10_dataset.ipynb @@ -644,7 +644,7 @@ "Use CNN to do handwritten digits classification using MNIST dataset. You can use this notebook as a reference:\n", "https://github.com/codebasics/py/blob/master/DeepLearningML/1_digits_recognition/digits_recognition_neural_network.ipynb\n", "\n", - "Above we used ANN for digits classification. You need to modify this code to use CNN instead. Check how accuracy improves fast with CNN and figure out how CNN can be a better choice for doing image classification compared to ANN. Once you have worked on this problem on your own, you can check my solution by clicking on this link: [Solution](https://github.com/codebasics/py/blob/master/DeepLearningML/16_cnn_handwritten_digits/cnn_mnist_exercise_solution.ipynb)" + "Above we used ANN for digits classification. You need to modify this code to use CNN instead. Check how accuracy improves fast with CNN and figure out how CNN can be a better choice for doing image classification compared to ANN. Once you have worked on this problem on your own, you can check my solution by clicking on this link: [Solution](https://github.com/codebasics/py/blob/master/DeepLearningML/16_cnn_cifar10_small_image_classification/cnn_mnist_exercise_solution.ipynb)" ] } ], diff --git a/README.md b/README.md index 60e1bd92..009533ed 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,14 @@ # py -Repository to store sample python programs for python learning -Youtube channel https://www.youtube.com/channel/UCh9nVJoWXmFb7sLApWGcLPQ +Repository to store sample Python programs. + +This repository is meant for beginners to assist them in their learning of Python. The repository covers a wide range of algorithms and other programs, and would prove immensely helpful for everybody interested in Python programming. + +If this is your first time coding in Python, I would love to suggest you begin from the [Basics](https://github.com/codebasics/py/tree/master/Basics). They are simple to understand and hopefully will prove fun to you. + +You can also pay a visit to my very own [Youtube channel](https://www.youtube.com/channel/UCh9nVJoWXmFb7sLApWGcLPQ). + +Contributions to the repository are welcome. + +[![CodeBasics](https://yt3.ggpht.com/ytc/AAUvwnihwx4a5idwBTE5JFpXHb-ykyh-i1gXtFiGJYV1=s176-c-k-c0x00ffffff-no-rj)](https://www.youtube.com/channel/UCh9nVJoWXmFb7sLApWGcLPQ). + +#### Happy coding! diff --git a/TechTopics/CodingRoadmap2020/learn_coding_roadmap_2020.md b/TechTopics/CodingRoadmap2020/learn_coding_roadmap_2020.md index 087d6fee..5fcdcc83 100644 --- a/TechTopics/CodingRoadmap2020/learn_coding_roadmap_2020.md +++ b/TechTopics/CodingRoadmap2020/learn_coding_roadmap_2020.md @@ -1,35 +1,26 @@ -# Step by step guide on how you can learn programming +# Step by step guide on how you can learn programming in 6 months -Below is the 11 step process of how you can start with zero knowledge and no computer science background and master coding skills **for FREE** by following online resources and self study - -![11 Step Process To Learn Programming](11_steps_learn_programming.png) +Below is the step by step process of how you can start with zero knowledge and no computer science background and master coding skills **for FREE** by following online resources and self study +Week 1 & 2 +========== -### Step 1. Understand principals of effective learning +### 1. Understand principals of effective learning Please watch this video to understand how you can learn effectively so that you can get maximum output by investing minimum amount of time. -https://www.youtube.com/watch?v=ZVO8Wt_PCgE - -Quick summary of this video is in the image below, - -![Effective Learning](nishant_effective_learning.png) - -Here nishant talks about spending less time in input (which is watching coding tutorials, reading programming books etc) and spending more time in reflecting, practicing coding problems and sharing with your friends. - -### Step 2. What is Code? - -At this step you want to understand what exactly is code. It is a language that you use to communicate with the computer (hence it is called programming ***language***). This video goes elaborates what exactly is code. - -https://www.youtube.com/watch?v=hYws-CDXA7k +https://www.youtube.com/watch?v=yZFrSDjRvjk -### Step 3. Computer Science Principals +### 2. Computer Science Principals -Program or code runs on a computer and uses CPU,RAM, input/output devices. This khan academy course goes over all these basic principals of computer science. Data is stored as bits (1s and 0s) in RAM and disk. The course will also go over fundamentals of binary numbers. +Program or code runs on a computer and uses CPU,RAM, input/output devices. This khan academy course goes over all these basic principals of computer science. Data is stored as bits (1s and 0s) in RAM and disk. The course will also go over fundamentals of binary numbers. **In this course only follow first 4 sections (1) Digital Information (2) The Internet (3) Programming (4) Algorithms** Completing remaining sections is optional and do it if you have time and interest. https://www.khanacademy.org/computing/ap-computer-science-principles/computers-101 -### Step 4. Choose Career Track +Week 3 & 4 +========== + +### 3. Choose Career Track Being programmer is like being a doctor where there are many different specializations. Doctor can be a heart specialist, a lung doctor or a general physician. Similarly you can become a web programmer, mobile app developer or backend developer. Here I have outlined @@ -51,13 +42,13 @@ few popular career tracks along with programming languages required for that par 1. JAVA -### Step 5. Level 1 Coding Tutorials +### 4. Level 1 Coding Tutorials At this stage you are ready to write your first program and explore coding tutorials. The idea is to get basic understanding of programming such as variables, data types, file operation, writing static web pages etc. Below is information on courses based on career track, -##### 5.1. Web and mobile app development +##### 4.1. Web and mobile app development Here are the links of html/css courses. For codecademy you can create free account and get access of 180 hr of content per month. All courses listed below are free. @@ -66,7 +57,7 @@ https://www.khanacademy.org/computing/computer-programming/html-css https://www.codecademy.com/learn/learn-html https://www.codecademy.com/learn/learn-css -##### 5.2. Data Science, machine learning, backend development +##### 4.2. Data Science, machine learning, backend development For python, I've build a tutorial playlist for absolute beginners. Watch **first 14** tutorails from this playlist. Remaining you can watch at step # 9 @@ -80,7 +71,10 @@ Python hindi tutorials: https://www.youtube.com/playlist?list=PLPbgcxheSpE1DJKfd I've many interesting exercises and their solutions at this place: https://github.com/codebasics/py/tree/master/Basics/Hindi (The folder name is hindi but exercise is for both hindi and english tutorials) -### Step 6. Debugging skills +Week 5 & 6 +========== + +### 5. Debugging skills All right, at this stage now you have practiced some basic programming. It is time now to develop debuggin skills. You can not become a good programmer without sound debugging skills, period. Especially in the early stage @@ -93,7 +87,7 @@ Debugging tips playlist: https://www.youtube.com/playlist?list=PLeo1K3hjS3uu-0i4 Debugging in chrome: https://www.youtube.com/watch?v=H0XScE08hy8 -### Step 7. Data Structures +### 6. Data Structures There is not a single programming interview where they don't ask about data structures. Data structures are fundamental building blocks of any program (doesn't matter which programming language). Follow this playlist @@ -101,7 +95,11 @@ to get your data structure concepts clear. Data structures playlist: https://www.youtube.com/playlist?list=PLeo1K3hjS3uu_n_a__MI_KktGTLYopZ12 -### Step 8. SQL Basics + +Week 7 & 8 +========== + +### 7. SQL Basics Doesn't matter which career track you choose, you need to have good understanding of relational databases and SQL (structured query language). Here are some course links for SQL. @@ -112,31 +110,67 @@ Kudavenkat SQL playlist (watch first 12 videos): https://www.youtube.com/playlis For kudavenkat playlist above, if you are interested in going little more deeper into SQL then you can watch tutorials beyond # 12. -### Step 9. Level 2 Coding Tutorials +Week 9 & 10 +=========== + +### 8. Level 2 Coding Tutorials At this stage, now you know some basic coding, data structures, SQL etc. You can now go through intermediate coding tutorials. Here are some online resources for the same, -##### 9.1 Python +##### 8.1 Python -Codebasics python tutorials (tutorial # 15 and onwards): https://www.youtube.com/playlist?list=PLeo1K3hjS3uv5U-Lmlnucd7gqF-3ehIh0 +Codebasics python tutorials (tutorial # 15 to # 27): https://www.youtube.com/playlist?list=PLeo1K3hjS3uv5U-Lmlnucd7gqF-3ehIh0 -##### 9.2 Web and mobile app development +##### 8.2 Web and mobile app development Interactive weg pages: https://www.khanacademy.org/computing/computer-programming/html-css-js JQuery: https://www.khanacademy.org/computing/computer-programming/html-js-jquery -### Step 10. Algorithms +Week 11 & 12 +============ + +### 9. Algorithms Algorithms are applicable to any programming language. Understanding algorithms will help you evaluate inner working of your program, performance measurement using Big O complexity etc. https://www.khanacademy.org/computing/computer-science/algorithms +Codebasics algorithm videos (Video # 13 onwards) https://www.youtube.com/playlist?list=PLeo1K3hjS3uu_n_a__MI_KktGTLYopZ12 -### Step 11. Projects, Projects, Projects +Next 3 months +============= + +### 10. Projects Throughout your journey of step 1 to 11, you need to adhere to a principal of **project based learning** Which means have a project and then learn each of the skills required to finish that project step by step. Once you finished one project move onto another. As you work on more projects you will learn new skills and become better and better at programming + +Codebasics Python Projects: https://www.youtube.com/playlist?list=PLeo1K3hjS3usVcPj6osMx1tNkARllcRhZ + +Here is the summary of this step by step process. + +![11 Step Process To Learn Programming](11_steps_learn_programming.png) + + +Useful Resources & Tips +======================= + +### Group Study + +Group study is always better than studying alone. If you know someone who wants to learn coding as well then make a group and start studying together. Also hold each other accountable and discuss learning milestones with each other. You can join codebasics discord server to find partners for group study. + +Discord link: https://discord.gg/r42Kbuk <-- On this you will find a partner finder channel where you can find similar minded people with whom you can do a group study + +#### Following discipline and not giving up + +Learning coding, especially when you are new, can get frustrating at times. Every good programmer has gone through this pain so if you are facing issues, don't start thinking you are not smart and coding is not your thing. You need to have lot of patience. When you come from non coding background, thinking in terms of coding is a big shift in the mind paradigm hence it can take some time before it starts clicking you. + + + + + +