Как стать автором
Обновить

Компания Проектная школа программирования GoTo временно не ведёт блог на Хабре

Сначала показывать

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

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

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

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

image

10 дней с виртуальными козами, фильтрами для сканера, матными драйверами для принтера, торрент-телевизором и прочим абсурдом с не менее прекрасной вечерней социализацией в виде совместной закваски капусты, маринования яиц, гамания и кодревью.
Читать дальше →
Всего голосов 17: ↑5 и ↓12-1
Комментарии0

ДомоДанные: как анализ данных используется в архитектуре и урбанистике

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

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


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



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


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

Читать дальше →
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

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

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

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


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


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


image

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

Сэм Альтман, президент Y Combinator: Продуктивность

Время на прочтение8 мин
Количество просмотров13K
image

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

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

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


Совсем не важно, как быстро вы движетесь к цели, если она не является стоящей. Выбор правильного объекта это самый важный аспект продуктивности и зачастую самый игнорируемый. Так что действительно задумайтесь об этом! Мыслить самостоятельно непросто, однако, стоит только начать — дальше будет легче.
Читать дальше →
Всего голосов 16: ↑16 и ↓0+16
Комментарии11

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

Время на прочтение8 мин
Количество просмотров51K
image

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

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

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

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

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

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

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

Алан Кей: крутым концепциям тоже нужна любовь

Время на прочтение17 мин
Количество просмотров6.6K
image

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

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

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

Ричард Хэмминг: «Необъяснимо высокая эффективность математики»

Время на прочтение23 мин
Количество просмотров49K
«Это самое глубокое эссе, которое я видел относительно философии науки; на самом деле, оно важно для всего нашего понимания мысли, познания или реальности.»

image

Пролог


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

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

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

Из этих ранних попыток объяснить мир постепенно возникла философия, также как и современная наука. Не то чтобы наука объясняет «почему» вещи таковы, как они есть — гравитация не объясняет «почему» предметы падают, но наука дает нам столь детальное объяснение «каким образом» это происходит, что у нас появляется чувство, будто мы знаем «почему». Давайте проясним; море связанных между собой фактов позволяет науке сказать «почему» вселенная именно такая.
Читать дальше →
Всего голосов 43: ↑39 и ↓4+35
Комментарии76

Пол Грэм: мои кумиры

Время на прочтение9 мин
Количество просмотров6.1K
У меня в запасе есть несколько тем, о которых можно писать и писать. Одна из них это «кумиры».

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

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

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

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

Джэк Лэмберт


image

Всего голосов 12: ↑10 и ↓2+8
Комментарии3

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

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

image

Все научные процессы и знания носят этот характер: это попытки «увидеть» и представить вещи очень точно с разных точек зрения, которые не являются частью наших разумных догадок о мире. Мы хотим сделать невидимое видимым. Большую часть истории человечества наши теории о себе и о мире, в котором мы живем, были, в основном, построены на необоснованных убеждениях, которые служили утешительными историями. Несколько лет назад мы обнаружили новый способ видения, который позволил нам воспринимать физический мир как бы «из космоса» с гораздо меньшим количеством предрассудков. В XXI веке нам нужно не только сделать это для физического мира, но и понять наше человеческое состояние словно смотрим на него «из космоса», без каких-либо утешительных историй, но с более глубоким пониманием того, как нам бороться с нашей человеческой природой и воспитанием.
Читать дальше →
Всего голосов 11: ↑11 и ↓0+11
Комментарии3

С <заблокированного мессенджера> — в Matrix

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

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


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

Читать дальше →
Всего голосов 29: ↑17 и ↓12+5
Комментарии31

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

Время на прочтение2 мин
Количество просмотров15K
«He who controls the past, commands the future. He who commands the future, conquers the past.»

image

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

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

Под катом — обзор роликов с видением будущего от Intel, Microsoft, Google, Citrix.
Всего голосов 14: ↑13 и ↓1+12
Комментарии14

Для новичков: 5 советов по GitHub

Время на прочтение3 мин
Количество просмотров21K
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 (для сохранения и выхода). Чтобы избежать боли, вы можете просто выбрать другой текстовый редактор.
Всего голосов 30: ↑16 и ↓14+2
Комментарии21

Дональд Кнут: вот это поворот

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

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

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

Это одна из моих любимых фраз. Своего рода история всей моей жизни — это совершение ошибок и попытки научиться чему-то на них. Эту фразу спроектировали в форме суперэллипса, который является одним из великих открытий Пита Хайна. Этот эллипс более полный и он использовался во многих архитектурных изделиях.
Всего голосов 58: ↑54 и ↓4+50
Комментарии17

Алан Кей и Марвин Мински: Computer Science уже имеет «грамматику». Нужна «литература»

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

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

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

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

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

Как заметил Фрэнк Смит, литература начинается с идей, которые стоит обсуждать и записывать; она часто частично генерирует представления и расширяет существующие языки и формы; это приводит к новым идеям о чтении и письме; и, наконец, к новым идеям, которые не были частью первоначального мотива.
Всего голосов 18: ↑16 и ↓2+14
Комментарии3

Алан Кей (и коллективный интеллект Хабра): какие книги формируют мышление тру инженера

Время на прочтение3 мин
Количество просмотров36K
image

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

Ключевой частью инженерии является любовь к тому, чтобы делать вещи, особенно к тому, чтобы делать их сразу же и делать их хорошо. Большая часть инженерии возникла из “tinkering” (aka “hacking”), добавив к этому желания «принципиального проектирования и создания», «целостности» и т. д. Все великие инженеры, которых я знаю лично, имеют глубокие моральные убеждения касательно того, что они делают, и почему это «должно быть сделано как можно лучше». Часть наложения темперамента на науку это своего рода «лабораторная крыса», которая наиболее счастлива, когда она в курсе эксперимента или создания нового экспериментального аппарата.
Всего голосов 21: ↑20 и ↓1+19
Комментарии35

Алан Кей: как бы я преподавал Computer Science 101

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


image

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

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

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

Я работаю на полставки на кафедре вычислительной техники Калифорнийского университета несколько лет (по сути я профессор, но мне не нужно ходить на заседания кафедры). Периодически я веду занятия, иногда у первокурсников. За эти годы и без того низкий уровень любопытства к Computer Science значительно снизился (но также возрос уровень популярности, поскольку вычислительная техника рассматривается как путь к хорошо оплачиваемой работе, если вы умеете программировать и получили сертификат в лучшей 10-ке школ). Соответственно, ни один студент ещё не жаловался на то, что первым языком в Калифорнийском университете является С++!
Читать дальше →
Всего голосов 18: ↑14 и ↓4+10
Комментарии9

Пишем небесных пчелок на Cloud Haskell

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

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

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

Под катом введение в p2p cloud haskell, немножко функционального стека прототипирования РС, мотивация и «но зачем».
Читать дальше →
Всего голосов 26: ↑26 и ↓0+26
Комментарии3

Считалка Иосифа Флавия: кого убить первым

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

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

(Во время написания поста погибло дофига нарисованных солдатиков).
Всего голосов 17: ↑14 и ↓3+11
Комментарии22

Алгоритмы в индустрии: теория формальных языков и чат-боты

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

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




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

А под катом — палиндроматические сэндвичи, алгоритмизированные официанты, немного теории формальных языков и рассказ о том, к чему мы это все.
Читать дальше →
Всего голосов 16: ↑16 и ↓0+16
Комментарии4

Итоги MentorHack: чат-бот по выделению тасков из диалогов, сервисы для построения карьерных траекторий и команд

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

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


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