Зачем обычному программисту знать языки, на которых почти никто не пишет. Але...yaevents
Алексей Воинов, Яндекс
Закончил МГТУ им. Н.Э.Баумана в 1998 году. Посвятил часть своей жизни свободному программному обеспечению. Замечен в любви к языкам, как к алгоритмическим, так и к человеческим, как к естественным, так и к искусственным. Работает в Яндексе с 2009 года, занимается разработкой Яндекс.Почты.
Тема доклада
Зачем обычному программисту знать языки, на которых почти никто не пишет.
Тезисы
Есть категория алгоритмических языков, которые большинство программистов считает в лучшем случае странными. Это такие языки как Haskell, *ML, Lisp, Q. «Странные» языки не приживаются в промышленной разработке софта, потому что они не дают возможности писать стандартный «промышленный» код. Однако они бывают очень хороши для придумывания приёмов, которые помогают улучшить промышленный код. Впоследствии многие из них становятся стандартными промышленными. Знание «странных» языков очень полезно, когда в силу внешних обстоятельств сделать промышленный код радикально лучше невозможно, но его можно улучшать небольшими шагами.
Зачем обычному программисту знать языки, на которых почти никто не пишет. Але...yaevents
Алексей Воинов, Яндекс
Закончил МГТУ им. Н.Э.Баумана в 1998 году. Посвятил часть своей жизни свободному программному обеспечению. Замечен в любви к языкам, как к алгоритмическим, так и к человеческим, как к естественным, так и к искусственным. Работает в Яндексе с 2009 года, занимается разработкой Яндекс.Почты.
Тема доклада
Зачем обычному программисту знать языки, на которых почти никто не пишет.
Тезисы
Есть категория алгоритмических языков, которые большинство программистов считает в лучшем случае странными. Это такие языки как Haskell, *ML, Lisp, Q. «Странные» языки не приживаются в промышленной разработке софта, потому что они не дают возможности писать стандартный «промышленный» код. Однако они бывают очень хороши для придумывания приёмов, которые помогают улучшить промышленный код. Впоследствии многие из них становятся стандартными промышленными. Знание «странных» языков очень полезно, когда в силу внешних обстоятельств сделать промышленный код радикально лучше невозможно, но его можно улучшать небольшими шагами.
C++ CoreHard Autumn 2018. Заглядываем под капот «Поясов по C++» - Илья Шишковcorehard_by
Вот уже более двух лет мы создаём онлайн-специализацию по С++ на платформе Coursera. Её цель — обучить языку C++ с нуля до уровня, достаточного для решения практических задач, с которыми приходилось сталкиваться авторам в своей практике. В своём докладе я расскажу, как мы создаём наши онлайн-курсы, и уделю особое внимание техническим проблемам, которые нам пришлось решить в процессе создания автоматической системы проверки программ студентов.
React со скоростью света: не совсем обычный серверный рендерингTimophy Chaptykov
Расскажу о небольшом исследовании, в котором мы думали о том, можем ли мы себе позволить использовать React для отдельных элементов на сайте, как устроен серверный рендеринг в VK; и получилось ли связать одно с другим. Упомяну о строковых шаблонизаторах, виртуальной DOM и LR-парсерах.
Быстрые конструкции в Python - Олег Шидловский, Python Meetup 26.09.2014Python Meetup
В своем докладе Олег расскажет о замене стандартных функций на более быстрые и об ускорении работы python. Также продемонстрирует несколько примеров быстрых конструкций python.
Статический и динамический полиморфизм в C++, Дмитрий ЛевановYandex
На примере некоторых архитектурных решений Крипты Дмитрий расскажет о способах реализации полиморфного поведения в программах на C++, о преимуществах и недостатках этих способов, а также о новых возможностях C++11.
This document discusses improving MySQL application performance with Sphinx. It provides an introduction to Sphinx, describing it as a standalone full-text search engine that can be scaled horizontally and has many features beyond full-text search. It explains that Sphinx indexes data separately from MySQL and must be queried separately, though it can return attribute values to MySQL. The document outlines important facts about MySQL's index usage and limitations, and Sphinx's grouping, attribute storage, and block-based data organization to optimize attribute filtering. It provides an example comparing full-text search performance between MySQL and Sphinx.
C++ CoreHard Autumn 2018. Заглядываем под капот «Поясов по C++» - Илья Шишковcorehard_by
Вот уже более двух лет мы создаём онлайн-специализацию по С++ на платформе Coursera. Её цель — обучить языку C++ с нуля до уровня, достаточного для решения практических задач, с которыми приходилось сталкиваться авторам в своей практике. В своём докладе я расскажу, как мы создаём наши онлайн-курсы, и уделю особое внимание техническим проблемам, которые нам пришлось решить в процессе создания автоматической системы проверки программ студентов.
React со скоростью света: не совсем обычный серверный рендерингTimophy Chaptykov
Расскажу о небольшом исследовании, в котором мы думали о том, можем ли мы себе позволить использовать React для отдельных элементов на сайте, как устроен серверный рендеринг в VK; и получилось ли связать одно с другим. Упомяну о строковых шаблонизаторах, виртуальной DOM и LR-парсерах.
Быстрые конструкции в Python - Олег Шидловский, Python Meetup 26.09.2014Python Meetup
В своем докладе Олег расскажет о замене стандартных функций на более быстрые и об ускорении работы python. Также продемонстрирует несколько примеров быстрых конструкций python.
Статический и динамический полиморфизм в C++, Дмитрий ЛевановYandex
На примере некоторых архитектурных решений Крипты Дмитрий расскажет о способах реализации полиморфного поведения в программах на C++, о преимуществах и недостатках этих способов, а также о новых возможностях C++11.
This document discusses improving MySQL application performance with Sphinx. It provides an introduction to Sphinx, describing it as a standalone full-text search engine that can be scaled horizontally and has many features beyond full-text search. It explains that Sphinx indexes data separately from MySQL and must be queried separately, though it can return attribute values to MySQL. The document outlines important facts about MySQL's index usage and limitations, and Sphinx's grouping, attribute storage, and block-based data organization to optimize attribute filtering. It provides an example comparing full-text search performance between MySQL and Sphinx.
The document discusses Rakudo Perl 6, the most actively developed compiler for the Perl 6 programming language. It describes how Rakudo works by parsing source code into an abstract syntax tree, then generating intermediate code for the Parrot Virtual Machine. The document provides examples of everyday programming problems and how to solve them in Perl 6, such as reading input, checking value ranges, adding numbers in a list, and iterating over lists.
UI testing involves verifying that a graphical user interface functions as expected. There are different approaches to test automation, including record and replay, coding tests, and using test libraries. The effectiveness of test automation depends on how tests are designed and maintained over time as the application evolves.