User
Как освоить Vim?
Я со всей уверенностью могу заявить о том, что Vim позволил мне повысить эффективность в деле написания программ. Работать стало удобнее (ниже я расскажу об этом более подробно). Я никому не хочу навязывать Vim, но очень рекомендую освоить этот редактор всем, кто занимается программированием, работает в сфере Data Science, в общем — тем, кто так или иначе пишет и редактирует некий код.
![](https://habrastorage.org/webt/2l/bg/vv/2lbgvvadg5nqlso21m-sb5n7o0e.png)
Если вам очень хочется узнать о том, стоит ли вам использовать Vim, и о том, кто и для чего им реально пользуется — взгляните на этот материал (кстати, не позвольте его названию, «Не пользуйтесь Vim», ввести себя в заблуждение). Ещё можете посмотреть это видео, которое, кстати, подготовил сам Люк Смит.
А теперь, учитывая всё вышесказанное, предлагаю поговорить о том, что такое, на самом деле, Vim!
Внешняя алгебра, которую мы заслужили. Часть 1 — симплексы и границы
![](https://habrastorage.org/r/w780/getpro/habr/upload_files/2a8/bb9/687/2a8bb96870c4613bc5b69da265c1281f.jpg)
В данной статье мы расскажем о том, что такое внешняя алгебра, и для чего она нужна. Удивительно, но на Хабре почти нет статей о внешней алгебре при том, что ее прикладная ценность ничуть не меньше, например, реляционной алгебры.
Наше описание отличается от традиционного изложения в учебниках тем, что мы хотим наполнить внешнюю алгебру прежде всего информатикой, а не геометрией или физикой. Конечная цель статьи - представить произвольный граф в виде алгебраического выражения и показать, что свойства графа можно вычислять как свойства данного выражения. На пути к этому мы познакомимся с основными идеями внешней алгебры.
Почему функциональное программирование такое сложное
Я несколько раз начинал читать статьи из серии «Введение в функциональное программирование», «Введение в Теорию Категорий» и даже «Введение в Лямбда Исчисление». Причем и на русском, и на английском. Каждый раз впечатление было очень сходным: во-первых, много новых непонятных слов; во-вторых, много новых определений, которые возникают из ниоткуда; в-третьих, совершенно непонятно, как это использовать.
Самым непонятным и зубодробительным оказалось, наверное, Теория Категорий. Я освоился в ней только с третьего подхода. В первые два раза я честно все прочитал, кажется понял, но т.к. никакой связки с реальной жизнью она не имела, то спустя неделю она благополучно полностью выветривалась.
Попытки использовать как-то в работе изученные концепции разбивались о полное непонимание, как применить полученное глубокое знание. Ведь, напомню, что парадигму ФП (где-то удобнее, где-то не очень, но) можно использовать практически в любом ЯП, совсем необязательно для этого изучать условный Хаскель.
Как и зачем работать медленнее? Метод Сергея Королёва
![](https://habrastorage.org/webt/my/ls/g5/mylsg54xdxg3uh1vhaiu6cdhfuy.jpeg)
Будущий «отец» советской космонавтики Сергей Королёв — по центру. Страсть к авиации у него зародилась в юности, когда он записался в планерный кружок. На его долю ещё выпадут тяжёлые испытания, но юношеский запал у него останется на всю жизнь.
«Можно сделать быстро, но плохо, а можно — медленно, но хорошо. Через некоторое время все забудут, что было быстро, но будут помнить, что было плохо. И наоборот.»
Сергей Королёв, конструктор
К этим словам можно было бы больше ничего не добавлять. Но после прочтения этой цитаты могут остаться вопросы, и у нас тут, в конце концов, не сборник «цитат успешных людей», поэтому я всё же осмелюсь продолжить. Ведь кто из нас не стоял когда-то перед дилеммой между принесением немедленных результатов и обеспечением высокого качества работы? Что ж, Сергей Королёв, одна из ключевых фигур в истории освоения человеком космоса, мог бы многое вам поведать.
Космос как смутное воспоминание
Интервью с Владимиром Лихачевым, отцом Николая Лихачева, более известного как Крис Касперски
Вот уже не в первый раз я приезжаю в гости к Владимиру Лихачеву, отцу Криса Касперски, чтобы проведать и навестить его. Во второй раз он мне не отказал и разрешил взять у него интервью с которым я и делюсь с Вами. Первично текст размещен в журнале «Системный Администратор», в который так любил писать Крис.
Отец Николая Лихачева, более известного как Крис Касперски, рассказывает о том, каким был его неординарный и знаменитый сын
– Планируете ли вы написать книгу о сыне? Если да, то о чем она будет и какие годы жизни сына вы бы хотели описать?
– Да, я планирую написать книгу. Это будут воспоминания о Крисе Касперски, охватывающие весь его жизненный путь. Детство и школьные годы будут по возможности описаны кратко. Постараюсь достаточно подробно остановиться на его творческом пути и его увлечениях.
– Правда, что Коля получил серебряную медаль, а не золотую и не пошел на выпускной в школе?
– Правда. Отношение в школе к Николаю было неоднозначное: кто-то относился к нему ревниво, с завистью. Одноклассники его часто не понимали, старшеклассники стеснялись признавать, что он в чем-то умнее их. Будучи девятиклассником, сын объяснял некоторым десятиклассникам сложные вопросы по химии, причем проще и понятнее, чем написано в учебнике и чем объясняли учителя.
Со многими учителями у него также были непростые отношения. С большим уважением сын относился к учителю физики, который вел еще и программирование, к учителю труда и к физруку. Однако из-за конфликта с некоторыми учителями в аттестате Николая появилось два прочерка – по физкультуре и ОБЖ. Поэтому он не пошел на выпускной вечер, объяснив так матери свой отказ: «Мама, я школу ненавижу».
Что такое Strict Aliasing и почему нас должно это волновать? Часть 2
Друзья, до запуска нового потока по курсу «Разработчик С++», остается совсем немного времени. Пришло время опубликовать перевод второй части материала, в которой рассказывается о том, что такое каламбур типизации.
Что такое каламбур типизации?
Мы дошли до того момента, когда мы можем задаться вопросом, зачем нам вообще могут понадобиться псевдонимы? Обычно для реализации каламбуров типизации, т.к. зачастую используемые методы нарушают правила строгого алиасинга.
![](https://habrastorage.org/webt/dz/u-/cd/dzu-cdwp2tjct7bc-stnxfnptpe.png)
Иногда мы хотим обойти систему типов и интерпретировать объект как другой тип. Переинтерпретация сегмента памяти в качестве другого типа называется каламбуром типизации (type punning). Каламбуры типизации полезны для задач, которым требуется доступ к базовому представлению объекта для просмотра, транспортировки или манипулирования предоставленными данными. Типичные области, в которых мы можем встретить использование каламбуров типизации: компиляторы, сериализация, сетевой код и т.д.
Топ-10 докладов конференции C++ Russia 2018: полные видеозаписи, слайды, комментарии
В этой статье вас ждёт десять лучших докладов от Андрея Александреску, Дэвида Вандервурда, Джона Калба и многих других.
Фичи компилятора C++, асинхронность, многопоточность, параллелизм, модель памяти, алгоритмы и STL, метапрограммирование и рефлекшен, огромное множество тем.
Всё это — записи с конференции C++ Russia, самой большой в истории. Восемь сотен участников, немаленький зал, спикеры с мировым именем. Прошёл год, но большинство докладов ничуть не утратило своей актуальности. Впрочем, и неудивительно — именно такие доклады и попадают в топ по оценке участников.
Формат таков:
- Обязательное видео на YouTube
- Слайды, если есть
- Подробное описание доклада на русском языке
- Краткая биография докладчика
Плюс у вас есть комментарии Хабра, чтобы обсудить увиденное. Реклама на ютубе отключена, никто не будет мешать. Есть всё, чтобы начать смотреть прямо сейчас.
Объяснение физической сущности явления «Подъёмная сила Крыла» без использования уравнения Бернулли
Критика существующего Теоретического объяснения Подъёмной Силы на крыле самолёта
Прослушав курс лекций МФТИ Факультет аэромеханики и летательной техники (ФАЛТ) «Введение в Аэродинамику» и прочитав несколько разных ВУЗовских учеников по «Аэродинамике» [1-3], я был озадачен рядом явных противоречий в объяснениях физики процесса обтекания потоком воздуха (газа или идеальной жидкости) различных твёрдых предметов и формирования подъёмной силы на крыле.
- Основной тиражируемой Версией образования подъёмной силы на крыле заявляется разность скоростей течения воздуха (жидкости) над крылом и под крылом, и вследствие этого возникает перепад давления согласно Закону Бернулли. При этом однозначно связывают через закон Бернулли расчётную скорость потока на поверхности крыла с инструментально регистрируемым давлением на крыло, игнорируя другие возможные объяснения на основе не менее базовых законов физики.
- При анализе обтекания идеальной невязкой жидкостью профилей в плоских течениях удивительным образом получали кратное повышение скоростей потока в сравнение с базовой скоростью V0. То есть опровергается закон сохранения энергии, так как энергия на разгон потока берётся ниоткуда, кратно превышая энергию набегающего на крыло потока. При этом игнорируется постулат гидродинамики, что по тому же закону Бернулли при истечении струи из-под уровня скоростной напор однозначно ограничивается сверху статическим напором в сосуде, то есть скоростной напор струи после разгона на крыле не может превысить статического давление сжатой при торможении среды.
Реверс-инжиниринг рендеринга «Ведьмака 3»
Часть 6. Sharpen
В этой части мы подробнее рассмотрим ещё один эффект постобработки из The Witcher 3 — Sharpen.
Sharpening делает изображение на выходе немного чётче. Этот эффект известен нам по Photoshop и другим графическим редакторам.
В The Witcher 3 у sharpening есть две опции: low и high. О разнице между ними я расскажу ниже, а пока давайте взглянем на скриншоты:
![image](https://3.bp.blogspot.com/-48w3LzzZxck/W-nij_Zw4-I/AAAAAAAABFo/PT4Ag91YHGcAO2yJkzsMNPxdxLw0zhJNACLcBGAs/s1600/05_sharpen_low_before.png)
Опция «Low» — до
![image](https://1.bp.blogspot.com/-OHL-u69mwLY/W-nikHvPR9I/AAAAAAAABFk/t4lEbIpGSyYMCtKj9o4hRuoqi5L853rnQCLcBGAs/s1600/06_sharpen_low_after.png)
Опция «Low» — после
Learn OpenGL. Часть 2.3. — Материалы
Пару дней назад я наткнулся на первую статью из этой серии уроков. К сожалению, переведены только начальные уроки, а все самое интересное (SSAO, PBR, тени) только впереди. Этот курс переводили три человека (теперь четыре), и я надеюсь, что кто-то из читателей поможет с переводом остальных частей. К сожалению, я не являюсь профессиональным переводчиком, по этом в тексте могут быть ошибки разного характера. Буду рад, если вы сообщите о них. Приятного чтения!
Игровая индустрия: полезные материалы для геймдевелопера от A до Z
Друг наших образовательных программ Михаил Пименов, CEO компании Wonder Games и Team Lead инди-проекта "Guard of Wonderland" сам не раз задававший себе эти вопросы, создал для себя выборку всевозможных материалов по индустрии геймдева. От полезных ресурсов, до сообществ, подкастов, книг и фильмов, которые призваны помочь понять, с чего начинается и чем заканчивается разработка игрового проекта. Объединив наши силы, мы с Мишей сделали эту статью с подборкой полезных материалов по игровой индустрии. Вы найдете подборку под катом.
![](https://habrastorage.org/files/a30/1a2/a3f/a301a2a3f01f4bd6b57f4adf1a256e45.jpg)
Information
- Rating
- Does not participate
- Location
- Красноярск, Красноярский край, Россия
- Date of birth
- Registered
- Activity