Saturday, January 16, 2021

Понял, в чём суть тряпок

 Лука со своими псевдоисторическими тараканами в башке форсит, что БЧБ - фашистский. Тут до меня дошло, что зто за Модус Операнди у него - именно при немецкой оккупации в ВОВ фрицы везде-то свои флажки и развешивали, показать, кто хозяин. А партизаны кидали подлянки, иногда вывешивая красненького, чтоб его быстренько сорвали. Такая вот барацьба. Вот Лука и велит закат над болотом везде повесить, там, где его раньше никогда не было и там, где он никому не нужен, ибо всем насрать (было), какой у Бульбении флаг, если это не принципиальный вопрос противоречия, самоутверждения и противостояния.

Monday, December 21, 2020

Saturday, December 5, 2020

Async Blazor

 While making quick dirty things in Blazor server-side app, don't drown with EventCallback<> for controls and calls of (awaited async) methods in markup like

@foreach (var item in GetItems())

. This causes UI to stop reacting to events and updating . Lamer's attempts of ConfigureAwait() didn't solve problems. Use props bound to markup and OnChanged Action<> as control property. Making event handler async or using GetAwaiter().GetResult() will hang:

<AccountSearch OnAccountSelected="OnAccountSelected" />

    private async void OnAccountSelected(int accountId)

    {

        _accountId = accountId;

        _bans = await DbUtils.LoadAccountBans(_sqlProvider, _accountId, _all);

        StateHasChanged();

    }


Tuesday, October 6, 2020

И вот опять (FlashCards)

   В мире 100500 афуенных вебфреймворков и доступного каждому девелопмента наблюдается отсутствие нормальных продуктов и броуновское движение бесполезного малоюзабельного треша. В своё время по какому-то обзору я наткнулся на FluxCards 1.x, которые работали ещё на 2м ведроиде. Меня устраивало почти всё, кроме того, что поиск сета для импорта из Quizlet давал очень непонятные результаты, но с горем пополам, сделав новый эккаунт на Quizlet, я накидал свежих сетов в FluxCards и был доволен. 

    Что сейчас? Захожу на Quizlet - какие-то непонятки уже и намеки о платном эккаунте. Ну, хоть импорт-экспорт сета по-старому пока доступен. 

    А вот приложения на ведре... FluxCards версии 2.4 - неюзабельный треш. Кто ща билдит пекедж с этим же лео*-именем, непонятно. UI другой, нихера не работает, нихера нет. А в гугли плее старая иконка и демки. Только апп вот "новый". Нам такого нового не надо, старое верните.

    AnkiDroid - смотрел ещё давно. ППЦ как был, так и остался. Сайт - да пофиг, на чём вы всё это делаете, вы импорт-экспорт дайте, батчи. Ваще тошно смотреть, первоклассник в плане юзабилити лучше бы сделал. Апп ни на 1й платформе, в т.ч. на PC, так и не заставил сет импортировать.

    Flashcards App - где-где там работа с Quizlet? В платной версии? Нафиг-нафиг.

    Ну, хоть само Quizlet-приложение ещё ладно, кое-как можно работать с ним примерно как со старым FluxCards, и сеты свои доступны.

    "Верной дорогой идёте, товарищи". В идиократию. Горе от ума какое-то сплошное.

Friday, June 5, 2020

И вот наконец

Я юзаю VS 2019 (Community Edition), ибо "так получилось". Правда, скачан свежий пиратский решарпер, но не главное. Что с ходу видно? Стало чего-то нового больше и лучше? Пока не заметил. А вот анимация в строке статуса (это как в MS Office версии с 2016й, наверное, буковки так плааааааавненько печатаются, прямо слева направо) и очень похожий на старый, но какой-то искривленный в плане usability для кейбордистов Find Dialog - это да, заметно. Хипстота, блеать! Дешевка.
P.S. С очередным апдейтом диалог поиска стал ещё глючнее в области комбика с проектами-путями!

Wednesday, April 22, 2020

Если (друг) EntityFramework оказался вдруг

           выполняющим операции на клиенте, подумайте, где явно и неявно используется IEnumerable<>. Компилятор не скажет вам, где использует LINQ extension methods для IEnumerable<>. И optionsBuilder.ConfigureWarnings(w => w.Throw(RelationalEventId. QueryClientEvaluationWarning)) ничего вам не скажет. Используйте IQueryable<>, и ваши ентити-операции типа Take(), Skip(), Count() лягут на DBMS,а не на backend app.