Skip to content

Instantly share code, notes, and snippets.

View faressoft's full-sized avatar

Mohammad Anas Fares faressoft

View GitHub Profile
@faressoft
faressoft / commit-msg
Created November 28, 2019 13:15
Commit message hook script to prefix Git commit messages with the Jira ticket Id taken from the current branch name
#!/usr/bin/env node
/**
* Commit message hook script to prefix Git commit messages
* with the Jira ticket Id taken from the current branch name
*
* # Requirements
* - git 2.9+ (which supports global hooks)
*
* # Installation
@faressoft
faressoft / azhan.js
Last active November 27, 2019 12:21
IZDB Azhan Script
#!/usr/bin/env node
/**
* Azhan
* Display prayer times for today from IZDB
*
* Installation
* - Install Node.js
* - Create a directory and execute `npm init --yes`
* - CD to the directory and execute `npm install --save table chalk`
@faressoft
faressoft / scalability.md
Created February 12, 2018 14:14
Scalability Overview, Terms, and Methodologies

Instead of writing a long article I wrote this summary to give a good overview about software systems scalability by listing the main terms and methodologies that widely used to build stable systems that are able to scale and handle the increasing amont of users and data.

Index

  • Scalability
  • Terms System Quality Attributes
  • Failover
  • Load Balancer
  • MapReduce
  • Caching
@faressoft
faressoft / dom_performance_reflow_repaint.md
Last active March 24, 2024 11:41
DOM Performance (Reflow & Repaint) (Summary)

DOM Performance

Rendering

  • How the browser renders the document
    • Receives the data (bytes) from the server.
    • Parses and converts into tokens (<, TagName, Attribute, AttributeValue, >).
    • Turns tokens into nodes.
    • Turns nodes into the DOM tree.
  • Builds CSSOM tree from the css rules.
@faressoft
faressoft / javascript_deep_dive.md
Last active April 17, 2024 18:50
JavaScript Deep Dive to Crack The JavaScript Interviews