Как стать автором
Поиск
Написать публикацию
Обновить
39
0

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

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

Ускорение загрузки Windows for fun and profit

Время на прочтение4 мин
Количество просмотров811K
image Пожалуй, начну с того, что если перегружаться 15 раз в год, то любой «тюнинг» процесса загрузки отнимает больше времени, чем будет выиграно на перезагрузках за все время жизни системы. Однако, спортивный интерес берет свое, тем более, что люди интересуется процессом оптимизации быстродействия. А загрузка оказалась самым очевидным кандидатом в примеры того, как на мой взгляд должен выглядеть этот самый процесс. Сразу скажу, что грузиться будем с 5400 rpm винта, грузиться будем в «рабочую» систему: помимо недобитой вендорской крапвари там стоит еще куча всякого типа вижуал студии, антивируса, скайпа, стима, гуглапдейтера и пр…

Про то, почему отключение pagefile-а скорее вредно, чем полезно — как нибудь в другой раз, а пока…
Под катом много однообразных картинок и немножко унылого текста

Лучшие доклады PHDays IV: слежка, взлом и национальные особенности кибервойны

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

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

В случае международного форума по безопасности Positive Hack Days решить эту проблему можно, просмотрев интересующих вас выступления в записи. Особенно актуально это будет для тех, кто вообще не попал на конферецию. Все видеофайлы лежат на сайте: phdays.ru/broadcast/.

Однако смотреть записи всех залов подряд, за оба дня, это вариант для о-о-очень терпеливых людей. Логичнее смотреть по темам или по авторам: сначала прочитать описания докладов в программе, а потом выбирать конкретный доклад в списке видео.

Тут, впрочем, надо понимать: описания были написаны до конференции, когда было еще неизвестно, насколько хорошим будет тот или иной доклад. Может, у него только название крутое, а внутри — скукота?.. Поэтому предлагаем вам третий способ: по популярности. Мы проанализировали отзывы участников PHDays и собрали десяток самых удачных докладов. Вот они:
Читать дальше →

Машина времени в git

Время на прочтение5 мин
Количество просмотров196K
В последнее время мои коллеги начинают знакомство с git'ом. И один из интересующих их вопросов — как откатиться до определённой ревизии. В интернете можно найти набор команд, но хочется, чтобы было понимание каждой из них. Баловство с комадами git'а без понимания может привести к потере истории разработки.

В этой статье я хочу рассказать о командах git checkout и git reset с ключами --soft и --hard.
Читать дальше →

Структуры данных в картинках. LinkedList

Время на прочтение4 мин
Количество просмотров563K
Приветствую вас, хабражители!

Продолжаю начатое, а именно, пытаюсь рассказать (с применением визуальных образов) о том как реализованы некоторые структуры данных в Java.



В прошлый раз мы говорили об ArrayList, сегодня присматриваемся к LinkedList.

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

Прочитать чуть больше

CAP-теорема простым, доступным языком

Время на прочтение6 мин
Количество просмотров90K
Этот текст является вольным переводом замечательного поста Kaushik Sathupadi на тему распределённых систем и существующих ограничений при их создании.

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

Часть №1: Идея нового сервиса — «Позвони, напомню!»


Вчера, когда ваша супруга в очередной раз оценила тот факт, что вы вспомнили о её дне рождения и подарили шикарный подарок, в голове всплыла забавная идея. «Хм, а ведь люди вечно всё забывают». А у вас просто блестящая память! Почему бы не сделать новый сервис, который позволит полностью раскрыться вашему таланту? С каждой мыслью об этой идее вам всё больше и больше она нравится. Вы уже даже придумали рекламу, которую можно было бы напечатать в газете:
«Позвони, напомню» — Никогда не забывайте, даже если вы не помните, что забыли!
Плохо себя чувствуете из-за того, что вы что-то забыли? Не переживайте. Помощь на расстоянии одного телефонного звонка!
Если вам нужно что-то запомнить, просто позвоните и сообщите нам об этом! Допустим, позвоните нам и сообщите телефон вашего босса. Забудьте про него. Когда вам нужно будет вспомнить его, перезвоните, и мы вам обязательно напомним.
Всего 3 рубля за звонок.

Типичное обращение в ваш сервис выглядело бы вот так:
Читать дальше →

Три ключевых принципа ПО, которые вы должны понимать

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

Разрабатывая приложения, мы постоянно сталкиваемся с новыми подходами, языками и концептами. И постоянно мы мечемся в сомнениях «смогу ли я быть на волне, оставаться конкурентоспособным, учитывая все изменения и тренды?». Давайте задумаемся на мгновение, вспомнив фразу из моего любимого фильма «Касабланка» — в любви законов новых нет — так создан свет.

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

Знай сложности алгоритмов

Время на прочтение2 мин
Количество просмотров1.1M
Эта статья рассказывает о времени выполнения и о расходе памяти большинства алгоритмов используемых в информатике. В прошлом, когда я готовился к прохождению собеседования я потратил много времени исследуя интернет для поиска информации о лучшем, среднем и худшем случае работы алгоритмов поиска и сортировки, чтобы заданный вопрос на собеседовании не поставил меня в тупик. За последние несколько лет я проходил интервью в нескольких стартапах из Силиконовой долины, а также в некоторых крупных компаниях таких как Yahoo, eBay, LinkedIn и Google и каждый раз, когда я готовился к интервью, я подумал: «Почему никто не создал хорошую шпаргалку по асимптотической сложности алгоритмов? ». Чтобы сохранить ваше время я создал такую шпаргалку. Наслаждайтесь!
Читать дальше →

Университет MIT выложил бесплатно лекции в Сеть

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


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

Есть аудио и видео-курсы, поиск по каталогу, по номеру курса, по наименованию дисциплины, все предметы и степень сложности разделены в отдельные рубрики.
Читать дальше →

Photoshop color picker на jQuery

Время на прочтение1 мин
Количество просмотров12K
Недавно мне понадобилось в своём проекте реализовать выбор цвета, встал выбор использовать уже готовое решение или писать самому. Быстрый гуглопоиск не дал ни одной подходящей реализации. Было принято решение написать свой.


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

Лёгкий сайт или как посадить браузер на диету

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

А что если объединить профессионалов, работавших над крупными web проектами, чтобы создать исчерпывающее руководство по оптимизации front-end разработки?
И получить в результате не скучную инструкцию, а что то поинтереснее? А если позвать Briza Bueno (Americanas.com), Davidson Fellipe (Globo.com), Giovanni Keppelen (ex-Peixe Urbano), Jaydson Gomes (Terra), Marcel Duran (Twitter), Mike Taylor (Opera), Renato Mangini (Google), и Sérgio Lopes (Caelum) чтобы собрать лучшие практики?

Именно это мы и сделали! Мы научим вас создавать быстрые сайты.

Zeno Rocha, руководитель проекта.


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

Основной цикл в Javascript

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


Все мы слышали про ajax и node.js. Они прочно обосновались уже не просто в словарном запасе, но и в наборе инструментов веб-разработчика. Ajax — асинхронное подтягивание данных с сервера на страницу, node — фреймворк с асинхронным IO. Но как в таком однопоточном языке, как Javascript, реализуется та самая асинхронность?

Вы, наверное, уже догадались из заголовка, речь пойдет об основном цикле («main loop»).
Читать дальше →

ASP.NET MVC. Урок 0. Вступление

Время на прочтение2 мин
Количество просмотров784K
Я пишу сайты на asp.net mvc. В этих 16 главах я хочу рассказать, как я это делаю. Это некий учебник-справочник всех тех знаний, которые я накопил в течение трех лет.

Почему именно asp.net mvc

ASP.NET MVC я люблю потому что:
  • Это .net. Я знаю .net и С#.
  • Это компилируемый код.
  • Это не ASP.NET WebForms, я работаю с html-кодом.
  • Используется MVC-паттерн.
  • Visual Studio – самое популярное средство разработки, в котором есть IntelliSense.
  • Отличные инструменты отладки.


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

Eclipse. Улучшенный поиск и подсветка блоков кода

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

Устав искать, как улучшить навигацию по коду в эклипсе, и в первую очередь поиск, я почти решился писать свой собственный велосипед, но, к счастью, нашел решение в виде связки двух must-have плагинов — Glance и EditBox.
Читать дальше →

Eclipse for Java Developers. Навигация и редактирование

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

Наблюдая за со своими знакомыми, которые недавно начали изучать программирование или перешли на Eclipse c другой IDE, я часто замечаю что они почти не используют вспомогательные инструменты среды разработки. Они либо не знают о них вообще, либо не понимают какую практическую пользу они могут принести.
Данная статья предназначена в основном для начинающих в работе с Eclipse. Но в процессе подготовки статьи я сам узнал о нескольких простых и удобных инструментах, которые за два года активной разработки ни разу не использовал.
В данной статье речь пойдет о навигации и редактировании.
Внутри скриншоты.
Читать дальше →

Алгоритм Диффи — Хеллмана

Время на прочтение1 мин
Количество просмотров166K
Одна из фундаментальных проблем криптографии – безопасное общение по прослушиваемому каналу. Сообщения нужно зашифровывать и расшифровывать, но для этого обеим сторонам нужно иметь общий ключ. Если этот ключ передавать по тому же каналу, то прослушивающая сторона тоже получит его, и смысл шифрования исчезнет.

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

Предлагаю ознакомиться с принципом работы алгоритма Диффи – Хеллмана в замечательном видео от Art of the Problem в моем переводе.

Конкурс по алгоритмам компьютерного зрения. Призы достаются всем

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


Ровно месяц назад мы объявляли конкурс на создание приложения, реализующего несколько алгоритмов машинного зрения. Главным призом в этом конкурсе была поездка с нашей командой на Шри-Ланку для встречи либо конца света 21 декабря, либо Нового года (это уже как повезет). Но мы больше надеемся на Новый год и в любом случае постараемся организовать трансляцию с места событий.

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

Я и мои коллеги в Ivideon очень не хотели бы, чтобы кто-то из тех кто принял участие в нашем конкурсе пожалел о потраченном на него времени. И здесь речь идет о 9 потенциальных кандидатах, приславших работы.
Поэтому мы приняли решение, что 8 человек, которые по тем или иным причинам не заняли первое место — получат за свой труд мегапиксельную IP-камеру с поддержкой облака Ivideon на борту. Для тех кто не знает, это обычная IP-камера, в которой есть наш модуль, позволяющий напрямую подключать её к облаку Ivideon без дополнительных приложений и компьютеров. Мы не производим сами камеры. Мы предоставляем возможность встроить этот модуль всем производителям. Для удаленного доступа к такой камере не требуется внешнего IP-адреса и сетевых настроек вроде port-forwarding. Ну и она обладает всеми возможностями, которые предоставляет Ivideon. От записи видео в наше облако, до организации трансляции на своем сайте или в блоге. Очень надеемся, что эта камера станет достойной компенсацией за потраченное на наш конкурс время. Тем более помимо неё участники получили как минимум дополнительный опыт в разработке приложений видеоанализа.

Под катом подробности прошедшего конкурса.

Обзор алгоритмов кластеризации данных

Время на прочтение10 мин
Количество просмотров456K
Приветствую!

В своей дипломной работе я проводил обзор и сравнительный анализ алгоритмов кластеризации данных. Подумал, что уже собранный и проработанный материал может оказаться кому-то интересен и полезен.
О том, что такое кластеризация, рассказал sashaeve в статье «Кластеризация: алгоритмы k-means и c-means». Я частично повторю слова Александра, частично дополню. Также в конце этой статьи интересующиеся могут почитать материалы по ссылкам в списке литературы.

Так же я постарался привести сухой «дипломный» стиль изложения к более публицистическому.
Читать дальше →

Кластеризация точек на основе регулярной сети

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

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

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

Рекомендательные системы: теорема Байеса и наивный байесовский классификатор

Время на прочтение4 мин
Количество просмотров62K
В этой части мы не будем говорить о рекомендательных системах как таковых. Вместо этого мы отдельно сконцентрируемся на главном инструменте машинного обучения — теореме Байеса — и рассмотрим один простой пример её применения — наивный байесовский классификатор. Disclaimer: знакомому с предметом читателю я вряд ли тут сообщу что-то новое, поговорим в основном о базовой философии машинного обучения.

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

Структуры данных в картинках. LinkedHashMap

Время на прочтение4 мин
Количество просмотров293K
Привет Хабрачеловеки!

После затяжной паузы, я попробую продолжить визуализировать структуры данных в Java. В предыдущих статьях были замечены: ArrayList, LinkedList, HashMap. Сегодня заглянем внутрь к LinkedHashMap.



Из названия можно догадаться что данная структура является симбиозом связанных списков и хэш-мапов. Действительно, LinkedHashMap расширяет класс HashMap и реализует интерфейс Map, но что же в нем такого от связанных списков? Давайте будем разбираться.

Tell me more!

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность