Teach yourself using a cool guided project

Advance your Python programming skills by building a Whatsapp Chat Analyser

Finding ways to apply your knowledge after the learning process essentially means that the learning happened without much sense of a destination. All we were trying to do was amass all the knowledge we could, in the hope that it would come of use in some distant, mystical future.

Doesn't that feel like procrastination?

With Build To Learn, I want to approach learning by giving projects the primary importance

When you try to make something, you discover a hundred things that you don’t know. You discover things that you thought you knew but don’t really know. You trip over things that seemed so simple that you didn’t even pay attention to them. You fill the gaps in your learning.

Also, it is super fun and adventurous!

But there are a few problems with using this approach to teach yourself:

  • It’s hard to be structured because you are both the student and the curriculum designer

  • You aren’t sure if you are too much out of your depth

  • You get lost trying to find resources to teach yourself

That is why I have created a guide for you that you can use as a roadmap to help yourself build something cool - a Whatsapp Chat Analyser!

Okay so here's my project idea:

When chatting with a close friend, have you ever wanted to know -

  • the number of messages sent by each of you

  • your the average length of messages

  • who texts first and the first text in each conversation

  • your chatting time patterns - hourly, daily and monthly

  • most shared website links

  • most common words that each of you use

Wouldn't it be cool if you wrote a program that would just calculate all this stuff for you?!?

And what will you learn by doing this project?

Here are some textbook skills that you will pick up:

  • File handling

  • String operations in Python

  • Functions

  • Modules

  • PiP and using 3rd party packages

  • Regular Expressions (RegEx) in Python

But the guide is not a textbook. So along with them, you will also develop intuitions about good programming practices like:

  • The importance of readability of your code and coding style

  • When and how to break your code into functions

  • How to go about debugging your code (when you want to bang your head against the wall, instead)

  • How to look things up on the Internet - use Google, use StackOverflow, read documentation etc.

  • Understand the need for different data structures and when to use what

If you are intrigued as well, head over to the guide:

Advance your Python skills by Building a Whatsapp Chat Analyser: a Guided Project

Thanks a lot for reading! You can subscribe to the Build To Learn newsletter here.

If you liked this and want me to do more such guides please let me know by replying to this email or reaching out to me on either Twitter and LinkedIn.

Also, you can let me know your thoughts, opinions, comments or questions the same way! I would love to answer them. :)

If you think that friend of yours might find this newsletter interesting as well- It would be awesome if you could forward this newsletter to him/her.

Also, if you liked what you read, please hit the hardly-visible heart icon below. It will help in improving the visibility of this newsletter on Substack - the platform that hosts Build To Learn :-)