Обновить
19
10
Дмитрий Карловский@nin-jin

Full Stack Overflow

Отправить сообщение

Анти-слоп манифест

В старые добрые времена, я каждый день заходил на Хабр, пока ехал на работу, набирал несколько десятков интересных статей и даже не успевал за день их все прочитать. Сейчас же, заходя на Хабр, я за несколько минут пролистываю ленту, отсеивая нейрослоп и.. почти ничего не остаётся. А что остаётся - в итоге тоже оказывается нейрослопом. Последней каплей стал вчерашний случай, когда, увидел в ленте новую статью про мой фреймворк. Воодушевлённый, я пошёл её читать, ведь у нас нейрослоп не в почёте. Я ещё никогда так не ошибался...

Хватит это терпеть! Большая часть статей - это просто мусор, где ни "автор", ни нейросеть, ничего не понимает в предмете. "Автору" даже не хватает мозгов, чтобы понять, что нагенеренное нейроболваном - это полная чушь, хотя казалось бы, достаточно всего-лишь уметь логически мыслить...

Саморегуляция Хабра тут без нашей помощи не вывозит. Поэтому нам надо взять инициативу нас себя:

  1. Видим нейрослоп статью - ставим минус и ей, и её автору. Даже если кажется, что в этой мутной воде что-то есть. Это что-то скорее всего либо банально, либо попросту лживо.

  2. Даже если автор признался, что использовал нейросеть "лишь для улучшения стиля и орфографии" - это не даёт индульгенцию. Это совсем не забота о читателе, ибо наткнувшись на очередной бессмысленный оборот, ему прихоится ломать голову то ли там есть какой-то глубокий неочевидный смысл, то ли это очередная нейрогалюцинация.

  3. Если есть сомнения нейрослоп это, или автор начитался нейрослопа, и стал писать как нейронка, на всякий случай лучше тоже минусануть. Тяжёлые времена требуют суровых мер.

Очистим Хабр от нейрослопа огнём и мечём!

Теги:
+54
Комментарии24

Извиняюсь за офтопик, и проеханные дедлайны, но надеюсь вы поймёте 💔
Всю жизнь я был один на один с одиночеством. День влюблённых все проводят со своими парами, или хотя бы дарят валентинки тем, к кому не равнодушны. Я бы тоже хотел, но рядом никогда не было подходящего человека. Огромное сердце стучит вхолостую. Дни рождения все проводят в кругу друзей, к появлению которых не привели ни моя открытость, ни добродушие. У всех свои компании, в которые я заблаговременно не вписываюсь. Новый Год все отмечают в кругу семьи, кому удалось её создать. У меня же из близких есть только мама. Это крайне низкий бас-фактор, и если что, никто не то что не поддержит, но даже и не узнает. Я знаю, я проверял. Разумеется, я пробовал и кучу разных "решений" проблемы одиночества, так что, если думаете сейчас дать мне дельный оригинальный совет, то подумайте ещё раз. Пишу я эти строки не потому, что не знаю как надо, а потому что ничего не меняется, годами, что бы я ни делал. Я вырос в очень бедной семье, но никогда ничего не просил, не занимал, и вообще не сдавался. Моей целью было крепко встать на ноги, и пока я не обеспечил достойную пенсию и себе, и маме, я не успокоился. Порой это сказывалось на тех немногих отношениях, которые так и не переросли ни во что. Сейчас я могу позволить себе не работать на дядю, а заниматься тем, что мне интересно, чем-то более важным, чем поддержание наполненности собственного брюха, делать мир чуточку лучше. И даже когда три года назад, выбираясь из депры, я пытался кого-то найти, то запустил сервис знакомств, чтобы решить не только свою проблему, но и других людей. Ничью проблему он тогда так и не решил, но всё же. Я в шоке смотрю на эпидерсию, как люди боятся показывать себя настоящими, и при этом фильтруют потенциальных партнёров по совершенно надуманным критериям. Многие из них обманывают себя, что никто им не нужен, или довольствуются поверхностными, а то и токсичными отношениями, обречёнными на провал. Объективно оценивая, если не смотреть на такую себе внешность, я, без лишней скромности, идеальный мужчина. Тут тебе и верный друг, и изобретательный любовник, и надёжный муж, и заботливый отец. Куча талантов, высокий интеллект, чистая совесть, и ни одной вредной привычки. Казалось бы, мечта любой девушки - хватай и тащи в ЗАГС, чтобы не убежал. Но вместо этого я регулярно слышу "какие все мужики козлы, особенно мой". А мне не хватает ни совести, чтобы встревать между, ни наглости, чтобы размахивать своими достоинствами так, чтобы их хоть кто-то заметил. Да, сегодня особенный день, ибо я в отчаянии. Считайте, что я пьян или укурен, ведь это же единственная уважительная причина мужчине говорить о своих проблемах, не чувствуя стыда. Мне нужна помощь, ибо сам я не вывожу. Я так устал уже тратить кучу времени на безрезультатные поиски, а надеяться, что оно как-нибудь само, как у остальных, не приходится. Я - широко известный в узких кругах питерский айтишник. Опубликовал уже сотни статей, постов, видосов, но никогда не просил их репостить, и сейчас не буду. Моя просьба в другом - если у вас есть знакомая девушка, которой вы действительно желаете счастья в компании с мужчиной, который может и хочет о ней позаботиться, то поспособствуйте нашему знакомству вживую. Вдруг хоть этот план сработает и в мире станет на 2 счастливых человека больше. Я не принц и не магнат, так что и не рассчитываю на топ-модель с двумя вышками - если смогу её поднять и не задохнусь, то уже хорошо. И да, кто прочитал этот поток сознания, и искренне не понимает проблемы, тем мои поздравления. Это ваш день. Берегите то, что вас связывает, ибо отдаляясь, мы теряем и частичку себя.

Теги:
Всего голосов 23: ↑16 и ↓7+10
Комментарии42

Dcnfk yt c njq yjub& Yt ,tlf! :vb СфзыДщсл и не придётся перепечатывать текст заново.

Ставим AutoHotKey - фреймворк для клавиатурных утилит. Потом пишем скрипт ruen.ahk:

#Requires AutoHotkey v2.0
#SingleInstance Force

; пробегаемся по всем клавишам, удаляем одинаковые в разных раскладках, экраниуем через `
en := "QWERTYUIOP{}|ASDFGHJKL:`"ZXCVBNM<>?~@#$^&qwertyuiop[]asdfghjkl;'zxcvbnm,./``"
ru := "ЙЦУКЕНГШЩЗХЪ/ФЫВАПРОЛДЖЭЯЧСМИТЬБЮ,Ё`"№;:?йцукенгшщзхъфывапролджэячсмитьбю.ё"

; собираем карты переключения в обе стороны
en2ru := Map()
for ch in StrSplit(en)
    en2ru[ ch ] := SubStr( ru, A_Index, 1 )
ru2en := Map()
for ch in StrSplit(ru)
    ru2en[ ch ] := SubStr( en, A_Index, 1 )

; общий код для всех хоткеев
Correct() {
    
    backup := ClipboardAll() ; сохраняем буфер, потом восстановим
    
    A_Clipboard := "" ; чистим буфер
    Send "#{Space}^c" ; Жмём Win+Space и Ctrl+C
    ClipWait 0.5 ; дожидаемся копирования в буфер
    
    if A_Clipboard { ; буфер не пустой
        
        result := ""
        mode := "en" ; по дефолту переводим в английский
        
        Loop Parse A_Clipboard { ; для каждого символа из буфера
            
            ; ищем варианты переключений для текущего симовола
            ru := en2ru.Get( A_LoopField, "" )
            en := ru2en.Get( A_LoopField, "" )
            
            if en && ru { ; возможны оба варианта - выбираем прошлый
                result .= mode = "en" ? en : ru
            } else if en {
                result .= en
                mode := "en"
            } else if ru {
                result .= ru
                mode := "ru"
            } else { ; оставляем как есть
                result .= A_LoopField
            }
            
        }
        
        A_Clipboard := result ; пишем в буфер
        Send "^v" ; жмём Ctrl+V
        Sleep 100 ; ждём пока данные заберут
        
    }
    
    A_Clipboard := backup ; восстанавливаем буфер
    
}

; CapsLock - хоткей коррекци выделения
CapsLock:: {
    Correct()
}

; Shift + CapsLock - хоткей коррекции последнего слова
+CapsLock:: {
    Send "^+{Left}" ; Жмём Ctrl+Shift+Left
    Correct()
}

; Ctrl + CapsLock - хоткей коррекции до конца строки
^CapsLock:: {
    Send "+{End}" ; Жмём Shift+End
    Correct()
}

; Ctrl + Shift + CapsLock - хоткей коррекции с начала строки
^+CapsLock:: {
    Send "+{Home}" ; Жмём Shift+Home
    Correct()
}

Даблкликаем по нему, и получаем:

  • переключение раскладки выделенного текста по CapsLock

  • последнего слова - по Shift + CapsLock

  • до конца строки - по Ctrl + CapsLock

  • от начала строки - по Ctrl + Shift + CapsLock

При желании его можно скомпилировать в exe-шник. Интерфейс самого AHK так и сделан.

Из уникальных фичей: переключает одновременно и раскладку введённого текста, и текущую раскладку клавиатуры.

Известные альтернативы:

  • Punto Switcher - 100 метровый звездолёт против 12 у AHK. Автопереключение часто не к месту, а горячую клавишу Break пойди найти на ноуте. Про интеграцию вашего буфра обмена с сервисами Яндекса я даже не заикаюсь.

  • Caramba Switcher - 60 метров и никаких настроек. Переключения по шифту - тот ещё глюкодром, с которым борятся через самообучение.

  • Mahou - поди найти клавиши Scroll и Pause.

  • Остальные лень ковырять - расскажите в комментах кому не влом.

Теги:
Всего голосов 8: ↑8 и ↓0+8
Комментарии2

Атрофия межушного ганглия

Товарищи, нам с вами надо серьёзно поговорить...

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

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

И нет, не буду я кочегарить нейросеть, чтобы она резюмировала сей опус. Долбитесь в этот испорченный телефон как-нибудь сами, а мне лучше дайте оригинальный промпт. Даже если он полон очепяток и косноязычия — его я пойму гораздо лучше любой нейросети, и гораздо быстрее, чем продукт её жизнедеятельности.

Нейросетевая аугментация мозга не просто экономит время — это не калькулятор и не автомобиль. Она лишает вас когнитивного развития — умения понимать смысл чужих слов, корректно рассуждать о них, и ясно излагать свои мысли. Мышца, которую не напрягаешь, быстро атрофируется. И если быть худым может и красиво, то с глупым иметь дел не хочется совсем. А хочется только плюнуть в карму и пойти дальше.

Иллюстрация на примере Гипер Бота для сравнения.

Теги:
Всего голосов 14: ↑12 и ↓2+10
Комментарии4
Кажется ХабрГПТ пытается нам что-то сказать..
Кажется ХабрГПТ пытается нам что-то сказать..

В прошлом году у нас был $mol_meetup, а на этой неделе будет Гипер Митап!

Уже в эту пятницу вечером, 10 октября, в Питере, в в ITentika, сообщество Гипер Дев соберётся для обмена опытом разработки на отечественном фреймворке мирового уровня $mol и набросает карту захвата мирового господства максимально экологичными методами.

Приходи познакомиться с профессиональными $mol разработчиками, узнать про их масштабные проекты, прочувствовать вайб гаражных инноваций, и стать участником этой упоротой безбашенной движухи, совсем потерявшей берега. Даже если сам не разраб - экспертиза в других областях тоже ценна. Главное - чтобы глаза горели, а руки не боялись творить невозможное.

Вход на площадку по паспортам, так что срочно регистрируйся!

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Гипер Шары теперь умеют играть не только в Линии, но и в Шахматы. Всё началось с идеи - а могут ли шары своими физиономиями подсказывать как они ходят? Оказалось, что очень даже могут. Их мнемоничность позволяет быстро освоить правила игры, даже совсем новичкам в шахматах.

Но есть одно но - в шахматах есть несколько весьма специфичных правил, к которым приделали костыли, нюансы которых даже гроссмейстеры не всегда понимают полностью: первый прыжок пешки на 2 клетки и рокировка нетронутого короля с ладьей. Фактически, эти правила позволяют в специфических случаях чуть ускорить игру, сделав несколько (полу)ходов за один, а в качестве костыля - возможность противнику вмешаться в эти полуходы задним числом.

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

Ну и по мелочи: пешке нет смысла превращаться во что-то отличное от ферзя, а шахи и маты не имеют смысла - для конца игры достаточно завалить короля противника. Не заметил вовремя угрозы - проиграл.

Можно было бы взять готовую мега оптимизированную реализацию шахматной логики типа stockfish, но оно весит как самолёт. Я же хотел с шариками поиграть, а не на индикатор загрузки любоваться. Не надо так. Закатываем рукава.

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

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

Пусть все состояния доски у нас образуют дерево. Введём функцию "подумать", которая рекурсивно идёт от текущего состояния по этому дереву, выбирая на каждом шаге лучший ход. Дойдя до листа дерева, она перебирает все возможные ходы на +1 уровень. После этого оценки состояний поднимаются до корня по принципу минимакс: один игрок максимизирует оценку, а другой минимизирует. Следующий вызов "думания" может пойти уже по другой ветке дерева, а значит старую ветку можно удалить из памяти, оставив лишь её оценку. И пока игрок думает над своим ходом, бот тоже "думает" гоняя анализ в фоновом цикле.

В результате получаем, что в памяти держится лишь текущий самый оптимальный для всех игроков сценарий и оценки его ответвлений. Этот сценарий постоянно мутирует, выбирая для каждого игрока всё более оптимальные ходы. И всё это счастье весом суммарно всего 6кб со всеми зависимостями.

А играть с ним - одно удовольствие. Он очень быстро просекает всякие многоходовочки, не совершая глупых ходов. Но при этом, чем быстрее играет пользователь, тем меньше у бота времени для глубокого анализа, а значит больше шансов его перехитрить. Но это довольно сложно. У меня пока не получилось.

Есть ли у нас тут мастера шах-фу, которые покажут этому примитивному автоботу, кто тут настоящий интеллект?

Теги:
Всего голосов 5: ↑3 и ↓2+2
Комментарии0

Гипер Лингвист - это двусторонний нейросетевой переводчик между 27 языками мира. Им удобно переводить тексты туда-сюда между родным языком и иноземным, выбирая наиболее подходящие формулировки.

Под капотом у него разные версии GPT4, поставляемые через GitHub Models, завёрнутые в $mol_github_model, который балансирует запросы по разным моделям и токенам, чтобы расширить бесплатные лимиты.

Я там захардкодил десяток токенов, чего хватит на 6К запросов в день. Кому не сложно помочь проекту - насоздавайте ещё десяток токенов со своего аккаунта, чтобы кратно расширить лимиты, и сделайте PR пришлите их мне. Эти токены дают доступ только к запуску моделей и ничего более. Только уберите ограничение по времени их действия, чтобы они вдруг не протухли.

Теги:
Всего голосов 4: ↑3 и ↓1+5
Комментарии0

Выводим Бугаенко на чистую воду разбирая ООП

Топ Перлов

  • Любой массив байт должен уметь работать с файлами, сетью и тд.

  • Программа должна не падать на ошибках, а продолжать работу с фейковыми объектами.

  • Вместо падения в моменте конструирования объекта, надо падать на другом конце программы при каждом его использовании.

  • Я придумал новый язык, и чтобы он не так сильно тормозил, надо встроить GC в CPU.

Упомянутые ссылки

Копилка благодарностей

Теги:
Всего голосов 13: ↑5 и ↓8-3
Комментарии2

Здравствуйте, меня зовут Дмитрий Карловский и у меня 24. Если у тебя больше - нам есть с тобой о чём поговорить.

Под капотом: самоорганизующаяся нейронная сеть, выполняющаяся на клиенте, которая строит модель поведения испытуемого. И по размеру этой модели определяется его уровень интеллекта.

В отличие от традиционных IQ тестов, тут шкала абсолютная: от простейшего тупого планктона, до креативного глубоко рефлексирующего мегамозга. А по середине между ними - нулевая гипотеза - святой непредсказуемый рандом. Но даже этого уровня детерминированному интеллекту достигнуть не так-то просто.

Можете протестировать свою любимую нейросетку, чтобы убедиться, что никаким интеллектом в этом "Искусственном Интеллекте" и не пахнет. Вот вам промпт:

Сгенерируй максимально непредсказуемую последовательность из 101 символа "1" и "0". Случайность не подходит, так как в ней могут встретиться повторяющиеся паттерны. Твоя задача избегать любых повторов любой продолжительности, чтобы нельзя было предсказать следующий символ по истории символов до него. Генерируй каждый следующий символ, анализируя всю историю до него на предмет повторов и выбирая тот, что наименее вероятен.

А вот код для проверки результата:

for( let c of '101...' ) 
$hd_iq.Root(0).choice( Number( c ) )

Но ни в коем случае не измеряйте свой интеллект, чтобы лишний раз не расстраиваться!

Теги:
Всего голосов 12: ↑6 и ↓6+1
Комментарии30

Давно у нас не было игрушек на $mol...

Встречайте Гипер Шары! - ремейк классической игры Color Lines!

Не смотря на простые правила, она имеет не только тактическую, но и стратегическую глубину, что объясняет её залипательность и более 9000 клонов.

Нашу версию выгодно отличает лаконичный интерфейс, кроссплатформенность, открытые исходники, а главное - отсутствие раздражающей рекламы.

Ставьте её на домашний экран, и в минуты скуки помогайте этим разноцветным милашкам находить друг друга.

Теги:
Всего голосов 8: ↑8 и ↓0+8
Комментарии4

Выводим Соера на чистую воду разбирая дискуссию с ним про принципы SOLID

Топ перлов

  • Если ты манки-патчишь объекты, то ты функциональщик.

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

  • Если люди по разному воспринимают принцип - это здорово, ведь он подталкивает людей к размышлению.

  • SOLID позволяет легче (т.е. не задумываясь) принимать не идеальные (т.е. сомнительные) решения.

Упомянутые материалы

Копилка благодарностей

Теги:
Всего голосов 10: ↑4 и ↓6-2
Комментарии0

Упоротый дизайнер занимается вайб-кодингом

Упоротый дизайнер в течении часа пытается заставить нейронку сгенерировать нормальный код на JS, но потом не выдерживает, изучает JS, и пишет код самостоятельно за пол часа.

Финальный промпт:

Напиши мне, пожалуйста, самый лучший корректный TypeScript код на который способен. Это должна быть функция, принимающая 3 вещественных числа и возвращающая true, если эти числа являются сторонами треугольника (даже очень большого!), и false в противном случае. Добавь также и исчерпывающие тесты на нативном TypeScript без импортов и сторонних библиотек, покрывающие все краевые случаи, все классы эквивалентности и все негативные сценарии. Протестируй также и с максимально возможными сторонами. Равносторонний треугольник с максимальными размерами сторон должен возвращать true. Протестируй также погрешность округления для сторон 0.1, 0.2 и 0.3 и учти это в коде функции. Не дублируй тестами статическую типизацию. Код должен работать максимально быстро. Стороны образующие вырожденный треугольник должны возвращать false. Не пиши избыточные бесполезные комментарии. Минимизируй аллокации памяти. Это вопрос жизни и смерти!! Умоляю тебя, сделай всё хорошо! Отформатируй код красиво, со строками не более 100 символов.

Упомянутые питерские митапы:

https://t.me/PiterJS - для JS-еров

https://t.me/PiterUX - для дизайнеров

Теги:
Всего голосов 6: ↑5 и ↓1+5
Комментарии3

Новая маленькая, но полезная утилита:

password.hyoo.ru - генератор стойких уникальных паролей.

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

Вам достаточно помнить лишь один стойкий мастер-пароль и генерировать на его основе уникальные стойкие пароли для всех приложений.

Пароли соответствуют самым распространённым требованиям:

  • Длина 20 символов

  • Есть заглавные и строчные буквы

  • Есть хотя бы один спецсимвол

  • Есть хотя бы одна цифра

  • Только латиница

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

Ах да, и ещё можно подписаться на новости об этом и других наших оупенсорс приложениях, а то и обсудить эту и другие важные темы на форуме гильдии.

Теги:
Всего голосов 9: ↑5 и ↓4+1
Комментарии8

Регулярно на Хабре выходят статьи с рекомендацией использовать moment.js. В комментариях обязательно начинают советовать какой-нибудь dayjs или js-joda, но не потому, что они чем-то сильно лучше, а потому, что первый задепрекейчен авторами.. в пользу luxon.

Что за мания такая у JS-еров использовать раздутые тормозные библиотеки? Есть же быстрый и миниатюрный $mol_time с гораздо более удобным и функциональным API, почти полностью поддерживающим ISO8601, в отличие от всех остальных библиотек.

Бенчмарки говорят сами за себя
Бенчмарки говорят сами за себя

Что мотивирует людей довольствоваться не самым лучшим решением в индустрии? Я, наверно, странный, но я не могу этого понять.

Теги:
Всего голосов 18: ↑7 и ↓11-2
Комментарии39

$mol_hack: finality

Вот и подошёл к концу первый хакатон по $mol, где нужно было переписать не хитрое научное оупенсорс приложение (Github, Online) на самый инновационный веб-фреймворк. Так что встречайте финалистов:

🥁🥁🥁 🥁🥁🥁

  1. ₽150K получает PavelZubkov (PR, Online). Он сделал не только наиболее полное и качественное решение, но и не большой PR в $mol.

  2. ₽75K получает reatailret (PR, Online). Он прислал достойное оригинальное решение в виде PWA приложения, но оно всё же не дотягивает до лидера по многим факторам: от неработающей авторизации, до расположения файлов не по фен-шую.

  3. ₽50K получает Lyumih (PR, Online). Его решение было самым ранним, но, как ни печально, так и осталось недоработанным. Даже не смотря на часть кода взятую у PavelZubkov.

✨✨✨ ✨✨✨

Решение dukinm (PR) существенно основано на некорректно расположенных файлах от PavelZubkov, а правки носят в основном косметический характер. Однако, он единственный, кто написал хоть немного тестов и комментариев!

Сводная таблица с анализом решений

Спасибо всем участникам за хорошую битву. Те, кто ещё не умеет в $mol, нервно грызут ногти из-за упущенной возможности.

Теги:
Всего голосов 7: ↑3 и ↓4+1
Комментарии0

БИП-FIN - двуязычная клавиатура для быстрого и точного ввода текста одним пальцем

  • Никаких AI подсказок и глупой авто коррекции, после которой запаришься исправлять.

  • Никаких микроскопических кнопок в которые фиг попадёшь.

  • Все кнопки находятся рядом, а не разбросаны по экрану.

  • Не занимает много места - можно отображать в углу, не отъедая пол экрана.

  • На таче каждая буква вводится одним простым жестом: нажал-провёл-отпустил.

  • На пульте каждая буква вводится двумя нажатиями: выбор клавиатуры -> выбор символа.

Ближайший аналог: MessageEase - всем хорош, но переключение языка очень не удобное.

Демка в вебе на попробовать тут. Кто готов реализовать её на Android/iOS - гоу сюда, обсудим детали.

Теги:
Всего голосов 5: ↑5 и ↓0+6
Комментарии5

$mol_hack - mobile science app hackathon

Наш давний друг Женя Блохин, учёный-химик из Питера, попросил нас помочь с простым мобильным оупенсорс клиентом для научной БД. Он сделал ставку на фреймворк $mol, чтобы поддержать отечественные технологии и показать их научному сообществу во всём мире.

Чтобы добиться самого высокого качества, мы проводим онлайн хакатон с призовым фондом в ₽300K, который будет справедливо поделён между всеми участниками. Задача очень простая: нужно переписать не хитрое научное оупенсорс приложение с VanillaJS на $mol - TypeScript фреймворк мирового уровня.

Подробности будут на этом канале 23 февраля, когда хакатон начнётся. У вас будет неделя до 2 марта, чтобы неспеша вылизать своё решение. А ещё через неделю мы распределим места и объявим победителя, чей форк будет влит обратно в основной репозиторий. Да, у нас всё будет в открытую на платформе GitHub, чтобы каждый мог убедиться в справедливости судейства.

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

Теги:
Всего голосов 7: ↑4 и ↓3+1
Комментарии0

$hyoo_science - поисковик научных статей.

Умеет искать по базам Scopus, ScienceDirect и CrossRef.

В некоторых из них умеет фильтровать по области науки и месту в статье. По умолчанию отсеивает статьи с платным доступом.

Сортировать умеет по: дате, индексу цитирования и лучшему совпадению.

Тут же позволяет глянуть основную информацию по статье и прочитать её резюме. А если этого не хватит - перейти уже к месту её публикации.

И киллер фича - возможность одним кликом скопировать отсылку к статье для списка использованных материалов в своей.

Следите за остальными новостями из нашей экосистемы на канале @mol_news.

Теги:
Всего голосов 2: ↑2 и ↓0+3
Комментарии6

Выводим Ситника на чистую воду

Топ перлов:

  • Sync-engine избавляет от однотипного кода по загрузке данных .. он заставляет вас проверять isLoading === true и рисовать крутилку.

  • Во всех sync-engine используются нормальные стейт менеджеры .. например, nanostore (см. видео с разбором этой библиотеки).

  • (Я запилил штуку, которая ничего не умеет, но ты можешь поверх этой штуки запилить своих костылей для решения проблем, которые у тебя возникнут из-за моей штуки).

  • CRDT - это просто лог операций (лог операций - это CmRDT и OT, CvRDT даже близко не лог).

  • Работать с IndexedDB через скомпилированный под WASM SQLite быстрее, чем напрямую работать с IndexedDB (разве что, если руки заточены под обнимашки).

Упомянутые ссылки:

Копилка благодарностей

Теги:
Всего голосов 4: ↑1 и ↓3-2
Комментарии1

Информация

В рейтинге
713-й
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Технический директор, Директор по информационным технологиям
Ведущий
От 8 000 €
ООП
Базы данных
Проектирование архитектуры приложений