Evil Martians
3.88K subscribers
467 photos
3 videos
1.25K links
Мы — Злые Марсиане
evilmartians.com
Стартапы, дизайн и разработка продуктов
#devtools #opensource #rubyonrails #golang #javascript #react
Download Telegram
mruby, микро-версия Ruby для embedded, чрезвычайно популярна в Японии — мы писали об этом недавно в блоге по итогам конференции RubyKaigi.

Однако, mruby можно использовать и в вебе, делая миниатюрные сборки для WebAssembly: http://amp.gs/dVxB
Марсианин Николай Сверчков рассказал на Saint P Rubyconf о новых фичах в Rails 6 и текущем пути развития фреймворка.

Слайды с выступления уже опубликованы:
http://amp.gs/dRqD
И последнее с SaintP Ruby Conf 2019 — короткий рассказ Андрея Новикова о том, почему подписки в GraphQL-Ruby для ActionCable не работают с AnyCable, и как это починить.

Слайды, текст и ссылки — все здесь:
http://amp.gs/dRog
Forwarded from Amplifr
Наш разработчик Виталий Ризо рассказывает про Uibook — инструмент для визуального тестирования React-компонентов. Мы используем его для тестирования, редактирования интерфейсных текстов и экономим кучу времени ↓

http://amp.gs/dduV
Как сделать самый бесполезный, неюзабельный сайт — и все равно получить за него 100 баллов в Lighthouse по всем параметрам:

http://amp.gs/dOjl
Через два с половиной часа Apple на WWDC будет рассказывать о новинках в macOS и iOS.

Самая интересная из них — Marzipan, она же — главное нововведение в OS X за долгие годы и «убийца» Electron.

Electron, кто не знает — кросс-платформенный фреймворк для разработки десктоп приложений, работает на Node.js и Chromium. Проще говоря, для каждого отдельного приложения запускается движок Chromium, и в нем работает JavaScript-приложение, заодно с «нативными» расширениями для нужной платформы.

Примеры известных Electron-приложений — Atom, Slack, Discord, Skype(!) и тысячи других. Сейчас Electron уже стал стандартом для десктопных приложений от стартапов. Недостатки очевидны: несколько копий Chromium открыты сразу, чудовищный жор оперативной памяти, неудовлетворительная скорость работы по сравнению с «настоящими» приложениями.

При чем тут Marzipan? Идея Marzipan в том, чтобы портировать iPhone-приложение на macOS было бы не намного сложнее, чем портировать его на iPad. Поскольку у всех стартапов, особенно тех, кто любит делать Electron-приложения вокруг своих сервисов, уже есть красивые, оптимизированные приложения на iPhone, а часто есть и версии для iPad, с измененным интерфейсом, может случиться так, что со временем пользователи macOS (в отличие от пользователей других платформ) начнут получать настоящие, быстрые приложения вместо веб-оболочек. Не нужно будет покупать машины с 16GB оперативной памяти просто чтобы одновременно работали Slack, Chrome и что-нибудь еще.

Ждем, надеемся.
Слышали про GraphQL, но не понимаете, для чего он нужен? Давно ищете возможность попробовать его в деле, но ваш проект уже давно использует REST? Мы приготовили подробный гайд о том, как создать с нуля Rails-приложение с GraphQL и интегрировать его с React+Apollo.

Читайте первую часть «GraphQL on Rails: from zero to the first query» в нашем блоге:
http://amp.gs/dSBl
This media is not supported in your browser
VIEW IN TELEGRAM
Красивая уязвимость с исполнением кода в Vim и NeoVim: http://amp.gs/diP3
Facebook представил свою систему управления кластерами, Tupperware.

http://amp.gs/duKg

«Убийца Кубернетеса», да.
Список open-source клонов популярных игр: включает как нашумевшие проекты вроде ScummVM, так и совсем неизвестные.

http://amp.gs/d06P
Никогда такого не было, и вот опять.

Продолжаются атаки через скомпрометированные пакеты в npm:

http://amp.gs/d3sA

Похожая история была в ноябре:

http://amp.gs/d3ss
Кажется, у Firefox в этом году будет платная версия:

http://amp.gs/dwaI

Деньги, судя по всему, будут брать за подписку на VPN и облачное хранилище.
Знаете ли вы сколько существует нормальных форм баз данных и почему их важно соблюдать для консистентности данных? Об этом и не только читайте в новой статье от марсианина Николая Сверчкова в нашем блоге на devto:

http://amp.gs/dXLu
Встречаем еще одну забрендированную уязвимость — RAMbleed:

http://amp.gs/d5Au

В качестве демонстрации уязвимости заявляют похищенный из ОЗУ 2048-битный RSA ключ.
Уязвимость работает и на ECC памяти.
Недавно в master Ruby добавили пайплайн оператор (|>, как в Elixir). Все бы ничего, но это оказался никакой не пайплайн оператор, а просто альтернативный синтаксис для вызова метода — точки, по сути.

http://amp.gs/OjBw

Оказался он там несмотря на большое обсуждение в багтрекере Ruby: http://amp.gs/OjBL

После взрыва негодования Matz все же решил обсудить изменение в публике:

http://amp.gs/OjBX

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

Тем интереснее, как независимые языки избавляются от проблем роста с собственным дизайном.

Можно почитать, как изменения принимают в Elixir http://amp.gs/Ojxe

Или как в Rust сделали идеальный процесс принятия изменений (RFC): http://amp.gs/Ojx7
Tiredful API: учебное приложение для вскрытия веб-аппов:

http://amp.gs/Omt4

Раскрытие информации, XSS, SQLi — все включено.
Вторая часть марсианского гайда о том, как создать с нуля Rails-приложение с GraphQL и интегрировать его с React+Apollo. В первой части мы научились получать данные с сервера, теперь пора перейти к их изменению.

Читайте «GraphQL on Rails: updating the data»:
http://amp.gs/OmaM