Пару недель назад, необходимо было освежить информацию в голове информацию по структурам данных и алгоритмам для собеседования. Первым делом полез на www.coursera.org, где хотел пробежаться по некоторым лекциям курса Алгоритмы, там же были две сводные таблички, которые в процессе изучения курса взял на заметку — отлично помогали запомнить сложность операций. Но, к моему удивлению, материалы пройденного курса стали недоступны. Быстрое гугление, в надежде, что кто-нибудь выложил лекции на торрентах, к сожалению, не дало результатов. В итоге, я нашел полную коллекцию слайдов по данному курсу. Спешу поделиться. Самое главное, что взял из этих слайдов, — это вышеупомянутые сводные таблички. Думаю многим пригодится.
Дмитрий @Semisonic
User
Безопасность случайных чисел в Python
5 min
27KTutorial

В последнее время появился целый ряд публикаций, описывающих уязвимости ГПСЧ, начиная от самых основ ([1]) и заканчивая непосредственно уязвимостями в различных языках программирования и реализованных на их основе CMS и другого ПО ([2],[3],[4]).
Эти публикации популярны по той причине, что ГПСЧ – основа многих аспектов безопасности веб-приложений. Псевдослучайные числа/последовательности символов используются для обеспечения безопасности веб-приложений в:
- генерации различных токенов (CSRF, токены сброса пароля и т.д.);
- генерации случайных паролей;
- генерации текста в CAPTCHA;
- генерации идентификаторов сессий.
В прошлой статье мы, опираясь на исследования George Argyros и Aggelos Kiayias ([3]) научились предугадывать случайные числа в PHP на основе PHPSESSID и уменьшать различными способами энтропию псевдослучайных чисел.
Сейчас мы рассмотрим ГПСЧ в веб-приложениях, разработанных на языке Python.
+50
+28
Как работает микроэлектронное производство и что нам стоит дом построить?
8 min
183K
Сколько стоит запуск производства микросхемы, и почему при наличии 22нм фабрик, бОльшая часть микросхем по всему миру до сих пор делается на «устаревшем» 180нм-500нм оборудовании?
Ответы на эти и многие другие вопросы под катом.
+216
Тегирование EXE файлов без повреждения цифровой подписи
5 min
21K
Всем привет!
Мы хотим рассказать о нашем опыте исследования цифровых подписей Windows PE файлов и возможном варианте использования их особенностей в своих целях. Если вам интересны технические подробности или просто чтиво о, казалось бы, давно известных вещах, добро пожаловать под кат.
+50
Красивые чекбоксы и радиокнопки на CSS3 без JavaScript
1 min
117KTutorial
Благодаря псевдоклассу :checked, появившемуся в CSS3, можно стилизовать формы с чекбоксами и радиокнопками как угодно. В этом топике рассмотрен один очень простой способ, причем без использования JavaScript.

Демонстрация Скачать исходники

Демонстрация Скачать исходники
+69
Зачем нужны попы в ВУЗе?
4 min
315K
Поводом для данного поста послужила новость о том, что в Национальном исследовательском ядерном университете «МИФИ» открылась кафедра теологии. Я не являюсь воинствующим атеистом, вполне терпимо и с пониманием отношусь к людям верующим — это их личное дело, во что и как верить. Более того, я даже в каком-то смысле одобряю присутствие различных вероисповеданий в нашей жизни: всё-таки лучше, чтобы у человека были хоть какие-нибудь убеждения и внутренние регуляторы, чем совсем никаких, а, кроме того, вся современная история и археология практически существуют за счёт религий — многие интересные и важные с исторической и научной точки зрения археологические находки были культовыми, т.е. появились на свет благодаря существовавшим в те далёкие времена религиям. Также не секрет, что многие великие учёные были верующими и даже входили в узкий круг людей, имеющих к религии чуть большее отношение, чем обычные прихожане (достаточно посмотреть список членов Папской академии наук в Ватикане). И всё-таки новость, указанная выше, наводит на очень невесёлые размышления.
+326
Как я в армии в Warcraft III играл
6 min
143KВ данной статье я опишу способ скрытия приложений на компьютере, удобного запуска и быстрого скрытого их завершения на примере игры Warcraft III в Windows XP.
Так сложилось, что, проходя службу в нашей доблестной армии, у меня периодически появлялся доступ к компьютеру. И так сложилось, что, уходя в армию, я забыл выложить свою флешку, которую постоянно ношу с собой в кошельке. На этой флешке было много разного барахла, один миллион папок с названием «учеба» и архив с названием… tada! wc3.rar
Радости моей не было предела, но тут появился вопрос — как проводить вечера за любимой игрой и при этом остаться незамеченным? На все про все, у меня было 2-3 секунды на закрытие игры.
Так сложилось, что, проходя службу в нашей доблестной армии, у меня периодически появлялся доступ к компьютеру. И так сложилось, что, уходя в армию, я забыл выложить свою флешку, которую постоянно ношу с собой в кошельке. На этой флешке было много разного барахла, один миллион папок с названием «учеба» и архив с названием… tada! wc3.rar
Радости моей не было предела, но тут появился вопрос — как проводить вечера за любимой игрой и при этом остаться незамеченным? На все про все, у меня было 2-3 секунды на закрытие игры.
+146
Подборка полезного для любителей Twitter Bootstrap
2 min
250KВ подборке сервисы, плагины, темы и другие полезности, облегчающие работу с Twitter Bootstrap.
BootSwatchr — быстрая стилизация Twitter Bootstrap.

Стилизация
BootSwatchr — быстрая стилизация Twitter Bootstrap.

+238
Опыт создания системы навигации на Ajax
5 min
59KTutorial
Меня всегда интересовало, почему при разработке сайтов, так редко в системе навигации используется Ajax? Ведь преимущества по-моему очевидны! Сайт на аякс работает в разы быстрее любого обыкновенного сайта, и даже если учитывать кэш браузера, это заметно.
+40
Немного о хаосе и о том, как его сотворить
9 min
96K
Говоря «хаос», мы, обычно, подразумеваем полное отсутствие порядка, абсолютную неупорядоченность и случайность. С математической точки зрения, хаос и порядок – понятия не взаимоисключающие. Теория хаоса (есть что-то завораживающие в названиях математических теорий) – достаточно молодая математическая область, создание которой приравнивают по значимости открытий ХХ века к созданию квантовой механики. Хаос случается в нелинейных динамических системах. Иначе говоря, любой процесс, который протекает со временем, может быть хаотичным (например, высота дерева, температура тела или популяция мадагаскарских тараканов).
+69
Web-приложение на C/C++ с помощью FastCGI — это просто
20 min
118KTutorial
Добрый день.
В этой статье я бы хотел рассказать про протокол FastCGI и способы работы с ним. Не смотря на то, что сам протокол и его реализация появились ещё в 1996 году, подробных руководств по этому протоколу просто нет — разработчики так и не написали справки к собственной библиотеке. Зато года два назад, когда я только начал пользоваться этим протоколом, часто встречались фразы типа «я не совсем понимаю, как пользоваться этой библиотекой». Именно этот недостаток я и хочу исправить — написать подробное руководство по использованию данного протокола в многопоточной программе и рекомендации по выбору различных параметров, которым могли бы воспользоваться все желающие.
В этой статье я бы хотел рассказать про протокол FastCGI и способы работы с ним. Не смотря на то, что сам протокол и его реализация появились ещё в 1996 году, подробных руководств по этому протоколу просто нет — разработчики так и не написали справки к собственной библиотеке. Зато года два назад, когда я только начал пользоваться этим протоколом, часто встречались фразы типа «я не совсем понимаю, как пользоваться этой библиотекой». Именно этот недостаток я и хочу исправить — написать подробное руководство по использованию данного протокола в многопоточной программе и рекомендации по выбору различных параметров, которым могли бы воспользоваться все желающие.
+92
Как правильно ставить задачи для сайта
13 min
104KВсе веб-студии или интерактивные агентства начинают общение с обратившимся к ним клиентом с того, чтобы выяснить, а что же, собственно, ему нужно. Тем не менее, за 15 лет развития индустрии мало что изменилось, и до сих пор встречаются вот такие перлы.

При этом во время общения с клиентом прямо чувствуется его отношение типа «давайте пропишем уже эти скучные цели-задачи, и наконец-то поиграем шрифтами». В массе заказчики не измеряют отдачу от сайта: удивительно, но их интересует сам процесс работы над сайтом, а не выгода, которую он принесёт.
В то же время и исполнители, говоря о целеполагании для сайтов, часто говорят скорее о функциональности, нежели собственно о целях.
«Цели-задачи» — это что-то вроде веб-девелоперского карго-культа: большинство студий ставит макет аэропорта из соломы («Сайт должен предоставлять посетителю всю необходимую информацию и формировать солидный имидж компании») и ждёт, когда с неба свалится ящик с консервами.
Давайте попробуем разобраться, как правильно подходить к постановке задач для сайта, в этой статье из четырёх частей:

При этом во время общения с клиентом прямо чувствуется его отношение типа «давайте пропишем уже эти скучные цели-задачи, и наконец-то поиграем шрифтами». В массе заказчики не измеряют отдачу от сайта: удивительно, но их интересует сам процесс работы над сайтом, а не выгода, которую он принесёт.
В то же время и исполнители, говоря о целеполагании для сайтов, часто говорят скорее о функциональности, нежели собственно о целях.
«Цели-задачи» — это что-то вроде веб-девелоперского карго-культа: большинство студий ставит макет аэропорта из соломы («Сайт должен предоставлять посетителю всю необходимую информацию и формировать солидный имидж компании») и ждёт, когда с неба свалится ящик с консервами.
Давайте попробуем разобраться, как правильно подходить к постановке задач для сайта, в этой статье из четырёх частей:
- Поведение потребителя в «цифровую эпоху» — чем отличается сегодняшний потребитель от вчерашнего, и как это влияет на бизнес.
- Сайт как инструмент влияния — чем отличается сегодняшний сайт от вчерашнего, и о чём нужно помнить, решив создать новый сайт.
- Как ставить задачи для сайта? — конкретные рекомендации для заказчиков и студий. За рецептами — пролистывайте до сюда.
- Пример блока «Назначение сайта» — демонстрация того, что должно получиться в итоге.
+77
Что нужно делать смолоду или как стать богатым айтишником
7 min
631KTutorial

Статья написана после прочтения статьи Копи деньги смолоду или пара утверждений, легко проверяемых в Excel.
По моим наблюдениям, очень небольшой процент айтишников (как в прочем и других людей), знают главный принцип личного богатства (в хорошем смысле этого слова), а еще меньше его используют.
Нужно заметить, что три года назад, я и сам не знал этого принципа, и мне даже пришлось продать свою машину, чтобы выплатить долги. Но я не расстроился – я уже знал этот принцип и был уверен, что у меня получится стать богатым. Ведь если ты действуешь исходя из этого принципа, то настоящее богатство – лишь вопрос времени. И я не ошибся.
Не важно, кто ты – дизайнер или программист, но я уверен, если ты тоже последуешь ему, то станешь богатым.
+217
Как из болота вытягивать ITшника или об общении в стрессовых ситуациях
21 min
275KTutorial

Неприятности случаются… Неожиданно плохой фидбек, проблемы с заказчиком или коллегами, не повысили зарплату, странные баги, внезапный овертайм или закрытие проекта — подобные события запускают цепочку реактивных реакций:
- Нет, тут есть ошибка -> сами гады -> а может все не так и плохо -> ппц -> ладно, давай выкручиваться
В этой цепочке человек ведет себя реактивно, предсказуемо… и, часто, совершает глупости. Это напоминает машину состояний, входом в которую являются неожиданное событие. Состояния машины — цепочка психологических защит: отрицание, гнев, торг и депрессия, а выход — принятие новой информации.
Из подобных состояний часто приходится вытаскивать коллег, заказчиков, и себя самого.
Под хабракатом, кроме описания этапов, есть ответы на вопросы:
- Как узнать каждое состояние и предугадать следующее?
- Как помочь выйти себе и собеседнику из цепочки?
- Что не делать, чтобы не усугубить ситуацию?
+173
В пень free-lance.ru!
4 min
639KВ связи с прочтением соседнего поста предлагаю перечислить список бирж, на которых можно найти альтернативу тому унылому говну, в которое превратился free-lance.ru, ибо терпеть планомерный геноцид я больше не намерен.
+302
Еще один jQuery плагин для верстки «пиксель в пиксель»
2 min
19KЯ начал писать этот плагин в феврале этого года просто для себя, потому что на тот момент я не нашел ничего похожего. Сейчас уже хабраюзеру известно про такие инструменты, как PixelPerfect и X-Precise, однако у каждого из них есть свои плюсы и минусы, как и у моего.
Итак, что же особенного в pixLayout?
Итак, что же особенного в pixLayout?
+22
NoSQL базы данных: понимаем суть
9 min
595KВ последнее время термин “NoSQL” стал очень модным и популярным, активно развиваются и продвигаются всевозможные программные решения под этой вывеской. Синонимом NoSQL стали огромные объемы данных, линейная масштабируемость, кластеры, отказоустойчивость, нереляционность. Однако, мало у кого есть четкое понимание, что же такое NoSQL хранилища, как появился этот термин и какими общими характеристиками они обладают. Попробуем устранить этот пробел.


+129
Музыка в ванной своими руками
5 min
293KДоброго дня.
Весной наконец-то дошли руки до ремонта в ванной комнате. При сборе требований к будущему функционалу родилась мысль, а не добавить ли в ванну возможность слушать музыку? Например, проигрывать медиаконтент с домашнего NAS. Сама идея «музыки в ванной» мне понравилась, и я пошел в гугл смотреть, какие решения существуют.
По итогам всего мероприятия решил поделиться информацией и результатами своего труда.
Весной наконец-то дошли руки до ремонта в ванной комнате. При сборе требований к будущему функционалу родилась мысль, а не добавить ли в ванну возможность слушать музыку? Например, проигрывать медиаконтент с домашнего NAS. Сама идея «музыки в ванной» мне понравилась, и я пошел в гугл смотреть, какие решения существуют.
По итогам всего мероприятия решил поделиться информацией и результатами своего труда.
+109
Вспоминаем ретро Spectrum ZX с помощью ubuntu
1 min
26KRecovery Mode
Не так давно
Совсем недавно, когда деревья были большими, мы с товарищами ждали момента, когда начнется игра. Ждали мы вместе с Spectrum'ом, аудио-кассетами с играми и тетрадками в рюкзаках. Последние, впрочем, не мешали нам слушать звук загрузки и считать мотки с помощью аналогового устройства.
Итак, последний момент загрузки и мы получаем в свое распоряжение шедевры!
У нас это были:
Exolon

+35
Information
- Rating
- Does not participate
- Location
- Санкт-Петербург, Санкт-Петербург и область, Россия
- Registered
- Activity