Search
Write a publication
Pull to refresh
27
0.1
Юлия Горшкова @Yuuri

Люблю котиков, языки, ФП и биоинформатику

Send message

Зависимые типы в Haskell: почему это будущее разработки программного обеспечения

Reading time15 min
Views16K


В Serokell мы занимаемся не только коммерческими проектами, но стараемся изменить мир к лучшему. Например, работаем над улучшением главного инструмента всех хаскелистов – Glasgow Haskell Compiler (GHC). Мы сосредоточились на расширении системы типов под впечатлением от работы Ричарда Айзенберга "Зависимые типы в Haskell: теория и практика".


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

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

Фантастика и фентези за два с половиной года, почти сто хороших книг

Reading time22 min
Views250K
На этот пост меня подтолкнула публикация «Почему я ворую книги, бедные авторы, и как это исправить», а именно — скепсис и возражения на мой комментарий о том, что я не читаю плохие книги. Мне предложили рассказать, как я выбираю книги для чтения и что именно читаю. Ну я и повелся.
Оформить список было сравнительно просто, FBReader любезно хранил на GoogleDrive все скачанные книги с того момента, как там появилась эта услуга. Предлагаю вашему вниманию список прочитанного мной за 2,5 года из жанров фентези и фантастики.
Читать дальше →

Демистификация принципов квантовых вычислений

Reading time11 min
Views24K

«Думаю, я смело могу сказать, что квантовую механику никто не понимает», — Ричард Фейнман


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

Кишечная палочка на диете из СО2: новый инструмент в борьбе с глобальным потеплением?

Reading time12 min
Views8.7K


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

Я пережила выгорание, или Как остановить хомячка в колесе

Reading time8 min
Views61K
Привет, Хабр. Не так давно я с большим интересом прочла здесь несколько статей со здравыми рекомендациями заботиться о сотрудниках до того, как они «сгорят», перестанут выдавать ожидаемый результат и в конечном итоге приносить пользу компании. И ни одной — с «другой стороны баррикад», то есть от тех, кто действительно выгорел и главное, справился с этим. Я — справилась, получила рекомендации от бывшего работодателя и нашла работу ещё лучше.

Собственно, что делать руководителю и команде, достаточно хорошо написано в «Сгоревшие сотрудники: есть ли выход» (uyga) и «Гори, гори ясно, пока не погасло» (Lisichkina). Краткий спойлер от меня: достаточно быть внимательным руководителем и заботиться о сотрудниках, остальное — разные по степени эффективности инструменты.

Но я убеждена, что ≈80% причин выгорания лежат в личностных особенностях сотрудника. Вывод основан на моём опыте, но думаю, это справедливо и для других выгоревших. Более того, мне кажется, что более ответственные, переживающие за своё дело и внешне перспективные, покладистые работники выгорают чаще, чем остальные.

image

Аллегория с хомячком может показаться кому-то обидной, но она наиболее точно отражает всё произошедшее. Сначала хомячок радостно прыгает в колесо, потом от скорости и адреналина кружится голова, а потом в его жизни остаётся только колесо… Собственно, как я слезла с этой карусели, а также честная рефлексия и непрошеные советы, как пережить выгорание — под катом.
Читать дальше →

Человеческое сознание. Перенести нельзя скопировать?

Reading time52 min
Views21K

Предыдущая статья на эту тему вызвала к жизни бурное обсуждение в количестве более четырехсот комментариев, среди которых, как водится, не было ни одного умного (шутка). В принципе, это и неудивительно. Такая же ситуация обстоит, например, с лингвистикой. Как говаривал гениальный и увы, уже покойный академик Андрей Зализняк, поскольку каждый человек свой язык знает, а лингвистика она про язык, то почему бы ему и не разбираться в ней, так сказать, априори. И как мы знаем, также уже почивший сатирик Михаил Задорнов со своими изысканиями в области русского языка не даст соврать:

«А слово «Богатырь» образовано из двух слов – «бог» и «тырить».

С самосознанием, сознанием, самоосознанием, самостью, внутренним «я», личностью — дело обстоит примерно также. Поскольку это всё есть внутри головы почти у каждого из нас, то почему бы нам не родить ещё парочку-тройку умных мыслей и предположений по этому поводу, коль скоро философы спорят на эту тему уже две тысячи лет, а учёные и психологи лет двести и всё никак не могут докопаться до истины. Ещё правда, есть нейробиологи-томограферы, которые всё делают через томограф, но это каста относительно молодая и в основном они смотрят «где» и «что» в голове происходит, не объясняя «как». У них на это, правда, есть свои резоны, к которым мы ещё вернемся.
Читать дальше →

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

Reading time12 min
Views43K

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




Неудивительно, что у квантовой физики есть репутация странной и контринтуитивной науки. Мир, в котором мы живём, не кажется нам квантово-механическим. И до XX века все предполагали, что классические законы физики, выведенные Исааком Ньютоном и другими учёными – согласно которым у объектов всегда имеются точно определённые позиции и свойства – работают на всех масштабах. Но Макс Планк, Альберт Эйнштейн, Нильс Бор, и другие их современники обнаружили, что в самом «низу», среди атомов и субатомных частиц эта конкретика исчезает, превращаясь в кашу из возможностей. Атому, к примеру, обычно нельзя приписать определённое местоположение – мы можем лишь рассчитать вероятность найти его в том или ином месте. Возникает неприятный вопрос: и как же квантовые вероятности объединяются в чёткую картину классического мира?
Читать дальше →

Что такое пространство-время на самом деле?

Reading time22 min
Views122K

Перевод поста Стивена Вольфрама "What Is Spacetime, Really?".
Выражаю огромную благодарность Кириллу Гузенко KirillGuzenko за помощь в переводе и подготовке публикации.


Примечание: данный пост Стивена Вольфрама неразрывно связан с теорией клеточных автоматов и других смежных понятий, а также с его книгой A New Kind of Science (Новый вид науки), на которую из этой статьи идёт большое количество ссылок. Пост хорошо иллюстрирует применение программирования в научной сфере, в частности, Стивен показывает (код приводится в книге) множество примеров программирования на языке Wolfram Language в области физики, математики, теории вычислимости, дискретных систем и др.

Содержание


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

Есть много различных моментов в теории, указывающих, что общая теория относительности — не последняя точка в истории о пространстве-времени. И в самом деле, пускай мне нравится ОТО как абстрактная теория, однако я пришел к мысли, что она, возможно, на целый век увела нас от пути познания истинной природы пространства и времени.

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

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

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

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

Эволюционирующие клеточные автоматы

Reading time22 min
Views38K


Соединим клеточные автоматы с генетическим алгоритмом и посмотрим, что из этого получится.

В статье присутствуют Gif (трафик!) и контрастные картинки. У эпилептиков может случиться эпилептический припадок.
Читать дальше →

Книги по психологической самопомощи: есть ли в них хоть какой-то смысл, и, если да, какие выбрать?

Reading time18 min
Views77K
Многие не любят психологов и психологию, но немногие отрицают наличие у людей [вообще, а не у себя лично] психологических «заморочек». На этом фоне идея разобраться с этими сложностями самостоятельно может выглядеть привлекательно. Этим пользуются авторы и издатели, предлагающие разного рода «книги по самопомощи».


Что под катом: обзор литературы, посвящённой исследованию [не]эффективности самостоятельной работы над психологическими проблемами по книгам (спойлер: эффективна, но с некоторыми оговорками), несколько списков книг, которые (опять же, с оговорками) можно для этих целей использовать.
Читать дальше →

Современная игра для NES, написанная на Lisp-подобном языке

Reading time10 min
Views8.5K
What Remains — это повествовательная игра-адвенчура для 8-битной видеоигровой консоли NES, выпущенная в марте 2019 года как бесплатный ROM, запускаемый в эмуляторе. Она создавалась небольшой командой Iodine Dynamics на протяжении двух лет с перерывами. В настоящий момент игра находится на этапе реализации в «железе»: мы создаём из переработанных деталей ограниченный набор картриджей.


В игре есть 6 уровней, на которых игрок ходит по нескольким сценам с картами с прокруткой в четырёх направлениях, общается с NPC, собирает улики, знакомится их миром, играет в мини-игры и решает простые головоломки. Я был главным инженером проекта, поэтому столкнулся со множеством трудностей при реализации видения команды. Учитывая серьёзные ограничения оборудования NES, достаточно сложно создавать для неё любую игру, не говоря уже о проекте с таким количеством контента, как в What Remains. Только благодаря созданным полезным подсистемам, позволяющим скрыть эту сложность и управлять ею, мы смогли работать как одна команда и завершить игру.


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

Модели дженериков и метапрограммирования: Go, Rust, Swift, D и другие

Reading time16 min
Views30K

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

Манипуляция сознанием. Почему так просто?

Reading time20 min
Views132K


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

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

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

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

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

Это не статья по психологии и не статья по философии, хотя бы потому, что в этой статье не будет приведено ни одной ссылки.
Читать дальше →

Типизируя техническое интервью

Reading time9 min
Views9.5K

Предлагаю читателям "Хабрахабра" перевод статьи Kyle Kingsbury, a.k.a "Aphyr".
Ранее: Заклиная техническое интервью


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

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

А в вашей жизни были приключения интереснее, чем в компьютерных играх?

Reading time6 min
Views57K
Наш ветвер на низком уровне не отличает собственный живой опыт от выдумки. То есть того, что мы видим в играх, фильмах и книгах. Мозгу всё равно. Что случилось в последней игре — так же легло в копилку опыта, как и то, что случилось вчера в офисе. Благодаря развитию IT и своему воображению, мы можем от первого лица переживать опыт, который никогда нельзя испытать в реальности.

Проиллюстрирую рядом воспоминаний. Вспомните траву под ветром в Сталкере и пробежку до 4-го энергоблока под переговоры военных; финальные диалоги с Элизбет из Биошока; многоэтажный остров Хэнша из Deus Ex; практически все первые впечатления от колоний Mass Effect; перестройку сознания в «Трассе-60»; концовку первой книги «Ведьмака». И так далее.



Возможно, почти каждый из нас был в сотнях миров Гипериона, наблюдал за дисфункцией реальности и шел к Нижнему Краю на «Внеполосном». Мы вместе ходили с Морриган в самоубийственную атаку на дракона; вместе спасали друзей в Far Cry; вылетали на террор сектоидов в Лиме и ехали вместе с Каином в такси в V:tM.

Это и многое другое рождает парадокс suspension of disbelief — приостановку неверия.
Читать дальше →

Почему люди не используют формальные методы?

Reading time20 min
Views15K
На Software Engineering Stack Exchange я увидел такой вопрос: «Что мешает широкому внедрению формальных методов?» Вопрос был закрыт как предвзятый, а большинство ответов представляли собой комментарии типа «Слишком дорого!!!» или «Сайт — это не самолёт!!!» В каком-то смысле это верно, но мало что объясняет. Я написал эту статью, чтобы дать более широкую историческую картину формальных методов (FM), почему они на самом деле не используются и что мы делаем для исправления ситуации.

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

«Операционные системы: зачем они инженеру»

Reading time10 min
Views40K
Подвигло меня к написанию этого материала публикация «История языков программирования: как Fortran позволил пользователям общаться с ЭВМ на «ты».
Читать дальше →

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

Reading time12 min
Views67K

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



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

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

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

Синдром самозванца

Reading time19 min
Views81K

«Как часто вы ощущаете синдром самозванца?
Ежедневно / Каждую неделю / Раз в месяц / Никогда»

В апреле 2016 года Джессика Баркер провела в Твиттере опрос на тему, часто ли специалисты по информационной безопасности сталкиваются с «синдромом самозванца». Результаты этого опроса легли в основу доклада Джессики на SteelCon 2016.

Вряд ли один этот твит можно квалифицировать как полноценное исследование, однако в качестве беглого анализа он сгодится. Так вот, опрос показал, что 84% безопасников ощущают данный синдром не реже раза в месяц. Одно это позволяет классифицировать его как одну из наиболее актуальных психологических проблем, с которыми можно столкнуться в IT.

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

Попробуем разобраться в проблематике под катом.
Читать дальше →

Привет из мезозоя

Reading time11 min
Views35K
image

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


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


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


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

Information

Rating
2,834-th
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity

Specialization

Software Developer
Senior
From 1,234,567 ₽
C++
Haskell
Functional programming
Compilers