• Программисту. 10 ценных GitHub-репозиториев

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


    Читать дальше →
    • +34
    • 24,2k
    • 9
  • Вероятно, хватит рекомендовать «Чистый код»

    • Перевод
    Возможно, мы никогда не сможем прийти к эмпирическому определению «хорошего кода» или «чистого кода». Это означает, что мнение одного человека о мнении другого человека о «чистом коде» обязательно очень субъективно. Я не могу рассматривать книгу Роберта Мартина «Чистый код» 2008 года с чужой точки зрения, только со своей.

    Тем не менее, для меня главная проблема этой книги заключается в том, что многие примеры кода в ней просто ужасны.
    Читать дальше →
  • Осторожнее с редактированием bash-скриптов

    • Перевод
    Предположим, я написал такой bash-скрипт с названием delay.sh. Как думаете, что он делает?

    #!/bin/bash
    sleep 30
    #rm -rf --no-preserve-root /
    echo "Time's up!"

    Похоже, он ожидает 30 секунд, а затем выводит сообщение на экран. Здесь никаких фокусов — он делает именно это. Там есть опасная команда в середине, но она закомментирована и не выполняется.

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

    Ну, через 30 секунд скрипт удалит все мои файлы.
    Читать дальше →
  • Умирает ли RuTracker? Анализируем раздачи

    Любая деятельность генерирует данные. Чем бы вы ни занимались, у вас наверняка на руках кладезь необработаной полезной информации, ну или хотя бы доступ к его источнику.


    Сегодня побеждает тот, кто принимает решения, основываясь на объективных данных. Навыки аналитика как никогда актуальны, а наличие под рукой необходимых для этого инструментов позволяет всегда быть на шаг впереди. Это и является подспорьем появления данной статьи.


    У вас есть свой бизнес? Или может… хотя, не важно. Сам процесс добычи данных бесконечен и увлекателен. И даже просто хорошо покопавшись в интернете можно найти себе поле для деятельности.


    Вот, что мы имеем сегодня – Неофициальная XML-база раздач сайта RuTracker.ORG. База обновляется раз в полгода и содержит в себе информацию о всех раздачах за историю существования данного торрент-трекера.


    Что она может рассказать владельцам рутрекера? А непосредственным пособникам пиратства в интернете? Или обычному юзеру, увлекающемуся аниме, например?

    Читать дальше →
  • 9 четких инструментов для изучения и прокачки английской лексики



      В Оксфордском словаре английского языка почти 450 000 слов! Но если вы учите язык как иностранный, их совсем не нужно запоминать все и сразу.

      Чтобы полноценно общаться на английском языке, вполне достаточно всего лишь 2000–3000 слов. При должном усердии и небольшом количестве хитростей их вполне можно выучить за год.

      В этой статье мы собрали 9 шикарных инструментов, которые помогут вам учить английские слова и сделают учебную рутину интереснее. Не будем долго рассусоливать, погнали!
      Читать дальше →
      • +8
      • 12,7k
      • 9
    • Зубы мудрости: удалить нельзя оставить

      image

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

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

      • Перевод

      От прокрастинации не избавиться, не разобравшись в её причинах.

      В этом деле я собаку съел, как и многие писатели. Когда мне нужно работать над задачей, а дедлайн уже близок, я буду делать всё что угодно — смотреть политические ток-шоу, подборки нокаутов МакГрегора, но не работать. В худшем случае я начинаю чувствовать себя слегка сумасшедшим: «Ты должен работать, — говорю я себе, — так чем же ты опять занят?!»
      Читать дальше →
    • Как я самостоятельно выучил новый язык за 12 месяцев: тотальный гайд

      • Перевод
      От А0 до B2 за год

      Чуть больше года назад я был полностью монолингвом, говорящем только на английском, с нулевыми познаниями во французском языке. А спустя двенадцать месяцев, я с лёгкостью сдал международный экзамен DELF B2. Если вы не знаете, что значит «В2», посмотрите шкалу CEFR.

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

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

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

      • Беседа на французском в течение нескольких часов;
      • Понимание различных видов французских СМИ (например, новости и видео на YouTube);
      • Чтение статей, написанных для носителей французского языка;
      • Построение мыслей на французском;

      Конечно, я всё ещё очень далёк от уровня носителя. У меня точно есть слабые места, и я не могу выражаться на французском так же хорошо, как на английском. Тем не менее, я очень даже доволен своим уровнем владения французским и думаю, что многие изучающие язык тоже были бы довольны.
      Читать дальше →
    • Как разработчику развиваться в небольшом и не самом айтишном городе

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

        Нет, это не история о том, какой я уникум. Несколько лет назад я не знал, что такое SOLID — и на просьбу расшифровать аббревиатуру честно спросил: “А что это?”. Много лет я плыл по течению, пока не осел в уютном “болоте”. Но потом очнулся и, кажется, за несколько лет смог выбраться на твердую землю. Не повторяйте моих ошибок)



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

        Как начать деградировать, но не поддаться

        Читать дальше →
      • Senior Engineer в поисках работы. Как я прошел 15 технических собеседований и что я об этом думаю

        • Перевод
        Продолжение истории о том, как я проходил собеседования в разные компании на разные позиции. В этот раз закроем несколько вопросов и комментариев касательно первой части и продолжим говорить о тестовых заданиях и технических собеседованиях.

        К моему удивлению, предыдущая статья о собеседованиях с рекрутерами и HR вызвала неожиданный интерес: более 100 000 просмотров по всем источникам. Я получил кучу положительного фидбека в личку, мне написали бывшие коллеги, которых я последний раз видел лет 5 назад; героини некоторых историй; парень, которому я несколько недель назад продавал системник через OLX (аналог Slando, — прим. пер.); барабанщик с которым мы в прошлом году играли метал в гараже, и, как это ни странно, довольно много рекрутеров, которые поинтересовались моими мыслями касательно тех или иных аспектов собеседований и найма. 250 человек зачем-то добавились ко мне в LinkedIn :).
        Читать дальше →
      • 8 интересных багов беты iOS 12 и как мы их искали



          Всем привет!

          Я Катя, тестирую мобильные приложения в Badoo. Сегодня я расскажу о том, почему тестировать бета-версии так важно, как мы проводим мануальное тестирование таких версий и что интересного мы обнаружили в ходе проверки iOS 12 Beta.
          Читать дальше →
        • Старые песни о главном. Java и исходящие запросы

          • Tutorial

          (Иллюстрация)

          Одна из задач, с которой сталкиваются 99,9% разработчиков, — это обращение к сторонним endpoint’ам. Это могут быть как внешние API, так и «свои» микросервисы. Сейчас все и вся бьют на микросервисы, да. Получить или отправить данные просто, но иногда изобретают велосипеды. Можете назвать 5 способов реализации запросов на Java (c использованием библиотек и без)? Нет — добро пожаловать под кат. Да? Заходите и сравните ;)
          Читать дальше →
        • Большой тест термокружек. Личный опыт и тесты на себе

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


            Читать дальше →
          • Пар электронных сигарет спасёт 6,6 млн жизней курильщиков в США, хотя вызывает мутации в ДНК

              В дыме обычных сигарет кроме никотина и его производных нитрозаминов содержится более 7000 других продуктов неполного сгорания, 70 из которых являются известными канцерогенами, плюс оксид углерода (СО), другие раздражители и аллергены. Согласно исследованием, сигареты с табаком раньше или позже приводят к преждевременной смерти более 50% курильщиков. Кроме того, у этого дыма очень неприятный запах. Таким образом, обычные сигареты одновременно чрезвычайно вредны для курильщика и неприятны для окружающих.

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

              Хотя электронные сигареты намного безопаснее обычных, к сожалению, как показывают последние исследования, полностью безопасными их назвать нельзя.
              Читать дальше →
            • IT-инфраструктура штабов Навального и сбор подписей: Жнец-2018

                Cерия публикаций про сбор подписей

                1. Введение, сайт «Навальный 20!8», подготовка к сбору
                2. Железо и сети, видеонаблюдение
                3. Жнец-2018: система для сбора подписей
                4. Управление проектом

                Это третья часть материала про IT-инфраструктуру штабов Навального. В предыдущих главах было рассказано про разработку сайта «Навальный 20!8», организацию сети в штабах и производство сканеров документов.

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



                Листы, QR-коды и способы работы с ними


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

                • Перевод
                В прошлый раз я публиковал пост о сложностях, с которыми сталкиваются разработчики при попытках поучаствовать в опенсорс проектах. Не хотелось оставлять эту проблему без описания возможного решения, поэтому в этот раз я перевел для вас статью известного опенсорс активиста Кента Доддса. В статье автор делится несколькими любопытными лайфхаками — надеюсь, кому-то из читателей они помогут извлечь больше пользы/получить больше удовольствия от участия в опенсорс проектах.

                Читать дальше →
              • Обзор мобильных приложений для персонального финансового учета

                Около десяти лет я пользовался одним и тем же мобильным приложением для персонального финансового учета (cash organizer), сначала на windows mobile, потом на android. Некоторое время назад у меня накопилось достаточное количество претензий к нему, чтобы я решил изучить альтернативы. Результаты решил оформить в виде статьи, надеюсь, что это окажется полезно кому-либо еще.
                Читать дальше →
              • Научные способы побороть усталость: ноотропы, кофе и нейротехнологии



                  Недавно я заметил, что устал быть уставшим. Но можно ли это исправить? Я часто и много пью кофе – оно помогает, но ненадолго. А есть ли что-нибудь ещё не менее эффективное? В общем, после того как мне пришли эти мысли я решил закопаться в научную литературу: что известно про доказанные инструменты борьбы с усталостью. Как борются с усталостью биохакеры? Здесь я поделюсь личным расследованием того, что публикуют ученые о борьбе с усталостью.

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

                  Инициаторами таких исследований являются, как правило, вооруженные силы, и первоначально проводятся они для оптимизации профессий, требующих особую собранность и выносливость: летчики, пехотинцы, водители. Существует, однако, целое сообщество биохакеров (или даже – «нейрохакеров»), которые немедленно берут такие технологии «на вооружение» и начинают самостоятельно использовать их в домашних условиях.
                  Читать дальше →
                • Двенадцать советов по повышению безопасности Linux

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

                  Возможно, вы уделяете внимание безопасности и периодически обновляете систему, но обычно этого недостаточно. Поэтому сегодня мы поделимся двенадцатью советами по повышению безопасности Linux-систем на примере CentOS 7.
                  Читать дальше →