Skip to content

Instantly share code, notes, and snippets.

View yjaaidi's full-sized avatar
💭
👨🏻‍🍳 helping you cook better apps

Younes Jaaidi yjaaidi

💭
👨🏻‍🍳 helping you cook better apps
View GitHub Profile
@yjaaidi
yjaaidi / argument_parsing_inheritance.py
Created February 12, 2014 23:35
Python Argument Parsing Inheritance
import argparse
import sys
class Command(object):
def __init__(self):
self._argument_parser = argparse.ArgumentParser()
def main(self, args):
self._main(self._argument_parser.parse_args(args))
@yjaaidi
yjaaidi / splunk-above-average-activity
Last active October 30, 2015 14:49
Splunk Search Query - Detect Above Average Activity Using Standard Deviation
tag=firewall action=deny
| stats count values(dst) by src
| eventstats avg(count) as avg_count
| eval standard_deviation=count/avg_count
| fields - count, avg_count
| search standard_deviation > 10
// Generated by CoffeeScript 1.4.0
(function() {
var NamedParameters, exports;
NamedParameters = (function() {
var _assert, _clone;
function NamedParameters(m) {
this.map = _clone(m);
this.coerce_all = false;
@yjaaidi
yjaaidi / wt-typescript-contracts.ts
Last active June 8, 2016 10:51
TypeScript dynamic runtime contracts example
import 'reflect-metadata';
let _contractDictMetadataKey = 'contractDict';
let ApplyContracts = () => {
return (target, key) => {
let originalMethod = target[key];
let contractDict = Reflect.getOwnMetadata(_contractDictMetadataKey, target, key);
@yjaaidi
yjaaidi / webpack-dynamic-file-name-resolution.js
Created November 13, 2016 20:38
Webpack Dynamic File Name Resolution
/*
* Webpack config
*/
/* Use file-loader for images. */
{
test: /\.(gif|ico|jpg|png|svg)$/,
loader: 'file'
}
@yjaaidi
yjaaidi / wt-dynamic-component-injector.js
Created April 27, 2017 18:42
Angular dynamic component injector
@Injectable()
export class ComponentInjector {
constructor(
private _injector: Injector,
private _applicationRef: ApplicationRef,
private _componentFactoryResolver: ComponentFactoryResolver) {
}
@yjaaidi
yjaaidi / reactive-store.ts
Created June 10, 2017 10:29
Reactive Store
import { ReplaySubject } from 'rxjs/ReplaySubject';
import { Observable } from 'rxjs/Observable';
export abstract class ReplayStore<T> {
private _isInitialized = false;
private _state: T;
private _state$: ReplaySubject<T>;
constructor() {
@yjaaidi
yjaaidi / splunk-most-request-resource-by-user
Last active July 9, 2017 19:16
Splunk Search Query - Most Request Resource By User
stats count by user fqdn
| eventstats sum(count) as count_by_user by user
| eval percent=count/count_by_user
| table user, fqdn, percent, count, count_by_user
| sort - percent
| search count_by_user > 100
@yjaaidi
yjaaidi / generate-cert.sh
Created July 10, 2017 14:54
Generate dev self-signed certificate
#!/usr/bin/env bash
# Generate private key and CSR.
openssl req -nodes -newkey rsa:2048 -keyout ssl/server.key -out ssl/server.csr -subj "//CN=devserver"
# Auto-signing.
#openssl req -x509 -sha256 -days 365 -key ssl/server.key -in ssl/server.csr -out ssl/server.pem
openssl x509 -req -days 365 -in ssl/server.csr -signkey ssl/server.key -out ssl/server.crt
# Removing CSR.
@yjaaidi
yjaaidi / rest-api-workflow.py
Created December 8, 2017 10:34
ReST API Workflow
// Create an order.
POST /orders
request = {
title: 'TITLE',
description: 'DESCRIPTION'
}
response = {
id: 'ORDER_ID',
title: 'TITLE',