• GoToHome: изолируйся и программируй

      С кодом да дурнинкой: 100 часов программирования, 50 часов видео- и чат-социализации, 1 сделанный проект.

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

      Совершим попытку сохранить частичку души в онлайн-формате вечерним общением, да и немного разбавить мир повсеместного кастдева и бизнеса проектами «с дурнинкой» – бессмысленными и не очень, но не менее, а может быть, и более интересными с технической точки зрения.

      image

      10 дней с виртуальными козами, фильтрами для сканера, матными драйверами для принтера, торрент-телевизором и прочим абсурдом с не менее прекрасной вечерней социализацией в виде совместной закваски капусты, маринования яиц, гамания и кодревью.
      Читать дальше →
    • ДомоДанные: как анализ данных используется в архитектуре и урбанистике

        Преподавали мы в GoTo свои нейроночки, XGBoos’ы, SVM’ы и прочие случайные леса, и тут до нас кое-что дошло — мы много говорим про технологии и почти ничего не рассказываем про области, в которых их можно применить.


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



        И начнём мы с немного экзотических сфер — урбанистики и архитектуры.


        Если хотите узнать подробности, прочитать интервью с техническим директором аналитической компании Habidatum и куратором программистко-архитектурных проектов из МАРХИ — милости прошу под кат.

        Читать дальше →
      • Kronos: никаких путешествий во времени даже в распределенных системах

          В распределенных системах есть ряд фундаментальных проблем: эффективные распределенные транзакции, exactly-once обработка данных, точная синхронизация физических часов. Для решения последней проблемы были изобретены разные виды логических часов.


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


          Однако, можно придумать нечто более надежное — Kronos. В статье мы посмотрим на алгоритм учета причинно-следственной связи и его применение для построения Key-Value хранилища с распределенными транзакциями.


          image

          Читать дальше →
          • +11
          • 3,3k
          • 4
        • Сэм Альтман, президент Y Combinator: Продуктивность

          • Перевод
          image

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

          Обычно темпы развития обсуждаются в контексте экономики, однако это можно также применить и в карьере, что очень здорово. Маленькое зернышко продуктивности, взращиваемое на протяжении 50 лет, стоит очень многого! Поэтому необходимо выяснить, как же оптимизировать продуктивность. Если вы каждый день выполняете свою работу на 10% больше и на 1% лучше, чем кто-либо другой, итоговая разница будет просто невероятной.

          Над чем вы работаете


          Совсем не важно, как быстро вы движетесь к цели, если она не является стоящей. Выбор правильного объекта это самый важный аспект продуктивности и зачастую самый игнорируемый. Так что действительно задумайтесь об этом! Мыслить самостоятельно непросто, однако, стоит только начать — дальше будет легче.
          Читать дальше →
        • Реклама
          AdBlock похитил этот баннер, но баннеры не зубы — отрастут

          Подробнее
        • Бьёрн Страуструп: Проблема с программированием

          • Перевод
          image

          Статья 2006 года.

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

          В 1980-х и 90-х годах Бьёрн Страуструп разработал и внедрил язык программирования C++, который популяризировал объектно-ориентированное программирование и повлиял на многие другие языки программирования, включая Java.

          C++ остается архетипическим «высокоуровневым» компьютерным языком (то есть языком, который сохраняет особенности естественного, человеческого языка), и он по-прежнему используется миллионами программистов. Многие из систем и приложений эры ПК и интернета были написаны на C++. Несмотря на это, язык остается спорным, во многом потому что его, как известно, трудно изучать и использовать, а также потому, что дизайн Страуструпа позволяет разработчикам допускать серьезные ошибки программирования в интересах сохранения их свободы.

          Страуструп, на протяжении многих лет работающий в AT&T Bell Labs, теперь является профессором компьютерных наук на факультете инженерии в Техасском университете A&M, недалеко от Хьюстона.

          Технологический обзор: почему большая часть программного обеспечения настолько плоха?

          Бьёрн Страуструп: Некоторые программы на самом деле довольно хороши по любым стандартам. Подумайте о Mars Rovers, Google и проекте “Геном человека”. Это качественное программное обеспечение! Пятнадцать лет назад большинство людей, и в частности большинство экспертов, сказали бы, что каждый из этих примеров невозможен. Наша технологическая цивилизация зависит от программного обеспечения, поэтому, если бы программное обеспечение было бы в действительности таким же плохим, как и его наихудшая репутация, большинство из нас уже были бы мертвы.
          Читать дальше →
        • Алан Кей: крутым концепциям тоже нужна любовь

          • Перевод
          image

          Позвольте мне начать с показа видео, записанного Национальным научным фондом (National Science Foundation, далее NSF) на недавно прошедшей церемонии вручения дипломов в Гарварде, в котором они просили некоторых выпускников и их преподавателей ответить на несколько простых вопросов о том, что является причиной смены времен года и фаз Луны. Все были уверены в своих ответах, но пояснения приблизительно 95% опрошенных даже и близко не были похожи на научное обоснование.

          Их основные теории основывались на том, что смена времен года является следствием уменьшения расстояния между Землей и Солнцем в летний период, и что фазы Луны связаны с отбрасываемой Землей тенью. Некоторые из выпускников довольно много занимались наукой и в старшей школе, и в Гарварде. NSF использовал эти данные, чтобы открыть дискуссию на тему того, почему наука не усваивается так хорошо, даже после многих лет обучения. Не усваивается так хорошо даже большинством успешных студентов, с высокими показателями в SAT, в лучших университетах, с полным доступом к компьютерам, сетям и информации.

          Моя реакция была немного иной. Я все ждал «других вопросов», которые должен был задать NSF, но они так их и не задали. Такой шанс мне выпал через несколько недель после выступления в UCLA. Я задал некоторым старшеклассникам, аспирантам первого курса, и нескольким профессорам те же самые вопросы про смену сезонов и фазы Луны, и получил очень похожие результаты: около 95% опрошенных давали фиктивные объяснения, обосновываясь на том же самом, что и студенты и профессора Гарварда, Но теперь я должен задать следующие вопросы.
          Читать дальше →
        • Ричард Хэмминг: «Необъяснимо высокая эффективность математики»

          • Перевод
          «Это самое глубокое эссе, которое я видел относительно философии науки; на самом деле, оно важно для всего нашего понимания мысли, познания или реальности.»

          image

          Пролог


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

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

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

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

          • Перевод
          У меня в запасе есть несколько тем, о которых можно писать и писать. Одна из них это «кумиры».

          Конечно же, это не список самых почтенных людей в мире. Я думаю, такой список вряд ли кто и сможет составить, даже имея при этом огромное желание.

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

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

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

          Джэк Лэмберт


          image

          Читать дальше →
        • Алан Кей: Как обстоят дела у всего человечества, вид «из космоса»

          • Перевод
          Почему же тогда наука и ее картографический язык — математика — считаются трудными для изучения? Я считаю, что это происходит не потому, что они настолько сложны, а скорее потому, что они на удивление просты, но очень сильно отличаются от обычного, здравого человеческого мышления.
          Моими любимыми примерами ранней науки и замечательной общей метафорой о том, чем занимается наука являются попытки точного картографирования, которое было начато греками и потеряно впоследствии на тысячи лет, а затем возобновлено в 15 веке. К концу 1700-х люди были в восторге от того, что могли купить карманный глобус «мира таким каким он выглядит из космоса». Спустя 200 лет мы вышли в космос, вспомнили прошлое, сделали фотографии и увидели то, что уже давно определили составители карт в 18 веке.

          image

          Все научные процессы и знания носят этот характер: это попытки «увидеть» и представить вещи очень точно с разных точек зрения, которые не являются частью наших разумных догадок о мире. Мы хотим сделать невидимое видимым. Большую часть истории человечества наши теории о себе и о мире, в котором мы живем, были, в основном, построены на необоснованных убеждениях, которые служили утешительными историями. Несколько лет назад мы обнаружили новый способ видения, который позволил нам воспринимать физический мир как бы «из космоса» с гораздо меньшим количеством предрассудков. В XXI веке нам нужно не только сделать это для физического мира, но и понять наше человеческое состояние словно смотрим на него «из космоса», без каких-либо утешительных историй, но с более глубоким пониманием того, как нам бороться с нашей человеческой природой и воспитанием.
          Читать дальше →
          • +11
          • 6,8k
          • 3
        • С <заблокированного мессенджера> — в Matrix

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


            Молодой программист на свежем воздухе

            Читать дальше →
          • Какие образы будущего нам рисуют крупнейшие ИТ-компании

              «He who controls the past, commands the future. He who commands the future, conquers the past.»

              image

              Подрастает орда миллениалов, кругом одни фрилансеры, работающие за биткоины, вот-вот вылупится зародыш искуственного интеллекта, толпы бессмертных людей воюют против…

              «Черное зеркало», «Элизиум», «Видоизмененный углерод», «Бегущий по лезвию», «Электрические сны Филлипа Дика», «Рик и Морти». «Мы», «Скотный двор», «О дивный новый мир», «1984». Какие «картинки» у нас в голове про будущее?

              Под катом — обзор роликов с видением будущего от Intel, Microsoft, Google, Citrix.
              Читать дальше →
            • Для новичков: 5 советов по GitHub

              • Перевод
              image Alyson La, Data science в GitHub: В октябре этого года я отпраздновала свой пятилетний юбилей работы в GitHub. 5 лет назад я была бухгалтером, который ничего не знал о программировании, не говоря уже об использовании Git и GitHub.

              Теперь я энтузиаст Data Scientist, который знает некоторые вещи о написании кода с помощью Git & GitHub. Частично благодаря изучению этих технологий я сделала этот карьерный переход.

              Но даже работая в GitHub, изучать Git и GitHub было сложно! Поэтому я хочу поделиться 5-ью советами по использованию GitHub с другими людьми, новичками программирования.

              Совет № 1: Измените редактор по умолчанию


              Для многих людей текстовый редактор при использовании Git через терминал — VIM. VIM может быть ужасным, страшным для нового или казуального хакера. Или даже для ветеранов-хакеров как @haacked.

              image

              Если вы когда-нибудь столкнетесь с конфликтами слияния (а вы их встретите, см. совет №4), вы попадете в VIM, чтобы исправить конфликт, и вам нужно будет знать конкретные команды VIM для редактирования документа иначе вам захочется плакать. Больше года у меня была заметка на мониторе для напоминания основных команд VIM, таких как i (для редактирования) и: wq (для сохранения и выхода). Чтобы избежать боли, вы можете просто выбрать другой текстовый редактор.
              Читать дальше →
            • Дональд Кнут: вот это поворот

              • Перевод
              image

              Когда вы входите в мой дом… эм… Мы с женой хотели, чтобы у нас были какие-либо произведения искусства в доме, которые были бы личными и также связанными с тем, чем мы занимаемся. И поэтому вы можете увидеть две вещи: одна из них это кривая дракона, я расскажу вам о ней больше через минуту. И другая это вот эта работа. Это строчка из “Дороги к мудрости” Пита Хайна:

              imageДолжны мы,
              Чтоб к мудрости
              Вечной добраться,
              Что нам
              Так заманчиво
              Брезжит,
              Опять
              И опять,
              И опять
              Ошибаться,
              Но реже
              И реже,
              И реже.

              Это одна из моих любимых фраз. Своего рода история всей моей жизни — это совершение ошибок и попытки научиться чему-то на них. Эту фразу спроектировали в форме суперэллипса, который является одним из великих открытий Пита Хайна. Этот эллипс более полный и он использовался во многих архитектурных изделиях.
              Читать дальше →
            • Алан Кей и Марвин Мински: Computer Science уже имеет «грамматику». Нужна «литература»

              • Перевод
              image

              Первый слева — Марвин Мински, второй слева — Алан Кей, потом Джон Перри Барлоу и Глория Мински.

              Вопрос: Как бы вы интерпретировали идею Марвина Мински о том, что «Computer Science уже имеет грамматику. Что ей нужно так это литература.»?

              Алан Кей: Самый интересный аспект записи блога Кена (включая комментарии) заключается в том, что нигде нельзя найти историческое упоминание этой идеи. Фактически, более 50 лет назад в 60-х годах по этому поводу было много разговоров и, насколько я помню, несколько статей.

              Я впервые услышал об этой идее от Боба Бартона, в 1967 году в магистратуре, тогда он сказал мне, что эта идея была частью мотивации Дональда Кнута, когда он писал “Искусство программирования”, главы которого уже ходили по рукам. Один из главных вопросов Боба тогда был о «языках программирования, предназначенных для чтения людьми также как и машинами». И это было основной мотивацией для частей дизайна COBOL в начале 60-х годов. И, возможно, что более важно в контексте нашей темы, эта идея видна в очень раннем и довольно красиво разработанном интерактивном языке JOSS (в основном Cliff Shaw).

              Как заметил Фрэнк Смит, литература начинается с идей, которые стоит обсуждать и записывать; она часто частично генерирует представления и расширяет существующие языки и формы; это приводит к новым идеям о чтении и письме; и, наконец, к новым идеям, которые не были частью первоначального мотива.
              Читать дальше →
              • +14
              • 4,6k
              • 3
            • Алан Кей (и коллективный интеллект Хабра): какие книги формируют мышление тру инженера

              • Перевод
              image

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

              Ключевой частью инженерии является любовь к тому, чтобы делать вещи, особенно к тому, чтобы делать их сразу же и делать их хорошо. Большая часть инженерии возникла из “tinkering” (aka “hacking”), добавив к этому желания «принципиального проектирования и создания», «целостности» и т. д. Все великие инженеры, которых я знаю лично, имеют глубокие моральные убеждения касательно того, что они делают, и почему это «должно быть сделано как можно лучше». Часть наложения темперамента на науку это своего рода «лабораторная крыса», которая наиболее счастлива, когда она в курсе эксперимента или создания нового экспериментального аппарата.
              Читать дальше →
            • Алан Кей: как бы я преподавал Computer Science 101

              • Перевод
              «Одна из причин, чтобы на самом деле поступить в университет — это выйти за рамки простой профессиональной подготовки и вместо этого уцепиться за более глубокие идеи.»


              image

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

              Другим вопросом было: «Кто такой Дуглас Энгельбарт?». Несколько людей сказали: «разве он не был как-то связан с компьютерной мышью?» (и это меня очень разочаровало, поскольку моё научное сообщество приложило много усилий для того, чтобы ответить на этот вопрос было возможно после двух-трех кликов мышки и убедиться, что Энгельбарт действительно был как-то связан с компьютерной мышью).

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

              Я работаю на полставки на кафедре вычислительной техники Калифорнийского университета несколько лет (по сути я профессор, но мне не нужно ходить на заседания кафедры). Периодически я веду занятия, иногда у первокурсников. За эти годы и без того низкий уровень любопытства к Computer Science значительно снизился (но также возрос уровень популярности, поскольку вычислительная техника рассматривается как путь к хорошо оплачиваемой работе, если вы умеете программировать и получили сертификат в лучшей 10-ке школ). Соответственно, ни один студент ещё не жаловался на то, что первым языком в Калифорнийском университете является С++!
              Читать дальше →
              • +10
              • 15,5k
              • 9
            • Пишем небесных пчелок на Cloud Haskell

              • Tutorial

              Привет, Хабр!

              Прошло всего лишь каких-то 11577635 секунд с конца осенней школы GoTo в ИТМО. Неделя направления Распределённых систем началась с прототипирования распределённой системы на Cloud Haskell. Мы начали бодро и потому быстро выяснили, что существующую документацию без PhD понять сложновато — и решили написать методичку.

              Под катом введение в p2p cloud haskell, немножко функционального стека прототипирования РС, мотивация и «но зачем».
              Читать дальше →
              • +26
              • 5,8k
              • 3
            • Считалка Иосифа Флавия: кого убить первым

              • Перевод
              image

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

              (Во время написания поста погибло дофига нарисованных солдатиков).
              Читать дальше →
            • Алгоритмы в индустрии: теория формальных языков и чат-боты

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




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

                А под катом — палиндроматические сэндвичи, алгоритмизированные официанты, немного теории формальных языков и рассказ о том, к чему мы это все.
                Читать дальше →
                • +16
                • 6,5k
                • 4
              • Итоги MentorHack: чат-бот по выделению тасков из диалогов, сервисы для построения карьерных траекторий и команд

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

                  Под катом немного о хакатоне: сквозь будни, проверки ФСО и форум к победителях с чат-ботом для автовыделением тасков из переписок, сервисом для построения карьерных траекторий до желаемых позиций в перспективе и сборки команд под проекты.


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

                Самое читаемое