• Core Dump — видео канал о компьютерной науке


      Здравствуйте, меня зовут Дмитрий Карловский и я… иногда выступаю на конференциях, митапах и даже сам являюсь организатором одного из них (PiterJS). Короче — побывал с разных сторон баррикад. Как правило, такие мероприятия фокусируются вокруг какой-то узкой технологии, языка или даже фреймворка.


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


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

      Читать дальше →
    • Почему мы выбрали MobX, а не Redux, и как его использовать эффективнее

        Меня зовут Назим Гафаров, я разработчик интерфейсов в Mail.ru Cloud Solutions. На дворе 2020 год, а мы продолжаем обсуждать «нововведения» ES6-синтаксиса и преимущества MobX над Redux. Существует много причин использовать Redux в своем проекте, но так как я не знаю ни одной, расскажу о том, почему мы выбрали MobX.

        Почему?
      • Мелкая питонячая радость #7: три штуки по цене одной — консольная анимация, алгоритмы и отладка

          На этой неделе достаточно крупных мелких радостей не нашлось, зато нашлись 3 совсем мелкие мелкие радости.


          termtosvg


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


          image


          Традиция, бесспорно, хорошая и правильная. Только записывать такие анимации бывает трудно/лень/некогда. Авторы termtosvg пристрелили всех зайцев одим выстрелом и дали программистам прекрасную штуку для записи консольных демок.

          Читать дальше →
          • +31
          • 8.1k
          • 9
        • Хакерский фольклор

          • Translation

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

          Бо́льшая часть статьи взята из Википедии, но найти пояснения не так-то просто, если не знаешь, что искать.
          Читать дальше →
        • Простое и строгое доказательство 26/10 измерений в теории струн

          • Translation


          … вы нигде не найдете.


          По крайней мере, у меня не получилось сделать его таковым. Требование определенного и большого числа пространственно-временных измерений (26 для более простой бозонной теории струн и 10 для более сложных суперструн) это один из наиболее неправильно понимаемых аспектов, который, собственно, является основным источником негативных чувств к данной теории. Придется очень постараться, чтобы объяснить происхождение этих странных чисел неспециалистам.

          Читать дальше →
          • +25
          • 11.9k
          • 8
        • Четыре типажа программистов

            Привет.


            Я впервые пишу в поток об управлении и найме персонала. Речь пойдет об одном из способов классифицировать ваших будущих или действующих программистов. Мой основной тезис: все разработчики, грубо говоря, делятся на 4 больших типажа и каждому из этих типажей есть своя область применения. Попытка направить неправильный типаж на решение неподходящих для него задач ведет к провалу (неэффективная работа, или сотрудник покидает команду). Хотите знать почему так — добро пожаловать под кат. Приготовьтесь, текста много.

            Читать дальше →
          • Топ IT-книг прошлого века, которые актуальны до сих пор

              «Физические законы — это не Python, их не изменить в новых версиях, то есть материал в книге (по электронике) будет актуален всегда».
              ne555, из комментариев на Хабре

              image

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

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

              Вдохновившись историей «второго рождения» учебника по электронике 1979 года (а точнее, комментариями к ней), мы решили собрать для вас подборку книг по электронике, которым в 2020 году исполнилось от 25 до 69 лет, но которые при этом не утратили своей актуальности. А чтобы не ограничиваться собственными нейтрально-редакторскими вводными, мы попросили прокомментировать эту подборку победителя «ТехноТекста-2019» в номинации «Научно-популярное», старожила Хабра, разработчика интегральных микросхем для космоса и потомственного инженера Валерия Шункова aka @amartology.

              Осторожно: прочтение книг из этой подборки может вызвать острое желание взяться за паяльник. Вдохновляйтесь, творите и делитесь своим опытом с Хабром, ведь именно по просьбе сообщества мы добавили в список номинаций «ТехноТекста-2020» новую — «Железо и его разработка».
              Читать дальше →
            • Полный перевод книги про построение сообществ: «Социальная архитектура»

              • Translation
              «Это эссенция тридцатилетнего опыты разработки программного обеспечения.»
              Приветствую, Хабр.

              Хочу представить лучшую (единственную) книгу по построению сообществ, написанную тру ИТишником.

              Для себя я нашел применимые инструменты для анализа сообщества/организованности «на лету»(я и еще более 100 человек провели «аудит» Хабра), а так же подсказки, какой "генотип" закладывать при разработке нового продукта/брэнда/движухи. Читайте, сохраняйте, расшаривайте и пишите свой отзыв.

              Об авторе


              «К сожалению, мы не выбираем себе смерть, но мы можем встретить ее достойно, чтобы нас запомнили, как мужчин.»
              — к/ф «Гладиатор»



              Питер Хинченс (Pieter Hintjens) — бельгийский разработчик, писатель. Занимал должность CEO и chief software designer в iMatix, компании, производящей free software, такие как библиотека ZeroMQ (библиотека берет на себя часть забот о буферизации данных, обслуживанию очередей, установлению и восстановлению соединений и прочие), OpenAMQ, Libero, GSL code generator, и веб-сервиса Xitami.

              • Автор более 30 протоколов и распределенных систем.
              • Основатель проекта Edgenet по созданию полностью безопасной, анонимной глобальной P2P-сети.
              • Президент ассоциации Foundation for a Free Information Infrastructure (FFII), которая воевала с патентным правом.
              • CEO сервиса по созданию собственных вики-проектов Wikidot.
              • Он был активистом open standards и основателем Digital Standards Organization.
              • Питер в 2007-м был назван одним из 50 самых влиятельных людей в области «Интеллектуальная собственность».

              Читать и добавить в избранное
              • +11
              • 9.2k
              • 6
            • Как нарисовать звезду (и не только) в полярных координатах

                Вопрос о формуле для многоугольника в полярных координатах регулярно возникает на тематических ресурсах — и так же регулярно остаётся без внятного ответа. В лучшем случае попадается решение через функцию остатка от деления — что не является «чистым» с математической точки зрения, поскольку не позволяет производить над функцией аналитические преобразования. Видимо, настоящие математики слишком заняты решением проблем тысячелетия и поисками простого доказательства теоремы Ферма, чтобы обращать внимание на подобные банальные задачи. К счастью, в этом вопросе воображение важнее знания, и для решения этой задачи не нужно быть профессором топологических наук — достаточно знания школьного уровня.
                Дальше больше картинок
              • Параллели между Factorio и проектированием ПО

                • Translation

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

                Я играл в две такие игры. Первая — это Shenzhen.io. Она похожа на то, чем бы мог заниматься инженер, проектирующий встроенные устройства. Инженер решает головоломки путём писания ассемблерного кода для устройств с низким энергопотреблением. В этой игре здорово то, что её разработчики убрали из неё раздражающие аспекты написания кода и его ввода в эксплуатацию.

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

                Должен ли проектировщик ПО сыграть в Shenzhen.io? Геймплей этой игры не для каждого. Некоторым он «слишком напоминает работу». В конце концов, играя, хочешь расслабиться, а не работать над задачами, которые уже выполняешь по восемь часов в день. Несмотря на это, я считаю, что стоит сыграть, просто чтобы понять, насколько интересной становится задача, когда требования понятны, а средства разработки — быстры. Все знают, что инвестирование в развитие и инструменты оправдывает себя, но удовольствие от игры подкрепляет это ощущение.

                Вторая игра — это Factorio, которую выпустили в прошлую пятницу, хотя в раннем доступе в неё можно было играть уже почти четыре года. Те, кто в неё играл, сейчас, вероятно, недоумевают — ведь это игра о постройке фабрики, а не о кодинге. Игрок работает с конвейерами, металлом, нефтепродуктами и создаёт ресурсы, необходимые для изготовления космического корабля.
                Читать дальше →
              • Фрактальная шизофрения


                  Нет, я не болен. По крайней мере так говорит голос в моей голове. Я наркоман. Вот уже более 15 лет я сижу на игле. Употребляю много, жёстко, до обморочного состояния. Докатился до того, что в последнее время не стесняюсь ни друзей, ни жены, ни детей… Двоих детей! Не люблю бадяженый, люблю чистый, без примесей. За годы перепробовал многое, но в последнее время остановился в поисках. Забавно осознавать, что от одного и того же получаешь одновременно и боль, и радость. Мне бы в лечебку, я даже хочу, я даже знаю в какую. Знаете такие, где продолжаешь употреблять, но под присмотром?

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


                    Представьте что у вас команда специалистов, которая по принципу code-first делает систему с множеством бизнес-историй на базе микросервисов. Все люди опытные, всем есть что делать кроме того как писать документации или спецификации на разработанный API. И все изначально знают, что если захотел использовать какой сервис, то надо заглянуть в код и потом спросить в общем чате если что непонятно. Знакомая ситуация не так ли? -))) И в целом все нормально, если бы со временем не росла команда, не росло количество сервисов и функций, не появлялись баги от бизнеса и тестеров, не требовалось предоставлять API для интеграции смежным командам...


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

                    Читать дальше →
                  • Как клеить по 13 девушек в час, используя машинное обучение и Tinder

                      *Исключительно ради изучения Machine Learning, разумеется. Под немного недовольным взглядом любимой жены.

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

                      Я решил, что это неплохой способ немного пощупать машинное обучение на новой видеокарте. Останется только объяснить жене, что мне не нужна новая женщина потолще, а я просто тренирую нейросети.


                      Читать дальше →
                    • Задача Танежи: новый этап развития математики?

                      Введение


                      Математика XXI века принципиально отличается от античной. И речь идёт не просто о новых достижениях в геометрии и арифметике — науках, базовые принципы для которых сформированы тысячелетия назад. С появлением вычислительной техники изменился приоритет, и теория чисел из области «упражнений для развития ума» превратилась в науку, от достижений которой зависит мировая экономика.

                      По задаче о простых близнецах, по ABC-гипотезе, проблеме Гольдбаха-Виноградова и некоторым другим важным математическим проблемам новые научно-популярные публикации выходят ежедневно. С одной стороны, эти задачи выдержали проверку временем, с другой — регулярный пиар поддерживается шестизначными наградами за решение каждой. Но 4 года назад в трудах одного бразильского математика была, косвенно и незаметно для него самого, поднята проблема, которая может стать целью и смыслом жизни для математиков нынешнего столетия. Речь идёт о классификации трансцендентных чисел относительно замыкания конечных множеств алгебраических чисел.
                      Читать дальше →
                    • Рудольфу Свореню — 89! Как книга «Электроника шаг за шагом» — изменила жизнь людей

                        Про Рудольфа Свореня (автора книги «Электроника шаг за шагом») мы делали несколько постов. И в частности про кампанию по переизданию этой культовой книги. В анкету на предзаказ уже отметилось почти 500 человек, охват удивительный — города от Калининграда, до Сахалина. Из Канады и США. Из эстонского Таллина. Киев, Харьков. Минск. Вильнюс. Несколько заявок из Казахстана.

                        И в частности некоторые отзывы:

                        "Читал несколько раз и каждый раз обнаруживал что-то новое. Даже после «искусства схемотехники», которая по сути является ВУЗовским учебником, перечитывать «Шаг за шагом» было поучительно. Как она на меня повлияла: начинал как электронщик, но сейчас работаю DSP-программистом. Если бы не прочитал её и не подхватил бы её дух — вряд ли стал бы разработчиком. Благодаря этой книге я проникся системой ценностей инженеров и стал инженером."

                        "Читал почти все книги. Изменила жизнь..."

                        "Мой первый электро букварь :)"

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

                        "Прочитана до дыр. Книга дала серьезный толчок для дальнейшего развития в этой области. Именно из-за этой книги я связал свою жизнь с электроникой. Спасибо!"

                        "Электроника шаг за шагом — вдохновляет к творчеству."

                        В это воскресенье 29 мая — у Рудольфа Анатольевича был День Рождения — 89 лет!, в честь этого дня — мы решили сделать небольшой подарок — и попросили людей написать отзыв о том, как именно книги Р.А. повлияли на их жизнь — на выбор будущей профессии. И для тех кто не читал книгу — было бы интересно узнать, что же такого особенного в этой книге что она смогла объединить стольких людей?
                        Читать дальше →
                      • Анализ дзета-функции Римана

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

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

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


                            Читать дальше →
                          • Дешёвый грязный трюк, подаривший цветную графику первым домашним компьютерам

                            • Translation

                            Пионер видеоигр Алан Элкорн рассказывает о том, как показал Стиву Возняку хак, позволивший компьютеру Apple II работать с цветами, и откуда взялся знаменитый звук «блип» в игре Pong



                            Домашняя консоль Atari Pong, поступившая в продажу в магазины The Sears под брендом Tele-Games в 1975

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

                            Наиболее известным примером использования артефактных цветов NTSC служит компьютер Apple II 1977 года. Использование этого хака Стивом Возняком в данном компьютере привлекло к нему широкое внимание. Позднее его использовали в компьютерах IBM PC и TRS-80 Color. Однако мало кто знал, откуда взялась эта идея, поэтому мы сильно взволновались, когда комментарий на эту тему к той статье оставил легенда электроники и видеоигр, Алан Элкорн. Оказывается, предком первой цветной компьютерной графики можно считать дешёвый испытательный прибор, который использовали в калифорнийских телеремонтных мастерских в 1960-х. Журнал IEEE Spectrum пообщался с Элкорном, чтобы узнать больше подробностей.
                            Читать дальше →
                          • Почему бы не сделать свой Lisp для веба?

                            Вот есть JavaScript — прекрасная вещь. И прекрасная она на мой взгляд по большей части потому, что дебаггер и отладочные инструменты встроены в каждый Браузер. Без дебаггера и инспектора DOM-дерева было гораздо тяжелее что-либо разрабатывать на JavaScript.


                            Вот я и решил запилить свой Lisp, но с хорошим дебаггером. Взял маленький, простенький littlelisp и отрефакторил его на 99%. Заточил под пошаговое выполнение и создал свою IDE, простую но работающую.


                            В итоге получилось следующее.


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