I was wondering if anyone has any recommendations on practice habits? I have zero experience with Python, and I am happy with Dataquest’s system. However, I feel overwhelmed and my comprehension seems to fall off the farther I get into a module (the more advanced it gets). It becomes debilitating when this happens. I know learning any new thing is difficult, especially something with such a steep learning curve.
I have read a few people recommending to study the notes and to start back at the top of the module, which I think is a great idea. Does anyone else have any other systematic practice habits that have helped them or someone else? Learning Python has been extremely tough, but I am still very motivated to keep pushing forward. I would love insight on effective practice habits that can help my progression from anyone that is willing to share them.
Thanks so much in advance!
I recommend that together with the Dataquest platform, you can choose to study it alongside with some other material to compliment your learning and keep your knowledge in check. Learning Python is not easy, if this is your first programming language, you may find it even more difficult. You may choose to create projects that interest you to keep you motivated to push on and learn more. Trust me, it won’t be easy, but the satisfaction after you have learnt and mastered the basic syntax is incredible!
Python is about practice! I personally used this set of challenges to practice and check my knowledge. I also used some Youtube videos. It really took me about a year to fully master the basic syntax of python so don’t feel discouraged and don’t give up! Sometimes, it is also good to take a break amidst your time set aside to practicing programming. You may even get a new perspective or be able to spot silly mistakes then. Lastly, don’t be afraid to google errors, check the W3schools documentation or Stackoverflow. You can also consult us in the community if you face difficulties! Happy Pythoning!
Hope this helps!
Hi, I agree with the suggestions from @masterryan.prof. In addition I do think it is good to go over again your projects from time to time and try to improve them. Also go over the mission more than once. I have also used various resources, as suggested, try also youtube videos, or maybe coursera and udemy videos (my fav is always Dataquest, but I think it is good to have a variety of inputs).
Moreover is also very personal, everyone has a different ways of learning. But for me it works to see codes and concepts applied in different ways (eg. a combination of videos and written code). I do not know your level, but I advise you to do some small projects on your own, even just trying similar projects as the guided projects from here but with a different dataset (basically repetition is the key). You might want to check also material from prof. Charles Severance. Maybe you just need to slow down a little bit, once you fet familiar with the main basic concept you will be a lot faster to learn new ones! I hope it helps a bit. Annalisa
Thanks so much for the insight, it’s greatly appreciated. I will definitely incorporate what you have listed!
Thank you very much for the tips! This is my first time learning any code, so its a significant learning curve for me.
I also agree with the previous suggestions made by @masterryan.prof and @annalisa. What I’d like to add is that I’ve used SoloLearn in 2016 to learn Python and you should check their mobile app out! You can challenge other people in that app, as well. I also strongly recommend that you check out the official Python tutorial, as well. Go through it in great care, learn as much as you can about the built-in libraries. You can always PM me for further help if you need some. You can also check out the subreddit r/learnpython and some meme pages that revolve about Python memes, programming memes etc… Hang in there and keep learning, you can do this!
Thanks @dilarakrby I forgot about Sololearn, usually it’s one of my top recommendation. I confirm it’s a lot of fun!
@NewCode These guys @masterryan.prof @dilarakrby @annalisa have already shared some valuable insights. One thing I would like to add to the list is , HackerRank & HackerEarth. These platforms are great place for practice specially for programming and ML and they have some really challenging problems. I personally practiced many problems here and they are very interesting. I believe this will be helpful to get your hands dirty.
And lastly DQ also have wonderful practice problems. Kindly check it out. Finally i would like to conclude is we need to do practice, practice, practice & again practice to get familiar with language. Yes i understand it will take time to reach this goal but if you keep consistency in your progression then it is not a big challenge
PS : I am also like you. Quite new to the programming world and Python is my first programming language and i really love Python because of its Simplicity, Robustness , Less writing code comparatively with other languages.
Do reach me in PM in case if you need any further help.
This is great stuff, thanks!
Thank you so much for the info!
@NewCode I agree with all the suggestions above and as much as I appreciate them, for the sake of consistency and steady progress, choose one that you prefer and use that along with Dataquest, that will help you not get overwhelmed. I hope that helps…
I have implemented a combination of the recommendations above, and I am already feeling better about my progression. A combination of things in conjunction with Data Quest is the way to go (at least for me).
Also, different platforms present things in different ways, which I found very helpful for comprehension. It made me think a little different to come up with the correct solution or to understand the problem.
Thanks again! If there are anymore helpful tips out there, please share!
Hi @NewCode, thanks for sharing the topic and I agree with all the suggestions. I have also been in the same boat and in addition to the practice time, a few more ideas have helped me:
Having a growth mindset: I try my best to take each problem as an opportunity to improve, learn and get better. It just keeps my motivation high and I keep coming back with renewed enthusiasm.
Distraction free practice: I try to set aside a few hours in a week where I am without any distractions and focus entirely on practice. The process is quite rewarding over time.
Keep practicing and over time, your efforts will be rewarded. Happy learning.
Hey @NewCode, I feel like we all have this struggle when starting. Coming from a non-technical field myself, I feel like the more you expose yourself to all types of code, the less scary it becomes. I made it a habit to just go over people’s codes which helped especially when I came across similar code and the more I did this, the less scary it became. While I am not at my best yet, I am proud I can recall some of the code from the top of my head. It a matter of time and practice as has been stressed by others before me
Thank you or the continued support and hints. I just started and completed my first guided project, and it was quite difficult. I felt fairly good with the modules leading up to the project, but once I got about half way through the project I started getting frustrated. I feel like I still absolutely nothing (which I don’t) and couldn’t execute the project at all without the solutions page guiding me.
I am sure this is all normal right? =)
Yah when I first started off learning, once in a while I’ll look at the solutions if I’m really stuck and try to understand the underlying logic of the solution so I can better apply it to new problems that I may encounter.
@NewCode its quite normal. Just make sure you set aside time each day to come back and practice. Ever heard of the 10,000 hours rule ? That should give you some motivation that you can become better over time. Trust your capabilities
Use pomodoro technique! You can find other details here but the general idea behind pomodoro is you study for about 25 minutes with your full atention with that time and after that have a break for 5 minutes. That way, your tricking your brain into working on small amount of time and when your “into” what your doing, time flies by. Or you could do 1 hour of study on this month, 2 on another month and so on. It worked for me and I study 7 hours a day now because of pomodoro technique!
Just do it little by little and you will be overwhelmed one day
Hi @NewCode Firstly, don’t be too hard on yourself. Whether Python is the very first programming language or one of many for data science enthusiasts to have in their back pocket, it can be equally overwhelming. I’d just stick with it - and as @masterryan.prof hinted, taking a break from “learning” and spending on “applying” the concepts you learned might help you find out how super you are. For me, that outlet is Codewars: https://www.codewars.com/. There are challenges( Python + many others ) there at several levels of difficulty that you can choose and the community there is also quite active.
Another way I found for testing my coding skills or expanding my repertoire is to do some Data Analysis projects in Python on my own using public data. You might be able to apply DQ training on coding styles and story telling then showcase on Github or share with your peers. You could write functions that are re-usable or useful for solving others’ issues! Browsing around on Stackoverflow is also helpful as we can see what kind of Python questions people are asking/having trouble with and participate regardless of where we are in the learning path.
Hope you find this helpful.
Hi @NewCode and others in the community: I think I missed out some stuff…
This article is great.
Since the main packages which Data Scientists when coding in Python are Pandas and Numpy, this should be a good guide to help you solidify your python data science foundations. Personally I feel that even now that I have mastered the basics, I’m still not particularly strong in Pandas so I will strive to work on these exercises too in my free time.
Also wanted to share another article on the mindset that we should have as aspiring data scientists!
Just wanted to share these resources with you guys!