Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Как я перестал верить технологиям

Как я перестал верить технологиям

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

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

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

Ссылка на видео c WSD: https://www.youtube.com/watch?v=p5g4giWmcvE

Alexey Simonenko

June 05, 2016
Tweet

More Decks by Alexey Simonenko

Other Decks in Technology

Transcript

  1. <!-- news.html --> <template id="news"> <News> <Article> {name} <Time datetime="{date}">{date}

    </Time> {description} <Link href="{link}">Подробнее </Link> </Article> </News> </template> Разметка отдельно от компонентов
  2. // news.js import {getJSX} from "hype"; export default class News

    extends Component { render: () => getJSX("#news") } Разметка отдельно от компонентов
  3. // element.scss $element-height: 100px; $element-padding-left: 20px; // element.js import {getConstants}

    from "hype"; let constants = getConstants("element.scss"); export default class Element extends Component { render: () => { // NB! Обязательно использовать нотацию в квадратных скобках, // потому что он импортирует названия буквально, символ в символ. return <div style={{ "paddingLeft": constants["element-padding-left"], "height": constants["element-height"] }} />; } } Импорт констант из SCSS
  4. <!-- element.html --> <template id="element" data-style="element.scss"> <div style=" padding-left: $element-padding-left,

    height: $element-height " /> </template> Импорт констант из SCSS в разметку
  5. // element.scss .element { width: 300px; background-color: #ff0000; } //

    element.js import {getCSSClasses} from "hype"; let names = getCSSClasses("element.scss"); export default class Element extends Component { render: () => { return <div className={{ names["element"] }} />; } } Импорт названий CSS-классов
  6. export default Router({ "/": App }); Встроенный роутер , "/search":

    { "load": () => {}, "enter": () => {}, "leave": () => {} }
  7. Встроенный сборщик – Автоконфигурирование – Hot Loader – Удаление неиспользуемого

    кода – Оптимизация кода – Обфускация CSS-классов – Фриз статики
  8. В два раза меньше React A ngular 1 A ngular

    2 Em ber H ype Выдуманные цифры для несуществующего графика за 2016 год
  9. Hype.js – Упрощённый рендеринг на сервере – Большая библиотека компонентов

    – Разметка отдельно от компонентов – Интеграция с SCSS – В два раза меньше – В полтора раза быстрее
  10. Мы делали невероятные штуки – Наше меню выпадало – Наши

    кнопки меняли картинки при ховере – Наши снежинки летали
  11. Проект новой CRM – SPA-приложение – Backbone.js – Полное управление

    с клавиатуры – Моментальное создание, редактирование, поиск
  12. Проект новой CRM – SPA-приложение – Backbone.js – Полное управление

    с клавиатуры – Моментальное создание, редактирование, поиск – Тонны костылей
  13. Проект на Node.js в 2012 году – Авторизация? – Платёжные

    гейты? – Отправка почты? – Частые обновления!
  14. Проект на Node.js в 2012 году – Авторизация? – Платёжные

    гейты? – Отправка почты? – Частые обновления! – Очень много работы вместо сна!
  15. Как узнавать новое? – Читайте известных разработчиков
 github.com/talgautb/frontenders/blob/master/ru.md – Ходите

    на конференции и городские митапы
 github.com/web-standards-ru/frontend-confs – Читайте «Веб-стандарты»
 twitter.com/webstandards_ru
  16. Как узнавать новое? – Читайте известных разработчиков
 github.com/talgautb/frontenders/blob/master/ru.md – Ходите

    на конференции и городские митапы
 github.com/web-standards-ru/frontend-confs – Читайте «Веб-стандарты»
 twitter.com/webstandards_ru – Слушайте «Веб-стандарты»
 soundcloud.com/web-standards
  17. Социальная ответственность – Говорить не только о достоинствах, но и

    о недостатках – Говорить о том, где можно использовать, а где нет
  18. Социальная ответственность – Говорить не только о достоинствах, но и

    о недостатках – Говорить о том, где можно использовать, а где нет – Прекратить ненавидеть людей за выбор технологий
  19. Социальная ответственность – Говорить не только о достоинствах, но и

    о недостатках – Говорить о том, где можно использовать, а где нет – Прекратить ненавидеть людей за выбор технологий – Меньше категоричности, больше прагматичности