• Главные технологии десятилетия по версии Хабра



      Команда Хабра составила рейтинг из 10 технологий и устройств, которые изменили мир и повлияли на нашу жизнь. За пределами первой десятки остались еще около 30 крутых вещей — о них коротко в конце поста. Но самое главное — нам хочется, чтобы в составлении рейтинга поучаствовало всё сообщество. Мы предлагаем оценить эти 10 технологий так, как хотите именно вы. Вдруг вы считаете, что машинное обучение куда сильнее повлияло на мир, чем экономика совместного потребления? Голосуйте — ваш выбор будет учтен в общем рейтинге.
      Читать дальше →
    • Как сойти за хорошего программиста

      Привет, Хабр! Представляю вашему вниманию перевод статьи «How To Fake Being a Good Programmer» автора Stan Sootla.



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

      Моя работа – быть более аутентичным в том, чтобы быть фальшивым программистом, чем настоящие программисты в том, чтобы быть самими собой.
      Читать дальше →
    • Самые позорные ошибки в моей карьере программиста (на текущий момент)

      • Translation

      Как говорится, если тебе не стыдно за свой старый код, значит, ты не растешь как программист — и я согласна с таким мнением. Я начала программировать для развлечения более 40 лет назад, а 30 лет назад и профессионально, так что ошибок у меня набралось очень много. Будучи профессором информатики, я учу своих студентов извлекать уроки из ошибок — своих, моих, чужих. Думаю, пришло время рассказать о моих ошибках, чтобы не растерять скромность. Надеюсь, кому-то они окажутся полезны.
      Читать дальше →
    • Байки из склепа (из 40 лет работы программиста)

        С ЭВМ (слово компьютер тогда не было в ходу) я столкнулся в году 1977, просто курс такой был на мехмате. Fortran IV, коды М-20, Algol-60, PL/1, сразу после универа попал в программисты (системные программисты!), и пошло-поехало…

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

        Как бы то ни было, за это время было некоторое количество забавных и/или интересных (ну, по крайней мере запомнившихся) историй, почитать которые и приглашаю под кат. Истории не обязательно строго про программирование, больше про жизнь программиста.
        Читать дальше →
      • Создание игры Tower Defense в Unity: враги

        • Translation
        [Первая часть: тайлы и поиск пути]

        • Размещение точек создания врагов.
        • Появление врагов и их движение по полю.
        • Создание плавного движения с постоянной скоростью.
        • Изменение размера, скорости и размещения врагов.

        Это вторая часть туториала, посвящённого простой игре в жанре tower defense. В ней рассматривается процесс создания врагов и их движения к ближайшей конечной точке.

        Данный туториал выполнен в Unity 2018.3.0f2.


        Враги на пути к конечной точке.
        Читать дальше →
        • +26
        • 5.4k
        • 1
      • Собираем базу аудиокниг для удобной фильтрации

          Мой телеграм канал: https://t.me/winc0de.
          Всем привет! Наверняка многим из вас знакома проблема уставших глаз из-за длительной работой за компьютером. К сожалению, из-за этого приходится ограничивать себя в других занятиях. Одним из них есть чтение книг. В связи с этим, я уже более 5 лет почти каждый день слушаю аудиокниги. За это время научился параллельно заниматься чем-то и вникать в суть озвучки. Сейчас я даже в спортзале слушаю книги! Представьте как это удобно: час дороги пешком туда и обратно + полтора часа упражнений. Средняя книга в районе 10-15 часов записи.

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


          Читать дальше →
        • 15 советов, как пробиться в App Store приложению с подписками

            В этой статье я расскажу, как увеличить шансы пройти проверку в App Store приложению с подписками. Если вы когда-либо испытывали проблему с аппрувом приложений с подписками или вот-вот планируете релиз, тогда это будет вам полезно.


            Всем привет, меня зовут Денис, я основатель сервиса Apphud – сервиса аналитики подписок iOS-приложений.



            Как вы наверняка знаете, проверка состоит из двух этапов: ручная проверка (приложение просматривает человек) и автоматическая проверка ботом. Но, предполагаю, не каждое обновление проверяется человеком. Бывало, наши приложения проходили проверку менее, чем через 10 минут после отправки на ревью. С каждым годом доля автоматических проверок увеличивается и бот берет на себя все бóльшую роль при проверке приложений.

            Читать дальше →
            • +14
            • 5.9k
            • 5
          • Ищем свободное парковочное место с Python

            • Translation
            image

            Я живу в хорошем городе. Но, как и во многих других, поиск парковочного места всегда превращается в испытание. Свободные места быстро занимают, и даже если у вас есть своё собственное, друзьям будет сложно к вам заехать, ведь им будет негде припарковаться.

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

            image

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

            Поэтому давайте немного развлечёмся и напишем точную систему уведомлений о свободной парковке с помощью Python и глубокого обучения
            Читать дальше →
          • Музыка для ваших проектов: 12 тематических ресурсов с треками по лицензии Creative Commons

              Подборка пригодится разработчикам, дизайнерам, видеорежиссерам и контент-мейкерам, которые ищут музыку для своих проектов — приложений, игр или видеороликов.

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

              Читать дальше →
              • +55
              • 24.5k
              • 9
            • Мой компилятор Паскаля и польское современное искусство

              Истоки


              Несколько лет назад я написал компилятор Паскаля. Мотивация была простой: в юности я узнал из своих первых книжек по программированию, что компилятор — вещь чрезвычайно сложная. Это утверждение засело занозой в мозгу и в конце концов потребовало проверки на опыте.

              image
              ha.art.pl

              Сперва родился простейший компилятор PL/0, а из него постепенно вырос почти полнофункциональный компилятор Паскаля для MS-DOS. Вдохновением мне служила книга Compiler Construction, написанная создателем языка Паскаль Никлаусом Виртом. И пусть взгляды Вирта уже устарели и утратили всякую связь с реалиями ИТ, а компиляторы делают совсем не так, как учил Вирт. Однако его методы по-прежнему просты, изящны, а главное — приносят радость, ведь самостоятельно разобрать текст программы рекурсивным спуском и сгенерировать машинный код намного заманчивее, чем призывать на помощь яков, бизонов и всех их преемников.

              Судьба моего компилятора оказалась не самой тривиальной. Он прожил две жизни: первую — в моих руках, вторую — в руках польских ценителей компьютерных древностей.
              Читать дальше →
            • Выкладываем приложение в App Store. Даже если вы не разработчик

              • Tutorial


              Ранее писали про этап подготовки к релизу. Сейчас расскажем про публикацию приложения в AppStore. Пошаговый гайд будет полезен новичкам, которые до этого не сталкивались с полицией нравов из Купертино.

              Читать дальше →
              • +21
              • 60.6k
              • 4
            • «Черт меня дернул пойти работать в офис» — 10 вопросов программисту, 9 выпуск



                Как-то так вышло, что почти все восемь выпусков мы говорили с офисными разрабами, и не опрашивали, каково живется на фрилансе. Сегодня, наконец, исправляем. Рассказывает Денис Казаков (nrcpp). Он написал первую программу в 14 на Pascal, а в университете разработал свой С++ фронт-енд компилятор и сорвал статьей про это кармический куш на Хабре.

                Куш пореалистичней он взял на Upwork — 60 выполненных проектов и кругленькие суммы (ну, для меня) в графе полученных денег. Но под катом никакого хвастовства и мотивашек в духе «вы тоже можете». Наоборот — рассказ про горький для опытного фрилансера офисный опыт.
                Читать дальше →
              • Пролог точки Кельвина

                  Позвольте представиться. Меня зовут Роберт, мне 34 года, и я – ниочем. Да, я знаю, что правильно писать «ни о чем», но очень хочется превратить это слово в существительное.

                  Я – ниочем, жизнь моя – ниочем, семья моя – ниочем, работа – ниочем, страна – ниочем. И будущее мое – ниочем.

                  Хотя, наверное, неправильно называть оставшийся мне отрезок ниочемной жизни красивым словом «будущее». Это не будущее, это просто отрезок на координатной оси. Тридцать четыре отметки на шкале уже пройдено, осталось… Не знаю, сколько. А какая разница?
                  Читать дальше →
                • Мне не страшен ваш NDA

                    Это громкая и страшная аббревиатура из трёх неприличных букв. Хотите поучаствовать в тендере, устраиваетесь на работу, нужно получить данные — вам подсовывают эту бумажку, мол, подпиши сначала, а то нашли дураков без NDA тебе что-нибудь рассказывать. При этом в большинстве случаев вы ничего сверхсекретного или коммерчески важного не узнаете, но процедура подписания NDA стала неким таинством посвящения, которое стороны выполняют не особо задумываясь над смыслом.

                    Это так же как вы неизбежно получите требование вместе с учредительными документами предоставить выписку из ЕГРЮЛ не старше 30 дней. Хотя всё доступно в онлайне, все распечатывают эту выписку из интернета, заверяют её и передают контрагенту, который даже не смотрит её, потому что всё есть в интернете. Ну, вы поняли, короче, отечественную любовь к таинствам.

                    image
                    Читать дальше →
                  • 8 ловушек программирования



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

                      Однако я верю в то, что их можно избежать, если знать в какие ловушки можно попасть и как из них выбираться. Возможно эта вера — очередная ловушка.
                      Читать дальше →
                    • Открытое письмо к маркетологам и прочим пиарщикам, причастным к контенту на Хабре и других ресурсах


                        Короче, настало время. Присаживайтесь поудобнее

                        На площадке я достаточно давно. Кто-то знает меня в лицо, кто-то никогда не видел, а еще у меня есть собственный клуб хейтеров благодаря моей работе в качестве редактора ХХ и ГТ. Сейчас я не буду обсуждать «редакторский» контент, тут много подводных камней, а скажу пару слов о ведении корпоративных блогов и всего, что касается этой темы. Надеюсь на адекватное обсуждение.

                        Дисклеймер: это не пост хейта или срача на тему «компании — вон с Хабра!», а вполне обоснованный текст на тему того, что стоит делать, чего не стоит делать и как с этим дальше жить. Он зрел в моей голове не один месяц, учитывая, что я уже пятый год зарабатываю на хлеб с маслом написанием постов. Надеюсь, что текст найдет отклик у аудитории и ситуация на платформе немного улучшится.

                        Этим постом я хочу достучаться до многочисленных маркетологов, которые пасутся на моей родной «полянке» и тут же делают не самые приличные вещи, которые, в итоге, бьют и по мне в том числе. А еще я хочу поговорить с аудиторией.
                        Поехали
                      • GDPR. Практические советы

                        Все слышали о General Data Protection Regulation (GDPR) (Regulation (EU) 2016/679), который вступает в силу 25 мая 2018 года. Штрафы большие и придётся соответствовать. Как и любой официальный документ, он написан сухо и может трактоваться по-разному. За последние полгода провел анализ десятка различных веб-систем на соответствие GDPR, и везде встречались одни и те же проблемы. В связи с этим цель этой статьи не разъяснить, что такое GDPR (об этом уже много написано), а дать практические советы техническим людям, что необходимо сделать в вашей системе, чтобы она соответствовала GDPR.

                        Пару интересных моментов по регламенту:

                        • Если есть хоть один клиент из Европы, чьи персональные данные вы храните, вы автоматически попадаете под GDPR
                        • Регламент базируется на трёх основных идеях: защита персональных данных, защита прав и свобод людей в защите их данных, ограничение перемещения персональных данных в рамках Евросоюза (Art. 1 GDPR)
                        • UK всё ещё в EU, поэтому подпадает под действие GDPR, после Brexit-а GDPR будет заменён на Data Protection Bill, который по своей сути очень схож с GDPR (https://ico.org.uk/for-organisations/data-protection-bill/)
                        • Серьезно ограничивается трансфер данных в третьи страны. Европейская комиссия определяет, в какие “третьи” страны или в какие сектора или организации в этих странах разрешён трансфер персональных данных Art. 45 GDPR. Вот список разрешённых стран.
                        Читать дальше →
                      • Теория игр: Введение

                        image

                        Что это такое, и с чем его едят.


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

                        Узнать больше
                      • Погружение в разработку на Ethereum. Часть 1

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

                        Читать дальше →
                      • Стабильный доход без вложений, или Как Яндекс начал охоту на фальшивый заработок

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



                          В прошлом году мы запустили новую версию Яндекс.Браузера с защитой банковских карт от фишинга. Помимо прочих проверок, эта технология оценивает наличие SSL-сертификата. Если пользователь вводит номер карты на HTTP-сайте, то браузер его предупреждает. Логика простая: банки, платежные системы и магазины, которые заботятся о безопасности пользователей, уже давно работают по HTTPS. Это не единственный механизм выявления подозрительных сайтов, но в контексте поста нам будет интересен именно он.

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