Skip to content

Instantly share code, notes, and snippets.

🔬
R&D

Maz Jaleel Mazyod

🔬
R&D
Block or report user

Report or block Mazyod

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@Mazyod
Mazyod / percentage_counter.py
Created Jul 31, 2019
Progress Counter in Python - wrote it before discovering tqdm
View percentage_counter.py
from typing import List
from datetime import datetime, timedelta
class PercentageCounter:
"""Counter for stepping percentages over an arbitrary number
e.g. total = 10, step = 0.15 (15%)
counter.next(1) # progress is 10%, returns nothing
counter.next(2) # progress is 20%, returns 15
counter.next(3) # progress is 30%, returns nothing (has to exceed step)
@Mazyod
Mazyod / watchdog.py
Last active Apr 13, 2019
Directory/files watchdog in Python
View watchdog.py
import os
import logging
from queue import Queue, Empty as EmptyQueue
from time import sleep
from threading import Thread
from typing import List
logger = logging.getLogger("watchdog")
@Mazyod
Mazyod / universal-framework.sh
Last active Oct 10, 2018
Build a universal iOS framework/library
View universal-framework.sh
#!/bin/bash
set -e
# required arguments:
# WORKSPACE_DIR=Networking.xcworkspace
# SCHEME_NAME=Networking
# PRODUCT_NAME=Networking
CONFIGURATION=Release
@Mazyod
Mazyod / flask-to-bottle.diff
Created Apr 3, 2018
Migrating from Flask to Bottle
View flask-to-bottle.diff
-import flask
-from werkzeug.http import Headers
+import bottle
[ ... ]
+# Remove "hop-by-hop" headers (as defined by RFC2613, Section 13)
+# since they are not allowed by the WSGI standard.
+FILTER_HEADERS = [
+ 'Connection',
@Mazyod
Mazyod / safeAreaTopAnchor.swift
Last active Dec 9, 2017
SafeArea Top Constraint Setup, with Backwards Compatability
View safeAreaTopAnchor.swift
/** Safe area for status bar dodging only. If you use NavigationBars, this won't help.
*/
let topConstraint: NSLayoutConstraint
if #available(iOS 11.0, *) {
topConstraint = headerContainerView.topAnchor.constraint(equalTo: safeAreaLayoutGuide.topAnchor)
} else {
let statusBarHeight = UIApplication.shared.statusBarFrame.height
topConstraint = headerContainerView.topAnchor.constraint(equalTo: topAnchor, constant: statusBarHeight)
}
View package.sh
#!/bin/sh
set -e
CERT_NAME='3rd Party Mac Developer Application: [YOUR NAME]'
APP_NAME='mygame.app'
ENTITLEMENTS='mygame.entitlements'
# remove existing meta files
find ${APP_NAME} -type f -regex '.*meta' -delete
View mix.lock
%{"connection": {:hex, :connection, "1.0.4", "a1cae72211f0eef17705aaededacac3eb30e6625b04a6117c1b2db6ace7d5976", [], []},
"db_connection": {:hex, :db_connection, "1.1.0", "b2b88db6d7d12f99997b584d09fad98e560b817a20dab6a526830e339f54cdb3", [:mix], [{:connection, "~> 1.0.2", [hex: :connection, optional: false]}, {:poolboy, "~> 1.5", [hex: :poolboy, optional: true]}, {:sbroker, "~> 1.0", [hex: :sbroker, optional: true]}]},
"decimal": {:hex, :decimal, "1.3.0", "418866ed19b8c2dace7860cf45ad017c521ff9c6d3a39da8d5974d277d8f079d", [:mix], []},
"ecto": {:hex, :ecto, "2.1.0-rc.3", "63905a289ae923f1819574d71e79a90db5b3fbe50dbdaa60ab6a8c534c4e16be", [:mix], [{:db_connection, "~> 1.0-rc.4", [hex: :db_connection, optional: true]}, {:decimal, "~> 1.2", [hex: :decimal, optional: false]}, {:mariaex, "~> 0.7.7", [hex: :mariaex, optional: true]}, {:poison, "~> 2.2 or ~> 3.0", [hex: :poison, optional: true]}, {:poolboy, "~> 1.5", [hex: :poolboy, optional: false]}, {:postgrex, "~> 0.12.0", [hex: :postgrex, optional: true]},
View bad_rust.rs
extern crate redis;
use redis::Commands;
use std::net::{TcpListener, TcpStream};
use std::thread;
use std::io::Read;
fn handle_client(mut stream: TcpStream) -> redis::RedisResult<()> {
@Mazyod
Mazyod / max_slice.py
Created Oct 2, 2016
Max slice explained
View max_slice.py
# starting array
A = [5, -2, 10, 3, -25, 12, 6]
# calculating the max slice in O(n), starting from A[1]
# copy A into S, where the max slices are stored
S = A[:]
# instead of looping, I'll unroll the loop for simplicity
# so, at S[1], we either add the previous sum, or start over
# to decide that, we simply check the max between the element and the previous sum added
S[1] = max(S[1], S[1] + S[0])
# S = [5, 3, ...]
@Mazyod
Mazyod / Dockerfile
Last active Jan 5, 2016
Poco C++ Backend Starter Dockerfile
View Dockerfile
FROM ubuntu
MAINTAINER Maz Jaleel <mazjaleel@gmail.com>
# Install necessary tools to build Poco
RUN apt-get update && apt-get install -yq \
unzip wget build-essential cmake \
openssl libssl-dev \
unixODBC unixODBC-dev odbc-postgresql
You can’t perform that action at this time.