Skip to content

Instantly share code, notes, and snippets.

View ppKrauss's full-sized avatar
🌴
On vacation

Peter ppKrauss

🌴
On vacation
View GitHub Profile
@ppKrauss
ppKrauss / detect.php
Last active August 29, 2015 14:00
Javascript of http://www.corpuswiki.org translated to PHP and adapted for "restrict universe" option and object orientation.
<?php
/**
* Detect language by trigram sample analysis.
* Adapted by ppkrauss from http://www.corpuswiki.org/langdetect.html
*/
class LangDetect {
private $models;
private $universeConfig;
private $universeOnDetection;
private $isoTr3to2;
@ppKrauss
ppKrauss / benchmark_base.php
Last active August 29, 2015 14:04
Simple benchmark-base for use in any simple benchmarking task
<?php
/**
* Simple benchmark-base for use in any simple benchmarking task.
* Use at terminal as $php benchmark_base.php
* For more complex or memory usage, see
* http://php.net/manual/en/ref.xhprof.php
* http://php.net/manual/en/function.set-time-limit.php
* http://php.net/manual/en/features.gc.performance-considerations.php
* From https://gist.github.com/ppKrauss/4cd3c9a5f7cec89be68e
*/
@ppKrauss
ppKrauss / pgis_shape_descriptor.sql
Created October 1, 2012 10:01
PostGIS shape descriptor, "as rectangle" metrics vector
CREATE FUNCTION shapedescr_sizes(
-- Shape-descriptor "as rectangle" for geometry description by sizes.
gbase geometry, -- input
-- p_seqs integer DEFAULT 8, -- deprecated? for st_buffer(g,w,p_seqs) or point-buffer inference
-- p_shape varchar DEFAULT '', -- will be endcap indicator
p_decplacesof_zero integer DEFAULT 6, -- precision of zero when rounding delta
p_dwmin float DEFAULT 99999999.0, -- change to ex. 0.0001, if to use.
p_deltaimpact float DEFAULT 9999.0 -- internal (maximized by probability of negative delta)
) RETURNS float[] AS $f$
DECLARE
<?php
/**
* Organiza dados em "estrutura BrasilProtestos2013-estimCidadeFontes"
* dispostos no anexo do artigo "Protestos no Brasil em 2013" da Wikipedia.
* NOTA: proxima versao no forno, classes e traducao XML.
* http://pt.wikipedia.org/wiki/Protestos_no_Brasil_em_2013
* http://pt.wikipedia.org/wiki/Anexo:Lista_de_cidades_participantes_dos_protestos_no_Brasil_em_2013
* http://pt.wikipedia.org/wiki/Predefini%C3%A7%C3%A3o:BrasilProtestos2013-estimCidadeFontes .
*/
header('Content-type: text/html; charset=UTF-8;' );// for txt and HTML source-code
@ppKrauss
ppKrauss / gist:6099610
Last active December 20, 2015 08:19
RapiDOM, DOMDocument for "Rapid application development". A wrapper class for friendly interface to DOMDocument. Supports extended saveXML, loadStr, xsl_set, etc. methods and XSLT chaining.
<?php
/**
* DOMDocument for "Rapid application development".
* Do by overloading all DOMDocument methods, and add specialized methods.
* v0.1 2013-07-20 by ppkrauss, https://gist.github.com/ppKrauss/6099610
*
* Convention over configuration: UTF8, etc. by convention.
* Like fDOMDocument, BetterDOMDocument, FluentDOM, etc, to be
* a (more frindly interface) wrapper to DOMDocument methods.
* Like BetterDOMDocument and fDOMDocument, but NOT extends DOMDocument
@ppKrauss
ppKrauss / jsonb_object_summable.sql
Created August 16, 2018 07:34
Tool-kit for JSONb key-number objects
/**
* object_summable and "Merge sum" functions are for JSONb key-number objects,
* most usually key-integer for counting, like json-bags.
* They are "key counters", so, to merge two keys, the intValues must be added.
* Change the core of jsonb_merge_sum(jsonb,jsonb) to the correct datatype.
* The JSON "number" is equivalent to the SQL's ::numeric.
* Any invalid or empty JSONb object will be represented as SQL NULL.
*/
CREATE or replace FUNCTION jsonb_is_summable(jsonb) RETURNS boolean AS $f$
@ppKrauss
ppKrauss / mod-jsonrpc.sql
Created December 30, 2017 14:41
JSON-RPC interface for PostgreSQL 9+ JSONb frameworks
/**
* JSON-RPC interface. Mini-lib, independent.
* Works fine with REST.
* See http://www.jsonrpc.org/specification (only error/code convention have little change)
* Free error string code:
* "$integer" = "$integer.0" = HTTP status code (only REST)
* "$integer.$integer" = status and internal error code (DEFAULT)
* use function rpc.errcode_merge() to merge default error reference and add internal part.
*/
@ppKrauss
ppKrauss / index.html
Created July 5, 2019 18:59
Simple chart with C3 - in 5 minutes! // source https://jsbin.com/seriyih
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Simple chart with C3 - in 5 minutes! </title>
<!-- Here are all the javascripts and css that you need, you can download them or linked them like here -->
<script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/d3/5.9.7/d3.min.js"></script>
<script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/c3/0.7.1/c3.js"></script>
<link href="http://cdnjs.cloudflare.com/ajax/libs/c3/0.7.1/c3.css" rel="stylesheet" type="text/css">
@ppKrauss
ppKrauss / index.html
Created July 5, 2019 19:52
Simple chart with C3 - in 5 minutes! // source https://jsbin.com/seriyih
<!DOCTYPE html>
<html>
<head>
<meta name="description" content="showing C3js bug">
<meta charset="utf-8">
<title>Simple chart with C3 - in 5 minutes! </title>
<!-- Here are all the javascripts and css that you need, you can download them or linked them like here -->
<script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/d3/5.9.7/d3.min.js"></script>
<script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/c3/0.7.1/c3.js"></script>
@ppKrauss
ppKrauss / .block
Last active September 26, 2019 00:45
compareCurves
license: mit