APIs

  • Get raw file data from Github API
  • Status: DRAFT -- Github requests with HttPie
  • AJAX
  • The Simplest AJAX Script
  • AJAX Basics
  • API Basics - Grabbing Data with Python
  • Amazon Web Services (AWS)

  • How to sync an entire Amazon S3 bucket locally
  • Bash Scripting

  • Here Documents in Bash
  • File Test Operators
  • Associative Arrays in Bash
  • Status: DRAFT -- Bash script for installing ISPConfig 3.1 on Ubuntu 17.04
  • Upgrade to Bash 4 on macOS
  • Directly run bash scripts in Github Gists locally in Terminal.
  • Arguments
  • Bash Scripting 101
  • CASE Statement
  • Colored Output
  • Conditional Statements IF/ELIF/ELSE
  • Showing Help and Usage
  • Taking user input
  • Variables and Arguments
  • Check if a program is installed
  • Require script to be run as root
  • Batch renaming files in Bash
  • How to create a man page for your Bash Script
  • Bash script to create a new Jekyll post
  • Bash Scripts - Load/Read/Include Settings from Another File
  • Opencart Install Script
  • Bash script to create OCMOD and vQmod templates with a single command
  • Bash script to create Media Queries with Sass
  • Bash Scripting - Taking input
  • How to check if a user is root
  • Bash script to install a LAMP stack
  • How to take options for your Bash Script
  • Write a Bash Function to Create a gruntfile.js for your project
  • CSS & Sass

  • Notes on CSS Grid
  • SVG Sprites
  • Quick intro to CSS Animations
  • Getting started with CSS Flexbox
  • CSS Layout Models
  • CSS Margins Collapsing and how to deal with them
  • A to Z Sass in 30 minutes
  • Hands-on with CSS Grid Layout
  • Introduction to CSS Grid Layout
  • CSS Positioning
  • CSS Transitions
  • Sass - Beginner to Advanced in 30 Minutes
  • CSS Transitions and Transforms
  • CSS Style Notes
  • Making a site presentable in 7 lines of code
  • How to create a Grid system in Sass
  • CSS Blend Modes
  • Sass - Mixins vs. Extend
  • Sass Function to Auto-Convert Pixels to Ems
  • Debugging Sass
  • Sass: Working with Libraries
  • Import Files in Sass with `@import`
  • Create a Color Palette in Sass
  • How to install Compass on a Mac via Command Line
  • Cheatsheets

  • Homebrew Commands
  • MySQL Commands
  • Amazon RDS + MySQL
  • Commands

  • Select files with multiple different file extensions
  • [gcp --parents] Copy selected files and recreate folder structure
  • Change Default Terminal Editor
  • [curl] run a script remotely from web
  • [cut] cut, print selected parts of a file
  • [dig, whois] Domain records
  • [dig] Domain Information Groper
  • [last] Find out login details
  • [lsusb] List USB devices
  • [grep, egrep, fgrep] Search files based on patterns
  • Doomsday Commands
  • [SimpleHTTPServer] Python HTTP server
  • [find] Find and Delete files
  • [grep, sed] Find and Replace string in multiple files
  • Pipes |
  • Redirects (>, >>, 2>, 2>&1)
  • Streams (stderr, stdin, stdout)
  • [grep] Find and Delete files based on string
  • [curl] Get IP address (external) using URL endpoints
  • [ifconfig] Get IP address of your machine (internal & external)
  • [apt] Packages
  • [scp, sftp] Transfer files between systems
  • [scp] Secure Copy
  • [crontab] List & Edit crontab entries
  • [tar] Compressed Archives
  • [df] Disk Free
  • [du] Disk Space Usage
  • [wget, grep, nano, ps, ssh] Top 5 Commands
  • [chmod] Permissions
  • Devil's Commands
  • [wget] How to store an entire website offline
  • TwitchInstallArchLinux - chat.md
  • Vim Basics.md
  • enable cross-site scripting.md
  • Databases

  • Allowing remote access to MySQL
  • Search for characters in SQL with LIKE and CONTAIN
  • Conditional Statements in SQL with CASE
  • Referencing data from multiple tables using JOINs
  • Intermediate SQL
  • SQL basics
  • Connect to MySQL installed by MAMP via Command Line (Terminal)
  • Secure MySQL installation non-interactively with a bash script
  • Update WordPress posts for SSL https
  • Common MySQL Errors
  • Reset MySQL root password on Linux
  • OpenCart: Bulk Update Customer Group via phpmyadmin
  • Install MongoDB on MacOS
  • Getting started with Firebase Hosting
  • SQLite Basics
  • OpenCart: Delete Multi-Store and Move Everything to the Default Store
  • Joining Relational Data between Tables in SQL
  • Manipulating Schema with SQL
  • Using PHP with MySQL
  • Backing up and Restoring Databases
  • Database Foundations
  • Tips for Querying a MySQL Database
  • OpenCart: Bulk update prices of Products
  • How to add a WordPress Admin user via PhpMyAdmin
  • Delete ALL Unapproved comments in WordPress
  • Automated MySQL Backups to Amazon S3 with AutoMySQLBackups
  • Making a MySQL database connection with PHP
  • MongoDB Basics
  • Drafts

  • This is a really very long post title so i could see the legibility over multiple lines. Let's make it even longer to stretch it over multiple lines
  • Creating Tables in Markdown
  • Node.js Basics
  • Status: DRAFT -- Compressing and Minifying Scripts in WordPress
  • Status: DRAFT -- Generating PDF files with JavaScript
  • Troubleshooting MongoDB on Mac
  • Git & Github

  • Common Git/Github Errors
  • Rebasing vs. Merging
  • Getting started with Github Pages
  • What to .gitignore
  • Git Basics
  • Hardware

  • Network Cabling
  • Routers, Switches, Hubs and Access Points
  • JavaScript

  • What can I do with the DOM? (Examples)
  • Function Statements, Declarations and Expressions
  • Notes on handling clicks and taps on iOS devices and touch enabled mobile browsers
  • Event Capturing, Event Bubbling and Event Delegation
  • Plain JavaScript vs. jQuery
  • Notes on creating a Chrome extension
  • Formatting dates in JavaScript
  • ES6 Classes vs. Constructor Functions
  • Prototypal Inheritance and Constructor Functions
  • ES6 (ES2015) and Beyond with Node.js
  • Getting started with Express
  • Set `npm init` defaults globally
  • [ES2015] Default values
  • Array.sort() - Sorting Arrays in JavaScript
  • [ES2015] Arrow Functions
  • Intro to Immutable.js
  • Formatting and validating dates in JavaScript
  • [ES2015] Generators
  • Array.concat
  • Array.every()
  • Array.filter()
  • Array.forEach()
  • Array.map()
  • Array.reduce()
  • [ES2015] Async/Await Functions
  • [ES2015] Classes in JavaScript
  • [ES2015] ES6 Features Overview
  • [ES2015] Map object
  • [ES2015] Promises
  • [ES2015] Set object
  • [ES2015] var, let and const
  • Status: DRAFT -- Object copying in JavaScript
  • Strict mode in JavaScript with `use strict`
  • React Router Basics
  • LocalStorage API
  • Modules
  • bind
  • this
  • JavaScript Objects
  • Manipulating Arrays in JavaScript with built-in methods
  • Quick Intro to Arrays in JavaScript
  • Self-invoking Anonymous Function - IIFE
  • Working with APIs using AJAX and JSON
  • jQuery and AJAX
  • Play sound/video when image/link is clicked
  • AngularJS Basics
  • jQuery vs. JavaScript
  • how to redirect a URL in JavaScript
  • Get Current Year in JavaScript
  • Converting 24 hour time to 12 hour time using Javascript
  • JavaScript Basics
  • JS-Babel.md
  • JS-Basics-notes.md
  • JS-Closures.md
  • JS-Composition.md
  • JS-Conditionals.md
  • JS-Filter.md
  • JS-Loops.md
  • JS-OOP.md
  • JS-Pure-Functions.md
  • JS-Recursion.md
  • use-strict.md
  • Jekyll

  • Bash Script to Convert Jekyll Front matter to Hugo
  • Status: DRAFT -- Getting started with Jekyll
  • How to import a WordPress blog in Jekyll (MacOS)
  • How to use Redcarpet for syntax highlighting in Jekyll
  • syntax highlighting colors
  • Linux

  • Networking Intro
  • Find, install and upgrade Linux software
  • Add SSH Key to MacOS Keychain permanently
  • Run JNLP Files on Ubuntu
  • Setting up shared network between Ubuntu and Mac using Samba
  • Getting WiFi details in Linux
  • Image Optimization on a Linux server
  • How do you disable certain package updates using APT?
  • [modprobe, lsmod, insmod, rmmod] List, Add, Remove Kernel Modules
  • Linux Disk File Systems (ext2, ext3, Reiser, ext4)
  • User IDs
  • [Bash] Customizing the Bash Prompt
  • [Bash] Bash PATH Environment Variable
  • [Bash] Reload Bash Shell without quitting
  • SSH Keys
  • SSH Tunneling / Port Forwarding
  • FHS, File System Architecture and Directory Structure
  • Configuring WIFI via Command Line
  • Finding Files in Linux
  • Vi and Vim
  • How to install Node.js on CentOS/cPanel
  • Yum Transaction Check Errors & Dependencies/Package Conflicts
  • How to Install Git on CentOS
  • Linux - Basic User Management
  • Coloring the Mac Terminal
  • Command line color settings (GNU)
  • Generating an SSH Key and Copying it to Remote Server
  • Install Ruby on Ubuntu
  • Linux Directory Structure
  • Redirection in Linux
  • Stopping, Quitting, Suspending and Killing Processes in Linux
  • Basic Unix/Linux System Monitoring Commands
  • How to change the default editor in Terminal
  • Crontab Basics
  • Nagios
  • Vim Basics
  • Restart services in Linux
  • Unix: Using pushd and popd for faster navigation
  • Unix: Pranks that sysadmins play
  • Vim Basics
  • Editing Apache Configuration on a cPanel/CentOS Server
  • Setup SSH Keys for Bitbucket on Mac/Linux
  • Misc

  • Orange Pi+ 2 - Getting started and headaches
  • Things that i love about my Mac
  • آؤ اردو میں تحریر کریں
  • Steganogrophy
  • fileconveyer
  • Node-api

  • Middleware
  • Expressjs
  • Node Refresher
  • Restful APIs
  • Node.js

  • Intro to Templating with Pug (previously known as Jade)
  • Routing
  • Status: DRAFT -- Node.js and it's C++ core
  • NPM intro
  • Core Modules
  • Creating our own Modules
  • NPM, Modules and Dependencies
  • OpenCart

  • Lessons in transferring from OpenCart to Shopify
  • How to create a very basic OpenCart Module in less than 5 minutes
  • Getting started with OpenCart API
  • How to get and show Information pages in OpenCart
  • How to get and show Manufacturers in OpenCart
  • Dynamically adding Scripts, Stylesheets, and Links to a Template
  • Getting started with Controllers
  • Misc. OpenCart Snippets
  • The Ultimate Guide to Creating OpenCart Modules
  • Upgrade from OpenCart 2.1.0.2 to 2.3.0.2
  • Hide Menu Item/Link If User does not have Permission - OpenCart 2.1.0.2
  • Enable SSL in OpenCart
  • Upgrade OpenCart Extensions from 2.1x to 2.3x/3x
  • Fixing OpenCart Internal Server Error
  • Upgrading OpenCart Extensions
  • Opencart Architecture
  • PHP

  • Pretty var_dump()
  • Handling data from HTML forms
  • Error Reporting and Troubleshooting
  • increasing file size for PHPMyAdmin uploads
  • Composer
  • Object Oriented PHP
  • Status: DRAFT -- Using a third-party library with PHP
  • Programming

  • Writing Code for Humans to Read
  • Getting started with Tmux
  • Scope
  • Recursion
  • Higher Order Functions
  • Packages and Dependencies
  • Python

  • Python Syntax Overview
  • Opening and Writing to Files in Python
  • How to parse JSON data in Python
  • Python Basics
  • Python Modules
  • Regex in Python
  • Intro to Python for newbie programmers
  • Asset management in Flask
  • Flask
  • How to convert yaml data to python data
  • virtualenv
  • virtualenvwrapper
  • Creating and Viewing HTML Files with Python
  • Running system commands from within Python scripts
  • Using urllib2 in Python to get content from web pages
  • Web scraping in Python to look up stock prices
  • web scraping
  • The Zen of Python
  • Quotes

  • Linux is 20 years old. The web is less than 7000 days old. Together they have changed human civilization more rapidly than any pair of invention in the history of the world.
  • We can not solve our problems at the same level of thinking that created them.
  • You wasted $150,000 on an education you coulda got for a buck fifty in late charges at the public library.
  • I think everybody in this country should learn how to program a computer because it teaches you how to think.
  • If you're gonna learn three languages, learn English, learn Spanish and learn some coding framework. And I think you'll have a job for life if you do that.
  • Reboot does not fix anything, it just hides things.
  • Anything you are going to do more than three times. Script it.
  • Raspberry Pi

  • Installing Raspbian on SD Card (macOS)
  • Troubleshooting Audio
  • Install/Upgrade Node.js on Raspberry Pi (Raspbian Jessie)
  • Raspberry Pi on a battery
  • Setting up cam on Raspberry Pi
  • Change Raspberry Pi's system startup message (MOTD)
  • System Monitor for Raspberry Pi
  • Custom Raspberry Pi MOTD (Message Of The Day)
  • Reactjs

  • React Router push link
  • Input Fields
  • React-Router
  • Component Styles
  • JSX file extension
  • ReactRouter
  • Data States
  • Data and Props
  • Getting data IN
  • this & bind
  • Webpack
  • JS for React
  • Intro to React Ecosystem
  • Redux

  • General React-Redux Flow
  • Object.assign() vs Object spread operator
  • Middleware
  • Redux Intro
  • Troubleshooting Redux
  • Resources

  • Tool - SVG Cleaner
  • React, React Router and Redux Courses
  • DRY - Don't Repeat Yourself
  • Tool - Linux Dash
  • Markdown Tables Generator
  • Tool - Explain Shell
  • Tool - Display live Linux system stats (memory, CPU, IO)
  • Tool - Bash Prompt ($PS1) Generator
  • Book - Beyond Linux From Scratch (BLFS)
  • Book - Linux From Scratch (LFS)
  • Course - Practical Unix - Stanford
  • Book - Start Programming Now - No CS degree required
  • Book - Conquering the Command Line - Unix and Linux Commands for Developers
  • a tmux crash course
  • Book - Hardened Linux From Scratch (HLFS)
  • Book - Python for You and Me
  • Book - The Linux Command Line
  • System Administration

  • Tranfer between Debian Apache based setups
  • Install sedutil on Ubuntu
  • Configuring networking interfaces
  • Show/Hide hidden files in Finder
  • Get all kinds of information about your Mac machine using the Terminal
  • Resetting an 'Unavailable' Serial Number on a Mac
  • Dive into Linux (workshop notes)
  • Use rsync to mirror websites
  • Backups with tar
  • Checking log files
  • Intro to debconf
  • Taking care of prompt imputs from a script with Debconf
  • Image Optimization on Linux Servers using jpegoptim and optipng
  • Intro to Rootkit Hunter
  • Status: DRAFT -- Secure a Linux Ubuntu Server
  • Intro to Homebrew
  • SFTP Users for Website directory
  • Install a LAMP stack
  • Install PHP5 on Ubuntu 17.04 Zesty Zapus
  • Code Injection Attacks in WordPress
  • Status: DRAFT -- Finding a system breach
  • Finding infected files in WordPress
  • Securing Wordpress
  • cPanel Web Templates and Skeleton Directory
  • Migrating server data and databases
  • Configure SFTP
  • Install ionCube Loader on Ubuntu 16.04
  • Get Linux System Information
  • Web Development

  • Browsersync
  • React Notes
  • Surge deployments in 2 minutes
  • Getting Started with Gatsby
  • Getting started with Gatsby
  • Hugo Templates in 15 Minutes
  • Hugo Snippets
  • Cracking responsive web typography
  • Developing a CSS style
  • Designing and Coding Web Forms
  • Moving from Jekyll to Hugo
  • Status: DRAFT -- Attributes in DOM
  • (JavaScript) Web APIs and their Interfaces
  • Adding and Removing Nodes (HTML Elements)
  • Status: DRAFT -- Feature Detection in Browsers, Shims and Polyfills
  • Querying the DOM
  • Status: DRAFT -- Window object
  • Define a clickable interactive map over an image with <map>
  • Redirect a site with .htaccess
  • How to include files in HTML
  • Page Speed Optimizations
  • Regex
  • An exhibit of Markdown
  • How to make websites in Urdu and use custom fonts
  • Workflow

  • Text/Code Editor Showdown
  • Troubleshooting MAMP
  • Set up a new macOS machine with Homebrew-Cask
  • Status: DRAFT -- Set up Apache, PHP, MySQL, PHPMyAdmin on macOS Sierra
  • Create Grunt Snippets in Sublime Text
  • Working with Grunt
  • Setting up a dev environment on macOS
  • Open Files in New Tab by Default in Sublime Text 3
  • How to create a Snippet in Sublime Text
  • My Gruntfile.js
  • Writing a Grunt Task for Website Speed Optimization
  • iOS & Swift

  • CocoaPods
  • iOS, Bluetooth Low Energy (BLE), CoreBluetooth and Swift - for noobs