Чел нырнул в безумную сложность рисования текста, от простой загрузки глифов из файла, до нормального рендеринга разных хитрых шрифтов.
#talk #font #rendering
#talk #font #rendering
👍3
Выпуск подкаста озаглавили в духе Zig vs. Go, но на деле там много разного интересного затрагивается. Фаундер HashiCorp и создатель Ghostty заглянул на огонёк, встречайте.
#talk #go #zig
#talk #go #zig
🔥2
Тут чуваки нормально так закусились. Один говорит, что Session - форк Signal - небезопасен, и не надо его использовать. На что разработчики Session в свою очередь отвечают, что неправ. Будем наблюдать.
UPD: ответ ресёрчера на ответ команды.
#cybersec #vulnerability #cryptography
UPD: ответ ресёрчера на ответ команды.
#cybersec #vulnerability #cryptography
👍1
Тут чел детально прошёлся по своему опыту с Nix (и как с менеджером пакетов, и как с ОС). По итогу у него получается, что пользоваться можно, но разного рода проблемы поджидают за каждым углом, то есть нужно ну очень этого хотеть.
#os #package #linux
#os #package #linux
www.dgt.is
Nix - Death by a thousand cuts
thoughts, talks, docs and unpopular opinions
В WASM мы сами вольны решать, нужна нам 32-х битная память или 64-х битная. На первый взгляд может показаться, а почему вообще 32 оставили, весь мир давно на 64 же.
Так вот оказалось, что браузеры просто автоматом выделают WASM модулям 4 гига памяти, чего как раз хватает на все 32 бита, после чего можно со спокойной совестью все проверки на выход за границы памяти дропать и радоваться скорости.
А вот кто Memory64 себе включил, тот в цирке уже не смеётся - приходится платить за все честные проверки.
#wasm #memory #browser
Так вот оказалось, что браузеры просто автоматом выделают WASM модулям 4 гига памяти, чего как раз хватает на все 32 бита, после чего можно со спокойной совестью все проверки на выход за границы памяти дропать и радоваться скорости.
А вот кто Memory64 себе включил, тот в цирке уже не смеётся - приходится платить за все честные проверки.
#wasm #memory #browser
SpiderMonkey JavaScript/WebAssembly Engine
Is Memory64 actually worth using?
After many long years, the Memory64 proposal for WebAssembly has finally been released in both Firefox 134 and Chrome 133. In short, this proposal adds 64-bit pointers to WebAssembly.
👍3❤1
У MasterCard много лет была весёлая опечатка в конфигурации DNS.
#cybersec #vulnerability #dns
"t" потерялось, и вместо "akam.net", получилось, что кто угодно может купить "akam.ne" (спойлер: кто-то несколько лет назад успешно покупал) и оттуда уже думать, куда это дальше раскручивать.#cybersec #vulnerability #dns
Krebs on Security
MasterCard DNS Error Went Unnoticed for Years
The payment card giant MasterCard just fixed a glaring error in its domain name server settings that could have allowed anyone to intercept or divert Internet traffic for the company by registering an unused domain name. The misconfiguration persisted for…
👍3❤1
Вау, злоумышленники смогли и от вполне себе приличного номера гугла позвонить, и письма от
#google #cybersec #vulnerability
google.com через эксплуатацию workspaces и g.co рассылать. Как страшно жить!#google #cybersec #vulnerability
Gist
almost_pwned.md
GitHub Gist: instantly share code, notes, and snippets.
😱5
Ну и ещё про проблемы WASM: GC. Как только мы хотим перестать таскать с собой свой garbage collector и начать полагаться на WASM GC, оказывается, что линейная память была не так уж и плоха!
#wasm #gc #memory
#wasm #gc #memory
Кто тут помнит умные часы Pebble? У меня были как раз Pebble Time. Прикольные были девайсы, потом компанию купили, убив продукт. Так вот, часть сорцов ОС открыли, есть шанс, что часики возродятся.
#watch #hardware
#watch #hardware
🔥5👍2
Этот пост читать смешно и больно. JS-чел пишет, что сортировка массивов на самом деле гораздо сложнее, чем кажется. А потом начинает упорно сортировать массив, в котором и числа, и строки. Месье знает толк в извращениях.
#js #sorting
#js #sorting
The Mill
Why sorting is harder than it seems
This story is about sorting arrays. I am telling it because sorting continues to surprise me with delightful bugs. Frustrating too, but also delightful. First, some context...
😁5😱3
Ещё раз про "Don’t roll your own crypto". Автор показывает, что
а) люди по-прежнему этим занимаются;
б) строить какую-то свою конструкцию поверх надёжных библиотек, предоставляющих примитивы, - всё ещё является нарушением этого правила.
#cryptography #cybersec
а) люди по-прежнему этим занимаются;
б) строить какую-то свою конструкцию поверх надёжных библиотек, предоставляющих примитивы, - всё ещё является нарушением этого правила.
#cryptography #cybersec
Dhole Moments
Hell Is Overconfident Developers Writing Encryption Code - Dhole Moments
Overconfident developers that choose to write their own cryptography code have plagued the information security industry since before it was even an industry. This in and of itself isn’t inhe…
❤3
Тут чел рассуждает над governance в open source проектах. Мечтает, чтобы при создании репо наравне с выбором лицензии нам предлагали выбор управленческой модели. Ну и описывает ряд готовых подходов.
#oss #community #repository
#oss #community #repository
Antonin Delpeuch
Off-the-shelf governance models for small FOSS projects?
A one-person open source project with a governance model, is that ridiculous? In this blog post I want to convince you it isn’t, and it could be key to solving widespread problems in the FOSS (Free and Open Source Software) ecosystem.
The problems The free…
The problems The free…
Замечательная история. Кандидату на собесе дали FizzBuzz, но с рядом ограничений. И сказали, что постепенно ограничения будут добавляться. Одним из запретов стало использование чисел и любых операций с числами. Но чел красава, решил всё чисто на системе типов TypeScript.
#interview #ts #type
#interview #ts #type
kranga on Notion
The fizzbuzz that did not get me the job | Notion
Fizzbuzz is a toy algorithm that used to be popular in the context of technical interviews.
🤯6👏1
Forwarded from Авва
Можете быстро определить, какой из этих двух URLов легитимный, а какой ведет на фишинг-сайт?
Подсказка: это не какой-то странный вид /, и не кириллическая буква вместо латинской.
Правильный ответ:первый URL ведет на сайт v1271.zip (да, есть такие домены .zip), и передает ему юзернейм "https" и пароль "// github.com/..../refs/tags/ ".
Впечатляет, в общем. Я это в теории знал, но на практике настолько хитро спрятанные примеры не встречал, кажется.Следите за @ в URLах, короче. И если вы скачиваете какой-то файл данных, а скачался .exe, не запускайте никогда. Надеюсь, что это хоть и без меня понимаете.
Подсказка: это не какой-то странный вид /, и не кириллическая буква вместо латинской.
Правильный ответ:
Впечатляет, в общем. Я это в теории знал, но на практике настолько хитро спрятанные примеры не встречал, кажется.
🔥5😱3
Новая история из JS и NPM мира, но на этот раз вполне себе милая, без трэша. Автор рассказывает, как ему в голову пришла прекрасная идея сократить размер всех пакетов на ~5%, сохраняя обратную совместимость. Он довёл это всё до RFC и до обсуждений с мейнтейнерами NPM, после чего копнул глубже, детальнее разобрал трейдоффы, понял, что игра не стоит свеч и закрыл RFC.
#js #compression #optimize
#js #compression #optimize
Evanhahn
My failed attempt to shrink all npm packages by 5%
It seemed like a great idea at first.
👍5
Кайф, SLAP и FLOP уязвимости в свежих Apple процессорах. Позволяют злоумышленникам без каких-либо привилегий удалённо читать интересную память.
#apple #cybersec #vulnerability
#apple #cybersec #vulnerability
👍1
Тут интересное: чел ищет строки, которые в Base64 сохраняют то же ASCII сообщение в подстроках.
#ascii #encoding
#ascii #encoding
SequentialRead
Words in a base64-encoded string... Which decodes to the same words in ascii
... so if you imagine f is the computation you want to remain the same regardless of whether it's operating on a base64'd input or not, and g is the base64 function, and x is a not-base64'd input, then f(g(x)) = g(f(x))
...
Oooooohhhhh yes so f = user…
...
Oooooohhhhh yes so f = user…