Pull to refresh
17
0
Андрей Поляков @magnitudo

User

Send message

Тет-а-тет: задаем правильные вопросы

Reading time 7 min
Views 40K
Чтобы успешно построить работу в команде (коллективе) и добиться высоких результатов, важно уметь продуктивно общаться с подчиненными и задавать правильные вопросы. Профессионализм заключается не только в нахождении нужного времени, места и момента для беседы с сотрудником, но и в получении и доведении нужной информации.

Если вы на пути к проведению регулярных индивидуальных встреч с сотрудником или уже практикуете их, но не знаете, о чем еще спросить, наша статья будет полезна! Ниже вы найдете список вопросов, ответы на которые помогут улучшить взаимодействие в командах, повысить лояльность к компании, узнать проблемы, волнующие ваших коллег. Эта подборка должна быть для вас не столько готовыми формулировками, сколько обозначением направления, опираясь на которые вы можете сформулировать более точные и подходящие вопросы, с учетом личностных особенностей собеседника, особенностей работы именно в вашей компании.

Читать дальше →
Total votes 22: ↑15 and ↓7 +8
Comments 22

Демонстрационная база данных для PostgreSQL

Reading time 7 min
Views 61K

В этой заметке я расскажу о нашей демонстрационной базе данных для PostgreSQL: почему она важна для нас и как может пригодиться вам, как устроена схема и какие данные в ней содержатся.


Сразу приведу ссылку на полное описание (там же написано, где взять демо-базу и как ее установить).


image

Читать дальше →
Total votes 38: ↑38 and ↓0 +38
Comments 32

Эй, запрос! Ты живой? Как легко обработать блокировки в PostgreSQL

Reading time 8 min
Views 52K
Доброе время суток! Администрирование и сопровождение реляционных баз данных чаще всего является нетривиальной задачей. Иногда запросы, работавшие быстро, внезапно начинают «тормозить» по непонятным причинам, размер таблиц растет и в целом производительность базы данных снижается.

Часто причиной такого поведения являются возникающие в базе блокировки различных ресурсов, и соответственно — вырастающее время ожидания этих ресурсов. Например, сложности начинаются в ситуациях, когда два или более запроса в разных сеансах пытаются одновременно изменить одни и те же данные в таблицах или саму структуру таблицы.

Чтобы разобраться в сложившейся ситуации, администратору БД необходимо понять, какой процесс блокирует и какой процесс является блокируемым, а также иметь возможность отменить или «убить» блокирующий процесс и в конце проверить результат.

В этой статье я хочу коснуться темы блокировок в PostgreSQL и рассказать об инструментах для работы с ними. Но сначала попробуем разобраться в самой теме.
Читать дальше →
Total votes 29: ↑29 and ↓0 +29
Comments 1

Математика CSS-шлюзов

Reading time 18 min
Views 54K

CSS-шлюзом (CSS-lock) называется методика из адаптивного веб-дизайна, позволяющая не перепрыгивать от одного значения к другому, а переходить плавно, в зависимости от текущего размера области просмотра (viewport). Идею и одну из реализаций предложил Тим Браун в статье Flexible typography with CSS locks. Когда я пытался разобраться с его реализацией и создать свои варианты, мне с трудом удавалось понять, что именно происходит. Я выполнил много вычислений и подумал, что полезно будет объяснить другим всю эту математику.

В статье я опишу саму методику, её ограничения и лежащую в её основе математику. Не волнуйтесь: там в основном одни сложения и вычитания. К тому же я постарался всё разбить на этапы и украсил их графиками.
Читать дальше →
Total votes 70: ↑66 and ↓4 +62
Comments 37

Чек-лист вёрстки

Reading time 7 min
Views 80K

Это статья — список полезных мелочей. Весь текст поделен на две части. Первая рассказывает про простые элементы (текст, кнопки, изображения, формы и другие), вторая часть про производительность, масштабируемость, безопасность и доступность.

Читать дальше →
Total votes 92: ↑87 and ↓5 +82
Comments 47

Рисуем коммитами на Гитхабе

Reading time 5 min
Views 35K

[Пятничное]


Всегда хотел сделать свой график активности пользовательского профиля на Гитхабе. Например, выкладывать коммиты каждый день так, чтобы через год этот график превратился в какую-нибудь картинку, пусть и с ограничением по размерам в 52×7 квадратиков-пикселей (52 недели в году × 7 дней в неделе).


Проблема была в том, что даже при полной автоматизации процесса всё равно ждать целый год. А тут я почитал документацию Гитхаба и понял, что задача решается проще и более того — за один раз. А значит, надо делать не откладывая. Обычно названия проектам придумывать сложно, но тут оно пришло само. Кай рисовал льдинками, а Герда рисует коммитами!


График коммитов на Гитхабе в виде картинки

Как нарисовать свою картинку коммитами на GitHub
Total votes 91: ↑83 and ↓8 +75
Comments 36

Использование CMAK для автоматизации клиентского подключения к VPN

Reading time 6 min
Views 67K
В интернете не так уж и мало инструкций по автоматизации подключений к VPN через CMAK, однако, все так или иначе содержали неясные моменты, на разрешение которых пришлось затратить некоторое время, поэтому я решил написать свою инструкцию и сделать ее доступной для других, в надежде на то, что она поможет сэкономить ценное время, или прояснит какой-либо непонятный момент.



Итак, предположим, что мы устали писать и обновлять инструкции по созданию подключений к нашему VPN серверу для пользователей Windows и хотели бы автоматизировать этот процесс, предоставляя пользователю готовую программу, создающую подключение с заранее предопределенными нами параметрами и готовое к работе в условиях нашей сети. Осуществить это — нам поможет встроенный в Windows Server 2008 и Windows Server 2008 R2 компонент — «Connection Manager Administration Kit» (в русской версии «Пакет администрирования диспетчера подключений»). Итак, для того, чтобы установить CMAK необходимо запустить «Диспетчер сервера» и установить новый компонент «Пакет администрирования диспетчера подключений». Весь текущий пример основан на Windows Server 2008 R2 SP1, русская версия.

Читать дальше →
Total votes 8: ↑5 and ↓3 +2
Comments 6

Как обновить ядро в системе без перезапуска сервисов (пошаговая инструкция)

Reading time 8 min
Views 13K
Как вы думаете насколько реально зайти на машину по ssh, обновить систему, загрузить новое ядро и при этом оставаться в той же ssh сессии. Сейчас есть модное движения по обновлению ядра на лету (ksplice, KernelCare, ReadyKernel, etc), но у этого способа есть много ограничений. Во-первых, он не позволяет применять изменения, которые меняют структуру данных. Во-вторых, объекты в памяти могут уже содержать неверные данные, которые могут вызвать проблемы в дальнейшем. Здесь будет описан более «честный» способ обновить ядро. На самом деле, сам способ уже давно известен [1], а ценность этой статьи в том, что мы разберем все в деталях на реальном примере, поймем, насколько это просто или сложно, и чего стоит ждать от подобных экспериментов.
Читать дальше →
Total votes 28: ↑27 and ↓1 +26
Comments 11

Эволюция нейросетей для распознавания изображений в Google: GoogLeNet

Reading time 3 min
Views 40K

У меня тут синхронизируется VM надолго, поэтому есть время рассказать про то, что я недавно читал.
Например, про GoogLeNet.
GoogLeNet — это первая инкарнация так называемой Inception architecture, которая референс всем понятно на что:


image
(кстати, ссылка на него идет первой в списке референсов статьи, чуваки жгут)


Она выиграла ImageNet recognition challenge в 2014-м году с результатом 6.67% top 5 error. Напомню, top 5 error — метрика, в которой алгоритм может выдать 5 вариантов класса картинки и ошибка засчитывается, если среди всех этих вариантов нет правильного. Всего в тестовом датасете 150K картинок и 1000 категорий, то есть задача крайне нетривиальна.


Чтобы понять зачем, как и почему устроен GoogLeNet, как обычно, немного контекста.

Читать дальше →
Total votes 35: ↑30 and ↓5 +25
Comments 15

Умный дом на .NET — релиз ThinkingHome 3.0

Reading time 4 min
Views 20K

Привет! Сегодня я наконец-то могу поделиться с вами результатами своей работы на протяжении последних двух лет! Вчера вечером я выпустил новую версию 3.0 системы управления умным домом ThinkingHome.



ThinkingHome — это программа (.NET Windows service), с помощью которой вы можете организовать на своем компьютере управляющий центр умного дома. Это центр, который дружит между собой "железки" с разными интерфейсами от разных производителей, позволяет автоматизировать работу с ними (писать скрипты на JavaScript) и управлять всем этим хозяйством через веб-интерфейс.


Под катом более подробное описание системы, список изменений в новой версии и небольшое объявление для тех, кто ненавидит Windows :)

Читать дальше →
Total votes 25: ↑24 and ↓1 +23
Comments 42

«Великий уравнитель» или способ решить проблему выравнивания по высоте

Reading time 4 min
Views 17K
Мы много занимаемся электронной коммерцией и часто встречаем задачу по выравниванию элементов. На первый взгляд все просто, в коде пишется несколько строк и все ок. Но на самом деле элементы бывают очень разные, правил применения тоже много, а еще есть адаптив.

Эта статья пригодится тем, кто часто встречается с проблемой выравнивания элементов по высоте в разных ситуациях.

Рис. 1. Порядок отображения группы товаров.

Читать дальше →
Total votes 33: ↑21 and ↓12 +9
Comments 44

Linux WiFi из командной строки с wpa_supplicant

Reading time 10 min
Views 168K

В этой статье я расскажу, как можно настроить WiFi с помощью wpa_supplicant, без всяких Xorg/X11 утилит. Это необходимо для того, чтобы базовые службы ОС исправно работали с минимальным набором технических средств удаленного доступа. Программа будет исполняться как служба, настройки сделаны правкой конфиг файлов.


По-быстрому, установить соединение с открытой точкой доступа можно таким образом.


[root@home ~]$ wpa_cli
> add_network
> set_network 0 ssid "MYSSID"
> set_network 0 key_mgmt NONE
> enable_network 0

Если же надо всерьез и надолго, то прошу внутрь.

Читать дальше →
Total votes 24: ↑21 and ↓3 +18
Comments 29

Баллада о SharePoint

Reading time 89 min
Views 207K
image

Предисловие


Важно! Если Вам хочется побыстрее приступить к технической стороне дела – просто пропустите эту главу.

Данное чтиво вряд-ли предназначено для широкого круга специалистов. Слишком узок предмет. Слишком большое пересечение технологий и бизнеса. Слишком сложен продукт. Но всегда есть способ разбавить сухое повествование чем-нибудь отвлеченным, естественным. Показать жизнь за экраном монитора такой, как она есть на самом деле, без прикрас. Мы часто слишком увлекаемся работой, компьютер и всевозможные гаджеты отнимают у нас чувство реальности. Мы перестаем смотреть по сторонам, замечать, что происходит вокруг. Перестаем уделять внимание дорогим нам людям. Перестаем жить нормальной, полноценной жизнью.

Кстати картинка «человека дождя» на заглавной не просто для привлечения внимания и именно для этого в повествование добавлена «лирика», все события, имена и прочее есть суть фантазии автора. Как обычно, никто ни за что не несет ответственности :)

Читать дальше →
Total votes 19: ↑17 and ↓2 +15
Comments 62

Стратегии расширения Django User Model

Reading time 9 min
Views 102K
В Django встроена прекрасная система аутентификации пользователей. В большинстве случаев мы можем использовать ее «из коробки», что экономит много времени разработчиков и тестировщиков. Но иногда нам необходимо расширить ее, чтобы удовлетворять потребностям нашего сайта.

Как правило возникает потребность хранить дополнительные данные о пользователях, например, краткую биографию (about), дату рождения, местоположение и другие подобные данные.

В этой статье пойдет речь о стратегиях, с помощью которых вы можете расширить пользовательскую модель Django, а не писать ее с нуля.
Читать дальше →
Total votes 19: ↑18 and ↓1 +17
Comments 15

Дворец для Hakko T12, или что общего у паяльной станции с ёжиком

Reading time 4 min
Views 53K


Доброго вам времени суток, уважаемые гики и сочувствующие! Вчитайтесь внимательно в эти строки великого поэта:

Я знал одной лишь думы власть,
Одну, но пламенную страсть:
Она, как червь, во мне жила.
Изгрызла душу и сожгла!
Читать дальше →
Total votes 27: ↑25 and ↓2 +23
Comments 56

От проектирования до разработки: 10 инструментов, без которых я не могу обойтись

Reading time 4 min
Views 24K
Инструменты сами по себе не могут сделать из вас настоящего мастера. Но они точно могут помочь в этом. В этом посте я хотел бы познакомить вас с несколькими инструментами, которые я использую. Надеюсь, вы откроете для себя некоторые новые инструменты, которые помогут оптимизировать ваш рабочий процесс.
Total votes 34: ↑21 and ↓13 +8
Comments 18

Создание динамических time-lapse с помощью микроконтроллера

Reading time 2 min
Views 7.8K
Когда то у меня была мыльница Canon и у нее был вход типа мини джек. Через который к фотоаппарату можно было подключить интервелометр и снимать таймлапсы. Интервелометр это такая штука которая может автоматически нажимать на спуск с заданным интервалом времени.
Total votes 21: ↑20 and ↓1 +19
Comments 24

Не глупый офис

Reading time 9 min
Views 14K
Я никогда бы не рискнул написать статью об очередной реализации умного дома с подключением датчиков утечек воды в ванной и системами слежения за проделками кота в квартире. Слава богу, кот под контролем собаки, вода вроде тоже не течёт. Но всё же мы больше находимся на работе, в различных офисах, где не всегда удается создать оптимальную рабочую среду. Статья посвящена системе экологического мониторинга рабочего пространства в офисе и тем мероприятиям, которые мы провели после месяца её (на удивление) стабильной работы. Конечно, все данные отправляем в облака, смотрим на них со своих смартфонов, полезности в этом никакой, зато повод похвалиться перед близкими и знакомыми, да и в офисе стало покомфортней. Реализовано всё на ESP8266, а как — милости просим под кат)

Читать дальше →
Total votes 9: ↑9 and ↓0 +9
Comments 34

[ В закладки ] Алгоритмы и структуры данных в ядре Linux, Chromium и не только

Reading time 9 min
Views 85K
Многие студенты, впервые сталкиваясь с описанием какой-нибудь хитроумной штуки, вроде алгоритма Кнута – Морриса – Пратта или красно-чёрных деревьев, тут же задаются вопросами: «К чему такие сложности? И это, кроме авторов учебников, кому-нибудь нужно?». Лучший способ доказать пользу алгоритмов – это примеры из жизни. Причём, в идеале – конкретные примеры применения широко известных алгоритмов в современных, повсеместно используемых, программных продуктах.



Посмотрим, что можно обнаружить в коде ядра Linux, браузера Chromium и ещё в некоторых проектах.
Читать дальше →
Total votes 158: ↑149 and ↓9 +140
Comments 15

Perspex — кросплатформенный UI-фреймворк с XAML и биндингами

Reading time 2 min
Views 27K
TL;DR: кроссплатформенный клон WPF. От других попыток сделать нечто с XAML-ом выгодно отличается наличием полностью своей системы отрисовки со сменными бакэндами (сейчас поддерживается Direct2D и Cairo). В наличии инспектор, дизайнер (см. видео). Биндинги сделаны на стероидах под названием ReactiveExtensions (старый стиль тоже можно использовать). Умеет работать с Windows/Linux/MacOS, поддержку мобильных платформ планируется добавить в начале следующего года посредством отрисовки через MonoGame.


Читать дальше →
Total votes 31: ↑29 and ↓2 +27
Comments 17

Information

Rating
Does not participate
Location
Рязань, Рязанская обл., Россия
Date of birth
Registered
Activity