Search
Write a publication
Pull to refresh
74
0
Виталий Чужа @hDrummer

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

Send message

Composer для самых маленьких

Reading time8 min
Views356K
Доброго дня.

Когда я первый раз разбирался с composer, я набросал для себя маленькую шпаргалку и теперь, спустя некоторое время представляю её на суд общественности в несколько доработанном виде.
Данная публикация актуальная для тех, кто в первый раз столкнулся с незаменимым менеджером пакетов для PHP.

Итак, Composer — менеджер пакетов для PHP.
Читать дальше →

Семь странных способов борьбы с отшельничеством на удаленной работе

Reading time6 min
Views15K

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

В прошлом году социологи из Айовского университета и Техасского университета в Остине установили, что трудясь даже неполный рабочий день вне обычного офиса, мы в среднем отрабатываем на три часа в неделю больше. Работая из дома, можно повысить продуктивность, но при этом существует больший риск одиночества и появления синдрома самозванца, что может привести к депрессии и выгоранию.

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


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

Переведено в Alconost
Читать дальше →

Государственный университет Адамс. Как взламывать веб-сайты. Часть 1

Reading time10 min
Views12K
Ведущий: благодарю всех за то, что пришли на нашу первую лекцию из серии «Беседы о науке и математике во время обеденного перерыва». Вы получили электронные письма, кроме того, вокруг этого здания кампуса расклеены расписания семи лекций, которые состоятся в этом семестре. Я хочу представить вам доктора Сьюзен Лавленд с факультета компьютерных наук, которая расскажет о том, как взламывать сайты.



Сьюзен Лавленд: в начале презентации я хочу упомянуть, что хакеры бывают всех оттенков черного и белого цветов. Сегодня я буду играть роль хакера в Черной Шляпе и выступать на темной стороне взлома потому, что быть плохой доставляет намного больше удовольствия, чем хорошей. Есть и хакеры в Белых Шляпах, которые выполняют работу для компаний компьютерной безопасности и занимаются расследованиями в области компьютерной криминалистики. Они пытаются найти уязвимости системы безопасности прежде, чем плохие парни ими воспользуются в своих целях.

Задача таких хакеров – найти уязвимость, не причиняя вреда приложению, составить отчёт о прорехе в системе безопасности и направить его компании. Сама я никогда не думала о том, чтобы взломать сайт, поэтому привела с собой содокладчика, который подготовил слайды нашей презентации (надевает на себя Чёрную Шляпу).

Решение проблем с установкой .NET Framework 3.5 на Windows 8 в сети с WSUS

Reading time2 min
Views116K
Иногда случаются ситуации, когда пользователю Windows 8 необходимо установить .NET Framework 3.5 — чаще всего, это необходимо для обеспечения работоспособности некоторых, относительно старых, программ. В большинстве случаев все проходит без проблем. Однако, недавно возникла ситуация — данный фреймворк отказался устанавливаться на компьютер, находящийся в доменной сети AD с настроенным локальным сервером обновлений WSUS.
Читать дальше →

Как я успешно прошел шесть собеседований в Силиконовой долине

Reading time10 min
Views36K
За шесть дней, в период с 13 по 20 августа 2018 года, я прошел собеседования в шести компаниях Силиконовой долины (LinkedIn, Yelp, Apple, Amazon, Facebook и Google) и получил от каждой предложение о работе.



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

Надеюсь, моя история вдохновит кого-нибудь, кто сейчас в том же положении (не совсем доволен текущей работой, мечтает переехать в область залива, но несколько недотягивает в плане подготовки), дерзнуть — кто знает, что готовит для них будущее.
Читать дальше →

Как интеллект-карты помогают вести IT-проекты

Reading time10 min
Views49K
В продолжение статьи о тайм-менеджменте предлагаю вашему вниманию историю о своем опыте использования инструмента по работе с интеллект-картами. Последние десять лет я занимаюсь управлением проектами в ИТ и телекоме, и всё это время я использую MindJet MindManager. Сегодня я расскажу, как с его помощью можно организовать задачи проекта и всё то, что происходит в голове проектного менеджера. Рассчитываю, что вы прочтете эту статью, пока пьёте одну чашку кофе, а за несколько последующих — мы с вами её обсудим.

Из этого поста вы узнаете о принципах формирования интеллект-карт, основных фишках MindJet MindManager (далее — Mind) и особенностях его применения в проектной работе управленца.

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

Источник
Читать дальше →

Я растерял веру в разработку, выгорел, но меня спас культ инструмента

Reading time7 min
Views71K


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

Уколы в адрес технологий разрабы воспринимают на свой счет. Культ инструмента — очень странная штука, которую не объяснить логически. Одни говорят, что культ есть у всех, потому что мышление плотно сплетается с япом. Другие говорят, это джунироская болезнь — ты впервые что-то написал, оно получилось, от восторга ты посчитал свой яп чудом божьим.

Чем бы оно ни было, я эту фигню не понимал никогда.

Сторонники культов кажутся мне непроходимыми тупицами. А я всегда пытаюсь понять, как тупицы стали тупицами, и почему тупицей не стал я. Начал думать и бам! — понял, что все-таки стал. Я тупица-культист, который восхваляет F#. И конечно за этим есть история.
Читать дальше →

Генератор подземелий на основе узлов графа

Reading time11 min
Views29K
image

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

Введение


Алгоритм был написан как часть работы на получение степени бакалавра и основан на статье Ma et al (2014). Целью работы было ускорение алгоритма и дополнение его новыми функциями. Я вполне доволен результатом, потому что мы сделали алгоритм достаточно быстрым, чтобы использовать его во время выполнения игры. После завершения бакалаврской работы мы решили превратить её в статью и отправить на конференцию Game-ON 2018.

Алгоритм


Для создания уровня игры алгоритм получает в качестве входных данных набор полигональных строительных блоков и граф связности уровня (топологию уровня). Узлы графа обозначают комнаты, а рёбра определяют связи между ними. Цель алгоритма — назначить каждому узлу графа форму и расположение комнаты таким образом, чтобы никакие две формы комнат не пересекались, и каждая пара соседних комнат могла соединяться дверьми.

Интервью с багхантером Артёмом Московским. Он взломал Steam и получил самую крупную награду в истории Valve

Reading time6 min
Views59K


Артем Московский — багхантер, пентестер и безопасник которому сразу хочется задать стыдный вопрос «сколько ты зарабатываешь?» В прошлом году он получил самое большое вознаграждение в истории Valve — $20 тыс и $25 тысяч за две крупные уязвимости в Steam и еще $10 тыс за баги поменьше.

Мы переписывались несколько дней, и Артем рассказал, как начал заниматься своим делом, какие скиллы для этого нужны, и не тянет ли с таким талантом на темную сторону.
Читать дальше →

Асинхронный рассинхрон: антипаттерны в работе с async/await в .NET

Reading time9 min
Views52K

Кто из нас не косячит? Я регулярно встречаюсь с ошибками в асинхронном коде и делаю их сам. Чтобы прекратить это колесо Сансары делюсь с вами самыми типичными косяками из тех, которые иногда довольно сложно отловить и починить.



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

За информацию о взломе WhatsApp и iMessage объявлена награда в $1 млн

Reading time3 min
Views20K
Источник: cnn.com

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

Одна из таких организаций, Zerodium, объявила награду в $1 млн за работающие инструменты взлома WhatsApp и iMessage. Аналогичную сумму выплатят тому, кто предоставит эксплоиты, позволяющие получить доступ к SMS/MMS приложениям мобильных операционных систем.
Читать дальше →

Упрощаем написание резюме разработчика

Reading time10 min
Views18K

Проблема


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



Для тех, кому не интересна лирика, и кто хочет сразу перейти к делу — то вперед на github. А для тех, кому важна механика и история проекта — собственно и посвящена статья.


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

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

Конференция DEFCON 18. Практический шпионаж с помощью мобильного телефона. Часть1

Reading time13 min
Views19K
Добро пожаловать на презентацию «Практический шпионаж с помощью сотового телефона». Прежде чем мы начнем, сделаю пару замечаний по поводу конфиденциальности. В-первых, звонок по сотовому телефону может быть записан прямо во время разговора. Сюрприз! Так что если вы не хотите, чтобы ваш звонок был записан, выключите свой телефон. Если вы пользуетесь услугами сотовых операторов Sprint или Verizon, вы не находитесь в сетях GSM, и моя система вообще не сможет говорить с вашими телефонами, так что вам не о чем беспокоиться.



Должен заметить, что я призываю людей держать свои телефоны на виду во время разговора, особенно если они пользуются GSM – трубкой, потому весь смысл этого в том, чтобы показать, как могут быть перехвачены ваши телефонные звонки. Если же вы не пользуетесь своей трубкой, этот приём не работает.

Курс MIT «Безопасность компьютерных систем». Лекция 22: «Информационная безопасность MIT», часть 3

Reading time17 min
Views13K

Массачусетский Технологический институт. Курс лекций #6.858. «Безопасность компьютерных систем». Николай Зельдович, Джеймс Микенс. 2014 год


Computer Systems Security — это курс о разработке и внедрении защищенных компьютерных систем. Лекции охватывают модели угроз, атаки, которые ставят под угрозу безопасность, и методы обеспечения безопасности на основе последних научных работ. Темы включают в себя безопасность операционной системы (ОС), возможности, управление потоками информации, языковую безопасность, сетевые протоколы, аппаратную защиту и безопасность в веб-приложениях.

Лекция 1: «Вступление: модели угроз» Часть 1 / Часть 2 / Часть 3
Лекция 2: «Контроль хакерских атак» Часть 1 / Часть 2 / Часть 3
Лекция 3: «Переполнение буфера: эксплойты и защита» Часть 1 / Часть 2 / Часть 3
Лекция 4: «Разделение привилегий» Часть 1 / Часть 2 / Часть 3
Лекция 5: «Откуда берутся ошибки систем безопасности» Часть 1 / Часть 2
Лекция 6: «Возможности» Часть 1 / Часть 2 / Часть 3
Лекция 7: «Песочница Native Client» Часть 1 / Часть 2 / Часть 3
Лекция 8: «Модель сетевой безопасности» Часть 1 / Часть 2 / Часть 3
Лекция 9: «Безопасность Web-приложений» Часть 1 / Часть 2 / Часть 3
Лекция 10: «Символьное выполнение» Часть 1 / Часть 2 / Часть 3
Лекция 11: «Язык программирования Ur/Web» Часть 1 / Часть 2 / Часть 3
Лекция 12: «Сетевая безопасность» Часть 1 / Часть 2 / Часть 3
Лекция 13: «Сетевые протоколы» Часть 1 / Часть 2 / Часть 3
Лекция 14: «SSL и HTTPS» Часть 1 / Часть 2 / Часть 3
Лекция 15: «Медицинское программное обеспечение» Часть 1 / Часть 2 / Часть 3
Лекция 16: «Атаки через побочный канал» Часть 1 / Часть 2 / Часть 3
Лекция 17: «Аутентификация пользователя» Часть 1 / Часть 2 / Часть 3
Лекция 18: «Частный просмотр интернета» Часть 1 / Часть 2 / Часть 3
Лекция 19: «Анонимные сети» Часть 1 / Часть 2 / Часть 3
Лекция 20: «Безопасность мобильных телефонов» Часть 1 / Часть 2 / Часть 3
Лекция 21: «Отслеживание данных» Часть 1 / Часть 2 / Часть 3

Карты лояльности. Google Pay API for Passes в ASP.NET

Reading time6 min
Views10K

Приложения-хранилища банковских карт стремительно вошли в нашу жизнь благодаря Apple Wallet и Google Pay. Обе платформы, помимо банковских, позволяют также работать и с другими типами карт — картами лояльности, подарочными картами, билетами на мероприятия, посадочными талонами и т.д.
 




Работая в компании, которая занимается обслуживанием одной немаленькой ритейловой сети, мне пришлось интегрировать карты лояльности этой сети в Apple Wallet и Google Pay. И если с Apple Wallet пришлось повозиться только потому что интеграционный слой довольно многофункционален, то с Google Pay большая часть усилий и нервных клеток была потрачена на то чтобы разобраться в документации, найти подходящие инструменты и разработать первый proof of concept. Хоть в целом остальная часть работы прошла гораздо быстрее, чем для Apple Wallet, я потратил день на то чтобы разобраться в том как завести сервис, так что был бы не против, если бы кто-то написал подобную статью до меня.

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

Тетрис на C# в 100 строк

Reading time5 min
Views96K
UPD. Ссылка на github.
Недавно мне в голову пришла идея — написать простенькую игру в минимальное количество строк. Мой выбор пал на тетрис. В этой статье я опишу свой код.

Для начала стоит отметить, что в свою реализацию я включил только базовые возможности:

  • движение фигурок влево/вправо;
  • падение фигурок;
  • поворот фигурок;
  • удаление заполненных фигурок;
  • окончание игры.

Итак, сперва добавим на форму PictureBox и создадим таймер.
Читать дальше →

Курс MIT «Безопасность компьютерных систем». Лекция 21: «Отслеживание данных», часть 2

Reading time14 min
Views4.6K

Массачусетский Технологический институт. Курс лекций #6.858. «Безопасность компьютерных систем». Николай Зельдович, Джеймс Микенс. 2014 год


Computer Systems Security — это курс о разработке и внедрении защищенных компьютерных систем. Лекции охватывают модели угроз, атаки, которые ставят под угрозу безопасность, и методы обеспечения безопасности на основе последних научных работ. Темы включают в себя безопасность операционной системы (ОС), возможности, управление потоками информации, языковую безопасность, сетевые протоколы, аппаратную защиту и безопасность в веб-приложениях.

Лекция 1: «Вступление: модели угроз» Часть 1 / Часть 2 / Часть 3
Лекция 2: «Контроль хакерских атак» Часть 1 / Часть 2 / Часть 3
Лекция 3: «Переполнение буфера: эксплойты и защита» Часть 1 / Часть 2 / Часть 3
Лекция 4: «Разделение привилегий» Часть 1 / Часть 2 / Часть 3
Лекция 5: «Откуда берутся ошибки систем безопасности» Часть 1 / Часть 2
Лекция 6: «Возможности» Часть 1 / Часть 2 / Часть 3
Лекция 7: «Песочница Native Client» Часть 1 / Часть 2 / Часть 3
Лекция 8: «Модель сетевой безопасности» Часть 1 / Часть 2 / Часть 3
Лекция 9: «Безопасность Web-приложений» Часть 1 / Часть 2 / Часть 3
Лекция 10: «Символьное выполнение» Часть 1 / Часть 2 / Часть 3
Лекция 11: «Язык программирования Ur/Web» Часть 1 / Часть 2 / Часть 3
Лекция 12: «Сетевая безопасность» Часть 1 / Часть 2 / Часть 3
Лекция 13: «Сетевые протоколы» Часть 1 / Часть 2 / Часть 3
Лекция 14: «SSL и HTTPS» Часть 1 / Часть 2 / Часть 3
Лекция 15: «Медицинское программное обеспечение» Часть 1 / Часть 2 / Часть 3
Лекция 16: «Атаки через побочный канал» Часть 1 / Часть 2 / Часть 3
Лекция 17: «Аутентификация пользователя» Часть 1 / Часть 2 / Часть 3
Лекция 18: «Частный просмотр интернета» Часть 1 / Часть 2 / Часть 3
Лекция 19: «Анонимные сети» Часть 1 / Часть 2 / Часть 3
Лекция 20: «Безопасность мобильных телефонов» Часть 1 / Часть 2 / Часть 3
Лекция 21: «Отслеживание данных» Часть 1 / Часть 2 / Часть 3

Сбор требований к программному проекту — без купюр

Reading time11 min
Views7.1K
Разработка… она как наркотик — систему пишут, пишут, ведь «прет» же. А потом, вдруг оказывается — «алименты» нужно платить. А любое изменение системы влечет гору ошибок. А ведь еще в начале прошлого века великий Курт Гёдель предвидел это и строго доказал, что даже в арифметике у нас не хватает ума, чтобы выразить все ее законы без противоречий. А в программировании и подавно — мы начнем наступать себе на ноги и запутываться. Что, в общем-то, и происходит: то ноутбук ночью включается и перезагружается, то мобильные приложения сыпят ошибками так, что они из кармана начинают выпадать и разбегаться, бранясь и попискивая, по полу.

А как вам модные нынче бета-версии всего и вся? Cкоро самолеты начнут выходить в альфа-бета версиях, похоже.

Но ведь можно же программировать без ошибок, чтобы душа радовалась и пиво попить с клиентом было не только приятно, но и безопасно!


В этом цикле публикаций на тему разных аспектов разработки ПО я постараюсь сформировать минималистичный набор ценностей и правил, которые, во-первых, помещаются в голове у среднего человека, а, во-вторых, обычно, позволяют… побеждать с наименьшими затратами и сроками. Сегодня откровенно поговорим о сборе требований к программной системе.
Читать дальше →

Нестареющая классика, или обзор новых векторов атак через Microsoft Office

Reading time4 min
Views16K

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

SCADA: в поисках идеала

Reading time6 min
Views74K
image По моим наблюдениям, большинство толковых специалистов АСУ, работающих со SCADA, проходят несколько стадий «эмоционального роста»: освоение какой-либо SCADA, поиск чего-то лучшего, идеи и попытки написания своего варианта, выработка философского отношения к проблеме и использование одного из существующих продуктов.

Да, бывают исключения. Например, встречаются сильно увлеченные и упорные энтузиасты, которые создают что-то работающее, но картины они не меняют совершенно.

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

Information

Rating
Does not participate
Location
Украина
Date of birth
Registered
Activity