Skip to content

Instantly share code, notes, and snippets.

@jbouzekri
jbouzekri / get_distance_meters
Last active August 29, 2015 14:01
get_distance_meters function : get distance in MySQL
DELIMITER //
/*
Exemple :
You have table city with latitude and longitude column.
get_distance_meters(my_latitude, my_longitude, city.latitude, city.longitude)
return the distance in km
*/
CREATE FUNCTION get_distance_meters ( lat1 FLOAT, lon1 FLOAT, lat2 FLOAT, lon2 FLOAT ) RETURNS DOUBLE PRECISION
BEGIN
.highlight .hll { background-color: #49483e }
.highlight { background: #272822; color: #f8f8f2 }
.highlight pre { background: transparent; color: #f8f8f2 }
.highlight .c { color: #75715e } /* Comment */
.highlight .err { color: #960050; background-color: #1e0010 } /* Error */
.highlight .k { color: #66d9ef } /* Keyword */
.highlight .l { color: #ae81ff } /* Literal */
.highlight .n { color: #f8f8f2 } /* Name */
.highlight .o { color: #f92672 } /* Operator */
.highlight .p { color: #f8f8f2 } /* Punctuation */
@jbouzekri
jbouzekri / git-create-repo
Created July 22, 2014 21:20
Create a bare repository in your git server
#!/bin/bash
: '
Place this script in a folder of your PATH and add execute rights to it
You can then use git create-repo REPO_NAME (without .git at the end) to init a bare repo in your current folder
'
set -e
if [ $# -ne 1 ]
then
@jbouzekri
jbouzekri / proxy.js
Created August 14, 2014 20:12
Test proxy request from a browser to a tcp server accross node js. Browser -> websocket -> tcp server. Its working
/**
A nodejs websocket proxy which forward a request from a websocket to a tcp server.
*/
var io = require('socket.io').listen(8080);
var net = require('net');
io.sockets.on('connection', function (socket) {
var client = new net.Socket();
@jbouzekri
jbouzekri / gist:2573f3228ba613bfab2b
Created October 20, 2015 13:50
chrome JS snippet to export compatible mobile in Google dev console
var allLabel = document.querySelectorAll('div[role=menu] ul li a span');
for (keycomp in allLabel) {
if (typeof allLabel[keycomp] == 'object') {
var label = allLabel[keycomp].textContent;
if (label.startsWith('Tous les appareils')) {
var allNumber = label.substring(label.lastIndexOf("(")+1,label.lastIndexOf(")"));
} else if (label.startsWith('Compatible')) {
var compNumber = label.substring(label.lastIndexOf("(")+1,label.lastIndexOf(")"));
}
}
Verifying that +jbouzekri is my blockchain ID. https://onename.com/jbouzekri
@jbouzekri
jbouzekri / server.py
Created December 20, 2016 15:28
python tcp echo server
import sys
import socket
import threading
import SocketServer
from socket import error as SocketError
import errno
class SingleTCPHandler(SocketServer.BaseRequestHandler):
def handle(self):
while True:
@jbouzekri
jbouzekri / fix-azure-disk-double-mount.sh
Last active June 14, 2018 14:08
detach azure disks used in kubernetes pods errored because of disk related issues
#!/bin/bash
if [ "$#" -ne 4 ]; then
echo "Illegal number of parameters"
echo ""
echo "Usage: ./fix-azure-disk-double-mount.sh <azure subscription id> <azure resource_group> <kube context> <kube namespace>"
echo ""
echo "Find all pods in error, checks if it is related to an Azure disk issue. Then detach from azure VM these disks. It should trigger a resync automatically on kube side. Run the scripts multiple times if the first time is not the one."
exit 1
fi
@jbouzekri
jbouzekri / FeatureContext.php
Created February 27, 2015 18:48
A nice wait for js calls ending function in behat
<?php
/**
* @author Gildas Quéméner <gildas@akeneo.com>
* @copyright 2013 Akeneo SAS (http://www.akeneo.com)
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
*/
use Behat\Behat\Exception\BehaviorException;
use Behat\Mink\Driver\Selenium2Driver;
@jbouzekri
jbouzekri / Interview back-end developer
Last active November 13, 2019 07:56 — forked from jpchateau/Interview back-end developer
Entretien développeur back : PHP / Symfony / MySQL
Cible : Développeur PHP / Symfony / MySQL
Niveau : Senior
Ce document propose des questions classiques, sans piège, à poser lorsque vous désirez valider un candidat pour un poste de développeur back.
J'utilise personnellement cette trame de questions, libre à vous de vous en inspirer, d'ajouter vos propres questions, et de déterminer lesquelles sont éliminatoires à vos yeux.
Veille technologique
Quelle est la version actuelle de PHP ?
> http://php.net/supported-versions.php