Как стать автором
Обновить
-2
0
EVRiAL @EvRiaL

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

Лайфхаки для веб-разработчика

Время на прочтение 3 мин
Количество просмотров 44K
Обожаю трюки и лайфхаки. Каждый раз радуюсь, когда удается упростить очередную рутинную операцию. А так как работаю я, вот уже 8 лет, веб-программистом, то рутинные операции и лайфхаки у меня программерские. Вот этим и хочу с вами поделиться.
Часть трюков до меня уже описали на хабре, часть я взял из других источников, часть придумал сам. Буду благодарен если в комментариях к посту вы напишете, какие трюки используете вы.

Использование ** в zsh


Таким образом я ищу файлы в папке по расширению рекурсивно:
ls **/*.json

файлы с размером выше чем 1 мегабайт:
ls -lh **/*(Lm+1)

Быстро и уверенно удаляем мусор из репозитория в python проекте и судорожно правим. gitignore:
git rm --cached **/*.pyc


Читать дальше →
Всего голосов 55: ↑35 и ↓20 +15
Комментарии 51

Предвзятость выжившего

Время на прочтение 5 мин
Количество просмотров 10K
Читаете ли вы бизнес-блоги, в которых автор раз за разом описывает свои неудачи?
Нет, потому что вы хотите перенять успешный опыт, а не узнать о полученном опыте от парня, который сам еще не преуспел.

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

Приведу несколько историй, которые помогут понять серьезность этой проблемы.

Следы от пуль


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

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

Логично заключить, что нужно добавить брони в тех местах, где больше всего следов. Но это неверно.
Читать дальше →
Всего голосов 257: ↑250 и ↓7 +243
Комментарии 168

Гаджеты для бега: от простого к очень простому

Время на прочтение 6 мин
Количество просмотров 203K
На Хабре уже не раз и не два обращались к теме поддержания физической формы, для такой профессии как айтишник, админ и тому подобные властители неведомого серверного оборудования.
Были темы и просто о пользе бега, со стандартной теоретической подготовкой, и о маленьком, но хитром специальном устройстве от Nike, украшающем беговой процесс. Однако нас, как людей технических до мозга костей, интересует иное: можно ли в процессе беговой тренировки, использовать всю мощь технического прогресса для достижения максимальных результатов?
Поэтому данная статья больше перекликается с давним описанием: нескольких беговых девайсов, с учетом прошедших лет и текущего положения дел в области приборов для спорта и бега.
Все, что описано в статье, испытано на собственном опыте, все скриншоты и результаты взяты из личных данных.

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


А теперь встали и пошли на тренировку!
Всего голосов 55: ↑52 и ↓3 +49
Комментарии 179

Сделай сам: MSc Computer Science на уровне топ американских университетов из дома

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

Вступление


Давно хотел написать статью про образование в Computer Science, но руки не доходили. Решил все-таки это наконец сделать. Итак, о чем пойдет речь? Речь о том, что из себя представляет диплом MSc Computer Science топовых университетов США (во всех подробностях, включая основные курсы, книги и проекты) и как ему соответствовать.

Почему именно MSc? Это — некая развилка: с одной стороны после MSc — вы уже готовый к жизни инженер (да, речь идет о инженерной подготовке, как мне кажется это самое больное место в нашей системе образования), с другой — можно спокойно идти по пути PhD. Как известно, в PhD программу можно попасть и не особо умея программировать — особенно это касается теоретического Computer Science. С другой стороны найти работу программиста тоже дело не очень сложное, и часто не требует мощного образования. Но достигнув уровня MSc — вы получаете возможность разбираться как во всех новый идеях в Computer Science, так и возможность их воплотить в практику. То есть с одной стороны круто разобраться в каком-нибудь deep learning и сделать в нем что-то новое, а также взять и написать свою операционную систему (кто так сделал?). Причем вы не зажаты в рамки узкой специализации (если конечно продолжаете учиться). То есть вы теперь — универсальный солдат, готовый на все.

Надеюсь что эта статья будет полезна:
1. Студентам, которые хотят соответствовать высоким стандартам топ вузов США, или собирающиеся туда в аспирантуру по Computer Science
2. Профессионалам, которые хотят закрыть «дыры» и пробелы
3. Может кто-то из преподавателей возьмет на заметку для своих курсов.
4. Студентам, аспирантам американских вузов — хотелось бы тоже получить фидбэк, особенно касается последних трендов в образовании

Что же здесь будет написано? Минимум философии и общих мыслей: конкретная программа undergraduate и graduate курсов, конечно из дисциплин наиболее мне близких. Все курсы были лично прочувствованы на собственной шкуре, по этому и пишу. (Я пытался записаться на все интересные курсы, которые были, но мой основной упор — системное программирование, базы данных и искусственный интеллект. Отсюда конечно некий bias, но пытаюсь предложить более-менее универсальную программу).
Читать дальше →
Всего голосов 86: ↑81 и ↓5 +76
Комментарии 64

Почему научиться программировать так чертовски тяжело?

Время на прочтение 14 мин
Количество просмотров 423K
Привет, Хабр!

Взявшись за работу над образовательным проектом Хекслет, мы понимали, что на нас ложится большая ответственность. К нам приходит огромное количество новичков с вопросами и комментариями, такими как:

  • С чего начать обучение программированию?
  • У вас есть курс по Java для новичков, но я слышал, что нужно изучать Python, правда ли это?
  • На других сайтах все просто и понятно, а у вас какие-то компиляции и тесты!
  • Непонятно зачем нужен этот ваш курс по алгоритмам, в реальной жизни все алгоритмы уже реализованы в стандартных библиотеках

Но сложнее всего объяснить новичку, грубо говоря, во что он ввязывается. Благодаря очень простым, игровым образовательным проектам многие считают, что программирование это очень легко, а наши виртуальные машины, где нужно запускать тесты и компилировать код – это надуманная сложность. Давно хотелось найти такой материал, который бы подготовил новичка к длинному и сложному пути к карьере программиста. И недавно наши коллеги из Viking Code School такой материал написали! А мы его перевели для вас.




Квинси Ларсон был просто “офисным парнем в костюме”. Он решил научиться программировать. Начал спрашивать людей вокруг. Изучил немного Руби, потом быстренько посмотрел на другие языки вроде Scala, Clojure и Go. Он изучил Emacs, а потом Vim, а потом раскладку Dvorak. Он втыкал в Линукс, копался с Лиспом и кодил на Питоне, и жил при этом в командной строке больше полутора лет.

Его швыряло туда-сюда как листочек в торнадо. Каждый совет, который он слышал, тащил его то в одну, то в другую сторону, до тех пор пока он не прошел “каждый онлайн-курс по программированию во вселенной”. В конце концов, не смотря на то, что он получил работу разработчика ПО, Квинси:

… был уверен, что на первый взгляд нормальные программисты, с которыми я общался, были на самом деле социопатами, которые получили, а потом подавили в себе, травму при изучении программирования.

Ох. Звучит знакомо?
Читать дальше →
Всего голосов 65: ↑55 и ↓10 +45
Комментарии 44

Portaller — теперь с поддержкой Pandora, Spotify, Rdio, Netflix и Amazon Video на всех устройствах

Время на прочтение 2 мин
Количество просмотров 6K
Привет.
Хочу рассказать вам несколько интересных новостей о том, что происходит с Portaller — небольшим сервисом для использования Pandora, Spotify, Netflix и еще нескольких сервисов за пределами США.

Одной строкой, если у вас нет времени идти под кат — кроме Pandora и Spotify теперь поддерживается Netflix и Amazon Video, сервис работает на всех устройствах, включая клиентов на Android (почему на нем такой акцент — читайте ниже) и к нему можно присоединиться на GitHub.

Читать дальше →
Всего голосов 13: ↑11 и ↓2 +9
Комментарии 15

Советская орбитальная хитрость

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


История космонавтики, как и любой другой отрасли, хранит примеры остроумных решений, когда желаемая цель достигалась красивым и неожиданным способом. СССР/России не повезло с доступностью геостационарной орбиты. Но вместо того, чтобы достать до нее более тяжелыми ракетами или пытаться снизить массу полезной нагрузки, разработчиков осенила идея использования специальной орбиты. Об этой орбите и спутниках, которые ее используют до сих пор, наш сегодняшний рассказ.
Читать дальше →
Всего голосов 106: ↑105 и ↓1 +104
Комментарии 56

Основы Linux от основателя Gentoo. Часть 1 (1/4): BASH, основы навигации

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

Предисловие


Об этом руководстве


Добро пожаловать в первую из четырех частей обучающего руководства по основам Linux, разработанного чтобы подготовить вас к сдаче экзамена Linux Professional Institute 101. В нем вы познакомитесь с bash (стандартной оболочкой командного интерпретатора в Linux), узнаете о большинстве возможностей таких стандартных команд Linux, как ls, cp и mv, разберетесь в инодах, жестких и символьных ссылках, и многом другом. К концу этого руководства у вас сформируется некий фундамент знаний, и вы будете готовы к изучению основ администрирования Linux. К концу всего курса (8 частей), у вас будет достаточно навыков, чтобы стать системным администратором Linux и пройти сертификацию LPIC Level 1 от Linux Professional Institute, если конечно захотите.



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


Читать дальше →
Всего голосов 150: ↑130 и ↓20 +110
Комментарии 50

Как увидеть МКС сегодня вечером

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


Многие считают что Международная космическая станция (МКС) летает где-то очень далеко, и для того чтобы ее увидеть (и тем более сфотографировать) нужно специальное оборудование. Однако это вовсе не так. МКС каждый день по нескольку раз проносится над нашими головами и увидеть ее не сложнее чем обычный пассажирский самолет. Нужно просто знать когда и куда смотреть. По яркости МКС может соперничать даже с Юпитером и Венерой, а ее быстрое движение по небосводу еще больше привлекает внимание. В этой статье я хочу рассказать как и когда можно увидеть МКС сегодня вечером в Москве, подскажу как узнать время пролета МКС для любого другого места и даты, а также затрону тему фото и видеосъемки МКС.
Читать дальше →
Всего голосов 42: ↑42 и ↓0 +42
Комментарии 28

Магия тензорной алгебры: Часть 1 — что такое тензор и для чего он нужен?

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

Содержание


  1. Что такое тензор и для чего он нужен?
  2. Векторные и тензорные операции. Ранги тензоров
  3. Криволинейные координаты
  4. Динамика точки в тензорном изложении
  5. Действия над тензорами и некоторые другие теоретические вопросы
  6. Кинематика свободного твердого тела. Природа угловой скорости
  7. Конечный поворот твердого тела. Свойства тензора поворота и способ его вычисления
  8. О свертках тензора Леви-Чивиты
  9. Вывод тензора угловой скорости через параметры конечного поворота. Применяем голову и Maxima
  10. Получаем вектор угловой скорости. Работаем над недочетами
  11. Ускорение точки тела при свободном движении. Угловое ускорение твердого тела
  12. Параметры Родрига-Гамильтона в кинематике твердого тела
  13. СКА Maxima в задачах преобразования тензорных выражений. Угловые скорость и ускорения в параметрах Родрига-Гамильтона
  14. Нестандартное введение в динамику твердого тела
  15. Движение несвободного твердого тела
  16. Свойства тензора инерции твердого тела
  17. Зарисовка о гайке Джанибекова
  18. Математическое моделирование эффекта Джанибекова


Введение



Это было очень давно, когда я учился классе в десятом. Среди довольно скудного в научном плане фонда районной библиотеки мне попалась книга — Угаров В. А. «Специальная теория относительности». Эта тема интересовала меня в то время, но информации школьных учебников и справочников было явно недостаточно.



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



Читать дальше →
Всего голосов 60: ↑58 и ↓2 +56
Комментарии 89

Идеальный программист

Время на прочтение 2 мин
Количество просмотров 41K
Доброго времени. В конце октября был хороший пост «Умей говорить «нет» и умей говорить «да»».
Мы оперативно запросили электронные права на книгу, из которой автор поста брал идеи.

image

Идеальный программист. Как стать профессионалом разработки ПО
Автор: Р. Мартин
Прототип: The Clean Coder: A Code of Conduct for Professional Programmers
Читать дальше →
Всего голосов 33: ↑24 и ↓9 +15
Комментарии 64

Реализация поискового движка с ранжированием на Python (Часть 1)

Время на прочтение 5 мин
Количество просмотров 34K
Просматривая ленту новостей я наткнулся на рекомендацию от Типичного Программиста на статью «Implementing a Search Engine with Ranking in Python», написанную Aakash Japi. Она меня заинтересовала, подобного материала в рунете не очень много, и я решил перевести её. Так как она довольно большая, я разделю её на 2-3 части. На этом я заканчиваю своё вступление и перехожу к переводу.

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

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

Это то, что я буду описывать в этой статье: как сделать поисковую систему для локальных текстовых файлов, для которых можно обрабатывать стандартные запросы (по крайней мере, одно из слов в запросе есть в документе) и фразу целиком (появляется вся фраза в тексте) и может ранжировать с использованием базовой TF-IDF схемы.

Есть два основный этапа в разработке поискового движка: построение индекса, а затем, используя индекс, ответить на запрос. А затем мы можем добавить результат рейтинга (TF-IDF, PageRank и т.д.), классификацию запрос/документ, и, возможно, немного машинного обучения, чтобы отслеживать последние запросы пользователя и на основе этого выбрать результаты для повышения производительности поисковой системы.

Итак, без дальнейших церемоний, давайте начнем!
Читать дальше →
Всего голосов 17: ↑15 и ↓2 +13
Комментарии 4

Docker Workflow

Время на прочтение 10 мин
Количество просмотров 28K
Перевод инфраструктуры hexlet.io на Docker потребовал от нас определенных усилий. Мы отказались от многих старых подходов и инструментов, переосмыслили значение многих привычных вещей. То, что получилось в итоге, нам нравится. Самое главное – этот переход позволил сильно все упростить, унифицировать и сделать гораздо более поддерживаемым. В этой статье мы расскажем о той схеме для разворачивания инфраструктуры и деплоя, к которой в итоге пришли, а так же опишем плюсы и минусы данного подхода.
Читать дальше →
Всего голосов 23: ↑23 и ↓0 +23
Комментарии 17

Собираем базу людей из открытых данных WhatsApp и VK

Время на прочтение 15 мин
Количество просмотров 218K
Etan Hunt
кадр из фильма Миссия Невыполнима II

Эта история началась пару месяцев назад, в первый день рождения моего сына. На мой телефон пришло СМС-сообщение с поздравлением и пожеланиями от неизвестного номера. Думаю, если бы это был мой день рождения мне бы хватило наглости отправить в ответ, не совсем культурное, по моему мнению, «Спасибо, а Вы кто?». Однако день рождения не мой, а узнать кто передаёт поздравления было интересно.

Первый успех


Было решено попробовать следующий вариант:
  • Добавить неизвестный номер в адресную книгу телефона;
  • Зайти по очереди в приложения, привязанные к номеру (Viber, WhatsApp);
  • Открыть новый чат с вновь созданным контактом и по фотографии определить отправителя.

Мне повезло и в моём случае в списке контактов Viber рядом с вновь созданным контактом появилась миниатюра фотографии, по которой я, не открывая её целиком, распознал отправителя и удовлетворенный проведенным «расследованием» написал смс с благодарностью за поздравления.

Сразу же за секундным промежутком эйфории от удачного поиска в голове появилась идея перебором по списку номеров мобильных операторов составить базу [номер_телефона => фото]. А еще через секунду идея пропустить эти фотографии через систему распознавания лиц и связать с другими открытыми данными, например, фотографиями из социальных сетей.
Далее перебор аккаунтов WhatsApp и VK по Москве и Ненецкому АО и распознание лиц
Всего голосов 128: ↑127 и ↓1 +126
Комментарии 34

Imax B6 — Универсальный зарядочный комбайн

Время на прочтение 6 мин
Количество просмотров 1.2M
На хабре уже была статья про этот народный зарядник, но как то встречена без особого энтузиазма. Постараюсь это исправить, и рассказать о тех возможностях, про которые не было написано в той статье. Зарядное устройство действительно народное, любой моделист или причастный к ним с первого взгляда его узнает.

Итак, что на обещают производители?
  • Заряд аккумуляторов Li-ion, Li-pol, LiFe, NiCd, NiMH, PbAcid(свинцовые всех типов)
  • Полностью автоматический процесс заряда, управляемый микроконтроллером. Отсечка по току и напряжению для литиевых аккумуляторов, по температуре и ΔV для никелевых. Для всех типов — выключение по максимальному времени и емкости.
  • Тренировка NiCd и NiMH. Балансировочный заряд Li-pol аккумуляторов(для батарей с несколькими банками)
  • Ток заряда до 5А, разряда — до 1А.
  • Экран с показаниями текущего напряжения, тока, емкости. Выгрузка всех этих параметров на компьютер и построение графиков.
Читать дальше →
Всего голосов 49: ↑46 и ↓3 +43
Комментарии 90

Google Chromecast

Время на прочтение 4 мин
Количество просмотров 296K
24 июля компания Google наряду с новой версией Android 4.3 представила и новое необычное устройство Google Chromecast. Если анонс Android 4.3 ожидался уже давно, то появление Chromecast оказалось приятным сюрпризом. Удивительно, но в Google смогли не допустить утечек о новом устройстве практически до самого анонса. Кроме того, в полной тайне им удалось не только изготовить, но и отгрузить в магазины большие партии этих устройств. Chromecast появился в магазине Google Play практически одновременно с анонсом. Я же решил купить его в онлайн-магазине Amazon. Там оно появилось после полудня (по тихоокеанскому времени) и я оказался среди первых покупателей. На следующий день, 25 июля Amazon выслал покупку и еще через день, 26 июля, я стал обладателем Google Chromecast.
Что же представляет собой Google Chromecast? Это небольшое устройство (донгл, свисток и т.д.), подключаемое к HDMI входу ТВ или ресивера и способное воспроизводить контент (видео, музыку, фотографии). Chromecast не имеет своего интерфейса или внешних элементов управления (за исключением кнопки сброса). Для контроля необходимо наличие в одной сети с донглом Android, iOS устройства или браузера Chrome (Windows или Mac), так же Chromebook Pixel. Мака или Хромбука дома нет, так что все эксперименты проводились с Samsung Galaxy SIII, Apple iPod, Chrome for Windows и телевизором Panasonic TC-P55GT30.

В продолжении под катом много фотографий.
Читать дальше →
Всего голосов 93: ↑89 и ↓4 +85
Комментарии 92

Наблюдения и Наука

Время на прочтение 6 мин
Количество просмотров 14K
Несколько последних постов позволили сформулироваться точке зрения, но чтобы она не выглядела «взятой с потолка», нужно сделать небольшой экскурс в историю. Пройтись во самым вехам, не сильно углубляясь в детали.

Итак, начнём с древнегреческой науки
Читать дальше →
Всего голосов 65: ↑53 и ↓12 +41
Комментарии 47

7 операционных систем, которые Вы можете запустить на Raspberry Pi

Время на прочтение 4 мин
Количество просмотров 344K
Предлагаю Вашему вниманию вольный перевод статьи James Bruce про 7 операционных систем, которые Вы можете запустить на Raspberry Pi.

Кто может поспорить с ценой компьютера в 40 долларов? Особенно, если он еще и отличная база для проектов в области электроники. Я не вижу конкурентов. Но само по себе железо — лишь одна сторона медали: необходима еще операционная система. Ниже я расскажу про 7 различных операционных систем, которые Вы можете установить на Raspberry Pi прямо сейчас. Небольшое замечание: не все представленные операционные системы являются полезными.

image
Читать дальше →
Всего голосов 52: ↑48 и ↓4 +44
Комментарии 47

Поговорим про… фонарики?

Время на прочтение 5 мин
Количество просмотров 369K
Приветствую, %username%!
Это небольшой ликбез на тему сегодняшнего состояния отрасли портативного освещения.
Disclaimer
К показанным фонарям и остальному железу я отношения не имею. Их рекламой данный пост не является.

Поехали, начнем с современных светодиодов
Читать дальше →
Всего голосов 167: ↑159 и ↓8 +151
Комментарии 156

LiveDC — Быстрый доступ к p2p файлам

Время на прочтение 2 мин
Количество просмотров 15K
Сегодня существует большое количество DC-клиентов на самый разный вкус. Однако все они наделены существенным недостатком: нужно ждать, пока скачиваемый файл полностью загрузится. А если вы желаете посмотреть фильм или новый эпизод любимого сериала в высоком качестве, то даже при скорости интернета 100 Мбит/с ждать придется довольно долго. Но ведь хочется-то сейчас!


Разве это возможно?
Всего голосов 32: ↑30 и ↓2 +28
Комментарии 56

Информация

В рейтинге
Не участвует
Откуда
Украина
Дата рождения
Зарегистрирован
Активность