Skip to content

Instantly share code, notes, and snippets.

View ololobus's full-sized avatar
👹

Alexey Kondratov ololobus

👹
View GitHub Profile
@ololobus
ololobus / url-parsing-speed.js
Last active August 29, 2015 13:55
Small script for a measurement of url parsing speed by RegEx and by <a> DOM-element
function parseByRegEx (url) {
var parser = /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,
parserKeys = ['source', 'protocol', 'authority',
'userInfo', 'user', 'password', 'host', 'port',
'relative', 'path', 'directory', 'file', 'query', 'anchor'],
m = parser.exec(url || ''),
parts = {};
parserKeys.forEach(function(key, i) {
parts[key] = m[i] || '';
@ololobus
ololobus / README.md
Last active August 29, 2015 14:04
bem-history doc

bem-history

EN

What is this?

BEM wrap for History API:

  • supports browsers with a native History API and hashchange event;
  • provides manipulations with url, browser location and history in the terms of BEM (http://bem.info/).
@ololobus
ololobus / dijkstra-functional-way.py
Last active August 29, 2015 14:05
Dijkstra algorithm
graph = [[0, 7, 9, -1, -1, 14], [7, 0, 10, 15, -1, -1], [9, 10, 0, 11, -1, 2], [-1, 15, 11, 0, 6, -1], [-1, -1, -1, 6, 0, 9], [14, -1, 2, -1, 9, 0]]
start = 3
def dijkstra(graph, start):
r = range(len(graph))
def perform(results, work_results, visited, path, current):
tested = set(filter(lambda i: (graph[current][i] >= 0) and not visited[i] and ((results[current] + graph[current][i]) < results[i]), r))
@ololobus
ololobus / xls-to-js.rb
Created August 27, 2014 16:06
XLS file dict (word, transcription, translation) to js object
require 'roo'
require 'optparse'
require 'json'
options = {}
dict = {}
OptionParser.new do |opts|
@ololobus
ololobus / en-ru-dict.js
Created August 27, 2014 17:55
EN-RU js dictionary
dict = {
"abandon": ["[ə'bændən]", "покидать, оставлять"],
"abate": ["[ə'beit]", "уменьшать, ослаблять"],
"abbreviation": ["[ə,bri:vi'ei∫(ə)n]", "сокращение, урезание"],
"abduct": ["[əb'd∧kt]", "похищать, насильно уводить"],
"abhor": ["[əb'ho:]", "питать отвращение"],
"abolish": ["[ə'bоli∫]", "аннулировать, отменять"],
"abominate": ["[ə'bоmineit]", "питать отвращение, ненавидеть"],
"abort": ["[ə'bo:t]", "аварийное прекращение"],
"abrupt": ["[ə'br∧pt]", "внезапный"],
@ololobus
ololobus / crackle-pop.hs
Created August 28, 2014 20:57
CracklePop program
hundred = [1..100]
crack n
| mod n 5 == 0 && mod n 3 == 0 = "CracklePop"
| mod n 3 == 0 = "Crackle"
| mod n 5 == 0 = "Pop"
| otherwise = show n
main = print (map crack hundred)
@ololobus
ololobus / kit-walkthrough.md
Last active August 29, 2015 14:07
KIT LAMP&WordPress task walkthrough
  1. Установил, скачал, импортировал. Тут вроде бы никаких проблем не возникло

  2. Установил LAMP на yakit-z01 с помощью sudo tasksel install lamp-server. Скачал и распаковал WordPress.

Для завершения установки через web-интерфейс пробросил 80 порт первой машины (yakit-z01 10.0.2.101) на 8080 у хоста (у меня 192.168.1.2). Root pass mysql: ololo, WP -- login:kit, pass:kitkit.

  1. Установил LAMP на yakit-z02 и настроил на него репликацию базы wordpress с yakit-z01. Для этого завел mysql-пользователя repl на master-ноде, поменял конфиги, сделал дамп базы и перенес его на slave-ноду.

  2. Запустил yandex-tank с машины yakit-z03, но ему не хватало памяти (требовал свободных более чем 512МБ). Увеличил размер памяти до 1ГБ, написал пробные конфиги для тестов и настроил загрузку результатов на https://loadosophia.org. Результаты:

@ololobus
ololobus / mdadm-check.sh
Created October 6, 2014 23:26
mdadm raid1 array check script
#!/bin/bash
# При запуске без параметров `bash mdadm-check.sh` проверяет все массивы из `raids`.
# Если один из дисков неиправен, то заменяет его на резервный из `backup_disk`.
# Передав параметр `install` `bash mdadm-check.sh install` можно внести запись
# в cron, для выполнения проверки каждую минуту (Установка работает в Ubuntu 14.04).
# После этого можно испортить один из дисков командой `test` `bash mdadm-check.sh test`,
# чтобы проверить работу. При этом будет сломан диск из `test_disk`.
@ololobus
ololobus / src2img.md
Last active August 29, 2015 14:11
Пост про проект src2img на хакатоне по БЭМ

Хакатон: проект "src2img"

src2img logo

Привет, меня зовут Кондартов Алексей (github.com/ololobus, facebook.com/ololobus) и я представлял на хакатоне проект src2img.

Предыстория

@ololobus
ololobus / Spark+ipython_on_MacOS.md
Last active November 22, 2022 22:24
Apache Spark installation + ipython/jupyter notebook integration guide for macOS

Apache Spark installation + ipython/jupyter notebook integration guide for macOS

Tested with Apache Spark 2.1.0, Python 2.7.13 and Java 1.8.0_112

For older versions of Spark and ipython, please, see also previous version of text.

Install Java Development Kit