Skip to main content

Posts

Competitive Programming

Competitive programming is a mind sport usually held over the Internet or a local network, involving participants trying to program according to provided specifications. Contestants are referred to as sport programmers. Competitive Programming mainly focuses on our ability to find efficient solutions to well-defined problems. Usually, a question arises - Why Competitive Programming? Many of the top tech companies like Google, Facebook hire people through a test which includes competitive programming. Also, participation in the ACM International Collegiate Programming Contest (ACM-ICPC) is a great opportunity to be seen by Apple, Facebook, Google, IBM and many other authorities in the IT sphere. These major companies are constantly keeping track of the participants to find talented employees. Having experience in competitive programming shows employers you can work in a team, solve complicated problems, work in stressful situations, manage time and deadl...
Recent posts

A beginners guide to NumPy

The previous post took you through the basics of machine learning using python with scikit-learn and tensorflow, this post will give you a brief introduction to Numpy. NumPy is a python package which stands for "Numeric Python". It enables you to do mathematical computations easily and effectively hence making coding simpler. http://www.numpy.org/ Installing via pip: After having python3 and pip installed, installing packages can be done using the following command on windows cmd. >>> python - m pip install -- user numpy scipy matplotlib ipython jupyter pandas --user   makes pip install packages in your home directory instead, which doesn't require any special privileges. Import Numpy: >>> import numpy as np Now we use np as a reference to numpy in the code. Numpy arrays: Create a numpy array of type np.ndarray: >>> A = np.array([[1,2,3],[4,5,6],[7,8,9]]) Create a numpy array containing ones/...

Machine Learning Quickies

This post will take you through the basics of machine learning using python with scikit-learn and tensorflow and also show the installation process for each. As discussed in the earlier post, python is the most commonly used language for machine learning applications so the first steps for us would be installing python libraries. 1. Python: Python packages are split into two versions of it as Python2 and Python3 but for simplicity we will only focus on installing Python3. For Windows and Mac users installing python is easy due to installer available at  https://www.python.org/downloads/   After installing python on windows try running python on command prompt by:            python --version Note: Windows users don't forget to  include location for python.exe in PATH environment variable of windows   For Linux/Unix users you need to open terminal and execute the following commands    First add python3 PPA t...

Why Python for Machine Learning

Python is the most commonly used programming language for Machine Learning. Python is simple, elegant, consistent, and math-like. The clear syntax of python has earned it the name " executable pseudo code". Its English-like syntax makes coding simpler.  The second reason for its popularity is availability of a number of freely available open source libraries. The scientific libraries like NumPy, and SciPy allow you to do vector and matrix operations. This makes the code even more readable and allows you to write code that looks like linear algebra. Machine Learning is nothing but playing with datasets . Python provides libraris to access data through csv files, webpages, etc. Through its data visualization libraries one can plot graphs of the available dataset both in 2D and 3D and handle most of the plots commonly available in the scientific world.   Python provides us ease to process and manipulate text, which makes it ideal for processing non- numeric data. ...

An Intro to Firebase

Firebase is a gentle but very powerful introduction to storing and managing data. With just a few lines of code, you can read and write almost any data you could dream up from your own custom Firebase backend. If you are an Android or iOS developer, with Firebase your app can have any of the following features: Cloud storage: Firebase provides a cloud storage function which perform uploads and downloads regardless of network quality. Uploads and downloads are robust, meaning they restart where they stopped, saving your users time and bandwidth. Real-time synchronization between many users: Firebase provides a cloud-hosted database where data is stored as JSON and synchronized in realtime to every connected client. When you build cross-platform apps with Firebase's iOS, Android, and JavaScript SDKs, all of your clients share one Realtime Database instance and automatically receive updates with the newest data. Authentication: Firebase provides authentication t...

Git : Todo and not Todo : Part-2

Hello there! This is the second part to introduction to git. If you have not read the first part then please first go through that first, as proceeding along here without that introductory knowledge will not be really helpful.Here is a link TL;DR All the git commands that we will be talking about, now and later-: git init git clone git add git commit git status git remote git push git pull git fetch git branch git reset So, lately we learnt about Version Control Systems also abbreviated as VCS and got to know about git and how it is completely different from github and other VCS hosting websites. In this part we will be looking on the more practical part of using this wonderful tool and also why we should learn it very first in our development career. Later, I will also help you understand that git is just a small part of the entire development career that you aspire to make and why it should not be considered just more than a medium to share your code with...

Web Development for Beginners

Trying your hand at a little Web development work? The task probably seems pretty daunting but hey, anyone can do it if they set their mind to it—and if you set your mind to learning one language at a time, it’s more than do-able for the average tech enthusiast who has an ample amount of fortitude. The methods by which computers communicate with each other through the use of markup languages and multimedia packages is known as web technology. Everywhere we are surrounded by websites, blogs or say applications of web development. Web Development tends to split into three main concentrations- 1.Front-End 2.Back-End 3.Full Stack 1.Front-End The front end of a website is the part that users interact with. Everything that you see when you’re navigating around the Internet, from fonts and colors to drop-down menus and sliders, is a combo of HTML, CSS, and JavaScript being controlled by your computer’s browser. We can learn frontend easily but patience is key to become a good front...