Недавно я начал собственный бизнес, и у меня больше нет начальника. Подводя итог своей жизнедеятельности в качестве наемного работника, хочу поделиться накопленным за почти 15-летнюю карьеру опытом общения с разными видами руководителей. Надеюсь, что мои наблюдения окажутся полезными при выборе тактики общения со своими руководителями и в момент выбора начальника при перехода на ту или иную работу.
Юрий Дайбов @Jay_Di_Human
CTO
Механизмы безопасности в Linux
5 min
30KВ данной статье я проведу краткий экскурс в наиболее распространенные средства, связанные с безопасностью Linux. Информация предоставлена в сжатом виде, и если какое-то средство вас заинтересует, можно пройтись по ссылкам и прочитать более подробно. По заявкам пользователей некоторые механизмы можно будет рассмотреть более подробно в последующих статьях.
Будут рассмотрены следующие средства: POSIX ACL, sudo, chroot, PAM, SELinux, AppArmor, PolicyKit. Виртуализация, хотя и относится в какой-то мере к средствам безопасности, рассматриваться не будет, тем более что это отдельная обширная тема.
Будут рассмотрены следующие средства: POSIX ACL, sudo, chroot, PAM, SELinux, AppArmor, PolicyKit. Виртуализация, хотя и относится в какой-то мере к средствам безопасности, рассматриваться не будет, тем более что это отдельная обширная тема.
+73
5 самых распространенных ошибок менеджеров
3 min
5.5KTranslation
Множество проектов разработки программного обеспечения проваливаются исключительно благодаря плохому управлению. Следующий список, по моему мнению, содержит 5 самых распространенных и опасных ошибок, совершаемых менеджерами в области разработки программного обеспечения.
+67
6 причин по которым мой стартап, получивший финансирование, провалился
5 min
1.9KTranslation
Во время dot com бума мы с друзьями основали стартап, где я был техническим директором. Мы разработали систему управления знаниями. Это была комбинация блогов, wiki, системы управления документами, социальных закладок. Мы начали в 1999, что было несколько рановато для wiki и блогов (Movable Type вышли на рынок в 2001). Социальные закладки, по сути, были точно такими же, как станет впоследствии Delicious. Помимо этих новых и замечательных идей (по крайней мере для 1999 года) у нас было три отличных особенности:
У нас были кое-какие деньги — посевные инвестиции, которые мы получили от венчурного фонда, и мы вполне себе счастливо и успешно разрабатывали наше приложение. Мы показали его многим пользователям и получили весьма благоприятные отзывы от больших компаний. Так почему же стартап провалился и я не миллионер?
- Всему можно было присвоить метки (tags): навыкам, людям, ссылкам, документам, постам в блогах, страничкам в wiki. Что-то, что теперь называется фолксономия. Метки могли соотноситься с другими метками и формировать онтологии. Метки могли ссылаться на другие документы, посты, людей.
- Всему можно было поставить свою оценку от 1 до 5.
- У нас был умный нечёткий поиск, основанный на метках и оценках. Например, при поиске «люди со знанием Oracle» в выдачу также попадали специалисты по SQL Server'у — например, чтобы укомплектовать команду, если не было свободных гуру Oracle.
У нас были кое-какие деньги — посевные инвестиции, которые мы получили от венчурного фонда, и мы вполне себе счастливо и успешно разрабатывали наше приложение. Мы показали его многим пользователям и получили весьма благоприятные отзывы от больших компаний. Так почему же стартап провалился и я не миллионер?
+125
Хакинг и модинг ASUS WL500G Premium
3 min
65KВот появилось время, и сделал давно задуманное. Надо ли говорить, что данный роутер просто легендарный и в интернетах сложились большие сообщества любителей этой железки. В данной доработке мне очень помогла Паяльная станция Lukey702.
![image](https://habrastorage.org/getpro/geektimes/post_images/665/e38/3b8/665e383b8db1f17ecb6041ad528d4e89.jpg)
![image](https://habrastorage.org/getpro/geektimes/post_images/665/e38/3b8/665e383b8db1f17ecb6041ad528d4e89.jpg)
+162
Программа из одного exe
4 min
42K![](https://habrastorage.org/getpro/habr/post_images/4e0/657/90e/4e065790e25157853ca8b24585bb113f.png)
Однако существуют программы, использующие сторонние библиотеки, но при этом состоящие из одного единственного файла. Все утилиты от SysInternals, а также любимый мной LINQPad представляют из себя один файл в котором содержится все, что требуется для работы. Пользоваться такими утилитами одно удовольствие — они сразу готовы к использованию, их удобно передавать и хранить.
В статье рассказывается, как создавать такие автономные программы из одного файла. Разобран пример как со сжатием зашить библиотеку AutoMapper в программу и как ее потом достать и использовать.
+60
Используй серую логику, Люк
7 min
2.8K![image](https://habrastorage.org/getpro/megamozg/post_images/225/589/a70/225589a70f8f5525d2451a9e9e0b63bb.jpg)
Позволю себе вольность начать серезную тему с шуточной аналогии, дабы поднять Читатель, Ваше настроение и раскрепостить сознание. Для тех кто
Итак, теперь серьезно, речь пойдет о серой логике, лжи, компромиссах, человеческом факторе, политических играх. О том, чем это грозит, и как влияет на Процесс разработки, на отношения между людьми. Нужно и можно ли с этим бороться и как…
Природа одарила человека мощным интеллектом, который представляет модели окружающего мира в серой логике. Представьте, что вы создали объектную модель, коды методов в которой оперируют не черно-белой (ЧБ) логикой (true — false или 1 и 0), a серой, где логическое выражение может иметь значение 0.7 или даже 0.5. И это значение может мутировать, подстраиваться под изменения окружающего мира.
Наши средства для общения, книги, методы обмена идеями сильно отстают от таких моделей — поскольку они используют ЧБ логику.
Серая логика — это мощное оружие против лжи, демагогии и политических игр. Для меня было очень тяжело переключиться от простых ЧБ правил и процессов, с которыми я работал будучи простым программистом. Во «взрослой» жизни ПМ-а все оказалось сложней…
+39
Готовим ПК к летнему отопительному периоду (часть 2)
5 min
14KЧасть 1
![](https://habrastorage.org/getpro/habr/post_images/ce8/de2/42d/ce8de242dc989e7039f406292df7c288.jpg)
В первой части этого материала мы рассказали о том, что большинство собранных и проданных зимой компьютеров в летнюю жару могут работать нестабильно из-за перегрева в силу ошибок сборки, плохой вентилируемости места расположения системного блока и необходимости проведения профилактического технического обслуживания (проще говоря, термопасту заменить, пыль протереть). Ранее мы рассказали о том, как можно выявить потенциальную проблему, исправить недочеты сборщиков и улучшить вентиляцию корпуса и охлаждение CPU. Однако особнячком в вопросах перегрева и шумового загрязнения стоит видеокарта, и в этой части мы поговорим о ней. Эта тема вдвойне актуальна, так как с выходом NVIDIA GeForce GTX 480, как раз под лето, на вторичный рынок посыплются GeForce GTX 295 (скорее всего, двухпалубные, так как энтузиасты и заядлые геймеры покупали именно их), а на эти карты, насколько мне известно, в отличие от GeForce 9800GX2, так и не выпустили альтернативное воздушное охлаждение.
![](https://habrastorage.org/getpro/habr/post_images/ce8/de2/42d/ce8de242dc989e7039f406292df7c288.jpg)
В первой части этого материала мы рассказали о том, что большинство собранных и проданных зимой компьютеров в летнюю жару могут работать нестабильно из-за перегрева в силу ошибок сборки, плохой вентилируемости места расположения системного блока и необходимости проведения профилактического технического обслуживания (проще говоря, термопасту заменить, пыль протереть). Ранее мы рассказали о том, как можно выявить потенциальную проблему, исправить недочеты сборщиков и улучшить вентиляцию корпуса и охлаждение CPU. Однако особнячком в вопросах перегрева и шумового загрязнения стоит видеокарта, и в этой части мы поговорим о ней. Эта тема вдвойне актуальна, так как с выходом NVIDIA GeForce GTX 480, как раз под лето, на вторичный рынок посыплются GeForce GTX 295 (скорее всего, двухпалубные, так как энтузиасты и заядлые геймеры покупали именно их), а на эти карты, насколько мне известно, в отличие от GeForce 9800GX2, так и не выпустили альтернативное воздушное охлаждение.
+28
Готовим ПК к летнему отопительному периоду (часть 1)
12 min
42K![](https://habrastorage.org/getpro/habr/post_images/2ff/bf9/ada/2ffbf9adae7a33b78a2a064f711f7f6f.jpg)
Хоть пока еще за окном полно снега и лютуют морозы, но скоро, очень скоро, придет март, а вместе с ним графический чип NVIDIA Fermi (будем называть его по кодовому имени, так как производитель путается в показаниях – то GT300, то GT400…), набухнут почки и кошелечки заядлых геймеров, которые, не смущаясь ценой новинки примерно в 1000 американских президентов, побегут апгрейдиться, а это значит, что рачительный любитель виртуальных развлечений скоро сможет взять с рук по весьма сходной цене предыдущий флагман «зеленого» флота – NVIDIA GeForce 295, лучшую подругу Crysis Warhead. Если его слегка подразогнать, то на первых порах можно будет выглядеть неплохо даже на фоне счастливых обладателей недешевого свежака.
Внимание! Под катом 36 фотографий.
+53
Managed Extensibility Framework
7 min
14K(Заранее извините за мой русский)
MEF это новый подход разработанный Майкрософт, который позволяет загружать расширения для вашего приложения очень легко. Он позволяет обнаруживать и составлять части, которые должны быть включены в приложение, и все это во время выполнения. Вы можете расширить поведение аппликации простим добавлением новых плагинов. Managed Extensibility Framework сделает все это за вас.
«Hello MEF World!»
MEF это новый подход разработанный Майкрософт, который позволяет загружать расширения для вашего приложения очень легко. Он позволяет обнаруживать и составлять части, которые должны быть включены в приложение, и все это во время выполнения. Вы можете расширить поведение аппликации простим добавлением новых плагинов. Managed Extensibility Framework сделает все это за вас.
«Hello MEF World!»
+43
Быстрочтение featuring Восприятие текста
8 min
79KПривет всем. Основываясь на предыдущем опыте, считаю нужным сразу расставить все точи над ё. Описанная ниже методика — не мое изобретение. Однако из собственного опыта могу уверить вас, что она работает. Ровно так, как обещано.
Идея, описанная в посте, появилась давно (под катом есть история), в том виде, в каком расскажу ее я, по большей части она представлена в чудесных книгах Тони Бузана Use You Head и The Speed Reading Book (в последней много воды).
Пост затрагивает проблемы скорости чтения, понимания текста, а также методы значительного улучшения и того, и другого.
Написано с подачи пользователя cympak. Посвящается всем кто много читает: будь то деловые документы, художественные произведения или статьи на Хабре типа этой.
Прежде чем приступить к самому главному, прошу вас пройти тест из шести вопросов на Да/Нет.
1. Чтение со скоростью свыше 1000 слов в минуту невозможно?
2. Медленная скорость чтения способствует лучшему пониманию текста?
3. Пропускать слова во время чтения — плохая привычка, ухудшающая понимание текста?
4. По умолчанию мы все читаем с «естественной» для нас скоростью, а следовательно, наилучшей?
5. Если вы не поняли слово или предложение, лучше перечитать его и понять?
6. Ваши глаза находятся в непрерывном движении во время чтения?
За результатами и, наконец-то, интересными штуками добро пожаловать под кат.
Идея, описанная в посте, появилась давно (под катом есть история), в том виде, в каком расскажу ее я, по большей части она представлена в чудесных книгах Тони Бузана Use You Head и The Speed Reading Book (в последней много воды).
Пост затрагивает проблемы скорости чтения, понимания текста, а также методы значительного улучшения и того, и другого.
Написано с подачи пользователя cympak. Посвящается всем кто много читает: будь то деловые документы, художественные произведения или статьи на Хабре типа этой.
Прежде чем приступить к самому главному, прошу вас пройти тест из шести вопросов на Да/Нет.
1. Чтение со скоростью свыше 1000 слов в минуту невозможно?
2. Медленная скорость чтения способствует лучшему пониманию текста?
3. Пропускать слова во время чтения — плохая привычка, ухудшающая понимание текста?
4. По умолчанию мы все читаем с «естественной» для нас скоростью, а следовательно, наилучшей?
5. Если вы не поняли слово или предложение, лучше перечитать его и понять?
6. Ваши глаза находятся в непрерывном движении во время чтения?
За результатами и, наконец-то, интересными штуками добро пожаловать под кат.
+121
Тестирование по спецификации
11 min
35KНедавно я писал про различные виды тестирования и про то, что интеграционное тестирование удобно производить с помощью спецификаций. В этой статье я покажу как именно происходит такое тестирование.
Спецификация — это текстовый файл с описанием того, что нужно протестировать в тестовых данных. В ней указывается какие результаты должна получить программа. Тестовый код находит реальные, вычисленные на живом коде результаты. А тестовый движок производит сверку спецификации и вычисленных результатов.
Такой подход позволяет декларативно создавать тесты. Спецификации легко читаются и дополняются при изменении требований. Тестовый код получается компактным. Его легко поддерживать и расширять.
В статье описаны принципы работы движка для тестирования спецификаций и приведены примеры использования. Сам движок прилагается к статье. Можно его считать небольшой библиотекой для интеграционного тестирования.
Спецификация — это текстовый файл с описанием того, что нужно протестировать в тестовых данных. В ней указывается какие результаты должна получить программа. Тестовый код находит реальные, вычисленные на живом коде результаты. А тестовый движок производит сверку спецификации и вычисленных результатов.
Такой подход позволяет декларативно создавать тесты. Спецификации легко читаются и дополняются при изменении требований. Тестовый код получается компактным. Его легко поддерживать и расширять.
В статье описаны принципы работы движка для тестирования спецификаций и приведены примеры использования. Сам движок прилагается к статье. Можно его считать небольшой библиотекой для интеграционного тестирования.
+6
Модель CMMI
8 min
102KВсем здравствуйте! Наконец-то я на Хабре. Постараюсь незамедлительно начать приносить пользу если не всему сообществу, то хотя бы некоторой его части:)
Я был немало удивлён, обнаружив, что на Хабре практически нет информации о модели CMMI, если не считать пары упоминаний здесь и здесь.
На западе уже давно крупные заказы по разработке ПО доверяются только компаниям, прошедшим сертификацию на соответствие какому-либо международному стандарту, зачастую им становится модель CMMI. Хотя сами авторы этой модели неоднократно повторяют, что это не стандарт, а всего лишь сборник рекомендаций по улучшению процессов внутри организации.
Википедия даёт следующее определение:
Я был немало удивлён, обнаружив, что на Хабре практически нет информации о модели CMMI, если не считать пары упоминаний здесь и здесь.
На западе уже давно крупные заказы по разработке ПО доверяются только компаниям, прошедшим сертификацию на соответствие какому-либо международному стандарту, зачастую им становится модель CMMI. Хотя сами авторы этой модели неоднократно повторяют, что это не стандарт, а всего лишь сборник рекомендаций по улучшению процессов внутри организации.
Что такое CMMI?
Википедия даёт следующее определение:
Capability Maturity Model Integration (CMMI) – Комплексная модель производительности и зрелости – набор моделей (методологий) совершенствования процессов в организациях разных размеров и видов деятельности. CMMI содержит набор рекомендаций в виде практик, реализация которых, по мнению разработчиков модели, позволяет реализовать цели, необходимые для полной реализации определенных областей деятельности.
+30
Как делегировать?
3 min
24KПоследняя версия этой статьи о делегировании.
Есть такое умное слово — делегирование. Определение я бы дал такое: делегирование — это процесс передачи ответственности зарезультат исполнение на другого субъекта. Вряд ли, кто то в здравом уме скажет «Я тебе это делегирую», чаще мы используем слово «поручаю». Попробую поделиться своим опытом, как перекладывать с больной головы на здоровую.
![](https://habrastorage.org/getpro/megamozg/post_images/27f/ab1/fa0/27fab1fa0ec955087bdf2037ac031fb8.gif)
Есть такое умное слово — делегирование. Определение я бы дал такое: делегирование — это процесс передачи ответственности за
![](https://habrastorage.org/getpro/megamozg/post_images/27f/ab1/fa0/27fab1fa0ec955087bdf2037ac031fb8.gif)
+52
Управление рисками
4 min
125KВ Deadline, Том Демарко пишет о том, что для управления проектом, достаточно управлять его рисками. Действительно, всю работу ПМа можно свести к одному — борьба с рисками, которые могут помешать проекту завершиться в срок, в бюджет и с необходимым уровнем качества. Если, по какой-то причине, рисков в проекте нет, то нет и предмета работы ПМа.
Но проектов без рисков, наверное, не существует в природе и с ними так или иначе приходится работать. О том, как это делать, можно прочесть в PMBOK, на википедии и на тематических ресурсах. В этой статье больше практики, чем теории. Ее цель — показать на примерах недорогой и эффективный подход к управлению рисками проекта.
Но проектов без рисков, наверное, не существует в природе и с ними так или иначе приходится работать. О том, как это делать, можно прочесть в PMBOK, на википедии и на тематических ресурсах. В этой статье больше практики, чем теории. Ее цель — показать на примерах недорогой и эффективный подход к управлению рисками проекта.
+51
Канбан в IT (Kanban Development)
7 min
282KЯ собираюсь написать несколько статей про новую методологию гибкой разработки Канбан (Kanban Development) в целях подготовки к Scandinavian Agile Conference 2009, где я буду делать один из докладов (кстати, заодно приглашаю всех на конференцию).
Сегодня публикую первую из статей.
Основная задача первой статьи — это как можно проще описать основы Канбан: что это такое, в чем отличие от других гибких методологий и зачем это нужно.
Также я хотел бы собрать как можно больше вопросов и сомнений в комментариях, чтобы ответить на них в следующих статьях, так что пишите всё, что вам непонятно, или что ещё вы хотели бы узнать про Канбан.
Я не то, чтобы большой специалист по этой новой методологии, но мы внутри команды пришли к Канбану самостоятельно и последовательно прошли все этапы мутации от SCRUM до Канбан, так что практический опыт есть.
Сегодня публикую первую из статей.
Основная задача первой статьи — это как можно проще описать основы Канбан: что это такое, в чем отличие от других гибких методологий и зачем это нужно.
Также я хотел бы собрать как можно больше вопросов и сомнений в комментариях, чтобы ответить на них в следующих статьях, так что пишите всё, что вам непонятно, или что ещё вы хотели бы узнать про Канбан.
Я не то, чтобы большой специалист по этой новой методологии, но мы внутри команды пришли к Канбану самостоятельно и последовательно прошли все этапы мутации от SCRUM до Канбан, так что практический опыт есть.
+55
Information
- Rating
- Does not participate
- Location
- Россия
- Registered
- Activity