Как стать автором
Поиск
Написать публикацию
Обновить
11
0
Goncharov Ivan @vanuch

Пользователь

Отправить сообщение

О настойчивом шевелении правильными местами

Время на прочтение1 мин
Количество просмотров870
После 2-го видео о том, чему и как менеджерам стоит учиться, мы с товарищем eagleson получили несколько забавных комментариев по теме «Хорошо, а что делать-то?!» и конечно, традиционых «А ты ваще кто такой?» :)

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



Из нашего 3-го видео вы узнаете:
  1. Как за пару лет стать успешным тренером
  2. Как тестировщице из Харькова стать QA директором известной компании, а заодно подружиться с главным гугловским тестировщиком
  3. Что такое лидерство в трудные моменты с точки зрения больших менеджеров
  4. Как просто иногда бывает стать менеджером проекта
  5. Какие результаты случаются за год у тех, кто шевелит правильными местами

А как сделать X на языке Y?

Время на прочтение1 мин
Количество просмотров644
Часто, когда требуется решить какую-то задачу на новом или старом и позабытом языке возникают довольно простые вопросы, например у меня сегодня возник вопрос как сделать проверку на null (nil, none, nothing, empty) в Tcl.

RosettaCode — хрестоматия программирования, содержит решения типовых задач на разных языках, вот например решение моей.

Просмотреть решения можно по задачам, языкам, библиотекам.

Конечно, ответы на такие вопросы поисковая машина дает довольно быстро путем ввода аналогий из других языков, равно как и любой мануал по языку, но наличие такого «конвертора» знаний на новый язык весьма удобно.

PDF-версия руководства по быстрому старту в Drupal

Время на прочтение1 мин
Количество просмотров5.2K
интро
Отверстал PDF-версию перевода руководства, изложенного в первой и второй частях.
Объем 48 страниц.
Выложил на амазон, чтобы всегда был доступен.
В документе оглавление, букмарки, все ссылки оригинала.
Критика, пожелания, поправки приветствуются.

Внутри MP3. А как оно всё устроено?

Время на прочтение5 мин
Количество просмотров111K


Однажды мне понадобилось решить простенькую (как мне тогда казалось) задачу – в PHP-скрипте узнать длительность mp3-файла. Я слышал о ID3 тегах и сразу подумал, что информация о длительности хранится либо в тегах, либо в заголовках mp3-файла. Поверхностные поиски в интернете показали что за пару-тройку минут решить эту задачу не получится. Поскольку от природы я довольно любопытен а время не поджимало — решил не использовать сторонние инструменты а разобраться в одном из самых популярных форматов самостоятельно.

Если Вам интересно, что там внутри – добро пожаловать под кат (трафик).
Читать дальше →

Форматирование в комментариях

Время на прочтение1 мин
Количество просмотров2.2K
Надоело мне писать теги в комментариях руками, и сделал я userscript, который добавляет кнопки форматирования к полю комментария. Непонятно, почему их до сих пор не сделали хабраразработчики. В посте есть — в комментариях нет.
Вот тут сам скрипт — userscripts.org/scripts/show/85482. Работать он будет в Google Chrome, Firefox, Opera и может даже IE8. Инструкции по установке, если не знаете как ставить userscript'ы, можно почитать тут — внизу страницы.

Скрипт работает и в постах и в q&a. Содержит вроде бы всё необходимое и даже irony. Если найдёте какие-нибудь баги — пишите.

Напоследок картинка — как это будет выглядеть:
image

Как поймать «поток», и как сделать так, чтобы он не сорвался

Время на прочтение6 мин
Количество просмотров49K

Вступление


Я, как руководитель проектов, всё больше и больше замечаю, что эффективность работы команды (и каждого программиста в частности) – это ключевой фактор, определяющий успех проекта. При эффективной работе даже самые тяжёлые проекты со сжатыми сроками удаётся завершить успешно, а неэффективная способна «завалить» простейшие проекты с минимумом рисков. Поэтому, я хотел бы поделиться своими мыслями об одном из ключевых понятий – понятии «работы потоком».

Читать дальше →

Чёрточки: только ли тире, минус и дефис?

Время на прочтение4 мин
Количество просмотров182K
Однажды вечером я почувствовал, что пришло время расширить 97‐ й параграф «Ководства» Артемия Лебедева.

На клавиатуре одна чёрточка, она обычно правее нуля и повыше букв «З» и «Х». Неосведомлённые люди называют её попеременно то дефисом, то минусом, то тире. Лебедев объясняет нам, что это четыре (учитывая две разновидности тире) различных символа. На самом деле их как минимум девять, и об этом я и расскажу вам сейчас.

Читать дальше →

Что такое эффект якоря и как вы можете его использовать

Время на прочтение4 мин
Количество просмотров70K
На написание данной заметки натолкнула одна интересная статья “Anchoring effect”. Однако это совсем не перевод, так как в тексте встречается много лишней информации и исследований в духе «Британские ученые доказали…» Это скорее творческая интерпретация.

В статье описывается один очень важный психологический эффект – эффект якоря или эффект привязки.

В чём секрет?


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

Чтобы что-то оценить, нам необходима отправная точка, некий якорь – что-то вроде «розовой обезьяны».

Например, если спросить – сколько человек составляет население Венесуэлы, что вы скажете? Растеряетесь и задумаетесь. А если задать вопрос: «Население Венесуэлы больше или меньше 65 млн?». Вопрос приобретает иной окрас, и ваш мозг подсознательно начинает опираться на упомянутую цифру, даже если она взята «с потолка». Какой ответ вы дали в первом и втором случае? Во втором случае названное число будет намного больше, чем в ответ на первый вариант вопроса.
А между тем – в Венесуэле живет всего 28 млн человек.

Неоднократные исследования показали, что наш мозг всегда цепляется за подобные якоря, намек на которые нам дают обстоятельства, причем абсолютно любые.
Читать дальше →

Долгожданный Ctrl+R для Pidgin

Время на прочтение2 мин
Количество просмотров7K
Некоторое время назад, опробовав множество клиентов ICQ, я наконец перешел на Pidgin, чему несказанно рад до сих пор.
Сходу раскопав все возможные и невозможные плагины, я так и не нашел простого, но бесконечно удобного плагина, который по нажатию кнопки Ctrl+R делал что? Ghfdbkmyj! Правильно! Переводил бы набранные не в той раскладке кракозябры в удобоваримый текст.

А что делает в таком случай каждый уважающий себя гик?.. И снова правильно! Я написал новый плагин.
Читать дальше →

HTML5 для веб-дизайнеров. Часть 1: Краткая история языка разметки

Время на прочтение7 мин
Количество просмотров14K
HTML5 для веб-дизайнеров

  1. Краткая история языка разметки
  2. Модель HTML5
  3. Мультимедиа
  4. Формы 2.0
  5. Семантика
  6. HTML5 и современные условия


HTML — язык, объединяющий всемирную сеть. Всего лишь посредством набора простых тегов, человечеству удалось создать несравнимую ни с чем по своим масштабам систему связанных между собой страниц и веб-узлов: от Amazon, eBay и Википедии, до личных блогов и сайтов, посвященных котам, похожим на Гитлера.

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

Как и всемирная сеть вообще, HTML — язык разметки гипертекста (HyperText Mark-up Language) — является детищем сэра Тима Берненс-Ли (Sir Tim Berners-Lee). В 1991 году он написал работу, озаглавленную «HTML Tags», в которой описал чуть меньше двух дюжин тегов, предложенных им для разметки веб-страниц.

Идея использовать для этого кодовые слова внутри треугольных скобок, впрочем, не принадлежит сэру Тиму. Такая система на тот момент уже существовала и использовалась в SGML (Standard Generalised Markup Language, стандартный обобщённый язык разметки), и вместо того, чтобы изобретать что-то с нуля, сэр Тим посчитал более рациональным взять за основу уже существующие решения. Аналогичный подход применялся и вообще на всем пути к HTML5 в процессах разработки.

Читать дальше →

Браузерный интерпретатор Python

Время на прочтение1 мин
Количество просмотров34K
image

На сайте people.csail.mit.edu появился интерпретатор языка Python. Также там есть несколько примеров. Отладку программы можно производить пошагово.
Правда, существуют некоторые ограничения: там нет модуля импорта или ввода/вывода файлов. Поэтому понадобится это, в основном, для показательных и учебных целей.
Всё это базируется на версии языка Python 2.5

8 вещей, которые я хотел бы знать, когда начинал свой бизнес

Время на прочтение3 мин
Количество просмотров12K

Предисловие


В мире, наполненном стартапами, успех или неудачу сложно предсказать. Но одно можно сказать точно: тот, кто решается открыть своё дело, уже никогда не будет таким, как прежде. Постоянные трудности, связанные с появлением новых возможностей и проблем, делают процесс удивительным и интересным. Я думаю, что именно поэтому многие люди начинают своё дело, несмотря на наличие другой (более простой) альтернативы — работать на кого-то другого.
За свою жизнь я открыл несколько фирм и могу сказать, что некоторые извлечённые мной уроки были интуитивно понятны и доступны, в то время как другие — далеко не так просты и очевидны. Однако, учитывая временные и денежные затраты на понимание этих уроков, ни один из них я не могу назвать дешёвым.
Эти уроки изменили моё мировозрение, изменили меня как личность. Я рад, что мне пришлось столкнуться с ними, но это не значит, что я не хотел бы знать их изначально.
Вот эти восемь вещей, которые я хотел бы знать, когда начинал своё первое дело.
Читать дальше →

Перенос Linux на другой компьютер

Время на прочтение3 мин
Количество просмотров87K

Вступление


Хочу поделиться собственным опытом переноса системы на другой компьютер, целиком и полностью отличающийся аппаратной конфигурацией.
На самом деле, вариантов перенести систему много. Каждый имеет свой подход. Я же опишу способ, который больше всего подходит для новичков.

Читать дальше →

Начальники и как с ними жить

Время на прочтение4 мин
Количество просмотров5.9K
Вы любите своего начальника? Я имею ввиду, платонически? Не боитесь, когда он вас вызывает к себе? А вы его вообще видели?

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

Эта игра вообще очень полезна, но особенно в приложении к начальникам. Итак, разберем простые начальникофобии и попробуем поискать методы борьбы/уживания с такими начальниками… нет, скорее, фобиями.

Поехали!
Читать дальше →

Версионность и история данных

Время на прочтение5 мин
Количество просмотров142K
При разработке баз данных зачастую требуется обеспечить поддержку версионности и хранения истории объектов. Например, у работника может изменяться должность, у должности в свою очередь может меняться оклад — в многомерном моделировании это называется Slowly changing dimensions(далее SCD) — редко изменяющиеся измерения, то есть измерения, не ключевые атрибуты которых имеют тенденцию со временем изменяться. Всего существует 6 основных типов(методов) SCD, которые определяют как история изменений может быть отражена в модели.

Подробнее...

Виджет для Opera — OpenBoobs Reader

Время на прочтение1 мин
Количество просмотров9.1K
Когда-то, давным-давно, тут пиарился один удивительный и абсолютно чистый от рекламы сервис по сиськам OpenBoobs.
Он мне понравился еще тогда, но вот недавно я решил сделать для него маленький виджет. Итак, встречайте OpenBoobs Reader!

Он вам поможет:
  • Просматривать отборные груди в случайном порядке;
  • Быстро сохранить на диск понравившуюся грудь;
  • Незаметно на вашем рабочем столе показывать разные груди в режиме слайдов;
  • Просто расслабится.
Читать дальше →

Смотрим RSS подписки по-новому

Время на прочтение4 мин
Количество просмотров1.8K
Scrollit.ru

Все началось с того, что прочитал статью на TechCrunch про приложение для iPad — Pulse. Это приложение для просмотра RSS-лент. Именно просмотра, потому что список выстраивается в горизонтальные ленты с превью изображений из каждой статьи. Их можно прокручивать, переходя к более ранним статьям.

Мне показалось это удобным и я полез сразу на сайт, узнать есть ли что-то подобное для PC (так как айпадов не имеем). К слову, после iPad ребята взялись за iPhone и мобильные устройства на базе Android и уже выпустили приложения и для них. Но вот версии для PC они не стали делать, причем на своем форуме писали, что это пока не планируется. Хотя в то же время я видел много вопросов именно с просьбой сделать что-то для обычного компьютера.
Читать дальше →

Современные возможности виртуализации

Время на прочтение9 мин
Количество просмотров7.7K
После недавних дискуссий о том, какой гипервизор лучше, возникла идея выписать функциональность современных систем виртуализации без привязки к конкретным названиям. Это не сравнение «кто лучше», это ответ на вопрос «что можно сделать с помощью виртуализации?», общий обзор возможностей промышленной виртуализации.

Исполнение кода


Так как гипервизор полностью контролирует виртуальные машины, он может специфичным образом управлять процессом работы машины.

Различные системы виртуализации предлагают несколько методов исполнения кода (полная эмуляция в список не включена, так как не используется в промышленной виртуализации):
  • binary rewriting. Этот подход использует VMWare и Connectix Virtual PC (куплен microsoft) при виртуализации на хосте без аппаратной виртуализации. Гипервизор (виртуализатор) просматривает исполняемый код и помечает инструкции, требующие «виртуализации» брейкпоинтами и эмулирующий (виртуализирующий) только такие инструкции.

Читать дальше →

6 способов убить Ваши сервера — познаем масштабируемость трудным путем

Время на прочтение5 мин
Количество просмотров18K
Узнать, как отмасштабировать Ваше приложение, не имея при этом никакого опыта, — это очень нелегко. Сейчас есть много сайтов, посвященных этим вопросам, но, к сожалению, не существует решения, которое подходит для всех случаев. Вам по-прежнему необходимо самому находить решения, которые подойдут под Ваши требования. Так же, как и мне.

Несколько лет назад ко мне пришел мой босс и сказал: «У нас есть новый проект для тебя. Это перенос сайта, который уже имеет 1 миллион посетителей в месяц. Тебенеобходимо его перенести и убедиться, что посещаемость может вырасти в будущем без всяких проблем.» Я уже был опытным программистом, но не имел никакого опыта в области масштабируемости. И мне пришлось познавать масштабируемость трудным путем.
Читать дальше →

Добавление и удаление на ходу SATA/SCSI устройств

Время на прочтение2 мин
Количество просмотров68K
Современный Linux (2.6+) может обнаруживать новоподключенные устройства (на шинах, которые поддерживают hotplug). Их можно, так же отключать, предварительно отмонтировав файловые системы и сделав sync. Среди hotplug шин не только USB, но и SATA, SCSI и SAS (в теории, это же применимо и к PATA, но там много глупых контроллеров, которые не умеют адекватно реагировать на исчезновение устройства).

Отключать их лучше не дёргая на ходу физическое устройство, а сказав ядру полностью забыть про про него (гарантируя тем самым, что никаких операций ввода-вывода с устройством производиться не будет, даже если вспохватившийся кеш). Кроме того, иногда нужно выполнять эмуляцию процедуры plug-unplug без физического дёргания питания/шины данных (что не очень хорошо для железа). Самая типичная ситуация — это отладка скриптов udev.

Удаление устройства


echo 1 >/sys/block/sdX/device/delete

(x — буква устройства, sda, sdb, etc).

Эта команда удаляет указанное устройство. Заметим, это низкоуровневая команда, которая не проверяет кеш и статус примонтированности, так что лучше сначала сказать umount & sync.

К сожалению, я не знаю метода совместить выключение шпинделя диска с его удалением с точки зрения ядра. Шпиндель можно отключить командой scsi-spin, однако, при попытке удалить устройство, оно будет раскручено заново и удалено. А у удалённого устройства уже нельзя ничего останавливать (нет устройства). Так что эта часть проблемы пока не решена.

Добавление устройства


Мы не можем «добавить» устройство, мы можем отдать контроллеру команду «перечитать» список устройств, подключенных к тому или иному порту. Если там найдётся что-то интересное, ядру дадут знать.

echo "- - -" >/sys/class/scsi_host/hostX/scan

X — номер шины, совпадает с номером SATA порта на материнской плате. Если не знаете, можете смело делать для всех хостов по очереди, ничего, кроме небольшого лага в дисковых операциях, незаметного для софта и файловой системы, это не даст.

Обратите внимание, host'ы нумеруются с 0, а не с 1. (а в dmesg ata устройства нумеруются с 1).

Так же осуществляется и сканирование USB-SATA переходников (usb-боксов и внешних винчестеров — они просто фигурируют как ещё один scsi_host).

Если мы говорим про SCSI, то вместо "- — -" можно указать точный номер устройства/шины/LUN'а сканируемого устройства (например, «200 1 2»). SATA, в силу архитектурных особенностей (один target для одного initiator) принимает туда только «0 0 0».

Ещё об удалении… Если вы не знаете буквы устройства, но знаете его физическое место подключения, то удалять можно «прямым текстом», записью «1» в "/sys/bus/scsi/devices/targetX:0:0/X:0:0:0/delete".

Информация

В рейтинге
Не участвует
Откуда
Украина
Дата рождения
Зарегистрирован
Активность