Understanding Ownership in Rust

For 2019, I decided to learn system programming. While C is still the most popular language when it comes to writing system software but learning C can be a bit daunting managing all the low level details manually such as malloc and free After a bit research, I decided to give a try to Rust . … Continue reading Understanding Ownership in Rust


Deploying Laravel app with MySQL and Redis on Amazon EC2 with Ansible

Ansible is a configuration management tool that automates the deployment process and can be easily scaled. The way Ansible works it connect to your remote host(s) via SSH and runs your deployment steps there. You can add up multiple hosts depends on how many forks can be created on your control machine (i.e from where … Continue reading Deploying Laravel app with MySQL and Redis on Amazon EC2 with Ansible

Bypassing Cloudfare DDoS in Scrapy

While doing web scraping I came across with a website who has implemented Cloudfare DDoS¬†(Distributed Denial of Service)¬†protection. DDoS is an attempt where a target host is attacked by multiple sources commonly to bring it down.¬†Wikipedia. Cloudfare, apart from being a usual CDN also provides security features to the websites. One of which is the … Continue reading Bypassing Cloudfare DDoS in Scrapy

Process CSV files with multiprocessing in Pandas

Pandas gives you the ability to read large csv in chunks using a iterator. This way you don't have to load the full csv file into memory before you start processing. https://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html My objective was to extract, transform and load (ETL) CSV files that is around 15GB. Here is the code snippter that can be … Continue reading Process CSV files with multiprocessing in Pandas