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/).
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] || ''; |
BEM wrap for History API:
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)) |
require 'roo' | |
require 'optparse' | |
require 'json' | |
options = {} | |
dict = {} | |
OptionParser.new do |opts| | |
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]", "внезапный"], |
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) |
Установил, скачал, импортировал. Тут вроде бы никаких проблем не возникло
Установил 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.
Установил LAMP на yakit-z02
и настроил на него репликацию базы wordpress
с yakit-z01
. Для этого завел mysql-пользователя repl
на master-ноде, поменял конфиги, сделал дамп базы и перенес его на slave-ноду.
Запустил yandex-tank
с машины yakit-z03
, но ему не хватало памяти (требовал свободных более чем 512МБ). Увеличил размер памяти до 1ГБ, написал пробные конфиги для тестов и настроил загрузку результатов на https://loadosophia.org. Результаты:
Привет, меня зовут Кондартов Алексей (github.com/ololobus, facebook.com/ololobus) и я представлял на хакатоне проект src2img
.
#!/usr/bin/env python | |
import sys | |
import json | |
team_path = '/users/team%s/ozon_recoms.txt' % sys.argv[1] | |
badass_detected = False | |
UPDATE tus SET text1_tsvector = to_tsvector(COALESCE(lang1_psql, 'simple')::regconfig, COALESCE(text1, '')); | |
UPDATE tus SET text2_tsvector = to_tsvector(COALESCE(lang2_psql, 'simple')::regconfig, COALESCE(text2, '')); | |
/* CREATE INDEX text1_tsvector_idx ON tus USING gin(text1_tsvector); | |
CREATE INDEX text2_tsvector_idx ON tus USING gin(text2_tsvector); */ | |
CREATE INDEX text_tsvector_idx ON tus USING gin(text1_tsvector, text2_tsvector); | |
CREATE FUNCTION text_tsvector_update() RETURNS TRIGGER AS $$ | |
BEGIN | |
IF TG_OP = 'INSERT' THEN |