I wanted to start a quick tutorial targeted at Excel users and highlighting cool technologies that are relatively easy to learn and can provide a lot of benefit. Basically, they are technologies that provide a lot of bang for their “effort” bucks. The technologies I want to cover in order of ease to learn are:
Bash/Batch – Bash and Batch are shells for Linux/Mac and Windows respectively. Shells interact with your operating system to allow you to do things like read files, manipulate data, create remote login sessions and schedule tasks on your computer. One of the great things about bash and batch is that if you study it long enough, you can start using “cloud” computers, which allow computers to do work, while you are sleeping.
SQL/RDBMS – Relational databases allow you to store data compactly on your computer and provide a convenient interface for doing data manipulation. One great reason you should pick up this tool is that it allows you to specify relationships between data: Student – Class -Teacher – School being a good example and then make statements like: I want only class taught by John Naughton that are considered math classes and only students whose first name starts with A. One great thing about databases is scale. You can work with 100s of millions of rows. Since SQL is a standard for data access, there are SQL-esque access to big data tools like Hadoop and Spark, which is software that allows you to take dozens of computer and have them process things in parallel.
Python – Python is a general purpose programming language that provides countless libraries for different purposes. Do you want to develop a website or automate networking? Python can do this. Do you want to scrape a website, travel through a social network or do analysis on wikipedia? Python is a great tool for it. Do you want to be on the cutting edge of machine learning and AI by having direct interface to more advanced libraries? Python… Python can also be used for data manipulation and processing, which I will focus on.
I focus on the above three based on my knowledge. Other noteworthy technologies include R, which I hope to cover in a future article. During these tutorials, I might also mention other cool concepts or technologies.
If you are interested in this lecture series, I will put it under tutorial categories.