Sign in

Software Engineer 2 @ eBay. University of Texas at Dallas Alumna. BITS Pilani Alumna. You can follow me @ https://www.linkedin.com/in/ananyabanerjee15/

If you want to know the best way to become an amazing programmer, you have come to the right place!

This article is intended for people who have little or no experience coding and are beginners to the world of programming. If you want to make yourself an excellent coder then the strategies discussed below will definitely help you achieve that. Let’s begin!

If you are new to programming, the first and most important thing to do is to choose a programming language. There are a lot of programming languages such as C, C++, C#, Java, Python, Go, etc for you to choose from. I would suggest choosing an object-oriented language such as C++ or Java as your first programming…


This article introduces you to the basic intuition behind Object-Oriented Programming, and its four pillars: abstraction, encapsulation, inheritance, and polymorphism. Let's begin!

Object-Oriented Programming(OOP) is a paradigm of programming or a way of programming which uses classes and objects to solve a problem. A class is just a way of defining the attributes and capabilities of any tangible thing. A class, however, cannot be used directly. One needs an object, which is an instantiation of the class, to access the attributes and methods defined within the class. Thus, a paradigm of programming where you create classes and use their objects to solve any given problem is known as OOP.

Let me give you an example. If you were asked to you find…


Natural Language Processing

Coreference Resolution is one of the most essential Natural Language Processing (NLP) tasks. But, before we begin to understand Coreference Resolution, it is essential to understand the definition of discourse.

Discourse in the context of NLP refers to a sequence of sentences occurring one after the other. There will obviously be entities that are being talked about and possible references to those entities in the discourse. We use the word “mention” to refer to these references.

An example of a discourse:

Ana is a Graduate Student at UT Dallas. She loves working in Natural Language Processing at the institute. …


Generative Adversarial Networks[11] or more commonly known as GANs, are one of the most intriguing neural network frameworks or ideas that are prevalent nowadays. This idea was proposed by Ian Goodfellow while he was working with Yoshua Bengio at the University of Montreal.

As the name suggests, the idea behind Generative Adversarial Network stems from the idea of playing a game. Just like in a game of chess, there are two players who play against each other to win the game as adversaries. …


Parsing is the process of analyzing all the words in a sentence and identifying their syntactic and/or semantic roles. Just like subconsciously we use grammar in our native language to form and understand a sentence. Similarly, we use grammar in NLP to decipher how a sentence is constructed and understand its syntactic and semantic role. Primarily, there are two kinds of parsing: Constituency Parsing and Dependency Parsing.

Dependency Parsing as the name suggests focuses on breaking a sentence into words or tokens or phrases and then analyzing the binary dependency relationships between them to understand their grammatical roles. …


Who among us hasn’t felt sad, depressed or demotivated at one or other junction of our lives? Every one of us may have felt that we have more potential than we showcase to the world. We all feel that we deserve more, that we deserve better. Many of us feel that at work, we are passed over for promotions even though we are more capable. We feel that we are never given due credit. That the work that we do is never valued. Some of us even feel that we are never given the right opportunities that we deserve. Such…


Natural Language is the language that we write, speak and understand. Almost all known languages in the world fall under the umbrella of Natural Languages. Natural Language Processing is the task of processing written forms of language and making a computer understand them.

Let’s talk about some very basic tasks that are required in order to make the natural language Machine or Deep Learning model ready.

Sentence Segmentation

Converting to Lowercase

Tokenization of Words

Removing Punctuations, Special Characters and Stopwords

Lemmatization / Stemming

Creation of Bag of Words Model / TF-IDF Model

Let’s talk about each of them one by…


There are so many interesting areas of research in the world, and I am sure each one of us at one or the other time in our lives have envisioned creating something that no one has even thought of until now. So eager to show the world that we have got the mettle to do something extraordinary. But the moment you got started, you realized how vast the world is and how so many people across the globe work on so many ingenious ideas to solve a problem or to invent something amazing.

It is at this moment that we…


We often see different Machine and Deep Learning models struggling to mimic human level performance. For example, we have not been able to create Vision Models capable of detecting objects, understanding relationships between them and summarizing the events in the image that equal any human’s capacity to perform such tasks. Have you ever wondered why?

Even after giving humongous amounts of data to our model, with different permutations of Hyperparameters, we still fail to achieve human-level performance. Its very clear to us that the model fails to capture the nuances that our brain is capable of capturing almost subconsciously. This…


For many of us, Neural Networks are a mystery. Whenever we hear people talk about deep learning, we think about Neural Networks. Many people believe them to be the tools of the elite while other think of them as boogeyman of the Machine Learning world. Lucky for us, neither of the above statements are even remotely true.

The term neural networks takes its inspiration from the neural framework of our brain. The Central Nervous System of our body consists of small building blocks known as Neurons. These help transmit messages in the form of signals from one part to another!

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store