Сообщения в ii.14

Re: idec mobile

Ответ на сообщение
>> Нафига её обновлять когда она заведомо не меняется? Количество сообщений меняется только после фетча. Зачем их считать каждый раз?
> После чистки по ЧС, после удаления/обрезки эх. А ещё счётчики непрочитанных имеются, но тут всё понятно.
Ну так и дёргать пересчёт из этих функций. Счётчики вот да, но я не знаю как ты их реализовал. Даже если это просто флаг в базе, то всё равно выходит в два раза меньше селектов, если общее число кешировать и пересчитывать только по необходимости.
>> Ты ж не предупреждал нигде, что перед обновлением нужно сносить старую версию.
>> Я таки смог обновить сабж, хотя и не без матюков (кто ж знал, что он не обновляется при обновлении?).
> Старую версию и не надо сносить. Новая всегда должна вставать поверх без всяких проблем.
> А какие там циферки при установке APK отображаются (1.0 или 1.1), абсолютно не имеет значения. Считайте, что они для красоты.
Тем не менее, эта проблема встречается и не только у меня. Может, дело в старом ведре, а может в кривой вендорской прошивке, но я и андроид-версию инстеда так же тестил: сперва сносить, потом ставить. Как раз потому, что из-за статичной версии оно криво обновлялось.

Я бы всё таки такие вещи учитывал, так как андроид - это всегда зоопарк.
>> Так что это за тост такой? За здравие?
> Я имел в виду вот этот тост: https://developer.android.com/guide/topics/ui/notifiers/toasts.html
Понял. Я просто в терминологии андроидной не силён =)
> И засунул таковой при обновлении счётчиков. Правда, мы так и не поняли друг друга нормально (на выходных), поэтому надо его оттуда убрать за ненадобностью.
Я только видел "Получено n новых сообщений" после фетча, но он и раньше был. А то, о чём ты говоришь, я не заметил. Может потому, что каждый переход к списку эх вызывает некислые фризы.
Andrew Lobanov to vit01 (2017-05-12 07:32:01) [ссылка]

Re: idec mobile

Ответ на сообщение
AL> Нафига её обновлять когда она заведомо не меняется? Количество сообщений меняется только после фетча. Зачем их считать каждый раз?
После чистки по ЧС, после удаления/обрезки эх. А ещё счётчики непрочитанных имеются, но тут всё понятно.

Если основательно взяться за ускорение алгоритма, то надо будет не мгновенный кэш, а постоянный делать + усложнять некоторые штуки. Посмотрим сначала, как оно с индексами вести себя будет.
AL> Ты ж не предупреждал нигде, что перед обновлением нужно сносить старую версию.
AL> Я таки смог обновить сабж, хотя и не без матюков (кто ж знал, что он не обновляется при обновлении?).
Старую версию и не надо сносить. Новая всегда должна вставать поверх без всяких проблем.
А какие там циферки при установке APK отображаются (1.0 или 1.1), абсолютно не имеет значения. Считайте, что они для красоты.
AL> Так что это за тост такой? За здравие?
Я имел в виду вот этот тост: https://developer.android.com/guide/topics/ui/notifiers/toasts.html

И засунул таковой при обновлении счётчиков. Правда, мы так и не поняли друг друга нормально (на выходных), поэтому надо его оттуда убрать за ненадобностью.
vit01 to Andrew Lobanov (2017-05-12 06:19:59) [ссылка]

Re: idec mobile

Ответ на сообщение
>> Вроде недавно как раз ты говорил, что у тебя эта информация обновляется только при старте и после фетча, а теперь выходит, что всегда.
> Я говорил, что эта информация *должна* обновляться всегда, в том числе там, где ты сейчас написал.
Нафига её обновлять когда она заведомо не меняется? Количество сообщений меняется только после фетча. Зачем их считать каждый раз?
> А ты говорил, что после фетча и ещё когда-то она НЕ обновляется, хотя надо бы.
Я писал, что проблема была в кривом обновлении, которое возникает без смены версии. Ты ж не предупреждал нигде, что перед обновлением нужно сносить старую версию.
>> Я ничего нового в поведении клиента не наблюдал с тех пор, как понял, что он у меня не обновлялся.
> Тогда какие вопросы? Если клиент старой версии, то багрепорты протухли. Придётся добавлять в каждый клиент запись: собрано dd:MM:YYYY HH:mm, чтобы таких недоразумений больше не возникало
Эху не читай @ сразу отвечай. Я таки смог обновить сабж, хотя и не без матюков (кто ж знал, что он не обновляется при обновлении?). И проблема не о том вообще.
>>> И да, именно к тебе обращаюсь. В обновлённых сборках я добавил Toast с надписью "Debug: update echolist". Ты уже попользовался клиентом, так что описывай мне теперь его поведение.
>> Если бы я знал что это такое, то описал бы обязательно.
> Теперь, когда выяснилось, что твой багрепорт с "недообновлением" списка оказался ложным, то смысла в этом деле уже не вижу. Уберу потом.
Так что это за тост такой? За здравие?
>> Индексы существенно ускоряют обращение к базе.
> Окей, будет индекс. Но не раньше выходных.
Круто!
Andrew Lobanov to vit01 (2017-05-12 05:07:30) [ссылка]

Re: idec mobile

Ответ на сообщение
AL> Вроде недавно как раз ты говорил, что у тебя эта информация обновляется только при старте и после фетча, а теперь выходит, что всегда.
Я говорил, что эта информация *должна* обновляться всегда, в том числе там, где ты сейчас написал. А ты говорил, что после фетча и ещё когда-то она НЕ обновляется, хотя надо бы.
AL> Я ничего нового в поведении клиента не наблюдал с тех пор, как понял, что он у меня не обновлялся.
Тогда какие вопросы? Если клиент старой версии, то багрепорты протухли. Придётся добавлять в каждый клиент запись: собрано dd:MM:YYYY HH:mm, чтобы таких недоразумений больше не возникало
>> И да, именно к тебе обращаюсь. В обновлённых сборках я добавил Toast с надписью "Debug: update echolist". Ты уже попользовался клиентом, так что описывай мне теперь его поведение.
AL> Если бы я знал что это такое, то описал бы обязательно.
Теперь, когда выяснилось, что твой багрепорт с "недообновлением" списка оказался ложным, то смысла в этом деле уже не вижу. Уберу потом.
AL> Индексы существенно ускоряют обращение к базе.
Окей, будет индекс. Но не раньше выходных.
vit01 to Andrew Lobanov (2017-05-12 03:46:20) [ссылка]

Re: idec mobile

Ответ на сообщение
>> Как-то сильно сабж стал после обновлений тормозить при переходе на список конференций. Он точно в базу не лезет за каждым разом?
> Вообще-то лезет. Раньше запросы в базу делались асинхронно, и лично ты жаловался, что у тебя при прокрутке список дёргается.
> Решил сделать так, чтобы информация в эхах делалась в один момент, а затем кэшировалась, чтобы не мешать прокрутке.
Вроде недавно как раз ты говорил, что у тебя эта информация обновляется только при старте и после фетча, а теперь выходит, что всегда.
> И ведь специально написал, что оно поменялось. Но тогда всем было пофиг.
Мне не пофиг, но я понял так, что ты сделал это оптимизировано.
>> Как будто он каунты в базе без индекса считает.
> Именно так и происходит. Могу в обновлении индекс создать, благо API это позволяет безболезненно сделать.
Индексы существенно ускоряют обращение к базе. Проверял на толстой базе от цезия и EeePC 701 4G. Подсчёт числа сообщений каждой эхи отдельно (включая lenta.rss) выходил меньше секунды.
> И да, именно к тебе обращаюсь. В обновлённых сборках я добавил Toast с надписью "Debug: update echolist". Ты уже попользовался клиентом, так что описывай мне теперь его поведение.
Если бы я знал что это такое, то описал бы обязательно.
> Когда ты наблюдал это сообщение, обновлялись ли счётчики в списках (или через раз), и так далее.
Я ничего нового в поведении клиента не наблюдал с тех пор, как понял, что он у меня не обновлялся.
Andrew Lobanov to vit01 (2017-05-11 05:46:40) [ссылка]

Re: idec mobile

Ответ на сообщение
AL> Как-то сильно сабж стал после обновлений тормозить при переходе на список конференций. Он точно в базу не лезет за каждым разом?
Вообще-то лезет. Раньше запросы в базу делались асинхронно, и лично ты жаловался, что у тебя при прокрутке список дёргается.
Решил сделать так, чтобы информация в эхах делалась в один момент, а затем кэшировалась, чтобы не мешать прокрутке.

2016-10-17: зарождение проблемы
https://ii-net.tk/ii/ii-point.php?q=/m/PrfA3gIzuoLcJxBxNWDA
https://ii-net.tk/ii/ii-point.php?q=/m/S8EjA80dlL7gXAlQSiGq

2017-04-14: изменил поведение
https://ii-net.tk/ii/ii-point.php?q=/m/FTPVc3A8jLmx6tGxxRX0

И ведь специально написал, что оно поменялось. Но тогда всем было пофиг.
AL> Как будто он каунты в базе без индекса считает.
Именно так и происходит. Могу в обновлении индекс создать, благо API это позволяет безболезненно сделать.

И да, именно к тебе обращаюсь. В обновлённых сборках я добавил Toast с надписью "Debug: update echolist". Ты уже попользовался клиентом, так что описывай мне теперь его поведение.
Когда ты наблюдал это сообщение, обновлялись ли счётчики в списках (или через раз), и так далее.
vit01 to Andrew Lobanov (2017-05-11 05:06:48) [ссылка]

Re: idec mobile

Ответ на сообщение
Как-то сильно сабж стал после обновлений тормозить при переходе на список конференций. Он точно в базу не лезет за каждым разом? Просто на моей кукурузе каждое открытие списка эх приводит к гарантированному фризу на несколько секунд. Как будто он каунты в базе без индекса считает.
Andrew Lobanov to vit01 (2017-05-11 03:00:52) [ссылка]

Re: iing

Ответ на сообщение
>> О, а это отличная идея. Ждём кнопку :)
AL> Есть кнопка.
Когда поворачиваю телефон, кнопка исчезает. Может быть, оставить её насовсем (хотя бы в уменьшенном виде?)

+ тестировал масштабирование _главной страницы_ в Pale Moon на нетбуке; там есть такой переходный момент, когда содержимое вылазит за пределы экрана. Мобильная версия начинает включаться, если увеличиваешь ещё больше.
vit01 to Andrew Lobanov (2017-05-10 05:50:46) [ссылка]

Re: iing

Ответ на сообщение
>> Я лучше кнопку "наверх" внизу прилеплю.
> О, а это отличная идея. Ждём кнопку :)
Есть кнопка. Заодно исправил сползание кнопок в основом интерфейсе, страницу ответа и расползание по ширине блоков
.
Andrew Lobanov to vit01 (2017-05-08 15:23:04) [ссылка]

Re: iing

Ответ на сообщение
AL> Четверть экрана съедена панелью браузера и фиксед-панелью сайта.
Не у всех четверть (здесь от размера экрана и dpi зависит), но окей, понятно.
AL> Я лучше кнопку "наверх" внизу прилеплю.
О, а это отличная идея. Ждём кнопку :)
vit01 to Andrew Lobanov (2017-05-08 10:53:49) [ссылка]

Re: iing

Ответ на сообщение
> 2. Fixed-панель может быть довольно удобной. Вот, например, https://developer.android.com/reference/android/support/v4/widget/NestedScrollView.html
> // Первый сайт, который вспомнил.
Четверть экрана съедена панелью браузера и фиксед-панелью сайта. Я лучше кнопку "наверх" внизу прилеплю.
Andrew Lobanov to vit01 (2017-05-08 08:32:19) [ссылка]

Re: iing

Ответ на сообщение
Peter> Короче, только не это!!! Fixed панели это ужасно. Почти как iframe.
1. Не надо сравнивать тёплое с мягким :)

2. Fixed-панель может быть довольно удобной. Вот, например, https://developer.android.com/reference/android/support/v4/widget/NestedScrollView.html
// Первый сайт, который вспомнил.

Как вариант, можно продублировать кнопки навигации внизу.
Или включать fixed только для мобильных устройств, а для десктопов - оставить как есть.

Просто мысли вслух. Наверняка ещё что-нибудь придумать можно.
vit01 to Peter (2017-05-08 07:33:12) [ссылка]

Re: iing

Ответ на сообщение
И это не баг мобильной версии. Подумаю как исправить.
Andrew Lobanov to vit01 (2017-05-08 05:32:51) [ссылка]

Re: iing

Ответ на сообщение
Отправил случайно.
Короче, только не это!!! Fixed панели это ужасно. Почти как iframe.
Peter to Peter (2017-05-08 05:16:12) [ссылка]

Re: iing

Ответ на сообщение
>Если открыть большое сообщение, то, когда дочитаешь до конца, его надо скроллить наверх, а это время. Поэтому имеет смысл добавить position:fixed в стиль верхней панели.
Peter to vit01 (2017-05-08 05:15:32) [ссылка]

Re: iing

Ответ на сообщение
А вот и первый серьезный баг: https://ii-net.tk/screens/adaptive2.png
vit01 to vit01 (2017-05-07 23:26:48) [ссылка]

Re: iing

Ответ на сообщение
AL> В сабже таки появилась адаптивная вёрстка, но пока особо не тестил ничем, кроме своего телефона.
AL> Таверну уже обновил. Просьба потестировать это дело.
Лови скриншот: https://ii-net.tk/screens/adaptive1.png

Тут сразу заметно:

1. Странное масштабирование фона, если сообщение меньше размера экрана
2. Мелкие контролы, по которым трудно тыкать пальцем

Если открыть большое сообщение, то, когда дочитаешь до конца, его надо скроллить наверх, а это время. Поэтому имеет смысл добавить position:fixed в стиль верхней панели.

Да и кнопки навигации зелёные тоже можно поместить в тёмную панель. Для более-менее больших экранов там им самое место. Благо CSS - это не Гугловские API, и появление кнопок можно захардкодить без особых проблем.
vit01 to Andrew Lobanov (2017-05-07 23:15:03) [ссылка]

iing

В сабже таки появилась адаптивная вёрстка, но пока особо не тестил ничем, кроме своего телефона.

Таверну уже обновил. Просьба потестировать это дело.
Andrew Lobanov to All (2017-05-07 20:25:08) [ссылка]

ОТБОЙ

Всё, хватит.
Ещё в пятницу у меня была температура выше 37, и до сих пор не спадает. Вон вчера почти 38 было, и вообще хреново. Лучше не становится.
Всё освободившееся (в связи с болезнью) время тратил на клиент и целый день просиживал в IDE.

Короче, ну его, этот клиент, только нервы портит
Пойду в кровать лучше // или новую серию млп посмотрю

Гуд бай май френдз! Хорошего вам настроения! # Коммитов нет, но вы держитесь =)
vit01 to All (2017-05-07 08:53:35) [ссылка]

Re: idec mobile

Ответ на сообщение
Обновление

Новая фича в настройках - включите галочку "Скрывать верхнюю панель при прокрутке во время чтения эх"
Это должно понравиться тем, у кого маленький экран.

Качать APK как обычно
vit01 to vit01 (2017-05-07 08:53:34) [ссылка]

Re: idec mobile

Ответ на сообщение
> Пока что хочется угодить всем, но некоторые вещи (вроде окна дебага) кажутся нецелесообразными, чтобы их разгребать здесь и сейчас.
Я немного вырву из контекста. Я наблюдаю уже не первый год за инстедом и потихоньку попиливаю репозиторий игр для него. Всем не угодить. Ты просто растеряешь силы на это, а в итоге останешься на месте. Делай так, как считаешь нужным, а советы или просьбы оставь разве что на обдумывания в свободное от проекта время. В малом проекте только диктатура даёт результат.
> Коль народу не лень, можете продвигать свои хотелки сразу в виде исходников:
> https://github.com/vit1-irk/idec-mobile
> Линус Торвальдс сказал однажды: "Talk is cheap, show me the code".
Эх. Когда-нибудь, я найду достаточно свободного времени, чтобы изучить Java и попробую помочь какому-нибудь проекту. Меня и Sergey Poziturin 2:5020/2140 aka 2:5020/2141 (мой фидобосс) к java (точнее к kotlin) склонял уже. Но пока по душе python3, golang и lisp. И их опыт мало помогает в разработке под андроид.
> Так что любой пулл-реквест и патч имеет больше ценности, чем наши обширные разглагольствования.
Это, безусловно, так. Однако:

«Делам надо поклоняться, а не статуям. А может быть, даже и делам поклоняться не надо. Потому что каждый делает, что в его силах. Один – революцию, другой – свистульку. У меня, может, сил только на одну свистульку и хватает, так что же я – говно теперь?»

Аркадий и Борис Стругацкие, «Град обреченный».

Это я к тому, что я и рад бы слать патчи тебе, но у меня iing и цезий. И они отнимают много свободного времени.
Andrew Lobanov to vit01 (2017-05-07 08:29:44) [ссылка]

Re: Странно

Ответ на сообщение
>> Я бы вообще в фоне фетч производил
> Не у всех же безлимитный и дешёвый мобильный интернет, чтобы загружать канал раз в N минут.
Ну так это тут и не при чём. Просто нажал кнопку, оно в фоне качается.
> Если ты имеешь в виду в виде уведомления наверх ставить, то это тот же прогрессбар, от которого мало пользы
А пользователю больше и не надо. Ему надо видеть только два состояния: качается и скачалось.
> Ну вот исходник, сможешь хотя бы примерно разобраться в алгоритме построения индекса?
> https://github.com/vit1-irk/idec-mobile/blob/master/app/src/main/java/vit01/idecmobile/Core/Fetcher.java
Вот честно, я в java ни в зуб ногой. Могу попробовать разобраться, но толку от меня будет мало.
> После 23 апреля я уже нашёл те баги в фетчере и переработал его, но паранойя осталась. А вдруг ещё что-нибудь эдакое будет?
Сделать дебаг-окно опцией, ИМХО, самое мудрое решение. Если случился баг и я его могу повторить, то я включу и скрин сниму. Если же повторить не удастся, то я с первого раза один фиг не пойму что произошло и скрин не сделаю. Но клиент твой и тебе его развивать. Мы с Петром просто пользовательские ощущения описываем.
Andrew Lobanov to vit01 (2017-05-07 08:19:50) [ссылка]

Re: idec mobile

Ответ на сообщение
Peter> 1) следует избегать "жаргонов" и обращений на "ты" в сообщениях (окно дебуга, сообщение про слеш в конце урл) итд,
Надо сказать, разговорная речь есть не только в этих местах, а раскидана по всему клиенту. Изначально хотелось, чтобы приложение для "уютной секточки" общалось с пользователем не официально-деловым стилем, а было немного "проще в выражениях".

Это можно взять и поменять. А можно и не менять ;)

Тут пусть народ выскажется. Как решит большинство, так и будет.
Peter> 3) с убиранием кнопки "<" стало лучше!
Коммитить так и не стал, потому что статусбар исчезает, а это не есть красиво. Рано или поздно всё равно придётся что-то делать.
Peter> Почему 2-3 секунды?
Ровно 2 секунды. Чтобы успеть всё прочитать. И скриншот, конечно.
Peter> Кажется, в psi, это окно называется консоль. Вот можно сделать так, что консоль можно включить и выключить.
Это наиболее подходящий вариант с точки зрения компромисса
Peter> В любом случае, принимает решение всегда автор -- так как ты пишешь клиент, тебе и решать каким ему быть.
Peter> Ты можешь учитывать или нет опыт использования
Если изменения кому-то нужны, то они рано или поздно будут. Пока что хочется угодить всем, но некоторые вещи (вроде окна дебага) кажутся нецелесообразными, чтобы их разгребать здесь и сейчас.

Коль народу не лень, можете продвигать свои хотелки сразу в виде исходников:
https://github.com/vit1-irk/idec-mobile

Линус Торвальдс сказал однажды: "Talk is cheap, show me the code".
Так что любой пулл-реквест и патч имеет больше ценности, чем наши обширные разглагольствования. На Гитхаб захожу регулярно, стараюсь всё мержить побыстрее.
vit01 to Peter (2017-05-07 08:07:39) [ссылка]

Re: idec mobile

Ответ на сообщение
Но в целом, клиент радует! Пробую дальше. :)
Peter to Peter (2017-05-07 07:17:17) [ссылка]

Re: idec mobile

Ответ на сообщение
Спасибо, вроде заработало!
Насчет окна дебага, раз уж идет обсуждение, выскажу свои мысли.

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

Если мы хотим, что бы клиент воспринимался не как тул для маргиналов, то:
1) следует избегать "жаргонов" и обращений на "ты" в сообщениях (окно дебуга, сообщение про слеш в конце урл) итд,
2) следует облагородить окно дебага (если ты хочешь его оставить в релизе) и назвать его окно вывода или как то так.
3) с убиранием кнопки "<" стало лучше! Но все таки, введение специальной задержки в конце операций -- выглядит как фуззи решение. Почему 2-3 секунды? Чтобы успеть сделать скриншот? Как то странновато. Варианты:
- если нет ошибок -- закрывать сразу;
- если есть ошибки -- ждать нажатия на кнопку закрыть;
- Но самое прекрасное, по моему, лог и фетчер в фоне.

Кажется, в psi, это окно называется консоль. Вот можно сделать так, что консоль можно включить и выключить. Обычно от консоли нет никакого толку юзеру.
Peter to vit01 (2017-05-07 07:04:10) [ссылка]

Re: Странно

Ответ на сообщение
>> Но что бы ты предложил взамен? Безликие прогрессбары?
AL> Я бы вообще в фоне фетч производил
Не у всех же безлимитный и дешёвый мобильный интернет, чтобы загружать канал раз в N минут. Если ты имеешь в виду в виде уведомления наверх ставить, то это тот же прогрессбар, от которого мало пользы
AL> Тогда этот фетчер надо заменить. Я ума не приложу как такое поведение можно реализовать даже, а ты его отслеживаешь.
Ну вот исходник, сможешь хотя бы примерно разобраться в алгоритме построения индекса?
https://github.com/vit1-irk/idec-mobile/blob/master/app/src/main/java/vit01/idecmobile/Core/Fetcher.java

Ещё в прошлом месяце я получал багрепорты о странном поведении фетчера, хотя у меня самого оно практически не проявлялось.
А если бы всё в фоне скачивалось? Тогда бы просто было что-то вроде "клиент лагает", и починить баг было бы нельзя.

После 23 апреля я уже нашёл те баги в фетчере и переработал его, но паранойя осталась. А вдруг ещё что-нибудь эдакое будет?
vit01 to Andrew Lobanov (2017-05-07 06:56:53) [ссылка]

Re: idec mobile

Ответ на сообщение
Peter> Отправил багрепорт. Воспроизвел так же. Нюанс - удалять нужно активную на данный момент станцию.
Отловил баг. Оказалось, что он возникал из-за моей глупейшей опечатки.
Качай по прежней ссылке, должно всё сразу заработать.

// Твоё письмо так и не пришло. Оказалось, что 7 и предыдущие андроиды (у меня на планшете 4.4) по-разному обрабатывают SEND_TO Intent. Пришлось и багрепортинг чинить :)
vit01 to Peter (2017-05-07 06:27:32) [ссылка]

Re: Странно

Ответ на сообщение
> Но что бы ты предложил взамен? Безликие прогрессбары?
Я бы вообще в фоне фетч производил.
> Ошибка может заключаться не только в выбросе Exception, но и в том, например, что клиент отказывается фетчить какую-то эху. Или начинает качать все сообщения подряд (и его тогда прибивать надо), или мудрит с построением индекса (то есть начинает слишком мелкими или большими порциями забирать его).
Тогда этот фетчер надо заменить. Я ума не приложу как такое поведение можно реализовать даже, а ты его отслеживаешь.
Andrew Lobanov to vit01 (2017-05-07 06:17:29) [ссылка]

Re: idec mobile

Ответ на сообщение
Отправил багрепорт. Воспроизвел так же. Нюанс - удалять нужно активную на данный момент станцию.
Peter to vit01 (2017-05-07 04:51:51) [ссылка]

Re: idec mobile

Ответ на сообщение
Обновление:
Включены багрепорты по Email (с помощью Acra). Теперь не нужно делать adb logcat и всячески извращаться.

Просто устанавливаете новую версию поверх текущей, ловите падение, и информация об ошибке прилетит ко мне на мыло.
Уже сам проверял - работает.

APK: https://ii-net.tk/ii/files/app-debug.apk
vit01 to vit01 (2017-05-07 04:09:16) [ссылка]