• JavaScript и ужасы мутаций
    0

    Java не компилируется в C++.

  • JavaScript и ужасы мутаций
    +3

    Камон, если бы не React, который несмотря на название, совсем не реактивный, про иммутабельность никто бы и не вспомнил. И даже React с Mobx не нуждается в иммутабельных структурах.


    Не мутации страшны, а неконтролируемые и неотслеживаемые мутации. vuex предупреждает разработчика — «не меняй состояние вручную», а в redux можно запросто это сделать и полдня потом дебажить, «какая сволочь стреляла».

  • JavaScript превзошел всех
    +7

    В Unity 3D никогда не было JS. UnityScript это в самом лучшем случае исковерканный диалект ECMAScript, как, скажем, ActionScript. Был во Flash JS? Нет, конечно.
    Это была маркетинговая попытка привлечь внимание. Да и никто и не писал на UnityScript.


    Перевод забавный, "превзошел десктопы". "Превзойти" в значении "овладеть" не употребляется уже, наверное, лет сто.

  • Первый взгляд на react-native
    +1

    create-reactive-native-app на данный момент создает т.н. «Expo-приложение» (это какая-то третье-сторонняя контора). Из плюшек — какое-то количество своих кросс-платформенных API, из коробки работает SVG, можно опубликовать свое приложение без возни со сторами (но оно будет доступно только в этом самом Expo). Из минусов — оверхед в 25 мегов (без него — всего 8), эмуляторы и девайсы по USB недоступны (ну или как-то хорошо спрятаны), на устройство надо ставить приложение Expo и оно должно быть в той же WiFi-сети.


    react-native init MyAppName создает вполне рабочий проект без черной магии, запускающийся в эмуле.

  • Истоки Stimulus
    0

    Вы, наверное, имели ввиду: prototype.js.

  • Приёмы геймдизайна: перемешивание
    0

    А что, «глубина» сюжета как-то влияет на реиграбельность? И часто вы перепроходите, например, Last of Us?

  • Истоки Stimulus
    0

    Ну как бы зависит от динамичности. Плюс это как правило все же быстрее.

  • Истоки Stimulus
    0

    Им было важно, чтобы фреймворк вытаскивал данные из DOM-дерева, а не ходил за ними AJAX-ом (не хотят отказываться от серверного рендеринга, хотя на кой это в таск-трекере — мне лично неясно).

  • Разработка на LÖVE
  • Истоки Stimulus
    0

    Занятно, это может быть полезно.

  • Истоки Stimulus
    +3

    Ух ты, Knockout!
    С учетом того, что vue.js точно так же умеет садиться на существующий DOM, ценность сего стимулюса пока не ясна.

  • Выпуск Rust 1.23
    +2

    Мудро:) Успеха вам!

  • Выпуск Rust 1.23
    +1

    У вас же там вроде бы были танчики и вертолетики, ЕМНИП. Концепция поменялась?:)

  • 11 библиотек (наборов компонентов) для React, о которых стоит знать в 2018-м
    +6
    1. React Material-UI

    Помойка плохо настраивающихся и плохо интегрирующихся компонентов с неочевидными параметрами. Все стили инлайновые, классов нет, поэтому кастомизировать внешний вид очень трудно, особенно если не использовать CSS-in-JS. Трахался с ним год на трёх проектах, крайне не советую.


    1. React Virtualized

    Тупо таблицы и больше ничего — сортировку, фильтрацию, пагинацию, форматирование, заголовки, ширину колонок и таблицы (Autosizer — попросту дурная шутка) — все надо писать самому. Плюс проблемы во flexbox-контейнерах (в 2017 году). Так же крайне не советую, возьмите ag-grid (очень мощно, но крутая кривая обучения) или react-table (гораздо проще, но тоже очень гибко).

  • Почему мне кажется, что студентов учат ООП неправильно
    0

    В Python, кстати, тоже нет ограничения доступа для полей. И ничего, никто не умер.

  • Почему мне кажется, что студентов учат ООП неправильно
    +1

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


    Кстати, на прототипах классы эмулируются на ура, а как будет выглядеть попытка воспроизвести прототипное наследование на Java, мне даже представить страшно.

  • REST — это новый SOAP
    –1
    для одного большого телекома

    энтерпрайз же

  • Магически исчезающий JS фреймворк
    0
    написать какой-то компонент на Svelte, скомпилить его и безшовно внедрить в существующее приложение

    Хм, а как это будет выглядеть? Я имею ввиду, как мне передать в этот svelte-компонент параметры и получить от него вывод?

  • Магически исчезающий JS фреймворк
    0

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

  • Магически исчезающий JS фреймворк
    +6

    Честно говоря, вот это вот "исчезающий фреймворк" кажется маркетинговой уловкой. *.vue компоненты не компилируются в чистый JS? JSX не компилируется в чистый JS? Ну и понятно, что все эти component.set все равно требуют каких-то вспомогательных функций и они попадут в бандл.


    Однако минималистичное API и небольшой размер в любом случае приятно.

  • firebase.js ПРОСТО ОГРОМНЫЙ (и что мы можем с этим сделать)
    0
    Постарайтесь нас не осуждать, нам нужны работающие importы в универсальном коде

    Да, но зачем вебпак-то? babel-node же.


    говорю webpack-подразумеваю react

    Почему? и то и другое никак друг на друга не завязаны.

  • Новая жизнь старой пагинации
    0

    Да, по уму так и надо бы делать. Но либо там какие-то подводные камни, либо всем пофиг — тоже такого никогда не видел.

  • Новая жизнь старой пагинации
    +1
    Эффективный способ потребления большого объема информации для поиска чего-то конкретного либо просто убить время;

    Вот как раз для поиска чего-то конкретного очень плохо (особенно если выделенного поиска для контента нету, как в FB). Плюс тормозит на мобилках после 4-5 экрана, особенно если в потоке много картинок/гифок/видео.

  • Ретроспектива: Heroes of Might & Magic III
    0

    В третьих оба варианта юнитов — мыльные пятна на экране.
    Такая же фигня с городами, кстати.

  • Ретроспектива: Heroes of Might & Magic III
    0

    Ну рейнджеры же совсем не про то. Хотя игры хорошие.

  • Ретроспектива: Heroes of Might & Magic III
    +2

    А что у нас в 2k17 является духовным наследником третьих героев?

  • Десять лучших антивирусов для Linux
    0

    Еще один с функциональной неграмотностью… Где у меня хоть слово про антивирусы?

  • Драконье Стекло или рассказ о игровом редакторе Larian Studios
    0

    Только если движок должен обеспечивать что-то такое мудреное, чего нет в существующих решениях.

  • Десять лучших антивирусов для Linux
    +1

    а зачем через хартблид ломать средний десктоп домашний, что там интересного? другое дело сервер, где данные кредиток и пароли от платных сервисов:)


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

  • Десять лучших антивирусов для Linux
    +4
    Дыры быстро латаются в opensource программах

    Heartbleed, Shellshock… Не всегда, к сожалению.

  • Драконье Стекло или рассказ о игровом редакторе Larian Studios
    0

    А, ну да. Еще там есть трио и квартет.

  • Драконье Стекло или рассказ о игровом редакторе Larian Studios
    0

    Во второй части никакого дуо нет, если что (проверено).

  • «Hello, World!» для начинающих литераторов
    0

    В силу профдеформации я знаю две JS-библиотеки для процедурной генерации текста: Tracery, которая собирает текст из рандомно выбранных заданных кусочков, и Improv, которая делает примерно то же самое, но еще умеет учитывать некую модель. У Tracery так же есть порт на C#.


    Делитесь, кто еще какие инструменты процедурной генерации знает.

  • Skyrim, отрендеренный в тексте
    +1
    игры с сюжетом уступили место «птицам и свиньям»

    А вы не пробовали играть не на телефоне?:)

  • На всех не угодишь, или чему нас учит редизайн ленты от Facebook 2006 года
    +6

    Не знаю никого, кому бы нравился таймлайн в FB. Люди могут терпеть это молча, или принимать как должное, потому что не видели ничего другого, но именно терпеть и принимать, а не активно любить.
    А рост числа пользователей происходит исключительно потому что "все друзья там", а не потому что "ух ты какая прикольная лента, которая показывает мне хрен знает что".


    Ну и да, "я такой же крутой, как Цукерберг, потому что взбесил юзеров" это крутая ржака.

  • Использование преимуществ TypeScript в JavaScript разработке
    0

    Good Parts мне понравилась больше, чем jslint, но тоже не целиком.

  • Использование преимуществ TypeScript в JavaScript разработке
    +3

    Я с вами спорить не буду, но все-таки свои пять копеек вставлю, вдруг кто-то прочтет и задумается.


    Я вот тоже примерно так раньше рассуждал — сдалась мне ваша типизация, [] == false, лол, «белки истерички.jpg». Очевидно, явная типизация от багов в логике не спасает, против этого только тесты. Зато она спасает от лишней нагрузки мою голову, которую я могу приложить на написание ну хоть тех же тестов.
    Все дело в том, что явная типизация — это как документация, в которую не надо лезть. Перепутал порядок аргументов? опечатался в названии метода? Не помнишь, принимает либа число или строку, массив или словарь? Вернул не то значение из функции? Все это видно сразу прямо в IDE, без выпадения из потока на время запуска тестов и сборку фронтендом.


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


    Теперь что касательно js-doc. Это бы работало, если бы это был синтаксически зафиксированный стандарт. На деле кому-то пофиг, кто-то не в курсе, что IDE понимает jsdoc, кто-то упарывается каким-то кривым docco или еще какой дрянью, кто-то пишет под closure compiler и у них своя атмосфэра, кто-то пишет в VS, которая всего года три назад понимала только свой формат комментов, а комменты все стерпят, вот и пишут кто во что горазд, а потом интеллисенс не работает. Явная типизация берет на себя роль зафиксированного, понимаемого всеми сторонами синтаксиса документации.

  • Использование преимуществ TypeScript в JavaScript разработке
    +1

    Не взлетел, потому что барахло по объективным причинам. Тайп-чекинг, ЕМНИП, там очень выборочный; с IDE не интегрируется; аннотации не совместимы с js-doc; сжатие… ну когда-то лидировал, сейчас примерно на равных с uglify. Плюс они ухитрились сделать неудобный cli.

  • Использование преимуществ TypeScript в JavaScript разработке
    +4

    Крокфорд пользуется огромным авторитетом в сообществе, но я как вспомню его ненастраиваемый jslint c куцым набором правил, половина из которых — субъективная вкусовщина...

  • Использование преимуществ TypeScript в JavaScript разработке
    0

    Почему-то в WebStorm у меня эта история с @ts-check не завелась: TypeScript не ругается и IDE не подчеркивает. Хотя если просто описать интерфейсы в отдельном .ts и прописывать типы в js-doc, то интеллисенс здорово умнеет.