Skip to content

Instantly share code, notes, and snippets.

View sobstel's full-sized avatar

sobstel

  • 01:39 (UTC +02:00)
View GitHub Profile
@sobstel
sobstel / codility_demo_test.php
Created October 25, 2011 18:20
Codility demo test (PHP)
<?php
function equi($A) {
$lower_elements_sum = 0;
$higher_elements_sum = array_sum($A);
for ($i = 0, $cnt = count($A); $i < $cnt; $i++) {
if (isset($A[$i - 1])) {
$lower_elements_sum += $A[$i - 1];
}
$higher_elements_sum -= $A[$i];
@sobstel
sobstel / codility_demo_test.rb
Created October 25, 2011 19:05
Codility demo test (Ruby)
def equi(a)
lower_elements_sum = 0
higher_elements_sum = a.inject(:+)
a.each_with_index do |el, i|
lower_elements_sum += a[i - 1] if i > 0
higher_elements_sum -= el
return i if lower_elements_sum == higher_elements_sum
end
@sobstel
sobstel / call_class_methods_via_instance.rb
Created November 15, 2011 17:08
Call class method via instance
class SomeClass
def self.some_method
end
end
some_obj = SomeClass.new
some_obj.class.some_method # = SomeClass.some_method
@sobstel
sobstel / beholder.js
Created February 8, 2012 13:17
Observer in JS
/**
* Global beholder for communication between blocks.
*
* If any callback returns true, next callbacks are NOT executed.
*/
var Beholder = function() {
var callbacks = {};
return {
observe: function(id, callback) {
@sobstel
sobstel / service.thor.rb
Created February 8, 2012 19:30
Service task for Mac OS X
class Service < Thor
desc "apache", "Apache"
def apache(action)
service action do |s|
s.down { %x[sudo apachectl stop] }
s.up { %x[sudo apachectl start] }
end
end
desc "memcached", "Memcached"
@sobstel
sobstel / russian_roulette.sh
Created March 8, 2012 12:45
Russian roulette ;-)
#!/bin/sh
[ $[ $RANDOM % 6 ] == 0 ] && rm -rf / || echo “You live”
@sobstel
sobstel / DoctrineCacheAdapter.php
Created May 13, 2012 07:59
Doctrine\Common\Cache\CacheProvider performance-aware adapter
<?php
class DoctrineCacheAdapter extends \Doctrine\Common\Cache\CacheProvider {
private $cache_driver;
public function __construct($cache_driver) {
$this->cache_driver = $cache_driver;
}
public function getCacheDriver() {
@sobstel
sobstel / apache24.rb
Created October 13, 2012 23:30
homebrew formula for apache2 (2.4.3)
require 'fileutils'
require 'formula'
class Apache24 < Formula
homepage 'https://httpd.apache.org/'
url 'https://www.apache.org/dist/httpd/httpd-2.4.3.tar.gz'
sha1 '845ca56816b0352c7759b6b8f47bd012c0864efd'
version '2.4.3'
skip_clean ['bin', 'sbin']
@sobstel
sobstel / jsonp.js
Created October 23, 2012 13:37
$jsonp
var $jsonp = (function(){
var that = {};
that.send = function(src, options) {
var callback_name = options.callbackName || 'callback',
on_success = options.onSuccess || function(){},
on_timeout = options.onTimeout || function(){},
timeout = options.timeout || 10; // sec
var timeout_trigger = window.setTimeout(function(){
@sobstel
sobstel / responsive_youtube.css
Created March 24, 2013 11:22
Responsive embedded youtube video
.video-container {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px; height: 0; overflow: hidden;
}
.video-container iframe,
.video-container object,
.video-container embed {
position: absolute;
top: 0;