kastaneda: (Default)
Я багато років користувався Chrome та Chromium на всіх своїх ноутбуках та смартфонах. Причому на ноутбуках використовую виключно Chromium, а не Chrome. Різницю між Chromium та Chrome я знаю добре, і використання Chrome для мене є неприпустимим.

Багато років я користувався синхронізацією закладок, історії та налаштувань. Це було зручно і якось нормально, наче справді XXI століття настало.

Та, на жаль, Google вирішив вбити Chromium (або смертельно поранити, один хрін), заборонивши для Chromium доступ до API синхронізації:

During a recent audit, we discovered that some third-party Chromium based browsers were able to integrate Google features, such as Chrome sync and Click to Call, that are only intended for Google’s use. This meant that a small fraction of users could sign into their Google Account and store their personal Chrome sync data, such as bookmarks, not just with Google Chrome, but also with some third-party Chromium based browsers. We are limiting access to our private Chrome APIs starting on March 15, 2021.


«Small fraction of users» — це, зокрема, я. Я не планую «вирішувати» цю проблему переходом на Chrome. Для мене є принципова різниця між F/OSS та всім іншим софтом. На моїх ноутбуках немає Chrome і, сподіваюся, ніколи не буде (окрім як десь у VM).

Все це значить, що мій мобільний Chrome з 15 березня лишиться сам, наодинці, без синхронізації, бо інших Chrome у мене немає. На моїх ноутах всі мої Chromium'и лишаться без синхронізації і починають жити окремо. Працювати вони якось будуть, але смак вже не той.

Це сумно. Та вихід є.

Деякий час тому я почав використовувати Firefox як основний браузер на смартфоні, відповідно і на ноутах/десктопах теж. Я досі дещо потерпаю від зміни звичок, але бачу, що в цілому все працює чудово, чітко і круто. Щиро раджу всім, хто користується Android, принаймні спробувати Firefox.

Є дуже важлива особливість мобільного Firefox: на відміну від мобільного Chrome, тут є можливість встановлювати додатки (add-ons), і першим ділом варто встановити блокувальник реклами (uBlock, Ghostery або що вам до вподоби). Насправді, саме нездатність блокувати рекламу у мобільному Chrome була причиною мого переходу на Firefox; ну а те, що у Google вирішили вимкнути синхронізацію — ну то просто так співпало.

Chromium, ти був зі мною багато років, спочивай з миром.

Cross-post: https://kastaneda.kiev.ua/2021/02/18/chromium-end.html
Cross-post: https://test.de.co.ua/2021/02/18/chromium-end.html
Cross-post: https://netassist.social/posts/34

(no subject)

Tuesday, October 29th, 2013 16:26
kastaneda: (face)
«Корреспондент.net» сделал редизайн. Круто ёпта. Куда до них жалкому ньюёрктаймзу.
kastaneda: (Default)
Я недавно открыл для себя Twitter Bootstrap. (Очень жаль, что только сейчас, а не полгода назад). Теперь для простых страничек мне не требуется писать CSS вообще: базовая сетка есть, базовые стили текста / заголовков / списков / таблиц есть, и всё это хорошо работает с разными размерами экрана, на мобилках и даже на IE7.

Отдельно хочу упомянуть, что писать CSS вручную — сакс и маст дай, потому что есть LESS. (Ну, или SASS, кому как нравится). Через какое-то время вёрстки с применением переменных и mix-in'ов вдруг понимаешь, что иначе верстать большие проекты никак невозможно, иначе — спагетти и write-only код.
kastaneda: (Default)
Я недавно открыл для себя Twitter Bootstrap. (Очень жаль, что только сейчас, а не полгода назад). Теперь для простых страничек мне не требуется писать CSS вообще: базовая сетка есть, базовые стили текста / заголовков / списков / таблиц есть, и всё это хорошо работает с разными размерами экрана, на мобилках и даже на IE7.

Отдельно хочу упомянуть, что писать CSS вручную — сакс и маст дай, потому что есть LESS. (Ну, или SASS, кому как нравится). Через какое-то время вёрстки с применением переменных и mix-in'ов вдруг понимаешь, что иначе верстать большие проекты никак невозможно, иначе — спагетти и write-only код.

(no subject)

Friday, October 28th, 2011 16:59
kastaneda: (Default)
Сотни ненависти к Drupal'у!

Важно правильно понимать, что такое Drupal на самом деле. Так вот, это штука, на которой можно быстро и без напряга набросать работающий прототип сайта, и всё. Точка. Особенно прошу обратить внимание на слово ПРОТОТИП. Это значит, что работать будет, но потом всё равно придётся переделывать. Это значит, что этой хуйнёй НЕЛЬЗЯ пользоваться в production'е. Эта хуйня просто не предназначена для длительной эксплуатации. На Drupal'е легко делать темы оформления, но обновлять и поддерживать его чудовищно трудно. Люди, которые занимаются релизами Drupal'а, нихрена не соображают в контроле качества, гореть им в аду. Аминь.

(no subject)

Friday, October 28th, 2011 16:59
kastaneda: (Default)
Сотни ненависти к Drupal'у!

Важно правильно понимать, что такое Drupal на самом деле. Так вот, это штука, на которой можно быстро и без напряга набросать работающий прототип сайта, и всё. Точка. Особенно прошу обратить внимание на слово ПРОТОТИП. Это значит, что работать будет, но потом всё равно придётся переделывать. Это значит, что этой хуйнёй НЕЛЬЗЯ пользоваться в production'е. Эта хуйня просто не предназначена для длительной эксплуатации. На Drupal'е легко делать темы оформления, но обновлять и поддерживать его чудовищно трудно. Люди, которые занимаются релизами Drupal'а, нихрена не соображают в контроле качества, гореть им в аду. Аминь.

(no subject)

Monday, April 18th, 2011 18:32
kastaneda: (Default)
<Fester>  http://dev.w3.org/html5/postmsg/ kurwa!!
<Fester>ну и чтобы охуеть: http://www.w3.org/TR/workers/
<Fester>ganja_spirit: я не знаю как ты, а я себя сейчас почувствовал совсем дремучим и не вебным дедом.
<ganja_spirit>Fester: я тоже. и я написал про это в твиттер.
<Fester>ganja_spirit: ты предал дух старпёрства.
<Fester>в твиттер. тьху!

(no subject)

Monday, April 18th, 2011 18:32
kastaneda: (Default)
<Fester>  http://dev.w3.org/html5/postmsg/ kurwa!!
<Fester>ну и чтобы охуеть: http://www.w3.org/TR/workers/
<Fester>ganja_spirit: я не знаю как ты, а я себя сейчас почувствовал совсем дремучим и не вебным дедом.
<ganja_spirit>Fester: я тоже. и я написал про это в твиттер.
<Fester>ganja_spirit: ты предал дух старпёрства.
<Fester>в твиттер. тьху!

(no subject)

Friday, January 21st, 2011 14:04
kastaneda: (Default)
Коллеги, кто умеет правильно оформлять <input type=file>? Я пользуюсь стандартным трюком: сделать input прозрачным (полупрозрачным для отладки) и расположенным поверх фейковой кнопки, вот как-то так. По идее, input будет невидим, но вполне кликабелен. Firefox/Chromium/Opera показывают всё как надо.

Проблема в юзабельности получающегося костыля, а именно — в самой возможности пользоваться таким input'ом: моя Opera «правильно» реагирует (открывает диалог выбора файла) только при клике по кнопочке «Browse…», а если кликнуть чуть левее и попасть на строку ввода, то нужной реакции не будет. Где-то будет мигать невидимый курсор в невидимой строке ввода, юзер будет страдать, а я получу баг-репорт. Вызов из JavaScript'а метода click() в адекватном браузере работать не должен, как мне подсказывает моя параноя. Подскажите, как обойти эту особенность Оперы.

Нестандартные элементы управления — вообще-то зло и я их не люблю, но уж если надо с ними работать, то можно ли как-то уменьшить их вред?

(no subject)

Friday, January 21st, 2011 14:04
kastaneda: (Default)
Коллеги, кто умеет правильно оформлять <input type=file>? Я пользуюсь стандартным трюком: сделать input прозрачным (полупрозрачным для отладки) и расположенным поверх фейковой кнопки, вот как-то так. По идее, input будет невидим, но вполне кликабелен. Firefox/Chromium/Opera показывают всё как надо.

Проблема в юзабельности получающегося костыля, а именно — в самой возможности пользоваться таким input'ом: моя Opera «правильно» реагирует (открывает диалог выбора файла) только при клике по кнопочке «Browse…», а если кликнуть чуть левее и попасть на строку ввода, то нужной реакции не будет. Где-то будет мигать невидимый курсор в невидимой строке ввода, юзер будет страдать, а я получу баг-репорт. Вызов из JavaScript'а метода click() в адекватном браузере работать не должен, как мне подсказывает моя параноя. Подскажите, как обойти эту особенность Оперы.

Нестандартные элементы управления — вообще-то зло и я их не люблю, но уж если надо с ними работать, то можно ли как-то уменьшить их вред?

(no subject)

Tuesday, July 20th, 2010 20:03
kastaneda: (Default)
<ganja_spirit>  а в рамках HTML5 вообще можно нести любую чушь.
<Fester>не совсем любую
<Fester>data-любую
<ganja_spirit>Fester: http://twitter.com/mollydotcom/status/18795108389
<Fester>zomfg
<Fester>я даже не знаю, чем больше удивляться
<Fester>то ли html5, то ли пруфлинку в твиттер

(no subject)

Tuesday, July 20th, 2010 20:03
kastaneda: (Default)
<ganja_spirit>  а в рамках HTML5 вообще можно нести любую чушь.
<Fester>не совсем любую
<Fester>data-любую
<ganja_spirit>Fester: http://twitter.com/mollydotcom/status/18795108389
<Fester>zomfg
<Fester>я даже не знаю, чем больше удивляться
<Fester>то ли html5, то ли пруфлинку в твиттер
kastaneda: (Default)
Из-за идиотов, делавших bit.ly, таки пришлось поставить себе NoScript. Это ж надо — влепить flash прямо поверх того input'а, из которого я (по идее) должен скопировать нужный мне текст!

Скриншот )

Вообще терпеть не могу, когда какая-то хрень на JS или Flash пытается что-то сделать с моим буфером обмена. Во-первых, у меня в иксах их два разных, и приходится задумываться: а в какой из них попал нужный текст? Во-вторых, всякая такая флешня сильно жрёт проц на пустом месте (привет, Adobe, вы идиоты). В-третьих, какая-то синяя кнопка с треугольничком совершенно неочевидна, а Ctrl-C общее для всех. Гореть вам в аду, разработчики плохих интерфейсов.

Upd.: нет, всё-таки NoScript невменяем. Даже если перейти с белых списков на чёрные, раздражает слово «рекомендуется». Нафиг такие советчиков.
kastaneda: (Default)
Из-за идиотов, делавших bit.ly, таки пришлось поставить себе NoScript. Это ж надо — влепить flash прямо поверх того input'а, из которого я (по идее) должен скопировать нужный мне текст!

Скриншот )

Вообще терпеть не могу, когда какая-то хрень на JS или Flash пытается что-то сделать с моим буфером обмена. Во-первых, у меня в иксах их два разных, и приходится задумываться: а в какой из них попал нужный текст? Во-вторых, всякая такая флешня сильно жрёт проц на пустом месте (привет, Adobe, вы идиоты). В-третьих, какая-то синяя кнопка с треугольничком совершенно неочевидна, а Ctrl-C общее для всех. Гореть вам в аду, разработчики плохих интерфейсов.

Upd.: нет, всё-таки NoScript невменяем. Даже если перейти с белых списков на чёрные, раздражает слово «рекомендуется». Нафиг такие советчиков.

(no subject)

Wednesday, April 14th, 2010 12:45
kastaneda: (Default)
Всё-таки PHP — загадочный язык. Чуть-чуть кода )
Поведение test3() и test4() я понимаю. Знаете, что меня всегда удивляло? Не могу понять, почему test2() всё-таки выполняется. Мистика!

Сначала я думал, что объявления классов и функций происходит в два этапа — сначала «безусловное» при разборе кода, а потом «условное» в runtime. Сейчас я подозреваю, что всё проще: определение ф-ции становится видимым при входе в тот блок, где они объявлены.

P.S. Эй, [livejournal.com profile] bo_dun, ты это куда пропал?!

(no subject)

Wednesday, April 14th, 2010 12:45
kastaneda: (Default)
Всё-таки PHP — загадочный язык. Чуть-чуть кода )
Поведение test3() и test4() я понимаю. Знаете, что меня всегда удивляло? Не могу понять, почему test2() всё-таки выполняется. Мистика!

Сначала я думал, что объявления классов и функций происходит в два этапа — сначала «безусловное» при разборе кода, а потом «условное» в runtime. Сейчас я подозреваю, что всё проще: определение ф-ции становится видимым при входе в тот блок, где они объявлены.

P.S. Эй, [livejournal.com profile] bo_dun, ты это куда пропал?!
kastaneda: (Default)
function opt(&$a$b) {
    return isset(
$a)? $a$b;
}

error_reporting(E_ALL);
echo 
$foo;                  // Notice: Undefined variable: foo
echo opt($foo'hello');    // No errors
kastaneda: (Default)
function opt(&$a$b) {
    return isset(
$a)? $a$b;
}

error_reporting(E_ALL);
echo 
$foo;                  // Notice: Undefined variable: foo
echo opt($foo'hello');    // No errors

(no subject)

Wednesday, March 17th, 2010 12:43
kastaneda: (Default)
Инструкция для юзеров Оперы версий 10.x на тему «как вернуть старые иконки»:
1. Скачать файлик http://de.co.ua/lj/buttons.css и положить его где-то у себя на винте.
2. Нажать Ctrl-F12, «Дополнительно» / «Содержимое» / «Настроить стили…» / «Моя таблица стилей» и выбрать этот файл.
3. Profit! Кнопки стали как раньше.

А теперь вопрос к знатокам задаёт пенсионер из Уфы. Как мне добавить свой CSS ко всему журналу (включая комменты), а не только к recent entries и френдленте? Вот тут [^] добавляю custom external stylesheet URL, и этот stulesheet на страницы комментов не влияет никак. ЧЯДНТ?

(no subject)

Wednesday, March 17th, 2010 12:43
kastaneda: (Default)
Инструкция для юзеров Оперы версий 10.x на тему «как вернуть старые иконки»:
1. Скачать файлик http://de.co.ua/lj/buttons.css и положить его где-то у себя на винте.
2. Нажать Ctrl-F12, «Дополнительно» / «Содержимое» / «Настроить стили…» / «Моя таблица стилей» и выбрать этот файл.
3. Profit! Кнопки стали как раньше.

А теперь вопрос к знатокам задаёт пенсионер из Уфы. Как мне добавить свой CSS ко всему журналу (включая комменты), а не только к recent entries и френдленте? Вот тут [^] добавляю custom external stylesheet URL, и этот stulesheet на страницы комментов не влияет никак. ЧЯДНТ?

September 2025

M T W T F S S
12345 67
891011121314
15161718192021
22232425262728
2930     

Syndicate

RSS Atom