Пользователь
Редизайн с большой буквы: изучаем перезапуск Smashing Magazine в 2017-м
Сооснователь Smashing Magazine Виталий Фридман рассказал об этом на нашей конференции HolyJS подробнейшим образом, начав с общего дизайнерского подхода, продолжив деталями реализации фронтенда и в итоге дойдя до бэкенда. А теперь в ожидании следующей HolyJS, где Виталий выступит с новыми темами, мы сделали для вас текстовую версию этого доклада, переведя всё с английского на русский.
Получился подробнейший текст с 70 иллюстрациями (осторожно, трафик). А на случай, если вы предпочитаете смотреть англоязычный оригинал или если в нашем переводе какие-то места окажутся неясными, прикладываем и видеозапись:
27 отличных open source-инструментов для веб-разработки
Перевод 27 Amazing Web Development Tools for the Past Year (v.2018)
В 2017-м мы сравнили около 7 500 open source-инструментов для веб-разработки, из которых выбрали 27 лучших (0,4%). Это крайне конкурентный список, в который вошли инструменты, библиотеки и проекты, опубликованные в течение 2017-го. Mybridge AI оценивает их качество на основании популярности, заинтересованности и новизне. Чтобы было понятно, у выбранных продуктов среднее количество звёзд на Github — 5260.
Open source-инструменты могут почти даром повысить вашу продуктивность. Также вы можете чему-то научиться, читая исходный код и создавая что-нибудь на основе этих проектов. Так что рекомендуем уделить время и поэкспериментировать с инструментами из нашей подборки, возможно, какие-то из них прошли мимо вас.
Пишем бота-кликера на Python для Lineage 2
Предисловие
Как можно развлечься в новогодние праздники? Поиграть в компьютерные игры? Нет! Лучше написать бота, который это будет делать за тебя, а самому пойти лепить снеговика и пить глинтвейн.
Когда-то в школьные годы был увлечен одной из популярных MMORPG — Lineage 2. В игре можно объединяться в кланы, группы, заводить друзей и сражаться с соперниками, но в общем игра наполнена однообразными действиями: выполнением квестов и фармом (сбор ресурсов, получение опыта).
В итоге решил, что бот должен решать одну задачу: фарм. Для управления будут использоваться эмулированные клики мыши и нажатия клавиш клавиатуры, а для ориентирования в пространстве — компьютерное зрение, язык программирования — Python.
DockStation. Почему мы решили сделать этот проект
Начало
Я работаю разработчиком уже больше 8 лет, и для меня всегда была болью настройка dev окружения для разработки при переходе на другую OС или смене рабочей машины.
Как найти лучшие авиабилеты в интерфейсе гугл-таблицы
Начало
Я часто езжу в поездки и покупаю авиабилеты.
И так же часто страдаю от интерфейса агрегаторов авиабилетов.
Я не могу выбрать билет и совершить покупку.
Кейс
Я точно знаю, куда хочу полететь.
Примерно знаю на сколько дней.
И примерно в какие даты — например в этом месяце.
В этот раз я захотел слетать в Серфаус — это горнолыжная деревня в Австрии.
Улететь не ранее 5 января, вернуться на позднее 15 января. На 6-8 дней.
Теперь нужно найти лучший билет под эти условия.
"Лучший" в моем случае — это комбинации объективной цены и субъективного удобства перелета — время вылета/прилета, аэропорт вылета, авиакомпания и так далее.
Как кейс решается у агрегатора авиабилетов
- Трансформирую деревню Серфаус в три ближайших аэропорта — Мюнхен, Инсбрук и Цюрих с помощью гугл-карт.
- Иду в агрегатор авиабилетов. Нахожу инструмент типа "Календарь низких цен".
- Открываю его в трех вкладках для трех аэропортов.
- Выбираю январь.
- Начинаю тыкать в каждый день января, чтобы увидеть время вылета/прилета и цену билета.
- Если мне понравился какой-то билет, тыкаю в него, чтобы убедиться, что билет реально есть. Потому что кеш.
- Чтобы запомнить, в какой день какой билет мне понравился, я записываю его в блокнот или таблицу.
В последних трех пунктах я страдаю.
Потому что я не хочу тыкать и проверять. Я не хочу переключаться между вкладками.
А хочу увидеть реально доступные билеты со временем вылета и ценой и выбрать один из них.
И купить его.
Но, в итоге, я не нахожу нужный билет за психологически комфортное время.
И, не совершив покупку, ухожу.
Как кейс должен решаться
- Указываю "Серфаус" в поле "Куда" в агрегаторе.
- Выбираю примерные даты.
- Выбираю подходящую продолжительность.
- Получаю список билетов для покупки.
- Выбираю подходящий билет и покупаю.
… такого сценария работы нет у агрегаторов.
Взлом Wi-Fi
Взлом маршрутизаторов WPA/WPA2 Wi-Fi с помощью Airodump-ng и Aircrack-ng/Hashcat
Это краткое пошаговое руководство, которое демонстрирует способ взлома сетей Wi-Fi, защищённых слабыми паролями. Оно не исчерпывающее, но этой информации должно хватить, чтобы вы протестировали свою собственную сетевую безопасность или взломали кого-нибудь поблизости. Изложенная ниже атака полностью пассивна (только прослушивание, ничего не транслируется с вашего компьютера) и о ней невозможно узнать, если вы только реально не воспользуетесь паролем, который взломали. Необязательную активную атаку с деаутентификацией можно применить для ускорения разведывательного процесса. Она описана в конце статьи.
Тюнинг сетевого стека Linux для ленивых
Сетевой стек Linux по умолчанию замечательно работает на десктопах. На серверах с нагрузкой чуть выше средней уже приходится разбираться как всё нужно правильно настраивать. На моей текущей работе этим приходится заниматься едва ли не в промышленных масштабах, так что без автоматизации никуда – объяснять каждому коллеге что и как устроено долго, а заставлять людей читать ≈300 страниц английского текста, перемешанного с кодом на C… Можно и нужно, но результаты будут не через час и не через день. Поэтому я попробовал накидать набор утилит для тюнинга сетевого стека и руководство по их использованию, не уходящее в специфические детали определённых задач, которое при этом остаётся достаточно компактным для того, чтобы его можно было прочитать меньше чем за час и вынести из него хоть какую-то пользу.
Ищем и скачиваем непопулярные и старые файлы в интернете
Введение
Бывает, случается так, что вы хотите скачать альбом 2007 года исполнителя, который кроме вас известен 3.5 людям, какой-нибудь испанский ска-панк или малопопулярный спидкор европейского происхождения. Находите BitTorrent-раздачу, ставите на закачку, быстро скачиваете 14.7%, и… все. Проходит день, неделя, месяц, а процент скачанного не увеличивается. Вы ищете этот альбом в поисковике, натыкаетесь на форумы, показывающие ссылки только после регистрации и 5 написанных сообщений, регистрируетесь, флудите в мертвых темах, вам открываются ссылки на файлообменники вроде rapidshare и megaupload, которые уже сто лет как умерли.Увы, частая ситуация в попытке хоть что-то скачать
Такое случается. В последнее время, к сожалению, случается чаще: правообладатели и правоохранительные органы всерьез взялись за файлообмен; в прошлом году закрылись или были закрыты KickassTorrents, BlackCat Games, what.cd, btdigg, torrentz.eu, EX.ua, fs.to, torrents.net.ua, и еще куча других сайтов. И если поиск свежих рипов фильмов, сериалов, музыки, мультиков все еще не представляет большой проблемы, несмотря на многократно участившееся удаления со стороны правообладателей контента из поисковых систем, торрент-трекеров и файлообменников, то поиск и скачивание оригинала (DVD или Blu-Ray) фильмов и сериалов или просто ТВ-рипов 7-летней давности на не-английском и не-русском языке — не такая уж простая задача.
oDesk (Upwork). Мой опыт за полтора года
Инфраструктура онлайн игры
Здравствуйте, меня зовут Александр Зеленин, и я на дуде игрец веб-разработчик. Полтора года назад я рассказывал о разработке онлайн игры. Так вот, она немного разрослась… Суммарный объём исходного кода превысил «Войну и мир» вдвое. Однако в данной статье я хочу рассказать не о коде, а об организации инфраструктуры проекта.
Вышел свободный видеотранскодер HandBrake 1.0.0
После почти 13 лет группа разработчиков выпустила первую версию open source видеотранскодера HandBrake 1.0.0. HandBrake — популярная бесплатная программа для конвертирования и сжатия видео. Кроссплатформенное приложение работает под Linux, macOS и Windows с графическим интерфейсом или из командной строки. Пожалуй, это лучшая программа в своём классе. Сложно найти хотя бы один видеотранскодер близкого качества, функциональности и с открытым кодом. Можно сказать, что это идеальная графическая оболочка для ffmpeg (кстати, команды ffmpeg можно изучать по логам HandBrake, это лучше мануала).
Продолжаем настраивать практически бесплатную рекламу на пользователей Хабра. На этот раз с помощью виджета авторизации
Благодаря стараниям разработчиков, эта проблема была успешно пофикшена в течение нескольких дней, но на этом наша сага не закончена. Напомню, что согласно официальному прайс-листу Хабра стоимость 1000 показов банера для пользователей ресурса колеблется от 400 до 550 рублей. За гео-таргетинг по Москве и Питеру придется доплатить 20 и 15 процентов соответственно.
Но всё еще существует способ рекламироваться на эту же аудиторию платя 30-150 рублей за тысячу показов. Давайте думать, как исправить и эту фичу:
Руководство по PHP7
php7-tutorial.com
Цель этого сайта помочь вам обнаружить нововведения в PHP 7. Это руководство представляет из себя набор простых упражнений, в которых вам будет предложено что-либо решить, либо исправить ошибку. Каждое упражнение соответствует стандарту RFC (набор технической спецификации и стандартов) и сопровождается кратким пояснениями.
От переводчика
Всем привет, с вами Максим Иванов, и сегодня мы поговорим о нововведениях PHP 7, о которых более подробно поведает нам Гийом Девар (Guillaume Dievart) в своем руководстве, сделанном в форме упражнений. Но прежде чем начинать, я хочу отметить один момент. Я не буду приводить полное руководство по данному языку программирования в этом обзоре, просто оставлю здесь ссылку на самую свежую и достоверную информацию. Джош Локхарт (автор гайдлайна «PHP: правильный путь», разработчик Slim Framework), написал данную книгу с целью помочь новичкам, по его словам: «В последнее время существует много дискуссий о том, что PHP сообществу и, в целом, программистам не хватает достоверной информации по языку PHP, поэтому мое руководство призвано решить эту проблему». Чем именно? Вы знаете, что по интернету разбросано огромное количество материла по PHP, но многое уже устарело или не приводит к написанию качественного кода. В этой книге присутствуют основные актуальные сведения с ссылками на проверенные ресурсы. Если кому интересно, такое есть и по JavaScript. А теперь вернемся к упражнениям и приступим.
Почти полное руководство по flexbox (без самих flexbox)
К сожалению, не у всех есть браузер/устройство, поддерживающие flexbox. Это руководство в виде шпаргалки, в котором предлагаются альтернативы обратной совместимости для свойств flexbox.
Хотя некоторый CSS-код в этом руководстве, возможно, покажется очевидным, я собираюсь бросить вызов flexbox, а также предложить простые решения проблем, которые возникали, пока он не обрёл популярность.
Шесть подработок для ИТ-специалиста, за которые платят в долларах
Не поймали за хвост удачу в виде главного бага известного сервиса, нет желания “толкаться” на oDesk или не хочется делать то же, что уже и так делаете в рабочее время?
Мы нашли альтернативные и не суперконкурентные варианты: излагать технический опыт по-английский, получать ренту с кода или завести монетизируемое хобби, связанное с математикой, инженерией или общением.
Я хочу, чтобы сайты открывались мгновенно
Не читайте тексты про западные стартапы
Не думал, что вообще буду сюда писать тексты такой специфической тематики, но свежий пост ФРИИ — «С чего начинается hardware-стартап: Команда и прототип» — меня зацепил. Дело в том, что центральная часть текста там посвящена тому, как правильно раздавать направо и налево доли в вашем стартапе — от основателей до рядовых сотрудников, причём последним предлагается раздавать минимальные доли почти по конец первой сотни нанятых вами работников.
Проблема в том, что в России такое не просто крайне затруднительно чисто технически — я даже не уверен, что вообще возможно, в России сама попытка реализации такой схемы эффективно похоронит ваш стартап, причём самым глупым образом.
Подробно причины этого описаны в законе 14-ФЗ («Об обществах с ограниченной ответственностью», то есть базовый закон по данной теме), который любому человеку, в принципе задумывающемуся о каком-либо стартапе, стоит прочитать хотя бы по диагонали, чтобы в общих чертах представлять себе, как работает и регулируется ООО в России.
Я сознательно говорю именно про ООО, потому что примерно 100 из 100 стартапов в России — это ООО. Теоретически, вы можете зарегистрировать стартап как непубличное АО и избавиться от описанных ниже проблем, но немедленно влететь в другие: например, если в ООО любые решения о судьбе общества вы можете подтверждать просто подписями всех соучредителей, то в АО требуется проведение полноценного собрания с присутствием нотариуса, заверяющего все принятые решения.
Итак, ООО — что делать с долями и инвестициями стартапу, живущему в России.
400 потрясающих бесплатных сервисов
Рад представить дополнение оригинального списка из 300 потрясающих бесплатных сервисов. Автор оригинальной статьи Ali Mese добавил ещё +100 новых сервисов, которые помогут найти все — от источников вдохновения и редакторов фотографий до создания опросов и бесплатных иконок.
И еще подборку +500 инструментов от 10 марта 2017 г. смотрите здесь.
A. Бесплатные веб-сайты
- HTML5 UP: Адаптивные шаблоны HTML5 и CSS3.
- Bootswatch: Бесплатные темы для Bootstrap.
- Templated: Коллекция 845 бесплатных шаблонов CSS и HTML5.
- Wordpress.org | Wordpress.com: Бесплатное создание веб-сайта.
- Strikingly: Конструктор веб-сайтов.
- Layers: Создание сайтов на WordPress (new).
- Bootstrap Zero: Самая большая коллекция бесплатных шаблонов Bootstrap (new).
- Landing Harbor: Продвижение мобильного приложения c помощью бесплатного лендинга (new).
У нас проблемы с промисами
У нас проблемы с промисами
Дорогие JavaScript разработчики, настал момент признать это — у нас проблемы с промисами.
Нет, не с самими промисами. Их реализация по спецификации A+ превосходна. Основная проблема, которая сама предстала передо мной за годы наблюдений за тем, как многие программисты борются с богатыми на промисы API, заключается в следующем:
— Многие из нас используют промисы без действительного их понимания.
Если вы мне не верите, решите такую задачку:
Вопрос: В чем разница между этими четырьмя вариантами использования промисов?
doSomething().then(function () {
return doSomethingElse();
});
doSomething().then(function () {
doSomethingElse();
});
doSomething().then(doSomethingElse());
doSomething().then(doSomethingElse);
Информация
- В рейтинге
- 4 345-й
- Зарегистрирован
- Активность