
Предыдущий: >>3361980 (OP)
https://github.com/mjevans/Careerbees/archive/refs/heads/master.zip
лог ошибок:
This mapping 'snapshot_20170624' was designed for MC 1.12! Use at your own peril.This mapping 'snapshot_20170624' was designed for MC 1.12! Use at your own peril.
WARNING: You are using an unsupported version of ForgeGradle.
Please consider upgrading to ForgeGradle 5 and helping in the efforts to get old versions working on the modern toolchain.
See https://gist.github.com/TheCurle/fe7ad3ede188cbdd15c235cc75d52d4a for more info on contributing.
#################################################
ForgeGradle 2.3.4-gfc67182
https://github.com/MinecraftForge/ForgeGradle
#################################################
Powered by MCP
http://modcoderpack.com
by: Searge, ProfMobius, R4wk, ZeuX
Fesh0r, IngisKahn, bspkrs, LexManos
#################################################
Download http://dvs1.progwml6.com/files/maven/mezz/jei/jei_1.12.2/4.8.0.105/jei_1.12.2-4.8.0.105.pom
FAILURE: Build failed with an exception.
What went wrong:
A problem occurred configuring root project 'Careerbees'.
> Could not resolve all dependencies for configuration ':deobfCompile'.
> Could not resolve net.sengir.forestry:forestry_1.12.2:5.6.0.200.
Required by:
project :
> Could not resolve net.sengir.forestry:forestry_1.12.2:5.6.0.200.
> Could not get resource 'http://maven.ic2.player.to/net/sengir/forestry/forestry_1.12.2/5.6.0.200/forestry_1.12.2-5.6.0.200.pom'.
> Could not GET 'http://maven.ic2.player.to/net/sengir/forestry/forestry_1.12.2/5.6.0.200/forestry_1.12.2-5.6.0.200.pom'.
> Connect to maven.ic2.player.to:80 [maven.ic2.player.to/141.28.27.36] failed: Connection timed out: connect
Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 1 mins 3.216 secs
https://github.com/mjevans/Careerbees/archive/refs/heads/master.zip
лог ошибок:
This mapping 'snapshot_20170624' was designed for MC 1.12! Use at your own peril.This mapping 'snapshot_20170624' was designed for MC 1.12! Use at your own peril.
WARNING: You are using an unsupported version of ForgeGradle.
Please consider upgrading to ForgeGradle 5 and helping in the efforts to get old versions working on the modern toolchain.
See https://gist.github.com/TheCurle/fe7ad3ede188cbdd15c235cc75d52d4a for more info on contributing.
#################################################
ForgeGradle 2.3.4-gfc67182
https://github.com/MinecraftForge/ForgeGradle
#################################################
Powered by MCP
http://modcoderpack.com
by: Searge, ProfMobius, R4wk, ZeuX
Fesh0r, IngisKahn, bspkrs, LexManos
#################################################
Download http://dvs1.progwml6.com/files/maven/mezz/jei/jei_1.12.2/4.8.0.105/jei_1.12.2-4.8.0.105.pom
FAILURE: Build failed with an exception.
What went wrong:
A problem occurred configuring root project 'Careerbees'.
> Could not resolve all dependencies for configuration ':deobfCompile'.
> Could not resolve net.sengir.forestry:forestry_1.12.2:5.6.0.200.
Required by:
project :
> Could not resolve net.sengir.forestry:forestry_1.12.2:5.6.0.200.
> Could not get resource 'http://maven.ic2.player.to/net/sengir/forestry/forestry_1.12.2/5.6.0.200/forestry_1.12.2-5.6.0.200.pom'.
> Could not GET 'http://maven.ic2.player.to/net/sengir/forestry/forestry_1.12.2/5.6.0.200/forestry_1.12.2-5.6.0.200.pom'.
> Connect to maven.ic2.player.to:80 [maven.ic2.player.to/141.28.27.36] failed: Connection timed out: connect
Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 1 mins 3.216 secs
Так уже.
Распиаренный искусственный идиот не помог. Надежда только на мясные мешки :)
Я его до этого спрашивал про твики механизмов Extra Trees. Он выдал мне (неработающее) говно мамонта. В итоге я сам порылся в коде, и, опытным путём нарыл работающие скрипты. В интернете голяк - кроме моих скриптов больше нет.
Скрипты:
#####################
# Мод Extra Trees. Лесопилка. (входной стак (только 1 единица предмета), выходной стак). Кора и опилки - выход всегда по 2 шт.
# Пример. Берёзовое бревно даёт 9 досок.
mods.extratrees.Lumbermill.addRecipe(<minecraft:log2:0>,<minecraft:planks:4>9);
# Пример. Тропическая доска даёт 6 плит.
mods.extratrees.Lumbermill.addRecipe(<minecraft:planks:3>,<minecraft:wooden_slab:3>6);
#####################
# Мод Extra Trees. Винокурня. (жидкость входная, жидкость выходная, уровень). Уровень - номер крана. 0 - верхний, 1 - средний, 2 - нижний. В данном примере с 5 мВ Лесного мёда получается 1 мВ воды, верхний кран. И 4:1, 3:1 в среднем и нижнем кране. Если для какого-либо крана нет рецепта из этой жидкости, то жидкость исчезнет в конце процесса.
mods.extratrees.Distillery.addRecipe(<liquid:for.honey>5, <liquid:water>, 0);
mods.extratrees.Distillery.addRecipe(<liquid:for.honey>4, <liquid:water>, 1);
mods.extratrees.Distillery.addRecipe(<liquid:for.honey>3, <liquid:water>, 2);
#####################
# Мод Extra Trees. Фруктовый пресс. (входной предмет, выходная жидкость). В этом примере из 3 брёвен акации получается 5 мВ Лесного мёда. Предмет по словарю руд - не работает.
mods.extratrees.FruitPress.addRecipe(<minecraft:log2:0>3, <liquid:for.honey>5);
#####################
# Мод Extra Trees. Пивоварня. Рецепты из воды и зерна. На входе всегда вода. 1 - три центральных слота зёрен (формат OreDict без указания количества), 2 - выходная жидкость в мВ на 1000 мВ входной воды (По умолчанию (если не указано) кол-во жидкости 1 мВ), 3 - левый слот повной закваски (формат OreDict без указания количества), 4 - правый слот дрожжей (формат Item с указанием количества).
# Пример скрипта ниже. Из ведра воды получается 0.2 ведра жидкого льда. Расходуется 1 перо и 3 яйца.
mods.extratrees.Brewery.addGrainRecipe(<ore:endstone>, <liquid:ice>200, <ore:feather>, <minecraft:egg:0>3);
# Мод Extra Trees. Пивоварня. Рецепты перегонки входной жидкости в выходную с помощью дрожжей. Без зёрен, без хмеля. По умолчанию (если не указано) кол-во любой жидкости 1 мВ на цикл. 1 - входная жидкость (кол-во мВ на цикл), 2 - выходная жидкость (кол-во мВ на цикл), 3 - правый слот дрожжей (формат Item с указанием количества на цикл).
# Пример скрипта ниже. Из ведра лавы получается 0.5 ведра молока. Расходуется 5 изумрудов.
mods.extratrees.Brewery.addRecipe(<liquid:lava>1000, <liquid:milk>500, <minecraft:emerald:0>5);
######################
Так уже.
Распиаренный искусственный идиот не помог. Надежда только на мясные мешки :)
Я его до этого спрашивал про твики механизмов Extra Trees. Он выдал мне (неработающее) говно мамонта. В итоге я сам порылся в коде, и, опытным путём нарыл работающие скрипты. В интернете голяк - кроме моих скриптов больше нет.
Скрипты:
#####################
# Мод Extra Trees. Лесопилка. (входной стак (только 1 единица предмета), выходной стак). Кора и опилки - выход всегда по 2 шт.
# Пример. Берёзовое бревно даёт 9 досок.
mods.extratrees.Lumbermill.addRecipe(<minecraft:log2:0>,<minecraft:planks:4>9);
# Пример. Тропическая доска даёт 6 плит.
mods.extratrees.Lumbermill.addRecipe(<minecraft:planks:3>,<minecraft:wooden_slab:3>6);
#####################
# Мод Extra Trees. Винокурня. (жидкость входная, жидкость выходная, уровень). Уровень - номер крана. 0 - верхний, 1 - средний, 2 - нижний. В данном примере с 5 мВ Лесного мёда получается 1 мВ воды, верхний кран. И 4:1, 3:1 в среднем и нижнем кране. Если для какого-либо крана нет рецепта из этой жидкости, то жидкость исчезнет в конце процесса.
mods.extratrees.Distillery.addRecipe(<liquid:for.honey>5, <liquid:water>, 0);
mods.extratrees.Distillery.addRecipe(<liquid:for.honey>4, <liquid:water>, 1);
mods.extratrees.Distillery.addRecipe(<liquid:for.honey>3, <liquid:water>, 2);
#####################
# Мод Extra Trees. Фруктовый пресс. (входной предмет, выходная жидкость). В этом примере из 3 брёвен акации получается 5 мВ Лесного мёда. Предмет по словарю руд - не работает.
mods.extratrees.FruitPress.addRecipe(<minecraft:log2:0>3, <liquid:for.honey>5);
#####################
# Мод Extra Trees. Пивоварня. Рецепты из воды и зерна. На входе всегда вода. 1 - три центральных слота зёрен (формат OreDict без указания количества), 2 - выходная жидкость в мВ на 1000 мВ входной воды (По умолчанию (если не указано) кол-во жидкости 1 мВ), 3 - левый слот повной закваски (формат OreDict без указания количества), 4 - правый слот дрожжей (формат Item с указанием количества).
# Пример скрипта ниже. Из ведра воды получается 0.2 ведра жидкого льда. Расходуется 1 перо и 3 яйца.
mods.extratrees.Brewery.addGrainRecipe(<ore:endstone>, <liquid:ice>200, <ore:feather>, <minecraft:egg:0>3);
# Мод Extra Trees. Пивоварня. Рецепты перегонки входной жидкости в выходную с помощью дрожжей. Без зёрен, без хмеля. По умолчанию (если не указано) кол-во любой жидкости 1 мВ на цикл. 1 - входная жидкость (кол-во мВ на цикл), 2 - выходная жидкость (кол-во мВ на цикл), 3 - правый слот дрожжей (формат Item с указанием количества на цикл).
# Пример скрипта ниже. Из ведра лавы получается 0.5 ведра молока. Расходуется 5 изумрудов.
mods.extratrees.Brewery.addRecipe(<liquid:lava>1000, <liquid:milk>500, <minecraft:emerald:0>5);
######################
Это форк заброшенного мода Майнкрафт с фиксами. Очень надо. Скомпильте, плиз!
Форджедегенерадл к джаватреду отношения не имеет никакого. Иди к тем, кто эту хуйню копытцами буква за буквой набрал. https://github.com/GregTechCEu/Buildscripts
>Connect to maven.ic2.player.to:80 [maven.ic2.player.to/141.28.27.36] failed: Connection timed out: connect
РКН тебе репу забанил, кек.
Почему РКН? Всё копрокубовское активно отмирает само по себе, без всяких РКН, в том числе репы.
Да потому что уже везде торчат хвосты этой конторы вельзевула блять. Если лег привычный тебе домен, с вероятностью 80% к этому оказывается в конечном итоге причастна эта хуета, которая видимо в данный момент времени занимается критически важной задачей обкатывания чебурнета в тестовом режиме.
Но в данном случае контора вельзевулов это всё-таки сойджанг и копрософт. Именно они повинны в том что копрокуб умирает.
На фоне происходящего вокруг многоэтажного пиздеца проблемы кубача - меньшее, что напрягает, на самом деле.
Ты как обычный разработчик можешь перегрузить что-то? Поэтому и нет. То, что там доступно инженерам жвм мало интересно.
И вообще кстати после хаскеля немного пересмотрел свой взгляд на эту фичу, до этого думал хуйня редкостная и абсолютно бесполезная. Типа ну она применима буквально для пары классов типа BigInteger. Но вот в хаскеле конечно она расширена, т.е. ты буквально можешь слепить любой оператор, назначить ему любой приортитет. И вот это реально круто, можно ddl еще проще клепать. Хотя это и ломает мозг, как пример - https://typeclasses.com/featured/dollar . Но в ограниченном виде перегрузка все еще юзлесс как по мне, что есть, что нет - пихуй.
Будет ли нормально использовать lwjgl при создании примитивной 2d игры на android?
LibGDX попробуй сначала.
>>386204
Имплементация интерфейса Iterable перегружает enhanced for. Имплементация AutoCloseable перегружает try-with-resources. Я думаю перегрузка операторов сравнения имплементацией Comparable уже не за горами. Для конкатенации строк в ждк есть интерфейс Appendable. Для чисел хз, Number хватит или нет.
Непонятно, почему с этим резину тянут. Надо делать, пока люди требуют. Через 10 лет поезд окончательно уйдет, как со стринг темплейтами.
> т.е. ты буквально можешь слепить любой оператор, назначить ему любой приортитет. И вот это реально круто
И нахуя это? Есть задачи посерьёзнее демонстрации того какой ты у мамки особенный.
for и try это не операторы.
Appenable онли для абстрактных строк. Очень полезно, конечно. Но я не понимаю кто в здравом уме будет писать альтернативу стрингу, которому сама жвм поджуливает. Ты типа никогда быстрее не сделаешь. А для StringBuilder он не подходит, поэтому терпим 100500 append.
Перегрузку для Number вообще нетривиально сделать, в джаве такого никогда не будет.
Не делают чисто из принципа, что это нужно для пары классов, а в остальных случаях это будет херней какой-то.
>>386521
Я буквально скинул статью, что дает такая возможность.
Ну и занимайся ими, что ж ты мне в треде время уделяешь? Я ещё важнее для тебя?
А ты её читал вообще? Или тебе просто хочется именно моих объяснений? Ну я хуево это делаю.
Допустим у тебя стандартная задача, вот есть какие-то методы и тебе надо вызвать их последовательно друг за другом. У тебя возникнет вложенность. Вот на пике 1 - это метод f и r1 как следствие. Как правило решением является написание fluent api интерфейса.
Так вот, в хаскеле есть оператор доллара, который может убирать все уплощенности. Как видно r1 это +- так же как в жабе, r2 это вот без скобок считай.
А еще есть оператор & - это считай абстрактный fluent api, он может любые фукнции превратить в цепочки применений.
Еще есть оператор точки, который позволяет писать в бесточечном стиле - https://wiki.haskell.org/Pointfree
Это r4, хотя конечно спорная вещь.
Главное достижение, что в все это не захардкоженные сверху операторы, а то, что ты и сам можешь легко написать.
> Допустим у тебя стандартная задача, вот есть какие-то методы и тебе надо вызвать их последовательно друг за другом. У тебя возникнет вложенность.
Это не стандартная задача, а костыльный способ обойти отсутствие экстеншен методов.
Не думаю, что одно наличие экстеншен методов тебе поможет универсально обойти вложенность. А писать для каждого класса метод, эта та еще залупа, хуй знает что хуже скобочки или вереницы методов для их отсутвия.
Ну и в любом случае - это лишь один из аспектов, что позволяет такая мощная перегрузка методов, еще есть dsl..
> Не думаю, что одно наличие экстеншен методов тебе поможет универсально обойти вложенность.
Конкретные примеры покажи когда не хватит экстеншен методов.
> А писать для каждого класса метод, эта та еще залупа
Чего? Ты точно так же пишешь для каждого аргумента функцию.

>Чего?
Пик. Ну хуета же. Хотя имплиситы это вообще про другое.
>Конкретные примеры покажи
Ладно, вот это прикольно вышло https://pl.kotl.in/5r7tb_6oR
Короче не знаю, у меня интуиция, что где-то точно придется делать копипаст, но у меня нет нормального опыта работы с экстеншен методами, конкретно сказать не могу.
> Пик. Ну хуета же.
Ну и что это вообще такое?
> Ладно, вот это прикольно вышло https://pl.kotl.in/5r7tb_6oR
Что этот говнокод делает?

>Ну и что это вообще такое?
Прикольная штука, позволяющая любые обращения имплисить в другие типы. Я просто ебал писать везде и всюду ToDTO, TOModel. Впизду.
>Что этот говнокод делает?
МАГИЮ ~~~
> Прикольная штука, позволяющая любые обращения имплисить в другие типы. Я просто ебал писать везде и всюду ToDTO, TOModel. Впизду.
И как оно к теме относится?
> МАГИЮ ~~~
Это не пояснение.
>И как оно к теме относится?
Ради этого мне пришлось написать кучу обвзяки. Для каждого обращения по одному методу, в совкупности около сотни. Код шаблонный и благодаря partial спрятан, но просто сам факт, что в одном месте ты упрощаешь себе жизнь, за счет бойлерплейта в другом месте. Боюсь просто эксплисит методы такие же. А еще злые языки говрят, что они засоряют автокомплит.
>Это не пояснение.
Я не люблю пояснять код. Подумай сам:3
> Боюсь просто эксплисит методы такие же.
Есть какие-то аргументы доказывающие что между этими случаями есть какая-то связь?
> Я не люблю пояснять код. Подумай сам:3
Слив.
>Есть какие-то аргументы
Ну вот допустим этот метод up, он работает для методов с одним аргументом. А что будет если их будет несколько? Да и котлин ломается даже от пик3. Переоценил немножко.
Так что плюсом идет, что тебе подобный метод придется писать для каждого класса, что равно N^2 методов, где N кол-во классов. Примерно как с имплиситами, с ними я на практике с этим N^2 столкнулся.
>Слив.
Бебебе. Так сложно разобрать мою магию(
> Ну вот допустим этот метод up, он работает для методов с одним аргументом. А что будет если их будет несколько? Да и котлин ломается даже от пик3. Переоценил немножко.
Я всё ещё не понимаю как это блядь относится к экстеншен методам. Ты по моему себя засираешь наоборот показывая проблемы перегрузки операторов.
> Так что плюсом идет, что тебе подобный метод придется писать для каждого класса, что равно N^2 методов, где N кол-во классов. Примерно как с имплиситами, с ними я на практике с этим N^2 столкнулся.
Какой блядь метод? Ты вообще о чём?

Вернемся к началу.
Мы решаем проблему вложенности при pipeline.
Стандартное решение - fluent api.
Насколько я понимаю, методы расширения позволяют написать такое не влезая в сам класс.
Универсально написать один метод, который делал бы это апи для всех классов нельзя.
Поэтому тебе придется сопоставлять N классов с N - 1. В комбинаторике - это размещение из N по k, где k у нас = 2. Формула пик. Поэтому = N^2
Ну и в этом аргумент, что чтобы сделать N классов удобными для создания pipline между ними, придется написать примерно N^2 методов. Это тоже очень много бойлерплейта.
Раз уж решил возвращаться, вернулся бы в начало дискуссии сам и прочитал, что я тебе на это уже отвечал: ты говоришь как будто бы эта проблема это проблема экстеншен методов, и если не смотреть на уродскую вложенность и просто пользоваться функциями f(f(f(b))) будет что-то по другому.
Не знаю, не вижу такого. Ладно, невермайнд. В жабе в любом случае не будет ни экстеншен методов, ни перегрузки операторов каком либо виде.
Первый шаг на пути к изменениям это признание их необходимости. Второй это признание их возможности.

P.s. аутентификация уже работает.
На уровне сервисов лучше простые условия ебнуть. Типа if owner.uuid == Principal.uuid then ...
Еще есть такое https://docs.spring.io/spring-security/reference/servlet/authorization/method-security.html но это лучше наверное использовать для проверок именно прав пользователя, а не того, чем он владеет.
Да, это авторизация. Для начала выдохнуть и пойти задавать правильные вопросы. Типа - а может ли быть так что пользователь хочет выдать права другому пользователю и теперь они вместе редактируют блог? Или отобрать права? Или может выдать права на просмотр, но не на редактирование. Или на редактирование, но чтобы нельзя было зарелизить новую версию?
>>386912
Аутентификация - это когда лох доказывает тебе что он субъект с uuid=qwe123f
Авторизация - это когда ты проверяешь что субъект uuid=qwe123f имеет право редактировать бложик с id=analnie-utexi.omg.lol
>>386913
Двачую.
Для начала хотелось бы просто разграничить права пользователей на таком уровне. А потом уже, совместное, повсеместное чтение и редактирование . )
Ну т.е. на уровне сервисов, на методах которые надо проверять, через преавторайз сравнивать принципал. Ок.
А может есть какие-то техники, архитектурные решения, чтобы как-то все такие опасные методы, сами попадали под проверку? Ну может их выносят в одно место все, или на уровне бд как-то проектируют такие вещи?
Ну пришел новый разработчик, и надо ему новый метод написать, который может правку делать. Вот чтобы ему не читать кучу правил и потом их применять,, он пишет из где-то, а они сами под эти правила попадают?
>Вот чтобы ему не читать кучу правил
Ну ахуеть разработчик. Пришел, нихуя предметной области не знает, знать не хочет, но что-то пишет.
>Аутентификация - это когда лох доказывает тебе что он субъект с uuid=qwe123f
>Авторизация - это когда ты проверяешь что субъект uuid=qwe123f имеет право редактировать бложик с id=analnie-utexi.omg.lol
Кто тебе такую хуйню сказал?

>Пришел, нихуя предметной области не знает, знать не хочет, но что-то пишет.
А что ему мешает так делать? Совесть? ))
А по делу?
Проблема сейчас такая - apk собрали только на одну архитектуру и не запилили билдов на armv7 и armv8/etc. Отчего на многих телефонах модуль не работает, это критично. Могут быть еще пара таких мелких багов. Изначально один друг помог собрать, но он тоже кодит не на Джаве и ему тяжко. Хотя знающему человеку это максимум пара часов всё делать.
Хотелось бы чтоб знающий человек помог. Желательно бесплатно, но возможно небольшое вознаграждение.
Писать в тг @darkfontanon
По хорошему на собесе еще таких надо нахуй слать.
Ну тип бля, в чем обязанность разработчика? Интерпретация бизнес правил в кодовую базу. Делать что-то с расчетом на то, что какой-то там долбоеб будет не выполнять свои прямые обязаности какой-то долбоебизм.
Обычно это мотивируют защитой от дурака, мол лучше перестраховаться и тд и тп, но не тем, что бля а вдруг к нам долбоеб придет и будет срать.
> Желательно бесплатно сделайте за меня работу чтобы я денег заработал
Пиздец охуевшая петушара в тред пожаловала. Ещё и поди то "вознаграждение" это рублей 500 блядь.
А я всегда жалуюсь своему кунчику, когда меня обижают. Поддержка это мило и клево, но таким одиноким людям как ты этого не понять.
Мимо
А нахуй ты вслух себе отвечаешь? Разговаривай сам с собой в голове.
На любителя. История из разряда - сильному не надо, слабому не поможет. В хаскелле эти ваши операторы просто - частный случай функции, записанной в инфиксной записи, ни больше ни меньше. И как по мне, там довольно таки ебанулись преисполнились этим. Ладно арифметика, мы там привыкли к инфиксу. Когда ты вкатываешься в хаскель, и у тебя появляются новые прикольные операторы вида >=>, <=>, 3==в, начинаешь понимать что кому попало такую силу давать нельзя. Копроратокодерам - уж точно.
Я тебе дам более практичный совет: минимум 16Гб надо.
Честно говоря, я не понимаю зачем в 2к25 брать компьютер, в который не влезает хотя бы 32, но 16 -- это абсолютный минимум. Если ты думаешь, что тебе хватит 8 -- ты совершаешь глупость.
Может лучше кресло купить. которое может лежачее положение принять? Прост кодить на ноуте ну ваще не удобно.
Купи стол с автоматической регулировкой высоты и кодь стоя.
Поставь под него беговую дорожку и будешь кодить на бегу.

А в чем профит в яндекс устраиваться? Ну тип по мне контора уровня вк. Просто копирует с запада технологии, а её почему-то считают неебаца какой крутой, надеждой русского вайти и тд и тп.
ДРОЧИ НЕСКОЛЬКО ЛЕТ БЕСПОЛЕЗНЫЕ АЛГОРИТМЫ ЧТО НИКОГДА НЕ ПРИМЕНЯЮТСЯ НА ПРАКТИКЕ И ЛЕГКО ВЫСИРАЮТСЯ ЧАТГОПОТОЙ, ВЫИГРАЙ ФУТБОЛКУ ЛИТКОДА
@
ВЫДРОЧИ СТАТИСТИКУ, КРИПТОГРАФИЮ, МАТАН, ТЕРВЕР, ЧЁ ЕЩЁ ЭТОГО ПИДОРАСА ЗАСТАВИТЬ УЧИТЬ? НАСТРОЙСЯ, ЩА ВЫДАМ, __ТОПОЛОГИЮ__ НАХУЙ)))
@
ЕЩЁ ГОД-ДВА ДРОЧИ 100500 ТЕХНОЛОГИЙ САМОСТОЯТЕЛЬНО, СРЫГ, ЕЩЁ МОДУЛЬ СРЫГА, ЕЩЁ 5 МОДУЛЕЙ СРЫГА, КАФКА, РЕДИС, КЛИКХАУС, ДОКЕР, КУБЕР, ХИБЕР, ФЛАЙВЕЙ, ПОСТГРЕС, МОНГА, БЛЯДЬ, ПОХУЙ УЖЕ
@
ВЫЗУБРИ БЕСПОЛЕЗНЫЕ ПРОТИВОРЕЧАЩИЕ ДРУГ ДРУГУ ПАТТЕРНЫ СЛЕДОВАНИЕ КОТОРЫМ В ОСНОВНОМ ТОЛЬКО УХУДШАЕТ КОД, ООП, СОЛИД, СИНГЛ РЕСПОНСИБИЛИТИ, ЛИСКОВ, ИНВЕРСИЯ ЗАВИСИМОСТЕЙ, И Т.Д. И ГОТОВЬСЯ С ПЕНОЙ У РТА ДОКАЗЫВАТЬ КАК ОНИ ВАЖНЫ ВСЕ ОДНОВРЕМЕННО
@
БЕЗ JMH ТЫ НЕ-ПРОЙ-ДЁШЬ!
@
ПАРАЛЛЕЛЬНО С ЭТИМ ЧИСТО ДЛЯ ГАЛОЧКИ ПИЗДУЙ ПОЛУЧАТЬ ВЫСШЕЕ ОБРАЗОВАНИЕ, 4 ГОДА СЛУШАЯ ЛЕКЦИИ ПОКРЫВАЮЩИЕ МИЗЕР ОТ ТОГО ЧТО ТЫ САМ ИЗУЧИЛ С ТАКИМИ ТРЕБОВАНИЯМИ НА СОБЕСАХ
@
СЫГРАЙ В КОНКУРСЕ КРАСИВОГО КОДА, РАЗЪЕБИ ЕЩЁ 100500 ВКАТУНОВ ЧТО БУДУТ С ТОБОЙ РЯДОМ КУВЫРКАТЬСЯ НА ПОТЕХУ ГРЕФУ
@
ПОБЕДИ В БИТВЕ ВКАТУНОВ СТЕНКА НА СТЕНКУ С ГЛАВНЫМ ПРИЗОМ В СТАЖИРОВКУ
@
ОТРАБОТАЙ ПОЛГОДА НА СТАЖИРОВКЕ ЗАБЕСПЛАТНО ИЛИ ДЕШЕВЛЕ ЧЕМ ЗА ЕДУ
@
БУДЬ ПОСЛАН НАХУЙ ПОД КОНЕЦ СТАЖИРОВКИ
@
ЗАКАЖИ ПРОФЕССИОНАЛЬНУЮ РЕКОМЕНДАЦИЮ ПО РЕЗЮМЕ, ПОДПИШИСЬ НА ТГ КАНАЛЫ С ВАКАНСИЯМИ, ДЕННО И НОЩНО МОНИТОРЬ ИХ ЧТОБЫ ПЕРВЕЕ ДРУГИХ СОТЕН ВКАТУНОВ ОТПРАВИТЬ ТУПОЙ ПИЗДЕ НА HR С ЗАРПЛАТОЙ О КОТОРОЙ ТЫ ДАЖЕ БУДУЧИ ТИМЛИДОМ МЕЧТАТЬ НЕ МОЖЕШЬ СВОЙ ОТКЛИК, ЧТОБЫ ОНА ВЫЛОЖИЛА ЕГО В ТВИТТЕР И ПОРЖАЛА НАД ТОБОЙ ДАЖЕ ЕСЛИ ТЫ СДЕЛАЕШЬ __ВСЁ__ ПРАВИЛЬНО
@
ОБРАТИ НА СЕБЯ СОЛНЦЕЛИКИЙ ЖЕНСКИЙ ВЗОР И НЕ ПОЛУЧИ ИГНОР/ОТКАЗ НА ПЕРВОМ ЖЕ ЭТАПЕ
@
ПРОЙДИ 143 ЭТАПА СОБЕСЕДОВАНИЙ
@
ПОЛУЧИ ОФФЕР НА ИСПЫТАТЕЛЬНЫЙ СРОК С ЗАРПЛАТОЙ ЧТО НИЖЕ ЧЕМ БЫЛА НА СТАЖИРОВКЕ
@
ОТРАБОТАЙ ЕЩЁ ТРИ МЕСЯЦА НА ИСПЫТАТЕЛЬНОМ СРОКЕ
@
ПОЛУЧИ НАКОНЕЦ-ТО ЗАРПЛАТУ С КОТОРОЙ МОЖНО ОПЛАТИТЬ САМУЮ ДЕШЁВУЮ ЕДУ И СТУДИЮ
@
НУ ВСЁ, ТЕПЕРЬ Я 75К ЖДУН, ТЕПЕРЬ-ТО В ГОРУ ВСЁ ПОЙДЁТ! ВЕДЬ ДОСТАТОЧНО ПОЛУЧИТЬ РЕАЛЬНЫЙ ОПЫТ, А ПОТОМ БУДУТ УЖЕ ЗВАТЬ САМИ НА РАБОТУ! ВЕДЬ ТАК?
@
ПОПАЛ ПОД СОКРАЩЕНИЕ ПО ИТОГАМ ПЕРФОРМАНС-РЕВЬЮ
@
"На рынке наблюдается жесточайший дефицит IT-специалистов" И СКОТ ЭТОМУ ВЕРИТ И ПРЁТ И ПРЁТ
Я не могу имаджинировать ебло фанатов капитализма, которые свято верят, что пройдут все эти этапы, ведь они у мамки особенные, а каждая неудача это не потерянный год жизни, а "личный рост".
ДРОЧИ НЕСКОЛЬКО ЛЕТ БЕСПОЛЕЗНЫЕ АЛГОРИТМЫ ЧТО НИКОГДА НЕ ПРИМЕНЯЮТСЯ НА ПРАКТИКЕ И ЛЕГКО ВЫСИРАЮТСЯ ЧАТГОПОТОЙ, ВЫИГРАЙ ФУТБОЛКУ ЛИТКОДА
@
ВЫДРОЧИ СТАТИСТИКУ, КРИПТОГРАФИЮ, МАТАН, ТЕРВЕР, ЧЁ ЕЩЁ ЭТОГО ПИДОРАСА ЗАСТАВИТЬ УЧИТЬ? НАСТРОЙСЯ, ЩА ВЫДАМ, __ТОПОЛОГИЮ__ НАХУЙ)))
@
ЕЩЁ ГОД-ДВА ДРОЧИ 100500 ТЕХНОЛОГИЙ САМОСТОЯТЕЛЬНО, СРЫГ, ЕЩЁ МОДУЛЬ СРЫГА, ЕЩЁ 5 МОДУЛЕЙ СРЫГА, КАФКА, РЕДИС, КЛИКХАУС, ДОКЕР, КУБЕР, ХИБЕР, ФЛАЙВЕЙ, ПОСТГРЕС, МОНГА, БЛЯДЬ, ПОХУЙ УЖЕ
@
ВЫЗУБРИ БЕСПОЛЕЗНЫЕ ПРОТИВОРЕЧАЩИЕ ДРУГ ДРУГУ ПАТТЕРНЫ СЛЕДОВАНИЕ КОТОРЫМ В ОСНОВНОМ ТОЛЬКО УХУДШАЕТ КОД, ООП, СОЛИД, СИНГЛ РЕСПОНСИБИЛИТИ, ЛИСКОВ, ИНВЕРСИЯ ЗАВИСИМОСТЕЙ, И Т.Д. И ГОТОВЬСЯ С ПЕНОЙ У РТА ДОКАЗЫВАТЬ КАК ОНИ ВАЖНЫ ВСЕ ОДНОВРЕМЕННО
@
БЕЗ JMH ТЫ НЕ-ПРОЙ-ДЁШЬ!
@
ПАРАЛЛЕЛЬНО С ЭТИМ ЧИСТО ДЛЯ ГАЛОЧКИ ПИЗДУЙ ПОЛУЧАТЬ ВЫСШЕЕ ОБРАЗОВАНИЕ, 4 ГОДА СЛУШАЯ ЛЕКЦИИ ПОКРЫВАЮЩИЕ МИЗЕР ОТ ТОГО ЧТО ТЫ САМ ИЗУЧИЛ С ТАКИМИ ТРЕБОВАНИЯМИ НА СОБЕСАХ
@
СЫГРАЙ В КОНКУРСЕ КРАСИВОГО КОДА, РАЗЪЕБИ ЕЩЁ 100500 ВКАТУНОВ ЧТО БУДУТ С ТОБОЙ РЯДОМ КУВЫРКАТЬСЯ НА ПОТЕХУ ГРЕФУ
@
ПОБЕДИ В БИТВЕ ВКАТУНОВ СТЕНКА НА СТЕНКУ С ГЛАВНЫМ ПРИЗОМ В СТАЖИРОВКУ
@
ОТРАБОТАЙ ПОЛГОДА НА СТАЖИРОВКЕ ЗАБЕСПЛАТНО ИЛИ ДЕШЕВЛЕ ЧЕМ ЗА ЕДУ
@
БУДЬ ПОСЛАН НАХУЙ ПОД КОНЕЦ СТАЖИРОВКИ
@
ЗАКАЖИ ПРОФЕССИОНАЛЬНУЮ РЕКОМЕНДАЦИЮ ПО РЕЗЮМЕ, ПОДПИШИСЬ НА ТГ КАНАЛЫ С ВАКАНСИЯМИ, ДЕННО И НОЩНО МОНИТОРЬ ИХ ЧТОБЫ ПЕРВЕЕ ДРУГИХ СОТЕН ВКАТУНОВ ОТПРАВИТЬ ТУПОЙ ПИЗДЕ НА HR С ЗАРПЛАТОЙ О КОТОРОЙ ТЫ ДАЖЕ БУДУЧИ ТИМЛИДОМ МЕЧТАТЬ НЕ МОЖЕШЬ СВОЙ ОТКЛИК, ЧТОБЫ ОНА ВЫЛОЖИЛА ЕГО В ТВИТТЕР И ПОРЖАЛА НАД ТОБОЙ ДАЖЕ ЕСЛИ ТЫ СДЕЛАЕШЬ __ВСЁ__ ПРАВИЛЬНО
@
ОБРАТИ НА СЕБЯ СОЛНЦЕЛИКИЙ ЖЕНСКИЙ ВЗОР И НЕ ПОЛУЧИ ИГНОР/ОТКАЗ НА ПЕРВОМ ЖЕ ЭТАПЕ
@
ПРОЙДИ 143 ЭТАПА СОБЕСЕДОВАНИЙ
@
ПОЛУЧИ ОФФЕР НА ИСПЫТАТЕЛЬНЫЙ СРОК С ЗАРПЛАТОЙ ЧТО НИЖЕ ЧЕМ БЫЛА НА СТАЖИРОВКЕ
@
ОТРАБОТАЙ ЕЩЁ ТРИ МЕСЯЦА НА ИСПЫТАТЕЛЬНОМ СРОКЕ
@
ПОЛУЧИ НАКОНЕЦ-ТО ЗАРПЛАТУ С КОТОРОЙ МОЖНО ОПЛАТИТЬ САМУЮ ДЕШЁВУЮ ЕДУ И СТУДИЮ
@
НУ ВСЁ, ТЕПЕРЬ Я 75К ЖДУН, ТЕПЕРЬ-ТО В ГОРУ ВСЁ ПОЙДЁТ! ВЕДЬ ДОСТАТОЧНО ПОЛУЧИТЬ РЕАЛЬНЫЙ ОПЫТ, А ПОТОМ БУДУТ УЖЕ ЗВАТЬ САМИ НА РАБОТУ! ВЕДЬ ТАК?
@
ПОПАЛ ПОД СОКРАЩЕНИЕ ПО ИТОГАМ ПЕРФОРМАНС-РЕВЬЮ
@
"На рынке наблюдается жесточайший дефицит IT-специалистов" И СКОТ ЭТОМУ ВЕРИТ И ПРЁТ И ПРЁТ
Я не могу имаджинировать ебло фанатов капитализма, которые свято верят, что пройдут все эти этапы, ведь они у мамки особенные, а каждая неудача это не потерянный год жизни, а "личный рост".
Есть некая ирония в том, что я этим бугуртом покрыл даже близко не полностью ситуацию. Вкатуньё занимает деньги у родителей и ходит на калференции в надежде что сыграет в "нетворкинг" в чём им поможет их по словам их мамки красивое ебало, смотрит тиктоки про то как если не получилось 10 раз то на 11 раз обязательно выстрелит, вкладывает тысячи часов в опенсорсные пет проекты, тратит деньги на их рекламу чтобы звёзды получить и чтобы хр даже не открыла гитхаб, и т.д. и т.д и т.д.
Почему тебе не плевать чем они занимаются? Это их жизнь, пусть проебывают как хотят. Твоя "забота" нахуй никому не сдалась, более того, она работает в обратную сторону - реверсивная психология. Из всех, именно ты занимаешься большей хуйней. Задумайся.
>нет ты
Вот просто посмотрите на этого ебасоса. Он подумал, что какой-то анон на сосаче занимается хуйнёй, и всё, в его башке всё сложилось, он теперь больше не вечная цирковая псина грефа, он ведь написал на сосаче весёлый пост. Это ретардация какой степени?
Ни дня своей жизни не провел в сбере. Даже как клиент.
И мне не нравишься не ты лично, а снг совки в общем. Я просто ненавижу людей, который почему-то считают, что имеют право навязывать собственное видение жизни. Мол ты тупой, нихуя не понимаешь, щас объясню, как тебе следует распоряжаться своим личным временем и свободой. Придержи при себе свои клешни, крабик ебучий.
>нет ты!!!!
Это пиздец.
Отдельно проиграл с
> Придержи при себе свои клешни, крабик ебучий.
Да, у тебя обязательно получится стать джуном и сократиться по неперформансу, лол. Ты особенный у мамы.
Я охуеваю как можно быть настолько необучаемым и самоуверенным фанатом рынка. Тебя в говно уже сколько, 3, 4 года макают? Из-за таких как ты в говне мы все.
>сколько, 3, 4 года макают?
Какие 3-4 года нахуй? Что ты несешь? И у меня ровно ноль отказов, меня сразу взяли на работу.
>>388650
Да-да чел, ведь айти это такая область в которую ну прям пиздец трудно попасть. Главное больше в это верь и даже не пытайся задуматься, что проблема не в мире, а в тебе. Это все злые языки говорят.
100к ретард продолжает пытаться нивелировать то, что он позорная псина грефа переводом стрелок.
А ты чья позорная псина? Амазона? Это уже аргументы уровня, ррря зачем работать на дядю.
>нееееетт тыыыы!!! не получилось на 10 раз, получится на 11, прям как в тиктоке сказали!!
Это уже смешно становится. Ты реально думаешь что от того что ты насрёшь на анонима (что в принципе у тебя не получается, но ты зачем-то пытаешься) это сделает тебя меньшим клоуном?
Тебя унижают со всех сторон, унижает греф, после ты заходишь на сосач и тебя и тут унижают, причём за то что тебя унижает греф, пиздец хуёво быть тобой конечно.
>насрёшь на анонима
Так говоришь, будто я не аноним.
Я че виноват, что у тебя аргументы про то, что плохо делать то, что делают все. Ложкабляди не люди и тп. Что плохого в том, чтобы работать на работе? Че за шиза блять, то тупые вкатуны тупые потому, что никогда не получат работу, то я тупой, потому что её получил.
>>388673
Да, вот только что после секса с грефом. Завидуешь, малютка?
> Что плохого в том, чтобы работать на работе
В том, что платят меньше, чем неговорящему по-русски доставщику еды, а требования те что я выше перечислил?
> то тупые вкатуны тупые потому, что никогда не получат работу
Вкатуны тупые, потому что прикладывают огромные усилия для получения мизерного шанса на помойную работу.
> то я тупой, потому что её получил.
Ты тупой, потому что на всё отвечаешь "нет ты" и не понимаешь примитивнейших умозаключений.
Ну пусть идут доставщиками еды, если там дохуя платят. Какие-то проблемы? А если люди толпой соглашаются даже на зп меньше чем доставке, то в чем же дело, хмм...
>потому что прикладывают огромные усилия для получения мизерного шанса на помойную работу.
Опять же, это их выбор. Не твое крабье дело, что они делают. Пусть хоть эскортом занимаются.
>что на всё отвечаешь "нет ты"
Не на всё.
> Ну пусть идут доставщиками еды, если там дохуя платят. Какие-то проблемы? А если люди толпой соглашаются даже на зп меньше чем доставке, то в чем же дело, хмм...
Что сказать-то хочешь? Врёти не платят? Или что?
> Опять же, это их выбор. Не твое крабье дело, что они делают. Пусть хоть эскортом занимаются.
"ни гаварити ниприятнаэ"
> Не на всё.
Ну да, когда тебя 10 раз подряд обоссали за это, в твоём микромозге что-то пробило. Хотя и не до конца.
>Или что?
Ну не идут чет русские работать на грязных работах. Глупые, да?
>"ни гаварити ниприятнаэ"
Да. Быть няшей лучше, чем быть быдлом, лезущим без спроса в личное пространство. А еще сука бесит когда подобные тебе трогают за плечи/руки ирл без спроса, ууу. Вот это вообще уже край.
>Ну да
Кто б сомневался. Каждый раз обобщаешь, а потом признаешь, что ну на самом деле другое имел ввиду. С первого раза формулируй все оговорки.
> Ну не идут чет русские работать на грязных работах. Глупые, да?
Что сказать-то хочешь? Врёти не платят? Или что?
> Да. Быть няшей лучше, чем быть быдлом, лезущим без спроса в личное пространство. А еще сука бесит когда подобные тебе трогают за плечи/руки ирл без спроса, ууу. Вот это вообще уже край.
Покажешь, где конкретно твоё личное пространство началось? В треде был отправлен только бугурт, в атмосферу, ты сам с него порвался (что намекает что бугурт относится к тебе непосредственно раз задевает за живое).
> Кто б сомневался. Каждый раз обобщаешь, а потом признаешь, что ну на самом деле другое имел ввиду. С первого раза формулируй все оговорки.
А яиц хватит продолжить софистический спор? Не думаешь, что я могу тебе сказать, что "на всё отвечаешь "нет ты"" не значит "на всё до последнего без единого исключения отвечаешь "нет ты""?
>Врёти не платят?
Да блять, не хотят люди тратить свое физическое здоровье на работу. В чем сука смысл твоего аргумента? Ахуеть, на грязных работах платят больше, чем стажерам it. Невероятно. А должны меньше?
> где конкретно твоё личное пространство началось
В моменте когда ты начал обесценивать чужой выбор и навязывать свой. И делаешь это до сих пор, какую-то доставку приплетая. Ну нравится тебе доставлять - так доставляй, хули ты к людям лезешь?
>а всё отвечаешь "нет ты"" не значит "на всё до последнего без единого исключения отвечаешь "нет ты""?
Применяя квантор всеобщности я подразумеваю квантор существования. Умом
> Да блять, не хотят люди тратить свое физическое здоровье на работу. В чем сука смысл твоего аргумента? Ахуеть, на грязных работах платят больше, чем стажерам it. Невероятно. А должны меньше?
Ну да, после таких-то испытаний, после выигрыша конкурса 1 на 100, после игры клоуном на потеху барину, запомнив столько информации, зарабатывать кратно меньше чем нерусь тренирующая квадрицепсы и кардио во время работы это позорно. И не просто сравнительно меньше, а абсолютно меньше, за такие копейки можно только выживать.
> В моменте когда ты начал обесценивать чужой выбор и навязывать свой. И делаешь это до сих пор, какую-то доставку приплетая. Ну нравится тебе доставлять - так доставляй, хули ты к людям лезешь?
Можешь поплакать по этому поводу и добавить 2ch.hk в hosts, нищий грефовский клоун. Здесь принято макать в говно тех, кто страдает хуйнёй, и макать снова и снова, если они необучаемы, до тех пор пока не уйдут с сайта.
> Применяя квантор всеобщности я подразумеваю квантор существования. Умом
Сам-то понял, что высрал?
Чел, это пара курсов вузе. Это дефолт для абсолютно любой работы, кроме грязной.
>И не просто сравнительно меньше, а абсолютно меньше
Ты же ведь никогда не работал курьером, я прав? Это чистейший рессентимент, мол я такой ахуенный и важный, а вот он получает много за ничего не деланье, ррря, защо. Причем эти оценки очень странны, это твоя фантазия или ты других курьеров имеешь ввиду? Просто обычные вот на забастовки по кд выходят, наверное жируют от зп
>Здесь
В /b/. Вот туда и пиздуй.
> Чел, это пара курсов вузе. Это дефолт для абсолютно любой работы, кроме грязной.
Продолжай себя уверять, мартых.
> Ты же ведь никогда не работал курьером, я прав? Это чистейший рессентимент, мол я такой ахуенный и важный, а вот он получает много за ничего не деланье, ррря, защо. Причем эти оценки очень странны, это твоя фантазия или ты других курьеров имеешь ввиду? Просто обычные вот на забастовки по кд выходят, наверное жируют от зп
Опять он стрелку пытается перевести.
> В /b/. Вот туда и пиздуй.
Терпи, нищий клоун.
> Просто обычные вот на забастовки по кд выходят
Какого тебе осознавать, что ты послушнее и терпеливее нерусской обезьяны, и даже они могут бороться за свои права, а ты просто сглатываешь?
>себя уверять
Ну я правда не считаю достижением выучить пару плагинов и концепций. Че в этом сложного.. А про конкурс хз, может не стоит идти в говноконторы которые слишком дохуя о себе мнят, а платят ниже рынка?
>Терпи
По моему это ты первым побежал жаловаться в дискорд на меня. Так что к сожалению, но терпишь тут опять ты. Да опять стрелочка, хихих. Терпи терпи, мой самый преданный фанат и продолжай мне уделять внимание.
>>388753
Тащмайор, осуждаю призывы к дестабилизации критической инфраструктуры.
Тебе вроде с самого начала показали длинный список того, что ты пытаешься вызубрить чтобы попасть на 1/10 моей ставки. Уже выучил на зубок 1488 причин по которым срыг может упасть в 3 часа ночи чтобы ответить жирному интервьюеру номер 1323?
> нет тыыыыы!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Какой ещё дискорд?
Я про этот список и говорю, не считая хуйни про статистику крипту, топологию (как это относится к жава разрабу?), остальное вполне себе простое. Модули спринга да субд с контейнеризацией. Ты серьезно считаешь, что знание этого просто невероятным? Я для тебя невероятен? Как приятно.
>Какой ещё дискорд?
Пропиши себе таблеточки для памяти.
Опять дегенерат фантазирует о кисельных берегах и ищет подтверждения того какой он у мамки особенный. Мань, никто не говорил что это невероятно или что-то в этом роде. Это унизительно, дрочить миллион технологий ради копеечной зарплаты. Говно съесть не сложно, но в здравом уме это делать никто не будет.
> Пропиши себе таблеточки для памяти.
Опущенец опять за базар пояснить не смог и слился. Даже на своём же "нет ты" поле.
>Это унизительно, дрочить миллион технологий ради копеечной зарплаты.
Так в любой нормальной работе. Медики учат тысячи определений, анатомию там. Юристы закон досконально знают. Но только айтишники ноют, что их в кой-то веке заставляют что-то учить. Добро пожаловать.
>опять за базар пояснить не смог и слился
Мне впадлу грузить дискорд. Ну тип это твои проблемы, что забыл
>а вот у медихлов!
Что выучила hr, которая тебя на работу наняла? А зарплата у неё раз в 5 выше твоей. Да и как это делает лично тебя менее клоуном решительно непонятно. Да и даже у медиков всё на порядок лучше, они не устраивают битвы стенка на стенку за стажировку.
> Мне впадлу грузить дискорд. Ну тип это твои проблемы, что забыл
Тихо, воздухан.
>Что выучила hr, которая тебя на работу наняла?
Она делает минет лучше тебя.
>Тихо, воздухан.
Вот. >>3303025
> Она делает минет лучше тебя.
Потешно наблюдать как опущенный клоун оправдывает то как он много лет дрочил всё подряд чтобы тупая пизда просто по факту своего тухлодырия с ходу добилась больше, чем он за всю свою жалкую жизнь.
> Вот. >>3303025
И что это?
Ну чел, такова жизнь. у кого-то, например, вообще нет шансов на норм жизнь, так как в пгт родились. Я вот в таком родился, но потом родители увезли в ДС2
>Несколько идея прожорливая?
Зависит от проекта. В целом, я бы рассчитывал минимум на 32 гб, это при условии, что ты будешь тюнить Xmx в идейке, чтобы она шустро бегала. А так конечно же в 2к25 нужно минимум 64 гб памяти, чтобы вольготно себя чувствовать и крутить помимо идейки еще с десяток докер контейнеров плюс браузер, плюс еще тулзы какие-нибудь для разработки
Вкладки закрывать не пробовал?
>А в чем профит в яндекс устраиваться?
Имеет смысл только, когда идешь из топового тех. ВУЗа на стажировку и можно год-другой там поболтаться на уровне джуна-слабенького мидла. Если у тебя есть опыт работы, то в яшку нет смысла идти, т.к. там значительно ниже рынка зэпки, неоплачиваемые дежурства и 100500 велосипедов вплоть до самописной кафки и докера
Айти мертво.
Когда-нибудь у жаванов появится ключевое слово init и они перестанут так завидовать шарпобоярам, но это совсем другая история.
Перемогать гетсетами - это дело благородное, а вот инциализаторы, ррря да кому они нужны. Классик.
Хотя могу сказть, что главный минус, не сами гетсеты, а ебаная иде. Тот же rider не может нормально делать кодогенерацию, нормально подсказывать. Нажимаешь Alt+Insert, а там нихуя или кодогенерация неполная. Пытаешься отменить говно которое тебе наделала иде, а она не отменяет блять. Т.е. остается какая-то промежуточная версия и такая говорит, ну усе, мое дело сделано. АХУЕННО БЛЯТЬ, ты мне файлы испортило уебище. Также с ренеймом, сука пук пук, ну интерейсы с partial енто сложно, потому хуй тебе, а не изменение сигнатуры. Ручками сука все ищи, поскольку найти partial я такжи нимагу.
Короче грустно это все, поскольку лучше иде чем для жабы тупо не существует. Что печально, наверное.
А перемогать синтаксисом это кринж.
>Что стоит поучить
Ебнулся чтоли?
В высоту надо развиваться, а не в ширину. Расширять свои компетенции, захватывать власть, брать на себя ответственность за все более важные и ключевые решения, качать связи. Расти в архитектора там, в CTO. А в ширину пузо только растет. После 30-40 лет никому твои баззворды в резюме нахуй не сдались. Тем более чат гопота один хуй их уже лучше тебя вызубрила.
Ну вряд ли такая штука тебе нужна по всему приложению.
А отдельный кусок с этой фичей можно и на Groovy написать и в модуль вынести, там вся эта перегрузка есть, да и тестировать на Groovy приятнее будет.
Для примитивной попробуй вот ето: https://github.com/AlmasB/FXGL
А вот книжка: https://vk.com/wall-111905078_61965
В таком случае можно и половину проекта на скале скажем написать. Много ли проектов могут себе подобное позволить?
>вряд ли такая штука тебе нужна по всему приложению
Я как пример показывал достаточно универсальные операторы. Типа амперстанда, который может из простых методов делать fluent api. Лично мне такая штука была бы полезна в очень многих местах. Мало ли что еще там можно придумать..
С другой стороны, помню на какой-то конференции рассказывали стори, что пилили дслки для парсинга xml. Для такого действительно хватит и небольшого модуля. Тоже интересный опыт.. Хотю на практике такое увидеть и потрогать, мм
Да не ну не сравнивай скалу и Груви. Груви - он именно что для встраивания в существующие проекты сделан.
Груви-классы можно даже в отдельные модули не выносить, у меня в спринг-приложении они в перемешку с java-вскими. Я просто extenstion активно юзаю.
>3 года опыта крудошлепства в банке?
а сколько сейчас? и что не устраивает на текущем месте?
зависит от твоих умений и пиздливости, от 180+
если хорошо на микрах, кафка, кролик, постгрес, сложный эскюэль, готов к ливкодингу, попиздеть за архитектуру, то больше
Год назад давали 300 даже на галерах. 250 предлагали в ВТБ, если ты территориально в москве (у них разная ставка для москвы/питера и провинции, лол - ну они ебанутые имхо).
Все правильно делают. Нехуй чушкам провинциальным платить много. Пусть страдают. Это база.
В шарпоговне нет лобка и им приходится в каждый класс шлёпать миллион гетов и миллион сетов, а потом с усёром коупить на сосаче что всё это может сделать за них среда разработки, а им останется только в этом говне разбираться, а они-то мухи и им как раз, шах и мат!
Это тот самый лобок, который оракл всей душой ненавидит и каждую версию им подсирает убирая возможности хаков? Ты тооочно уверен, что это именно достижение жабы?
>>390494
Основной аргумент состоит в том, что типа существует очень много классов, у которых прям все поля требуют гет или сет, и поээээтому в жабе очеееень удобная фича есть, прям над классом ебнуть @Getter. Вот это единственная фича ради которой эти шизы усираются. В остальном в шарпе все гораздо лучше. Банально скажем, ты эти геттеры лобковские в интерфейс не запихнешь(Потому что это говнохак блять, хахахаахах).
> оракл всей душой
Мне-то какое дело? Совсем в голове не укладывается что можно не быть тупой рабской псиной и не поддерживать разработчиков своего языка?
> В остальном в шарпе все гораздо лучше
Конкретику боишься сказать, потому что научился на сотне обоссываний своего рыла? Или не научился? Приноси сто первый, сто первый раз тебе рыло уринотерапируем.

>Конкретику боишься сказать
>ты эти геттеры лобковские в интерфейс не запихнешь
Ты ебанутый? Напиши пик на жабе используя лобок.
>не поддерживать разработчиков своего языка
Оракл во многом делают хуйню, но когда они убирают unsafe, запрещают твоим грязным ручкам лезть в их приватные методы или подсирают хакерам компилятора, они абсолютно правы. Нехуй лезть в то, что вам не предназначено.
> Ты ебанутый? Напиши пик на жабе используя лобок.
Так это ты ебанутый. Это такая шиза, что я даже сразу не обратил на это внимание. Какое нахуй поле в интерфейсе? А в абстрактном классе пожалуйста.
> Оракл во многом делают хуйню, но когда они убирают unsafe, запрещают твоим грязным ручкам лезть в их приватные методы или подсирают хакерам компилятора, они абсолютно правы. Нехуй лезть в то, что вам не предназначено.
Напомни, кто тебя спрашивал?

>Какое нахуй поле в интерфейсе?
Геттер это не поле чел. Нахуя по твоему (((они))) методы в рекорды включили? Именно блять для того, чтобы сохранить возможность интеграции с интерфейсами. В интерфейсе скажем ты пишешь те поля(условные, они могут не существовать при имплементации, но геттер должен работать), которые желаешь видеть во всех его наследниках. И прямо декларируешь, мол вот, хочу геттер с таким именем. В жабе ты можешь делать также(типа втупую написать метод getX), но во первых пика ты никогда не достигнешь, поскольку имена методов будут одинаковыми ну или пук среньк, bridge метод.
Я именно по тому, что вынужден самостоятельно писать каждый геттер в интерфейсе и ручками в каждом наследнике прописывать над каждым полем Getter, понял, что нет, это просто васянская хуйня, не пришей к пизде рукав. И вот самое потешное, кто-то же этим кичится.
Вот чисто для контраста. Недавно таки залез в ts, на пике действительно крутая фича, а не ебаные генераторы гетсета. Это то, чего нет ни в шарпе, ни в жабе. Это даже достигнуть нельзя способами, которые имели бы смысл.
Пиздец шизофренический синтаксис. Ты буквально мне щас высрал абзац, чтобы объяснить, что делает контринтуитивная строка в которой ты прямым текстом объявляешь поле, но на самом деле блядь не объявляешь.
> поскольку имена методов будут одинаковыми
Иначе это противоречит принципу интерфейса. Идея интерфейса в том, что ты не обращаешься к реализации.
По остальному — ок, принято, но нахуй особо не нужно, потому что
а) достаточно просто просто написать Zalupa zalupa(), гораздо понятнее чем та хуйня что ты прилепил
б) в большинстве случаев если ты прокидываешь полноценное поле в интерфейс ты делаешь что-то не так
По итогу снова обоссан. Ещё что-то будет, шарпошавка, или как всегда затерпишь и убежишь в слезах?
>Пиздец шизофренический синтаксис
А ты синтаксис дженериков понимаешь? Я тут кучу всего кидал, по мне там синтаксис гораздо более шизофреничный, чем синтаксис, как если бы поле было public, но оно геттер.
>достаточно просто просто написать Zalupa zalupa()
Ты не очень понял в чем суть, да? Мне надо писать каждый раз не один метод, а целый интерфейс.
>если ты прокидываешь полноценное поле в интерфейс ты делаешь что-то не так
Скажем это для DTO, чтобы всем поставлять настройки валидации. Т.е. взял, в одном месте поменял, а не бегаешь по 100500 классам.
>Иначе это противоречит принципу интерфейса.
Bridge методы никак не противоречат сути интерфейса.
> а вот у дженерихлов
Дженерихлы не вводят в заблуждение.
> Ты не очень понял в чем суть, да? Мне надо писать каждый раз не один метод, а целый интерфейс.
Мне кажется ты сам не очень понимаешь, что ты высираешь. Давай, поясняй.
> кажем это для DTO, чтобы всем поставлять настройки валидации. Т.е. взял, в одном месте поменял, а не бегаешь по 100500 классам.
void configure(Settings settings);
> Bridge методы никак не противоречат сути интерфейса.
А причём тут бридж методы? Речь идёт о динамическом имене метода.
>void configure(Settings settings);
Что?
>Давай, поясняй.
Лень.
>Речь идёт о динамическом имене метода.
Оно не динамическое. Ты ровно также можешь сделать абстрактный класс с public полем и в его наследнике сделать публичное поле с таким же именем.. И о чудо иметь возможность обратится к обоим сразу. Тут та же суть.
>Дженерихлы не вводят в заблуждение.
Лол.
> Что?
Что непонятного?
> Оно не динамическое. Ты ровно также можешь сделать абстрактный класс с public полем и в его наследнике сделать публичное поле с таким же именем.. И о чудо иметь возможность обратится к обоим сразу. Тут та же суть.
Так, а нахуя тебе иметь возможность обратиться к одному и тому же по разным названиям? Вы этим в шарпоговне в перерывах от гетсетанья занимаетесь?
> Лол.
> Лень.
Слив.
>к одному и тому же по разным названиям
get int и get string не одно и тоже.
>Что непонятного?
BeanValidate не имеет никаких configure. Это вереница анноташек. Причем некоторые из них сделаны мной, какой configure, что ты несешь?
> get int и get string не одно и тоже.
Ну и, что сказать-то хотел?
> BeanValidate не имеет никаких configure. Это вереница анноташек. Причем некоторые из них сделаны мной, какой configure, что ты несешь?
Какой ещё бин валидат? Метод configure() тебе в интерфейсе дан, реализуй его в подклассах.
>Какой ещё бин валидат?
Пик. И пик2 для каждого блять наследника. Меня особенно радуют nonnul, это вам не get init написать и все, это еще сверху нахуярить целую вереницу из хуйни.
>Год назад давали 300
но сейчас то не год назад? пишу это даже без сарказма, раз ты на рыног год не ходил, значит просто не в курсе
вангую, что щас либо вакансий нет, либо дают меньше
>Напомни, кто тебя спрашивал?
А тебя кто?
Опять щас будешь скулить и высирать полотна бугурта про то, как персональное унижение тебя через депрекаты это поломанная обратная совместимость и как всем в треде должно быть на твое мнение по этому поводу не похуй?
>А ты синтаксис дженериков понимаешь? Я тут кучу всего кидал, по мне там синтаксис гораздо более шизофреничный
Не осилил обобщенку? Ничего страшного, бывает. Гуманитарный склад ума, значит. Разработка - не твое просто. Попробуй скрам коучинг?
>Не осилил обобщенку?
Я хотель сделать нумералы черча, но на типах. Условно метод, который принимает Box<Box<Box<Box<Value>>>> и скажем Box<Box<Value>> и возвращает Box<Box<Box<Box<Box<Box<Value>>>>>>. Но дженерики в сущности экзистенциальны, потому не знаю, как не думал, не выходит.
В хаскеле, чтобы подобное провернуть, тоже нужно конкретно так поздаебаться, чего я так и не сделал. Грустно даже как-то.
>>390593
Я и другие примеры приводил. Когда они тайп инференс между 7 и 8 переделывали. Типа если раньше любой T (без constraint само собой) сводился к Object, то теперь к наиболее конкретному. Ты это изменение даже через ошибку компиляции никак не получишь, только когда в рантайме стрельнет.
И потом, когда я приводил конкретные примеры, мне в ответку кидают, а я вот ни сталкивался. Пруфаника личным опытом. Долбоебизм, не иначе. Еще пруфануть fermat primality test попроси. Мол а уменя, в моем диапазоне все робит, нипанимаю про что ты, заебатая функция, а вот те другие диапазоны, да они и нинужны. Угу, ахуенно, чел.
Чёт проперделся с того, как тугодумика задел факт его тугодумия, и он начал в очередной раз рассказывать, какой он у мамки особенный. Особенный, особенный, работу только найди.

Где тут у вас на 350к вкатываются?
>Перемогать гетсетами - это дело благородное, а вот инциализаторы, ррря да кому они нужны.
Да мне похер и на инит и на гетеры.
Это языкошизы вроде тебя, дрочат на возможность сэкономить пару строк кода, какой-то хитровыебанной ебалой обобщеного программирования. А при обычной, каждодневной работы ты: ты создаешь класс с пятком полей и нет проблем с IDE сгенерировать, всё что нужно. Или ты добавляешь одно-два поля в существующий класс и опять же нет проблем ручками поправить или перегенерить. Все спокойно живут без этого, посмотри на Го, там вообще надо почти все явно писать руками. И тем не менее языка набирает популярность. А разгадка проста:
>Explicit is better than implicit.
проще продраться через дебри эксплиситного бойлерплейта, чем через магию спринга/имплицитов скалы/багогенерации .Net.
>и нет проблем с IDE сгенерировать
Ты же буквально отвечаешь на пост, где я пересказываю, что такие проблемы есть.
>дрочат на возможность сэкономить пару строк кода
Не совсем. Вот смотри, есть два апи, одно позволяет указать имя класа через строку, типа "ClassName", второе использует для этого рефлексию = ClassName.class. Какое из этих двух апи ты бы предпочел? Лично я топлю за второе, поскольку оно строже: ты получишь в ебало компайл тайм ошибку, а не рантайм. И я дрочу на возможность как можно больше всего перевести в рамки именно компайл тайма, а не рантайма. И мне искренне поебать как много строк для этого надо написать. Впрочем как правило типовая строгость в языках наоборот позволяет снизить кол-во шаблонной хуйни.
Ну и странно как по мне одновременно топить за явность, а потом использовать лобок. Надеюсь ты этого не делаешь
>нет я не терплю вот я как ответил что я затерплю
Хули ты такой терпила? С щеки харчок сотри, чмо.
Уже смешно

Возьмите меня к себе сеньером!
Я люблю пилить эмбеддед на C++17
и дарить шоколадки
молодым и добрым
духовно здоровым
джуниорам!
А иногда даже миддлам!
Была идея сделать самодельный костыль, но пока ищу уже готовые решения.
FFI
Учился по книгам явы, так как ООП практически один. Тот же Немчинский, Фаулер, архитектуры, ддд и т.д.
Но саму Яву я как-то не замечал, т.к. пока учился, самостоятельно С++ выучил и потом писал софт для своих проектов. Ну и заебало каждый раз создавать молоток, а потом как этим молотком работать и в итоге в веб ушел.
А сейчас обратив внимание на Яву + зп у мидлов как у сеньеров в ПХП.
Архитектурную и фундаментальная база есть по классическим книжкам.
Глянул ролики на ютубе и Ява это как C++, PHP и JS, все понятно, можно сказать я уже знаю яву.
Короче, если свичнутся, какие профиты для свичера?
Что знать надо? ДДД знаю, солид-грасп знаю, гексагоналку знаю и прочие архитектуры, паттерны и принципы. Очереди, Тот же Фаулер - код и примеры на яве.
Корочка тоже есть что не хуй.
Спринг, Кибернейт, еще что? Распишите базу по яве. 200-300к это мидл у вас? Что хотят за 200-300к?
Ну так собесы проводят - коллеги задроты а не работадатель.
Когда у нас филиал открылся одной залупы кабанячьей, там были директора и они меня собесили, тупо по вершкам и по хуйне даже до джуновской которая недотягивала и то больше про другую работу спрашивали что делал и все + поняли что я не хуй и решили меня руководителем поставить, чтобы я других разработчиков набирал для их филиала. Но я отказался, т.к. там больше на UI для терминалов. А я бекендер. UI могу для своего проекта, для чужих бесит нахуй все это делать.
Так же когда собесился в нефтянке - что закончил - то то, ну давай приходи. Только я программер, а там админство больше было.
А вот когда собесился в другой, когда были разрабы, вот те все свое задротское говно выдавали.
Нельзя допускать задротов собесить. А то каждый знает свое говно, нет стандарта, отсюда и ад в найме. Нужно собесить на то что нужно.
На тему бугурта - да, в пхп тоже самое, редисы, кафки и прочее. + еще фреймворки со своей экосистемой. Но они хотя понятные 1 знаешь - уже знаешь как другие будут работать, просто api компонентов разные.
Мех, скуфчики, ну хватет лезть в мою жебу. Сидите в своём болоте, зачем же вы лезете и лезете (((
Для меня она уже мертва.
>видел на ютубе ролики когда человек спиной падает на руки другому? Ну вот.
Не понял твою тонкоту.
>Нельзя допускать задротов собесить.
Согласен. Не допускайте меня до собесов, отьебитесь и оставьте онанировать в коде - я только спасибо скажу. Как же я в гробу эти собесы блядские видел - ебаный рот...
Checkstyle доебывается
>что ты там собразся увидеть кстати?
Спроси у меня. Просто раздражает то, что это какая-то магия ебаная, и когда надо починить (не работали сегодня транзакции), то приходится танцы с бубном устраивать.
В том, как трафик лить на разные инстансы в зависимости от географического положения, в распределенных локах всяких, да вагон там нюансов. Масштабироваться надо, а как хз
>>394611
Опять на связь выходишь, мудило? Напоминаю, этого серуна ИТТ обоссывают на гнилом пиздеже каждую неделю, после чего он уходит на неделю ныть и потом снова возвращается, защищает оракл/грефа/майкрософт с петушарпом/фантазирует как вкатится обязательно на 100к фублей, разводит срачи в треде поддувая с обоих сторон, получает урину, сливается, затыкается и ждёт следующего приёма мочи. Он же шарпоговношиз.
Так а в чем проблема? Раскидываешь данные по шардам, читаешь с реплик, пишешь в кафку. Микросервисное безумие посылаешь нахуй.
это не я. врети.
За сколько дней кабана прочел?
Дурак штоле? Щас бы в 2025м работать стайлчекером на ревьювере, пробелы в отступах считать...
Норм лист, спс
Открой и увидишь.
>мало
что бы ты добавил туда?
Если собесишь сам - то какие вопросы по твоему мнению там нет но обязательно спросят?
Я не собираюсь в одном сосачерском посте писать десятикратный объём того репозритория. К тому же не собираюсь помогать позорному членососу выклянчивающего общедоступные данные про способы вката, см. пасту ниже.
Напоминаю базу треда. Мелкобуквенный хуесос - это скуф 35-40 лвла, его 250к зп пиздёж чтобы "влиться в компанию", в реальности же это додик который всю молодость проиграл в WoW в надежде зарабатывать на продаже аккаунтов в этой игре. После того, как у него нихуя не получилось, а его мелкобуквенную хуйю начали детектить он придумал себе легенду, что он обычный офисный работник и что его наебали цыгане на 200к, и что он живёт в бараке. Любые вопросы/ответы мелкобуквы - это попытка через троллинг тупостью узнать реальное положение дел в айтихе дабы вкатиться, включая вопросы про программирование.
Алгосы на уровне литкод изи-медиум, CI немного, кабидж коллектор как работает выучить, многопоточка и прочий вебфлакс желательно, транзакции. Уметь отвечать на вопросы - что для вас главное в проекте, что вас драйвит, кем видишь себя через 3 года и т.п.
Для какого-нибудь миддла в Тиньке - этого с запасом
>Я не собираюсь в одном сосачерском посте писать десятикратный объём того репозритория.
не пизди, десятикратный обьем вопросов ты написать не способен
ладно, хотябы один вопрос напиши, пруфани что не пиздун
>>394969
> литкод изи-медиум, CI немного, кабидж коллектор как работает выучить, многопоточка и прочий вебфлакс
если на сеньку собеситься в яндекс, наверное так
>>394969
>миддла в Тиньке
я собесился, всё считай по кору но затейливо, зазубрить нельзя
вывод - ты пиздун с самомнением, твое самолюбие ущемлено зепкой в 100к деревянных и ты оправдываешься перед собой что надо дрочить литкод, учить девопсятину, знать такое гавно как вебфлакс, нахуй не нужную многопоточку, ты какбы обьяснил себе почему ты не гавно, понятно тебе? Думай.
Хуя се скуфа-членососа на "нет, ты!!!!" прорвало.
>я собесился, всё считай по кору но затейливо, зазубрить нельзя
Шиз, что там затейливого?
Код-ревью круда на спринге или скуэль запрос с подзапросом написать? Или на вопрос "сервис тормозит, чо делать" ответить не смог?

Как же там все переврали про hb и пр. Еще от себя чепухи добавили.
Например вот это:
>sequential consistency - то же что и as-if-serial semantics, гарантия того, что в рамках одного потока побочные эффекты от всех операций будут такие, как будто все операции выполняются последовательно.
Это не тоже самое блять. as-if-serial гарантия про один поток.
А SC это про то, что все вариации исполнения смерджены в одну (посредством hb в жабе), и тебе сделают вид, что программа будет исполнена именно по ней, а никак иначе. Она не про один поток блять. Она про всю пограму в целом. Сука, вот в спеке даже есть определение:
>Sequential consistency is a very strong guarantee that is made about visibility and ordering in an execution of a program. Within a sequentially consistent execution, there is a total order over all individual actions (such as reads and writes) which is consistent with the order of the program, and each individual action is atomic and is immediately visible to every thread.
>If a program is correctly synchronized, then all executions of the program will appear to be sequentially consistent. This is an extremely strong guarantee for programmers. Once programmers are able to determine that their code contains no data races, they do not need to worry that reorderings will affect them.
У тебя цель всей синхронизации сделать программу корректной и как следствие SC, но вот челик пишет, что она уже SC ептыть. Как as-if-serial.
>Если указывается, что запись в переменную и последующее ее чтение связаны через hb, то как бы при выполнении не переупорядочивались инструкции, в момент чтения все связанные с процессом записи результаты уже зафиксированы и видны.
И вот это тоже пиздежь. Смотрим в спеку или пик:
>A set of actions A is happens-before consistent if for all reads r in A, where W(r) is the write action seen by r, it is not the case that either hb(r, W(r)) or that there exists a write w in A such that w.v = r.v and hb(W(r), w) and hb(w, r).
>is not the case that either hb(r, W(r))
Так что нет, если ты сделаешь связку hb записи с чтением, то ты не обязательно будешь видеть значения без гонки. Гарантия состоит в другом, тебе надо упорядочить не одну конкретную запись с чтением, тебе всю блять программу надо, все возможные исполнения сделать hb, чтобы нигде не возникала гонка. Если она есть хоть в одном месте, то все последующее считается гонкой. А не вот ну там где-то она случилась, но если я здесь сделаю hb, то она пропадет? Нет блять, у того кто это писал, какое-то базовое не понимание концепции jmm. Нахуя это влкючать вообще? Кто в здравом уме на собесе про hb будет спрашивать?

Как же там все переврали про hb и пр. Еще от себя чепухи добавили.
Например вот это:
>sequential consistency - то же что и as-if-serial semantics, гарантия того, что в рамках одного потока побочные эффекты от всех операций будут такие, как будто все операции выполняются последовательно.
Это не тоже самое блять. as-if-serial гарантия про один поток.
А SC это про то, что все вариации исполнения смерджены в одну (посредством hb в жабе), и тебе сделают вид, что программа будет исполнена именно по ней, а никак иначе. Она не про один поток блять. Она про всю пограму в целом. Сука, вот в спеке даже есть определение:
>Sequential consistency is a very strong guarantee that is made about visibility and ordering in an execution of a program. Within a sequentially consistent execution, there is a total order over all individual actions (such as reads and writes) which is consistent with the order of the program, and each individual action is atomic and is immediately visible to every thread.
>If a program is correctly synchronized, then all executions of the program will appear to be sequentially consistent. This is an extremely strong guarantee for programmers. Once programmers are able to determine that their code contains no data races, they do not need to worry that reorderings will affect them.
У тебя цель всей синхронизации сделать программу корректной и как следствие SC, но вот челик пишет, что она уже SC ептыть. Как as-if-serial.
>Если указывается, что запись в переменную и последующее ее чтение связаны через hb, то как бы при выполнении не переупорядочивались инструкции, в момент чтения все связанные с процессом записи результаты уже зафиксированы и видны.
И вот это тоже пиздежь. Смотрим в спеку или пик:
>A set of actions A is happens-before consistent if for all reads r in A, where W(r) is the write action seen by r, it is not the case that either hb(r, W(r)) or that there exists a write w in A such that w.v = r.v and hb(W(r), w) and hb(w, r).
>is not the case that either hb(r, W(r))
Так что нет, если ты сделаешь связку hb записи с чтением, то ты не обязательно будешь видеть значения без гонки. Гарантия состоит в другом, тебе надо упорядочить не одну конкретную запись с чтением, тебе всю блять программу надо, все возможные исполнения сделать hb, чтобы нигде не возникала гонка. Если она есть хоть в одном месте, то все последующее считается гонкой. А не вот ну там где-то она случилась, но если я здесь сделаю hb, то она пропадет? Нет блять, у того кто это писал, какое-то базовое не понимание концепции jmm. Нахуя это влкючать вообще? Кто в здравом уме на собесе про hb будет спрашивать?
> Кто в здравом уме на собесе про hb будет спрашивать?
Так хб это основа основ. Стыдно не спросить такое. Это как спросить про то как работает хешмапа.
Ты лично хоть раз открывал 17 главу спеки, чтобы это базу знать? Знаешь как связаны so, sw, hb? Чем total order (которая so), отличается от partial order (которая sw и hb)?
Просто, если тот, кто спрашивает сам в душе не ебет что это, то какой смысл это спрашивать?
>нет ты!
Я так понимаю у тебя сракотан в небеса улетел когда я сказал что спецификация многопотока это общее знание. Слишком много времени что-ли потратил на это? Терпи, не всем дано.
Помимо оскорблений-проекций будет что-то?
Моя статистика в том, что 99% жаванов спеку по многопоточке блять не читали. Их вопросы поверхностны.
Один с тобой не согласился, что интервьюеры просто тупые, а ты слишком умный для них, теперь думаешь, что другой согласится? Забавный чмошник.
> забавный чмошник.
Ты так же с людьми IRL общаешься или только на сосаче отрываешься за свою неуверенность?
>нет эта ти!
Ладно-ладно, все интервьюеры тупые, а ты у мамки самый самый умный, именно поэтому ты так и не нашёл работу.
Нет, посыл ни в том, что это сложно, а я самый умный. Это просто нахуй никому не нужно и никак не пригодится в реальной работе. Ни больше ни меньше.
А ты чел, если хочешь доказать обычность этих знаний прочитай ебаную спеку и не сри под себя.
Ну вот опять, ты переводишь тему на меня лично, при этом никак не отвечая по сути. Где ты применишь ебаные знания по hb, если в современных приложениях за многопоточку отвечает бд? А для другого, умные люди уже написали для либы.
Ты в том посте был задет лишь косвенно, для тонкого троллинга, из чего самостоятельно додумал основной посыл. Обычно такое бывает при слишком высоком и уязвимом эго, что само бывает тоже неспроста. Ну да ладно. Настоящий основной посыл в том, что многопоток для высоконагруженных приложений.
> Где ты применишь ебаные знания по hb, если в современных приложениях за многопоточку отвечает бд?
Боттлнек, слышал такое? Или за пределы чтения спецификации не выходил, потому что мозгов для этого нужно больше чем на простое зубрение? Если у тебя код твоего приложения будет однопоточным, то очень скоро производительность упрётся в приложение, и придётся ручками параллелить, никуда ты от этого не денешься.
> в современных приложениях за многопоточку отвечает бд?
БТВ, что это за бред вообще, лол? Обосрался с этого тейка. Каким образом за многопоток БД отвечает?
>Каким образом за многопоток БД отвечает?
Просто делегирует все модификации на бд. И все. Т.е. тебе не надо никакой логики по многопточке делать вообще, просто множишь потоки и передаешь запросы в бд и используешь tcl, по необходимости.
Нет я почему-то уверен, что ты начнешь сейчас усираться, что не то имел ввиду и прочее. Мол многопточка это многопточка, а данные это данные. Сразу иди нахуй.
>>395072
>что само бывает тоже неспроста
Минусы?
>Если у тебя код твоего приложения будет однопоточным
Ты можешь одновременно иметь многопоточное приложение и никак не задевать hb.
И по статистике большинство приложений упираются в IO. Ты не делаешь какой-то невероятно числодробильной логики в них, ты просто прослойка между бд и клиентом.
> Просто делегирует все модификации на бд. И все. Т.е. тебе не надо никакой логики по многопточке делать вообще, просто множишь потоки и передаешь запросы в бд и используешь tcl, по необходимости.
> Нет я почему-то уверен, что ты начнешь сейчас усираться, что не то имел ввиду и прочее. Мол многопточка это многопточка, а данные это данные. Сразу иди нахуй.
Оперативной памяти в твоей вселенной не существует что-ли? Блядь, ты же реально ретард.
> Ты не делаешь какой-то невероятно числодробильной логики в них, ты просто прослойка между бд и клиентом.
В laba1 не делаю, да.
> Минусы?
Ну не знаю, мне минусы в том чтобы быть умственно отсталым и раз за разом позориться ИТТ очевидны.

>Оперативной памяти
Используй виртуальные потоки и не еби мозги.
>В laba1 не делаю, да.
Понятно.
И вообще, на спеке жабы должна быть подобная пику запись. Хуже людей которые вообще не читали спеку, те кто считают себя дохуя умными и вот лезут туда, где вообще не имеют компетенции.
А как без этого-то? Спринг как старые БД дедлоки ретраями разрешать не умеет.
> Оперативной памяти
> виртуальные потоки
Как ты нашёл между этим связь?
> Понятно.
Опять местный клоун опозорился и слился.
>Как ты нашёл между этим связь?
Чел пошел нахуй, ты не объяснил, что ты имел ввиду. Может ты приебался к тому, что если множить потоки, то оперативка закончится. Я не ебу, честно.
>Опять местный клоун опозорился и слился.
Да-да, это именно я должен доказывать отсутствие таких программ, а не ты хотя бы одну предоставить. Заебись, четко.
> Чел пошел нахуй, ты не объяснил, что ты имел ввиду. Может ты приебался к тому, что если множить потоки, то оперативка закончится. Я не ебу, честно.
Ты продемонстрировал подход, при котором при любой потребности в информации происходит обращение к БД. Оперативную память не для того чтобы оперативно читать с диска придумали.
> Да-да, это именно я должен доказывать отсутствие таких программ, а не ты хотя бы одну предоставить. Заебись, четко.
Что мне предоставить? Проприетарный код с рабочей машины спиздить? Я могу тебе другой аргумент в пользу существования таких программ предоставить: если бы приложение всегда было тонкой прослойкой между бд и клиентом, не нужны были бы такие оравы бекендеров, нужны были бы только бдшники и фронтендеры. Но в реальности соотношение 1 бдшник к 3 бекендерам к 1-2 фронтендерам.
>при котором при любой потребности в информации происходит обращение к БД
Во первых, не все данные держит в диске. Это детали реализации, которые тебя не должны ебать. Во вторых, любая попытка в кэширование данных, равносильно во влезание в CAP, ты так или иначе будешь нарушать консистентность данных или в другом месте будешь жертвовать. Ради чего? Какую же хуйню ты несешь, ну пиздец.
> не нужны были бы такие оравы бекендеров
Так это не противоречит друг другу. Ты пишешь бизнес логику, она как правило не является сложной по вычислениям.
Даже если является, то тебе не надо ради перфоманса трогать многопоточку. У тебя вся она так или иначе инкапсулирована в репозиториях и бд.
Поэтому знание hb практически всегда просто бесполезны. Ты не применишь его нигде.
> Во первых, не все данные держит в диске. Это детали реализации, которые тебя не должны ебать.
Ты как чат гпт что-ли сначала пишешь, потом понимаешь, что написал хуйню и как-то пытаешься вывести что-то осмысленное без стирания хуйни? Вот именно, детали реализации, меня ебёт только то что обращение к бд в любом случае значительно медленнее чтения из памяти.
> Во вторых, любая попытка в кэширование данных, равносильно во влезание в CAP, ты так или иначе будешь нарушать консистентность данных или в другом месте будешь жертвовать. Ради чего?
Чтобы не обращаться к базе данных по 100 раз на один гет запрос?
> Так это не противоречит друг другу. Ты пишешь бизнес логику, она как правило не является сложной по вычислениям.
Это противоречит тому, что приложения это тонкая прослойка между бд и клиентом.
> Даже если является, то тебе не надо ради перфоманса трогать многопоточку. У тебя вся она так или иначе инкапсулирована в репозиториях и бд.
> Поэтому знание hb практически всегда просто бесполезны. Ты не применишь его нигде.
Что это за набор "яскозал!"?
>Чтобы не обращаться к базе данных по 100 раз на один гет запрос?
Если это в рамках одной транзакции происходит = в одном бакете, то хибер всю эту невероятную логику за тебя сделает. Можешь не утруждаться.
Короче жду примера, где ты ебаный hb сможешь применить. Ты не пишешь либы, ты просто перекладывашь json-ы туда сюда. А самомнения-то.. Ужас
> Если это в рамках одной транзакции происходит = в одном бакете, то хибер всю эту невероятную логику за тебя сделает. Можешь не утруждаться.
Ну и чё, часто у тебя на один запрос одна транзакция? А ещё запросов бывает много, знаешь. И общение (микро)сервисов, которое для достижения этого требует ебли с распределёнными транзакциями. И от того, что запросов станет меньше, но они станут жирнее намного легче не станет. Похоже на то что ребёнок выучил новое слово и вставляет его куда не попадя, ей богу. На собесе только не говори подобное, это в школе только лучше сказать хоть что-то чем ничего.
> Короче жду примера, где ты ебаный hb сможешь применить.
Я тебе предоставил достаточно доказательств того что он применяется и без конкретных примеров. Также объяснил почему я не могу предоставить пример.
> А самомнения-то.. Ужас
Опять "нет ты". Сука. Да что ж ты за олигофрен-то такой. Среднестатистический порашер умнее.
Опять же, есть https://www.baeldung.com/hibernate-second-level-cache
И каким сука боком тут hb блять участвует? То, что ты мапку какую-нибудь конкуретную применишь от тебя не поребует это знание. Сука, как же ты заебал, пошел нахуй ну блять, хватит до меня доебывать, ебло тупое.
> Опять же, есть https://www.baeldung.com/hibernate-second-level-cache
Нахуй ты мне это скинул? Угадывающие механизмы оптимизации по определению сосут у запрограммированных. Ну и чисто как пищу для размышлений докину что ультимативно ты даже если идеально абстрагируешься от самого hb не откажешься от принципов лежащих в основе hb, они просто перейдут на уровень выше и сожрут порядок или даже два порядка производительности. Но куда тебе до такого дойти, твой лимит это зазубрить спецификацию, а потом блестать умными словечками (которые тем не менее все знают).
> И каким сука боком тут hb блять участвует? То, что ты мапку какую-нибудь конкуретную применишь от тебя не поребует это знание. Сука, как же ты заебал, пошел нахуй ну блять, хватит до меня доебывать, ебло тупое.
Мапки конкурентные не все задачи многопотока решают, знал?
> не откажешься от принципов лежащих в основе hb
Называй по порядку принципы лежащие в основе hb. Слушаю.
>которые тем не менее все знают
Да-да, ахуенно. Наверное поэтому ты ни слова именно по поводу hb не высрался, зато высокоуровневыми абстракциями только в путь. Это не потому, что ты нихуя в этом не шаришь, а потому что ну... Эта жи очевидно. И потом ты же еблуша, мне доказываешь, что jmm весь джавий многопоток покрывает. А когда тебе тыкают opaque, acquire-release семантиками, про которые ни слова в спеке нет, ты такой, ну ВРЁЁЁЁЁТИ.
> не все задачи многопотока решают
В твоем конкретном случае решают.
> Называй по порядку принципы лежащие в основе hb. Слушаю.
> Да-да, ахуенно. Наверное поэтому ты ни слова именно по поводу hb не высрался, зато высокоуровневыми абстракциями только в путь. Это не потому, что ты нихуя в этом не шаришь, а потому что ну... Эта жи очевидно. И потом ты же еблуша, мне доказываешь, что jmm весь джавий многопоток покрывает. А когда тебе тыкают opaque, acquire-release семантиками, про которые ни слова в спеке нет, ты такой, ну ВРЁЁЁЁЁТИ.
Опять "нет ты". Сука. Да что ж ты за олигофрен-то такой. Среднестатистический порашер умнее.
> В твоем конкретном случае решают.
В каком моём конкретном случае? Чтобы не обращаться 100 раз к базе данных? При переводе на память это 100 обращений к памяти, и мапы конкурентные не во всех обращениях к памяти пригодны.
>Опять "нет ты".
Если заявляешь компетенции, то доказывай. Хоть слово одно по теме скажи, еблуш. Ты же нихуя не знаешь и поэтому так юлишь. Принципы hb блять, hb это связь долбоебина ты тупая. Это не jmm. Нет никаких принципов в простой связи.
>При переводе на память это 100 обращений к памяти
Нет не 100.
>неееет тыыыы!!! не сработало тихо, попробую погромче!!!!!!
Бля.
> Принципы hb блять
> мной сказано "принципов лежащих в основе hb"
Купи букварь.
> Нет не 100.
Это что за аргумент вообще? Я тогда скажу "нет 100".
Что такое нет ты? Ну типа, я что ли свою компетентность вперед рылом выставляю? Я блять говорю, что это знание обыкновенно. А потом на простой вопрос. НУ ПУУУУУУУК, ЗАГЛЯНИ В СПЕКУ. Ты хоть раздел назови, еблуш. Ну сука, как же ты меня заебал, ты ни в чем не разбираешься, но постоянно меня доебывашь. ОТЪЕБИСЬ НАХУЙ. Мне таких ебланов и ирл хватает.
Твою маму ебут там
Я свою компетентность никуда не выставлял. Я просто отвечал на твои несуразные высеры. Ты сам ущемился, потому что мамка тебе все 20 лет твоей жизни говорила, какой ты умный, а потом ты встретился с весёлым интервьюером что не отвечал на всё подряд "ок" как принято в корпоративной культуре, а попытался поговорить с тобой как с человеком, и теперь у тебя большая боль от разрыва манямирка.
Ты очень тупой, правда, тут в треде много дебилов, но ты если не самый тупой, то один из тупейших. Ты не видишь связей, ты не понимаешь логики стоящей за решениями, и на полном серьёзе считаешь что если сказать умное слово то ты будешь выглядеть умным. В западной культуре есть даже мем про содиум хлорид, твой случай очень похож.
Можешь не пытаться оставить последний пост, опозоришься ещё больше.
Меех. Почитай прошлые треды, там такого навалом.
> Работаю бэкэндером, думаю развиваться в ширину, чтобы всегда найти работу. Что стоит поучить, чтобы всегда быть с деньгами? Может, мобильную разработку под андроид?
Дак наоборот в менеджмент надо вкатываться, всех разрабов нейронки порешают в течении лет 5-10
Тогда уж в дворники сразу. Почему бы иишка мелких менежеров не порешала. Работа мелких менеджеров сводится к тому чтобы между кабаном и гребцами бегать. Нет людей == не надо рукой водить. С парой сенек кабан сам справится или поручит планирование иишке.
До собесов вообще кто нибудь доходит?
У меня есть 3 года официальной работы разрабом на джаве (но занимался при этом полной хуйней, ничего общего со стандартными требованиями на бэкендера современного)
Меня пидорнули с моей конторы осенью, в январе начал к собесам готовиться, и я охуеваю от требованию на Джуна от одного года.
Когда открываю вакансии на ХХ, и вижу по 500 откликов на вакухи у меня тряска начинается
В октябре-ноябре 2024 5 собесов проходил, успешно прошел 4.
Попыт чуть больше двух годиков, зп в оферах от 200 до 260
Можешь базово расписать, что спрашивали на собесах (да, я кучу видео с моковыми собесами посмотрел, но я не верю, что такие ебанутые вопросы задают, как там)
Спасибо заранее
Щас бы верить даунам с сосача. Я могу тебе гарантировать что у этого дауна нет работы.
Ты уверен, что dll нельзя упаковать в ресурсы внутрь джарки? Если нет, то MyClass.class.getProtectionDomain().getCodeSource().getLocation().toURI() + "/govno.dll"
Тут дело в том, что так делать нельзя - специальный скрипт будет периодически заменять старую dll'ку на новую. И, как я понял, мне этот скрипт менять нельзя(я его даже не видел ни разу, но я мне скажузи, что dll'ка будет меняться не периодично, а по мере поступления новой версии).
Ну раз нельзя то бери вторую строчку и используй. А вообще надежнее путь к dll передавать через какой-нибудь параметр запуска джарки.
Вот советом со второй строчкой и воспользуюсь. Благодарю.
А по поводу передачи параметров при запуске джарки - в соседней папке лежат баш-скрипты, которые запускают все jar'ники, но у меня нет прав на запись. И так как я не являюсь частью фирмы(аутсорс) мне не дают прав для редактирования этих файлов. Была идея схитрить - сделать два джарника, один из которых просто запускал бы второй с передачей параметров, но решил, что это как забивать гвозди отвёрткой: можно, но не очень хорошо.
С пробуждением.
Можно так сделать:
1. Заходим на страничку плагина: https://plugins.jetbrains.com/plugin/10080-rainbow-brackets/versions#tabs
2. Тыкаем на скачать https://plugins.jetbrains.com/files/10080/645834/intellij-rainbow-brackets-2024.2.8-241.zip?updateId=645834&pluginId=10080&family=INTELLIJ
3. Получаем в ебло ограничение.
4. Меняем в домен plugins на downloads.marketplace
https://downloads.plugins.jetbrains.com/files/10080/645834/intellij-rainbow-brackets-2024.2.8-241.zip?updateId=645834&pluginId=10080&family=INTELLIJ
5. Качаем, ставим офлайн..
>>396607
Какой нахуй ddl-auto, используй validate в связке с liquibase
>Какой нахуй ddl-auto, используй validate в связке с liquibase
Мне для того что бы триггерить обновление вручную тащить новую зависимость в проект? Может ещё calculatorFramework установить что бы два числа складывать?
К тому же liqubase требует описывать ченджлоги в XML формате, чего я делать не хочу т.к. получается что я описываю нужные поля и в энтити и в XML файлах делая двойную работу.
>что я описываю нужные поля и в энтити и в XML файлах делая двойную работу.
Нет не ты не делаешь двойную работу. Hibernate не умеет адекватно генерировать alter команды, необходимые при миграции. Или ты уничтожать данные будешь, которые всегда существуют дольше, чем твое приложение?
Да и xml там тривиален, не описывает поля ни в какой степени. Он описывает sql файлы, которые ты запускаешь при обновлении и роллбэке.
> триггерить обновление вручную
Буквально пару строк в yaml хибера.
>тащить новую зависимость в проект
Потерпишь, малютка.
> в yaml хибера.
Точнее бута. Пик. По идее оно автоматически обновит тебе бд, если задетектит изменения.
Впрочем можно как и внешний контейнер к компоуз бд подключить - пик2. Хз можно ли считать такое ужасной зависимостью.
>Нет не ты не делаешь двойную работу.
Допустим мне нужно добавить новое текстовое поле в модель. Для этого мне нужно:
1. Добавить поле в MyEntity
2. Добавить changeset с моим полем.
Это и есть двойная работа.
>Он описывает sql файлы, которые ты запускаешь при обновлении и роллбэке.
Даже если я буду описывать изменения в виде sql, мне все-равно придётся добавлять поле и в энтити и в SQL.
>Буквально пару строк в yaml хибера.
Каких?
Я все еще не понимаю в чем проблема. Ты не можешь гарантировать, что нагенерирует тебе хибернейт. Допустим мердж с продом произошел в промежутке, когда добавилось просто куча полей. И хибернейт пук среньк, сломал нахуй тебе бд. И че ты будешь делать в этом случае?
Тебе или админу бд в любом случае придется писать миграцию на сикуэле. В чем твоя блять проблема?
Если ты пишешь лично для себя, то нахуярь себе activate.on-profile с разными настройками, типа dev-auto, dev-validate. Они указываются не при сборке, а при запуске приложения. Что еще удобнее.
В нормальных компаниях, пользователь через которого работает приложение не имеет прав на ALTER, по соображениям безопасности. Так что миграцию базы надо делать отдельно в любом случае.
>Это и есть двойная работа.
Чувствую твою фрустрацию. Я для себя отказался нахуй от хибера - как по мне JPA-based ORMы давно себя изжили и нахуй не нужны. Полезнее уже пройти все пять стадий принятия и один раз хорошенько так изучить свою СУБД и ее диалект (все равно рано или поздно придется это сделать), нежели нос ворочать от SQL в сторону поделки, костыльной уже на уровне концепции, и ее приколов.
Пересел на Jooq и пошел от database-first: пишу один раз схемы на flyway, при билде эти схемы накатываются на БД средствами тестконтейнеров (заодно и проверяем что в схемах косяков нет), а по БД уже генерятся сущности в коде стредствами Jooq codegenа. Может показаться что это замедляет билд, но по факту - не намного.
Фреймворки миграции - база, чел. Просто прими это. В более менее серьезном проде никто не пользуется хибернейтовской автогенерацией таблиц, ее юзают разве что девелоперы локально для тестов-дебагов.
Если не нравится ликвибейзный XML, можешь взять flyway - он позволяет миграции прямо SQLем описывать.
Благодарю. Помог совет со строчками.
>Если не нравится ликвибейзный XML, можешь взять flyway - он позволяет миграции прямо SQLем описывать.
Ликвибейз тоже позволяет, лол. Просто в ченджсет тег <sql></sql> и пиши свою хуйню.
>Если не нравится ликвибейзный
а ты точно программист? ликви умеет в pure sql. пишешь скриптецкий, добавляешь в чейнджлог и довольно урчишь
В джаве точно делать нечего. Тут уже Аишка настолько ебёт, что начинаются массовые сокращения. Типовый круд пишется полностью без участия программиста даже одной идеей с плагинами.
Джава тут причём?
К сожалению, как только тебе нужно пердолить какой то непонятный баг, твоя нейронка идёт нахуй.
Непонятные баги создают джава-скуфы говнокодеры. Когда всё пишет нейронка, багов нет. Так что скуфы пойдут под сокращение.
База. Всех скуфов на улицу!
Только вот, что делать с уже написанным кодом? Всю javacore, все фреймворки на помойку в ожидании того, что будет написано нейронкой?
Переписать с нуля на джаваскрипте и немножечко на го.
Немножко потерпеть, чтоб в контекст нейронки влезал весь проект, заплатить денежку ОпенАИ, залить проект и попросить переписать на хорошем современном молодежном языке(го) без багов. Вот и весь секрет.
Жир.
Зачем на го? Пусть сразу в машинных кодах ебашит
Для меня как неофита в веб это кажется очень простым. Типа в БД добавить колонку "кол-во лайков" (если нет) и выводить с сортировкой по этому столбцу. Но видимо там куча подводных камней...какие?
Миграции?куча легаси который нужно перелопатить, чтобы новый релиз не лагал?
>Но видимо там куча подводных камней...какие?
Во первых перфоманс.
Во вторых разные продвинутые фичи. Например посьмодерация с помощью AI. Комментарии после публикации отправляются на мудерацию AI. Это занимает некоторое время. Дальше AI выносит вердикт: комментарий плохой и его надо скрыть, комметарий спорный и его надо понизить в выдаче, комметарий хороший и его трогать не надо. И дальше эту херню надо применить как-то ко всем клиентам у которых открыто видео.
Мало ли че тебе хочется. Партии важно чтобы наверху ты видел не самые популярные комментарии, а комментарии лахты, лол.
Ну а если серьезно - в тот момент когда ты от монолита переходишь к микросервисам (а площадка масштаба рутуба почти наверняка построена по микросервмисной архитектуре), не спеши применять реляционные рассуждения к пользовательским кейсам. Нет совершенно никакой гарантии что количество лайков существует как колонка в таблице "комментарии", да еще и с упорядоченными индексом. Если тебе стопятцот расхайпленных хомяков пойдут и понапишут тебе тонны паст, а потом еще их и залайкают, не факт что ты не загнешься на апдейтах этой колонки и индекса к ней. А это только одна пользовательская сторя.
>Почитай вторую главу в кабанчике
это что за книга?
я вообще не java программист если что, сюда написал потому что это бэк. Ну и вроде как джависты в этом наиболее компетентны.
>Во первых перфоманс.
в контексте чего? БД, JVM, все вместе?Вывод комментариев так много ресурсов жрет?
>И дальше эту херню надо применить как-то ко всем клиентам у >которых открыто видео.
вот теперь кажется начинаю понимать. Ладно буду разбираться потихонечку
Спасибо за ответы.
>Вывод комментариев так много ресурсов жрет?
не знаю как в ютюбе и вторую кабанчика не читал, но видел реализацию системы комментов - каждый комментарий привязан к той сущности которую он комментирует, соответственно когда мы эту родительскую сущьность получаем - в душе не ебем есть ли у ней комментарии или нет. Надо дергать БД по айди родителя и забирать комментарии, потом забираем комментарии комментариев и тд.
Чтобы облехчить пиздец у родителя есть флажок isCommented если он false мы тогда не ищем в БД. Добавь сюда сервера в разной географии и кеши чтобы примерно представить масштаб ебли.
Тоесть да, даже просто посчитать комментарии в большой системе проблемно, точнее требует ресурсов, грамотных прогромистов, девопсов и еблю мозга.
Вот-вот, плюсую хороший пример. И дело даже не в грамотных пограмистах. Просто модели данных - это всегда трейдофф. Выбирая тот или иной подход ты всегда жертвуешь чем то во имя чего то. Универсально хорошей во всем модели данных не существует.
Сложности как таковой нет. Тут, видимо, нет запроса на такое у начальства.
Ютуб не сортирует комментарии по количеству лайков. Раздел популярные работает иначе. А как именно - хуй его знает. Там какой-то свой критерий для подсчёта.
>>398347
В ютубе глубина комментариев уплощена до двух. Ты не можешь написать комментарий комментария комментария.
>>398305
Вот лучше б он это не делал. Тем более сейчас это просто через попу работает:через раздел популярные вижу одно, а через новые вообще другое.
>Добавь сюда сервера в разной географии и кеши чтобы примерно >представить масштаб ебли.
Ну в целом все упирается в инфраструктуру, как я и предполагал.
Понятно, что у гугла бабла жопой жуй, свои дата центры и прочее.
Плюс само приложение развивается уже почти 20 лет.
Ну и ебка с рекомендациями и алгоритмами видимо еще большая.
Хотя с дивана все это как-будто бы выглядит не сложно, ну точнее реализуемо.
Но больше всего мне в ютубе нравилась, "подборка видео - по смежным интересам" (когда мне рекомендуют еще среднестатистический контент из моей условно "социальной/близкой по духу группы людей" (например музыка).
типа люди которые смотрят видео с тачками как правило смотрят еще какие-нибудь бои, пранки от эдварда била и слушают моргена и вот они варятся в своем котле.
Я вот даже по комментариями замечал, как будто одни и те же люди пишут (из одной соц.группы), даже возраст средний можно разглядеть по стилистике написания.
Вот реализация таких алгоритмов выглядит впечатляюще.
>как будто одни и те же люди пишут (из одной соц.группы), даже возраст средний можно разглядеть
В реализации мало что интересного, это обычные карты кохонена как будто бы. Здесь впечатляют скорее масштабы.
Микросервисы не нужны, это ловушка дьявола для неокрепших умов.
Когда ты сделал шардирование по ID видосика и все комментарии к конкретному видео у тебя физически лежат в одном шарде в одной бд, их можно сортировать как угодно. А вот если ты дебил с микросервисами головного мозга и засунул все комментарии в одну гига-бд, потом охуел от живых нагрузок и распидорасил эту бд на части, так что теперь надо ходить по всему кластеру и собирать комментарии к конкретному видосику - вот теперь ты в полной жопе. А всего-то надо было не вестить на инфоциганский пиздежь про плохие монолиты и модные микросервисы.
>видел реализацию системы комментов
Эту систему сделал дебил. У нормальных людей комментарии всегда привязаны к какому-то топику, будь то видео или статья. Ты одним простым sql запросом достаешь все необходимое, а не дрочишь бд снова и снова.
>А всего-то надо было не вестить на инфоциганский пиздежь про плохие монолиты и модные микросервисы.
Спорить не буду, скорее всего ты прав. Сейчас оно как будто уже умирает, вон модулиты блять придумали уже (слово то какое нехристианское прости-г-споди...).
Во-первых, столько не будет. Никто не будет читать миллион комментариев.
Во-вторых, при чем тут вообще пагинация? В комментариях пагинация делается по комментариям первого уровня, если на 5 странице ты раскроешь всю ветку со срачем, ты по прежнему будешь на 5 странице, а не уедешь на 50-ю.
>все комментарии к конкретному видео у тебя физически лежат в одном шарде в одной бд, их можно сортировать как угодно
Как доступность обеспечивается? Отъебнуло это место и что дальше?
Если не спринг, то собственноручные костыльные решения. Что лучше, разбираться в веселых легаси велосипедах или хуевом, но стандартизированном фреймворке?
Через репликацию и бэкапы, как же еще.
Ну смотря что писать собрался. Игори вот можно и без спринга писать. Да и есть Micronaut, Quarkus для веб-приложений. Телеграм бота я без спринга написал успешно кстати вот.
>жава без спринга есть, или совсем грустно?
конечно есть
1) суперхайлоад, настоящий а не как в озоне
2) десктоп
3) как спринг только писали сами, в комплекте обычно 6я джава, но почти перешли на 8ю поэтому на собесе кандидату говорим - проект на 8й
4) микронавт, кваркус - альтернативные фреймворки, однако реализуют аннотации спринга
>обычно 6я джава, но почти перешли на 8ю поэтому на собесе кандидату говорим - проект на 8й
Лол бля, в чем проблема перейти с 6 на 8? Я понимаю с 8 на 11 и дальше, а тут-то че, кроме лени и криворукости может мешать?

528x848, 0:20
Жаббист преходит со спринга на нативную джаву, смотреть всем!
А как сделать некостыльно? Скоро на работе кое-что похожее придется делать
Вот бы каждый жаванчик был таким
Сейчас никуда не стоит вкатываться. Но если тебе нужно именно программирование, а не деньги, то джава всё ещё лучший вариант.
Тормозной очень и очень много тонкостей/подводных камней, а также library всегда > framework. Ничего особо хорошего.
>стоит вкатываться в жабу сейчас?
с момента появления джаве пророчат скорую смерть - "поиграются и вернутся на с++"
вот уже четвертое или пятое поколение "убийц джавы" появилось, но они умерли, а джава жива
Ну я тебе говорю - поздно. Ситуация как с юристами - теперь надо хотя бы что-то из себя представлять, совсем долбоебов больше не пускают, а еще вон и выбрасывают на улицу.
Тем более, если ты совсем нулевый, ни в всеросах там ни разу не участвовал, чисто в 11 классе петухон в егэ зашел, и решил, бля хачу пограмировать. Хуйня, не трать время.
Да не умер кобол в энтерпрайзе!
Сколько раз говорили, что его C похоронит, потом C++, Java? ОН ВСЕХ ПЕРЕЖИЛ! Он живее всех живых. И зп там больше чем где либо.
та не я в 9, в аисд сначала втянулся, щас просто по кд в раундах на кодфорсесе учавствую и литкоды решаю, плюсы нормально для таких целей знаю, питухон тоже
>Лол бля, в чем проблема перейти с 6 на 8?
Хуй его знает что именно за проблема у него, но у нас например была проблема со старым ядром. Был сертифицироаанный дистрибутив линукса, но ядро в нём было довольно старое, поэтому новую жвм туда поставить нельзя было не из-за ядра непосредственно, а из-за глибси.
Это только плюс, есть возможность спокойно доработать до пенсии. А то знаем мы всякие яндексы, которые уже на кандидатов старше 30 начинают ебальники крючить.
>>399252
>и средний возраст программиста - 69 лет
>Это только плюс
Двачую, с какого-то возраста карьера достигает потолка.
А если ты социофоб не-манагер, да плюс испытавший разочарование, который смотря на новомодные новые технологии испытывает де жа вю "где-то я это уже видел", то такое место не так уж и плохо.
Если это "вечный" банк, то потом оттуда или на хорошую пенсию или вперед ногами вынесут.
Толпы зумерков-вкатунцов после курсов питончик или нодик, крудик и jsonчик положим в nosql не составят конкуренцию.
Так что в легаси есть свои плюсы.
>Так что в легаси есть свои плюсы.
Я даже больше скажу. Легасятина - это топливо для развития нахуй, крайне недооцененная хуйня, за которой - будущее. Хули вам баззворы в резюме - каждый дурак способен заучить гайды и написать соолюшен с нуля. Большого скилла для этого не надо. А теперь к дуракам прибавляются еще и нейронки, которые зазубрили все гайды по всем фреймворкам задолго до джунов. А до нейронок всю дорогу были гугл со стековерфлоу - они тоже знали все.
Вот когда у тебя проект возрастом больше десяти лет, на который уже много лет как стойко подвязалось несколько жирных стейкхолдеров, из-за чего ты не можешь просто взять и переписать его с нуля, и в это мамонтовое говно надо как то фичи добавлять в срок, не регрессировав все остальное, проект, где цена ошибки - это сам бизнес нахуй... скажем так - такому скиллу мейнтенанса ни на каких курсах блять не учат. А если еще и рефачить его предстоит при этом... пережив такой рефакторинг, преисполняешься на всю оставшуюся жизнь, никакой эйджизм после этого тебе не страшен. Смотришь на попущей, тратящих свою молодость на скакание со стека на стек и языкосрачи из-за "новейших фич" с жалостью и снисходждением.
Хм, удачи тогда. А рейт на кф какой, если не секрет?
>А если еще и рефачить его предстоит при этом...
Рефачиш, приговаривая «ух бля». А вообще двачую.
Из 1995 года пишешь? Покупай биткоины, когда появятся. Не спрашивай, что это и зачем, просто купи пару тысяч штук.
Ты хотел сказать гетсетоёбство это не программирование вообще никак?
боюсь только из-за того что будут больше палить волоебство.
условно я сейчас трачу в среднем 1,5-2 часа максимум в день.
после внедрения этой хуеты как бы не начали нас ебать больше по срокам.
а так похуй
что вы понимаете под внедрением? написание кода с ИИ-асистентом? или оптимизация запросов в БД на лету с помощью ИИ в проде (уже видел такое)?
Генерация локализаций с помощью ии, код ревью. Для написания кода пока модельки слишком туповаты, тем более локальные, а слать свой код мы никуда не собираемся, разумеется. Но вообще мысли уже возникают о покупке железа под все это дело. Оптимизация запросов в бд - звучит страшно, я лично пока морально не готов к этому.
На что только вкатуньё не пойдёт чтобы получить копеечную или бесплатную стажёрку... Это уже даже в ворота "пиздец унизительно" не лезет, у меня просто нет слов.
И я даже не юморизирую...
>so actually in the "why" video, you're going to hear about exactly that! I was looking for a job during working on this and absolutely got some disappointing rejections, and one was because of my lack of skillset on things like this in a big tech company's interview. I literally failed the technical screening. Oh well.
Блядь. Сука.
> Генерация локализаций с помощью ии
Для того, чтобы делать качественный перевод, нужно во-первых запоминать информацию по ходу перевода для того чтобы перевод терминов был консистентен, а во вторых всегда нужно разбираться в теме по которой идёт перевод. Ни то, ни другое ИИ делать неспособен, поэтому он иногда даже хуже гугл переводчика оказывается.
исследовал тему авто-перевода через текстовые нейронки
>альтернативные фреймворки, однако реализуют аннотации спринга
>микронавт, кваркус
С каких это пор джакартовские аннотации - спринговые?
У нас нейронка митинг минутсы пишет. Удобно, иногда рофельно.
>почти перешли на 8
Это база. Хотелось бы просто как нормальный человек стать экспертом в своей работе и работать спокойно до конца жизни. Как это и бывает в нормальных человеческих профессиях, а не как у кодерков ебаных, которые каждые сраные полгода очередное говно должны изучать. Сука, ну зачем я в это всё полез...
Прибыл на захист барина, шлюхан? И даже не придумал оправдания, например как кокоренция всё это заебись и мы (корпорации) получим отличных специалистов, а просто предложил терпеть? Открывай рот.
Чё несёт блять. Я просто говорю, что вот если раньше вакух было дохуя, работодатели аж сами тебе писали, то вот сейчас надо плясать вприсядку и решать литкод, чтобы в твою сторону просто посмотрели. Нравится, не нравится - похуй. Так просто есть.
> Чё несёт блять.
Учиться читать не пробовал? Мой пост отвечает что на твой первый пост, что на этот сука. Ты холоп, экономический редпильщик, который вместо того чтобы признать проблемы предлагает терпеть.

Жаль ограничение онли для локальных переменных..
В смысле в чём разница? Ты не видишь разницу вообще? Или тебе прям супер огромная геймченджер разница нужна? Ну вообще она есть, но немного на другом уровне. Согласиться, что нужно что-то менять это двигаться в правильном направлении, предложение терпеть это попытки это движение остановить.
Только сейчас про это узнал что-ли? Я не просто так говорил что ты тупой.
Расскажи, куда ты двинулся, чтобы изменить ситуацию.
>как у кодерков ебаных, которые каждые сраные полгода очередное говно должны изучать
Ну-ну, дружище, не поддавайся отчаянию. Не рассуждай как потешный скуф под кризисом среднего возраста с AITа. Это стереотип. Во многом - фейковый. Природа его происхождения - сами кодерки, разжигающие войны за малозначимые вещи ради того, чтобы покатать свое никчемное ЧСВ на хайпе и отсосать у корпоратов. Легасятины на наш век всем хватит.
У тебя все еще существует опция упороться в T-shape - выдрочить что то одно стабильное и устоявшееся (свой ЯП, например) особенно хорошо, а об остальном иметь определенное представление уровня "почитал обзорную статью, подкрепил гайдом, практического попыта не имел, но никому в этом не признаюсь, хехехе". Мейнстримный язык тебя прокормит, что бы кто ни говорил.
Нет, я серьезно не могу понять, как ты отличаешь терпение и "движение в правильном направлении". Расскажи, пожалуйста, как ты двигаешься в правильном направлении.

1239x713, 0:04
Понял, раз так бегаешь от прямого честного ответа, то ничем не отличаешься, точно так же сидишь и терпишь, только еще выебываешься на других и ноешь.
https://www.youtube.com/watch?v=PL0c-SvjSVg
Вы серьезно предлагаете писать хайлоад на джаве в 2к25? Челы, дяди..
Пожалуйста, назови число места на котором находится говно и отставание от джавы в процентах.
https://www.techempower.com/benchmarks/#hw=ph&test=json§ion=data-r23
Ну любой чуть сложнее крудового запрос через sql и пишут даже со спринговым jpa
>С каких это пор джакартовские аннотации - спринговые?
да прямо с момента появления, с тех пор как их ввели в спринге
для школотронов подсвечу, что спринг появился раньше джакарты
@Entity
public class Item {
@Id
private Long id;
private int proterty1;
private int proterty2;
private boolean hasFeature;
}
В данный момент есть только два типа item. Отличаются они только наличием дополнительного функционала. Если hasFeature = false, то item не имеет никаких дополнительных полей. Если hasFeature = true, то в вышеприведенный item добавляются еще 3 поля (property3, property4, property5). Как правильно описать такую таблицу. Можно создать одну таблицу для обоих типов, но тогда если hasFeature = false, property3, property4, property5 будут null. Можно еще сделать item с общими полями, а для дополнительных сделать другой класс itemWithFeature, и использовать InheritanceType.JOINED. Первое проще вроде, но будут null ячейки в таблице, это нормально?
Просто сделай таблицу feature, в которой будет фк на item, он же будет являться пк.
Ей богу, жпа это такая параша ебаная, в рот она ебись просто.
Аноны, как вы менеждите транзитивные зависимости? Т.е. есть либа А, у нее зависимость на Б. В своем коде я хочу юзать апи из Б. Я могу не объявлять явно зависимость на Б, а юзать ее «транзитивно». Тут мне не очень импонирует, что зависимость не прописана явно. Второй вариант - указать явно, с какой-то версией. Здесь теоретически может возникнуть проблема совмести версий либы Б: если вдруг А юзает более старую версию, чем я явно укажу, а в новой версии Б есть брейкинг ченджес, то А может отвалиться.
Два стула, на обоих тонкий слой говнеца имеется.
Опять же в новой таблице будут поля null. Это норм?
Почему jpa параша? Во всех вакансиях требуют hibernate/jpa, а на работе что, не используют?
В новой таблице не нужно хранить записи для айтемов без фичи. Фича есть - есть запись в таблице. Фичи нет - нету.
>Почему jpa параша? Во всех вакансиях требуют hibernate/jpa, а на работе что, не используют?
Используют, к сожалению. Параша на уровне самой идеи. Понимание приходит с опытом.
>если вдруг А юзает более старую версию, чем я явно укажу, а в новой версии Б есть брейкинг ченджес, то А может отвалиться
Просто при каждом обновлении версий придется ручками подбирать все подобные зависимости, чтобы не було никаких проблем. Ты так или иначе уже это делаешь, скажем есть A и B, которые обе транзитивно юзают C. А если C в одной из них другой версии, то что?
Вот эта ебля с подбором версий либ и вообще разрешением зависимостей по сути работа лида.
Но как только ты все нормально подберешь, в теории никаких проблем не должно быть. Типа они иммутабельны, у тебя никак не может снихуя изменится версия какой-то либы и её зависимости.
Чщитаю, если тебе что-то нужно, то это надо явно указывать.
На практике хуй кто так делает. Во всех проектах, где мне довелось поучаствовать, на похуях юзают транзитивные зависимости. Причем чтобы задетектить такое, надо какой-то плагин мавенский юзать, чтоб подсветить неявно используемые зависимости. Или что-то типа того, я сейчас уже не вспомню.
Насчет подбора версий тоже сомнительно, ты же не будешь каждую транзитивную зависимоть в каждой либе проверять на совместимость. Кажется мне, что обычно придерживаются практики "все совместимо, пока где-то что-то в рантайме не наебнется". Во всяких попенсорсах даж боты юзаются, чтоб версии либ автоматом бампать. Че-то я сомневаюсь, что там какие-то проверки совместимости осуществляются, хотя могу и пиздеть, я такими не пользовался.
Возможно в этом случае исходят из того, что эта транзитивная зависимость где-то гарантируется, типа спеки там, хз.
Но это чисто мое имхо, что неявные зависимости, которые нигде не гарантируются, ни к чему хорошему не приведут.
Ну это чисто мое надежды на компетентность тех, кто разрешает зависимости. Мол люди не глупые сидят, все протестировали лучше знают и тд...
> новой таблице будут поля null. Это норм?
если констрейн не выставлен что пле должно быть нон-нулл
Нихуя себе какой боевитый культист выполз.
>спринг появился раньше джакарты
А J2EE вместе с теми самыми CDI/JAX-RS аннотахами, на которых по большей части и сидят "альтернативные фреймворки", появился раньше спринга. И кто после этого шкила, щенок?
Абсолютно нормально. Хочешь ты того или нет, рано или поздно ты выучишь SQL, хибернейт тебя от этого не убережет. Так зачем же откладывать этот волшебный момент и подменять качественный опыт суррогатами?
В джаве просто есть очень сильно устоявшийся стереотип, что без JPA общаться с базой остается лишь посредством JDBC, а тот в свою очередь весьма непрост в обращении. И типа перед тобой два стула - либо няшный на первый взгляд, но абсолютно отбитый и оторванный маняконцепциями хибернейт, либо страшный SQL и JDBC. А по совести джаве всю дорогу нужна была просто обычная типобезопасная обертка вокруг JDBC, закрывающая головняк типа RAII всяких стейтментов и резалтсетов. Без маняфантазий типа "о как же нам маппить ООПшные обьекты на кортежи в БД туда-обратно": на похуях как в нормальных ЯП - есть кортеж, под него есть банальная структура данных - полетели.
Такой оберткой по сути является JOOQ.
Jooq тоже вводит собственные абстракции, по крайней мере позволяет абстрагироваться от конкретного sql и писать что-то в общем виде.
JdbcTemplate, вот это тема, да.
Jooq не форсит Object-Relational-Mapping, он не пытается обьектами и ООП косплеить реляционку. И это замечательно.
>JdbcTemplate, вот это тема, да.
На вкус и цвет. Впринципе тоже неплохой выбор, хотя лично мне не хватает в нем типобезопасности.
Гугли JPA inheritance. Хотя ты походу уже сам все нагуглил, раз ссылаешься на InheritanceType...
Если вкрадце - там есть три стратегии маппинга для таких случаев. Каждая имеет свои сильные-слабые стороны. Твой варик с нулями - это маппинг через InheritanceType.SINGLE_TABLE - и да, при таком выборе будут нулли. В JOINED нуллей не будет, но зато будет джойн. Есть еще TABLE_PER_CLASS - там не будет ни нулей ни джойнов, но зато будет дублирование данных и UNIONы.
Вот те три стула. Сам выбирай, и мамку сажай. Универсально хорошего и правильного способа тут нет, все зависит от твоих данных и твоих запросов.
И да: JPA - шлыга.
Сука, ёбаный мусор блять. С maven на том же самом пк, на той же самой ide всё работает как часы. Эта хуйня мне 2 часа выносила мозг и я так и не смог её заставить работать.
А в чем этот подход неверен? Ахуенно же, пока не напишешь хорошо, тебе будет выдавать ошибки, чтобы в долгосроке их не было.
Правда чет сомневаюсь, что это к градлу относится, но само по себе почему это носит негативный оттенок? Ты бы мог сказать, что ошибки там не по делу или еще что-то. А то просто, пук я не умею пользоватья инструментом, он на миня ругается. А вот то, чем я умею пользоваться ни ругается, рря
Ошибки там не по делу. Из высранной этим говном простыни, можно предположить, что основное, что ему не нравится, эта версия jdk, которую он вообще не видит, хотя тот же мавен чёт всё видит. Все попытки ткнуть его носом в jdk успехом не увенчались.
По существу будет что-то?
Градлосектант пыхнул.
Мимо выкатился из фронта в котором по полгода сейчас не найти работу.
>Во всём айти уже два года работы нет.
А как же дефицит?
Алсо, тут понятно что нужно просто брать за шкирку самому и одно человекоместо освобождать от скуфьей гейткиперской жопы.
> А как же дефицит?
А ты всему, что тебе говорят, веришь, долбоёб?
> Алсо, тут понятно что нужно просто брать за шкирку самому и одно человекоместо освобождать от скуфьей гейткиперской жопы.
Копроскотина как всегда нашла злых %вставить_имя% чтобы только не допускать мысль того что виноват барин. Ух, злые скуфы виноваты что тебя ненужного 70 iq дебила на работу не берут.
Ты просто не очень хорошо думаешь.
Средства влияния на барена - минимальны.
Средства влияния на "брата"-пролетария - выкинуть его нахуй с работы и занять его место. Либо ты съедаешь, либо тебя.
Какие нахуй средства влияния на брата-пролетария, срынкошиз? Ты там под кислотой? Ты можешь повлиять только на размер и оттенок своего красного носа на цирке грефа.
>многопоточность
Про hb ченить знаешь? А то вон тут некоторые считают, что це базовое знание и без него никак.
>>403011
JEE преполагает, что имплементация рендера jsp лежит не в твоем приложении, а сервере приложений. Иначе говоря, tomcat это то, что этот jsp непосредественно рендерит.
Но в любом случае все эти технологии, типа jsp, таймлиф с проглотом сосут у ангуляра. То, что ты сделаешь на ангуляре за неделю, на jsp будешь делать тупо с нуля месяцами
>Про hb
про gc ты хотел сказать, так?
этого не слушай, он такойше школотрон вкатунишка как и ты
>>403021
>про gc ты хотел сказать, так?
>этого не слушай, он такойше школотрон вкатунишка как и ты
>>403023
> Нет, причем тут сборщик мусора?
> happens before
неа, я не школотрон вкатунишка, я сеньор из мира .net.
Хочу расширить кругозор и погрузиться в java.
Экие эксперты джависты тут сидят... Очевидно под hb имеется ввиду вовсе не GC или "happens before", а самый что ни на есть Hibernate ORM.
> я сеньор из мира .net.
неиронично, что в россии пишут на С#?
>Хочу расширить кругозор и погрузиться в java.
лучше не надо, после испорченной джавы , которой как известно является си-шарп, писать на нормальном языке тебе станет сложно
Лучше сиди в своем шарп-болоте, попердывай в жижу, лутай свои шарп-сеньорские 120К рублей в месяц
>лучше не надо, после испорченной джавы , которой как известно является си-шарп, писать на нормальном языке тебе станет сложно
Смелое утверждение от школотрона.
Но ведь по фактам своременная Java это C#/.NET 15 летней давности.
Да, Java проще, там нет
- ни десятков фич - синтаксических сахаров, ни возможности асинхронного программирования
- ни high perfomace фич интегрированных в платформу (unsafe pointers? values by ref, stackalloc + Span в C#)
- ни нормальных лямбд с поддержкой замыканий так что функциональное программирование будет через пень колоду
- ни возможности метапрограммирования, как в .net, где из коробки Expression Trees идут и широко в либах юзаются
- да даже обобщенное программирование это боль с generic type erasure и постоянным боксингом значений.
Зато штабильность да, поспевать за фичами не надо, можно дедовским кодом времен Object Pascal ограничиться.
>Да, Java проще, там нет
>- ни десятков фич ...
смотри сколько причин оставаться шарпоебом
не ходи в джаву, тебе сюда не надо
ваканский в россии нет, плотят 120К сеньёру, так это мелочи
ТЕРПИ НОСЛАЖДАЙСЯ СИШАРПОМ
>Откуда
ну а сколько тебе платят за си-шарп разработку?
я назвал цифру, ты её не опроверг
разумеется вопрос к тебе если ты не фантазер-школотрон
Я 10 лет пишу на шарпе, и изредка приходится что-то делать на джаве.
Господи, это постоянная боль.
Даже с лучшей ide IDEA всё очень убого.
Из-за кучи систем сборки ничего нормально не поддерживается. Подсветка ошибок что-то вменяемое показывает только после попытки билда, да и то не всё. Куча всяких дебильных мелочей. Например, если у тебя неправильный импорт (напр, миграция с одной версии либы на другую, где неймспейсы поменялись) тебе правильный не предложат, пока ты несуществующий не удалишь. Да и ту же импорты огромные портянки занимают, потому что каждый класс отдельно импортируется. Ладно, в иде они сворачиваются, но в код ревью всё это просматривать приходится.
Джава-стайл фреймворков состоит из бойлерплейта чуть более, чем полностью. На каждый чих надо по классу создавать ради одной функции. Ладно, появились анонимные реализации интерфейсов, это экономит место, но зачем это вообще надо, если можно выдать делегат?
Про стирание дженериков в рантайме уже все кому не лень по сто раз написали.
Короче, оно вроде всё работает, но постоянно приходится ебаться с какими-то мелочами. Часть из этого можно отнести на мою неопытность, но когда я был джуном и только начинал с шарпом, у меня такого количества проблем не было. Большая часть нормально работала из коробки.
Короче, не порти себе жизнь. Хочешь изучить что-то новое, возьми что-то принципиально иное. Пролог, какой-нибудь, например.
>показывает только после попытки билда
Ты power safe mode врубил и не выключил что ли? Че ты несешь?
> Например, если у тебя неправильный импорт
Ctrl+Shift+O по src уберет тебе все неправильные импорты.
>неймспейсы поменялись
Ты про какой язык вообще говоришь? Какие неймспейсы?
>но в код ревью всё это просматривать приходится.
Зачем?
>Про стирание дженериков
Сука, все кому не лень про это написали, но ни разу не написали, а нахуя вам их не стирать? Что вы хотите сделать? Это нужно только для какой-то ну совсем лютой грязи. Зачем такое поддерживать?
> у меня такого количества проблем не было.
А у меня такая жопаболь от уебанского говнища по названием EF Core что сука словами не передать. Как это вообще существует? Блять вот хочешь сделать какие-то банальные вещи по типу sql update по конкрентным полям и все блять. Просто ебля на весь день. РАДИ ОДНОГО БАНАЛЬНОГО СУКА ЗАПРОСА. Делаешь несколько репозиториев, каждый из которых является контектом и понимаешь, что получил себе проблем на голову. Потому что не дааай ты бог оно обнаржит, что в одном из контекстов какой-то кортеж уже существует, то все аларм аларм, тривога, ни магу отследить. И просто ебешься с detach.
Это говнище, ко всему прочему, требует ручками указывать игнор поля еще какой-то поебистикой заниматься для one-to-many связей. Особенный пиздец, когда тебе нужна many-to-many. Туши свет просто, столько костылей как тут я нигде не видел.
Какой смысл этого распрекрасного языка, если фреймворки на нем такое говнище?
>Ты power safe mode врубил и не выключил что ли? Че ты несешь?
Ну я загрузил проект, у меня красным подсвечено то, с чем всё нормально, а то, где проблемы, не подсвечено. Я запускаю билд, мне в отдельном окошке показываются файлы с ошибками и ошибки в них. Я их исправляю все, запускаю билд, мне показываются новые. И так несколько итераций.
Есть один проект, в котором вечно куча ошибок подсвечена, но билдится всё успешно.
>Ctrl+Shift+O по src уберет тебе все неправильные импорты.
Ок, я буду иметь в виду. А как мне сделать, чтобы он ещё правильные сразу все подгрузил?
>>неймспейсы поменялись
>Ты про какой язык вообще говоришь? Какие неймспейсы?
Ну как у вас там путь к классу называется? Типа com.java.collections?
>>но в код ревью всё это просматривать приходится.
>Зачем?
Затем, что оно посреди экрана на диффе.
>Сука, все кому не лень про это написали, но ни разу не написали, а нахуя вам их не стирать? Что вы хотите сделать? Это нужно только для какой-то ну совсем лютой грязи. Зачем такое поддерживать?
Мне в шарпе пару раз приходилось через рефлексию выяснять какой тип SomeType у SomeServiceFor<SomeType>, и на основании этого выполнять разный код. Это можно было сделать по-другому, через строковые константы, например, но там было бы больше кода, немного выше хрупкость итд. Ну а если это класс в какой-нибудь 3рд пати либе, то всё.
Но в джаве как раз не принято так часто использовать параметрический полиморфизм из-за половинчатости реализации дженериков в джаве.
>> у меня такого количества проблем не было.
>А у меня такая жопаболь от уебанского говнища по названием EF Core что сука словами не передать.
Я ничего не могу сказать про EF Core, я им не пользовался. Если надо sql, я обычно беру даппер. Запросы пишешь ручками, конвертируется в объекты всё автоматом.
А так стараюсь монгу использовать, там всё просто (скорее всего точно так же, как и в джаве).
>А как же дефицит?
Ну есть дефицит людей, которые придут на проект и сделают все заебись и за маленький прайс. Таких людей не то что дефицит, их не существует в природе.
А обычных разрабов как говна за баней, в том числе с опытом. Никакого дефицита там нет.
>>402601
>Учу го, но слышал что если не красноглаз, проще 1 раз выучить джаву и до 60 лет сидеть с работой. Это правда?
Ну можно, другое дело, что software engineer - это именно разработчик, инженер, а не тот, кто только лишь 1 язык программирования и стек вокруг него осилил выучить за всю жизнь. У меня знакомый после почти 15 лет веслания на жабе перекатился в Го недавно, причем без особых трудностей. Но он хороший разработчик и инженер.
По поводу работы на жабе - ее становится меньше. Старые проекты закапывают, переписывают на Go, часть проектов просто закрывают из-за убыточности. Но на джаве по-прежнему много всякого старого и нового, это еще далеко не мертвый язык.
>Ну как у вас там путь к классу называется?
У жабы на все собственные названия. Не грин треды, а виртуальные треды. Не неймспейсы, а пакеты. И тд.
>у меня красным подсвечено то, с чем всё нормально
У меня ни разу такого не было. Тут точно проблема в конфигурации проекта, то ли она jvm не смогла определить, то ли еще что.
>А как мне сделать, чтобы он ещё правильные сразу все подгрузил?
https://www.jetbrains.com/help/idea/openrewrite.html
https://docs.openrewrite.org/recipes/java/changepackage
>Затем, что оно посреди экрана на диффе.
Только при создании, хз. Изменения обычно показываются в местах где они изменяются, а вот вся портянка из импортов просто скрытой остается. Да и по идее, можно наверное настроить/найти инструмент, который могет в скрытие импортов.
>Мне в шарпе пару раз приходилось через рефлексию выяснять какой тип
Больше контекста можно? Просто не понимаю, зачем здеся вообще дженерики и почему нельзя написать дерево из интерфейсов и юзать https://openjdk.org/jeps/441
>использовать параметрический полиморфизм из-за половинчатости реализации дженериков в джаве.
Настоящий парметрический полиморфизм не требует овеществления. Вы просто привыкли, что грязь это норма. Это не так. Тот же хаскель вообще все типы стирает. Их в рантайме просто не существует. Много от этого жалоб?
Чёт проперделся с того как этого еблана так задело то, что он у мамки не особенный (разве что в обратную сторону), что он спустя месяц после того спора пошёл себя с голимыми вкатунами сравнивать лишь бы восстановить манямирок.
>>402811
>>403010
Сейчас не 2020 и не 2021. Какой нахуй синтаксис? А самое главное ты даже с идеальными знаниями по теме больше не вкатишься. Пиздуй запускать дум на дженериках (трустори...), тогда может тебя рассмотрят на допущение к битве стенка на стенку с другими вкатунами за стажёрку.
>А у меня такая жопаболь от EF Core
>хочу сделать запрос sql update
>ебля на весь день
Тебе не кажется что проблема вовсе не в EF Core?
Нет, не кажется.
>А самое главное ты даже с идеальными знаниями по теме больше не вкатишься.
С чем тогда вкатиться можно? И почему вакансии есть и не закрываются, раз так много профи на место?
Ты эти вакансии-то видел? Одних тимлидов ищут. Алсо всегда полезно иметь список из 50 замен чтобы выкинуть недостаточно производительного ждуна 75к заменив его метамфетаминовым на деньги мамки порриджем готовым по 20 часов в сутки хуярить за 50к в офисе.
>Ты эти вакансии-то видел? Одних тимлидов ищут.
Не заметил, в выдаче hh в основном одни middle и senior, junior тоже нередкость.
Даже Иннотех кишит свежеразмещенными вакансиями, хотя некие "боты" срут темами про то, что сокращения там и вообще хана.
И почему мне одни вакансии тимлида прилетают? Да и даже если ты каким-то образом вырыл ждуновские вакансии, то отрабатывает вторая часть того поста.
Гетматч, жвмжобс. Одни тимлидовские вакансии, иногда сеньоровские.
> Сам то ты ждун-вкатунец?
Нет, но жвмжобс это вообще канал в тг, а в гетматче я не помню чтобы настраивал фильтр по исключительно тимлидовским вакансиям.
>по ресту саморегистрироваться
Типа к тебе на клиент прилетает запрос с юзернеймом и паролем, ты с этого клиента шлешь на кейклок инфу и типа регистрируешь пользователя? Или что ты имеешь ввиду?
Какая фичу четверки, по твоему, похоронит грыдлю?
> А самое главное ты даже с идеальными знаниями по теме больше не вкатишься
Ой да иди нахуй, завали ебальник свой, сука. Хоть бы кто из вас эти идеальные знания продемонстрировал на собесе. Хоть разочек блять, чтоб я такой - "ебать он шарит, бляяя, вот с этим перцем горы говнокода будут по колено, блять".
Заебало уже сопли подтирать за синьорами по 10+ лет стажа каждый, которые нихуя за пределами своего галерного мейнтенанса не шарят даже по самым верхам матчасти. Как на Хабре пошла эта мода на зашкварность хардскилльных вопросов на собесах, смузихлебство и вечную саморефлексию "как быть на проекте удобной для ебли няшей и не быть гондоном", так кроме соевых крудошлепов с интеллектом необученной нейронки на рынке никого не осталось.
Мимо интервьюер, заебался искать себе вайфу
Ты видишь в людях только плохое. Вот и все тута.
Вдруг вот человек кофе ахуенно заваривает, а ты тут какими-то вопросами душишь..
Бля, если б передо мной стояла задача захайрить себе симпатичную секретаршу со скиллом баристы, интервью бы точно шло не в сторону вопросов по джавовым скиллам, если ты понимаешь о чем я. Но нет, мир несправедлив, и приходится собесить вместо тянок толпы понурых дед-инсайдов.
Ну вот тебе ещё пример:
Приходит тебе жсон, тебе надо его десериализировать, что-то поменять, а потом сохранить в файл, где его кто-то другой подберёт.
Есть у тебя там поле в виде коллекции чисел. Ты его мапишь в LinkedList<int>, что-то делаешь с другими полями, опять сериализируешь и сохраняешь.
И вдруг, кто-то что-то напортачил и прислал коллекцию строк (например, те же числа но в кавычках), но в рантайме уже у тебя нет проверки типов коллекции и твой код успешно строки съест, а ошибка будет поймана гораздо позже по пути следования данных.
Не знаю, как у вас там написана десериализация, может в таком виде и не выйдет, но наверняка мой пример можно подправить.
Так на вашу помойную галеру другие и не идут. Подобное к подобному жи есть, спецы к вам даже резюме не отправляют.

У филдов, вообще говоря, не стираются типы. Так что каких-то особых проблем у сериализатора получить тип нет.
В методах. Ну и тут я слукавил, оно стирает ровно до нижней границы дженерика. Т.е. как бы нахуя приводить все к Object, если известно, что это Number. Также и с филдами, ты уже точно зафиксировал тип, поэтому ты можешь его узнать в рантайме.
Вот если ты никак не фиксируешь тип, т.е. у тебя сигнатура что-то типа
f:: List<T> -> Void
То ты никак не вытащишь инфу отсюда через рефлексию. Пик2
СИСТЕМ.АУТ.ПРИНТЛН
или
БРЕЙКПОЙНТЫ
????
СДЕЛАЙ СВОЙ ВЫБОР!
https://strawpoll.com/XmZRQLlDPgd
Прочитал в хибернейи ин экшон раздел про наследование. Там пишут, что сингл тэйбл это самый лучший способ с точки зрения производительности (нет джоина) и простоты реализации. Но также пишут, что поля со значением null могут нарушить ЦЕЛОСТНОСТЬ данных. Вот это я не пойму, что под этим понимается? Объясните пожалуйста, чем грозит поле со значением null?
Ну смотри, у тебя 2 сущности, одна базовая Person (сотрудник или клиент), от которой наследуется Employee (сотрудник) с дополнительным обязательным полем "должность".
Чтоб хранить в одной таблице и клиентов без должности и сотрудников с обязательной должностью, надо должность сделать позволяющей null.
Значит теоретически могут появиться сотрудники без должности - на уровне БД такой проверки целостности не будет и там можно сохранить невалидные данные.
А зачем тогда вообще высрали это ЖПА? Я уже не первый раз читаю, что ЖПА говно, но ведь его зачем-то придумали. И не просто придумали, а используют, и в каждой вакансии требуют знания ЖПА. Если это такое гавно, то зачем его продолжают использовать?
>>403482
Я понял. Это если у нас модель подразумевает, что одна сущность не может существовать без другой. Как сотрудник не может быть без должности. А если у меня есть у сущности необязательная фича, без которой сущность может существовать? Там же null в поле не страшен? Я походу неправильно понимаю как смоделировать свою ситуацию, может наследование мне и не нужно. Есть сущность без фичи, а есть с фичей. Есть фича, есть поля дополнительные, нет фичи - нет полей. Тут если будет нулл в поле у сущности без фичи это норм?
>нулл в поле у сущности без фичи это норм?
тебе про это и пишут - если нулл допустим, всё нормально, хотя как по мне - концептуально неверный подход использовать нулл как имеющее смысл значение.
Но если нулл ничего не значит в поле, то и хрен с ним. Но лучше всё равно вписать not_defined или missed

Поставь check field != null or not feature и намана.
Я рекурсивные селекты использую.
>Тебе кстати тут два разных человека отвечали.
А то я не понял. Серьезно?
>А в чём непоследовательность?
Ну вы блять определитесь - это знания качать нет смысла потому что работы нет, найма нет? Или работы нет для неучей, а скилловые по прежнему могут сортировать предложения в стопки "работа мечты" / "говно" как в сытые времена и не париться?
Если че, я так то иллюзий не питаю по поводу котируемости своего работодателя среди соискателей. Да - не ФААНГ. Но ебаный в рот, даже середнячков уже не осталось, зато страдающих от безработицы дединсайдов - целый программач, и столько же собесов с дединсайтами в неделю, на которые приходится впустую проебывать время. Вобще же уже вкатуны скилла не показывают никакого - даже сеньки. И нет, в отличие от топов мы даже не суходрочим соискателей по десяти собесам, не страдаем предвзятостью типа эйджизма или сексизма, не задрачиваем через софтскилл-матч и прочий астрал-гороскоп, не ебем дресскодом и не гейткипим по ебалу, у нас нет СБ который проверит твою родословную до десятого колена, даже литкод на бумажке не практикуем (как будто бы смысла нет) - все становится понятно минут за 30 с первого раза. Ну подучи ты хотя бы элементарно типовые ответы на типовые вопросы по технике, покажи что ты хоть чуточку покопался в предметной области и подготовился, че - многого прошу? Я бы даже глаза на отсутствие опыта закрыл, на месте подмогнем, один хуй проект нихуя не типовый и стаж крудошлепства тут мало роляет. Нахуя хайрить типа, наивно верящего в магию под капотом?
Ок, предположим что даже середнячков разобрали топы. Допускаю и такое. Херово, хули делать. Но тогда нехуй анону ебало свое раскрывать перед вкатунами с тезисом "даже со знаниями не вкатишься". Вкатишься, просто знания покажи блять.
Приведи пример типовых вопросов, на которые эти твои кандидаты не могут ответить. Алсо озвучь вилку зп, ведь на 30к в провинции и 300к в дс придут совершенно разные соискатели.
>пример типовых вопросов
я этому задал уже такой вопрос - у него сразу пердак взорвался - мол "вот еще перед смердами выплясывать"
крч зря ты ему нормальный вопрос по теме задал, он тут чисто самолюбие поддрачивает, когда кабанкабаныч его еблей в жопу попускает
Да чел - дело не в том что соискатели не идут. Они идут, и весьма бодро. Идут разные грейды с разным стажем в резюме.
>Приведи пример типовых вопросов, на которые эти твои кандидаты не могут ответить
Да элементарно что такое тред пул не отвечают. Буквально ни слова. Вот скажи - как. Как можно проработать десять лет в джаве пусть даже на тех же крудах, и тупо ни слова не сказать по этому поводу. Как. Это что - рокет сайнс какой по сегодняшним меркам или что? Насколько типам сегодня похуй с чем они работают? у меня в голове это не укладывается.
>Алсо озвучь вилку зп, ведь на 30к в провинции и 300к в дс придут совершенно разные соискатели.
Хуй ее знает. Я техлид, я всего лишь скиллы чекаю. Я не ведаю зряплатными вопросами. Вроде средненькая по палате - не 300 наносек но и не полтора мрота. Регион. Лично я зарплатой не обижен. Учитывая что текучки вокруг себя не наблюдаю, предположу что остальные более менее тоже удовлетворены.
>>404115
> А то я не понял. Серьезно?
Так а в чём тогда твой поинт? Сосач это хайвмайнд что-ли, чтобы быть консистентен сам с собой?
>трыд пул ни знают
Попахивает пиздежом. Там народ дум блядь на тупоскриптовой тупизне пишет чтобы ждуном вкотится, а вам блядь тред пул один подай и с руками и ногами заберёте. Либо пиздёж, либо вы там 25к предлагаете что даже у вкатоунтеров просыпается чувство собственного достоинства "ниже 100к не продешевлю!" ахаххаха.
>что такое тред пул
ну не писали они многопоточку, это что прямо маст-кноу у вас? Доучить такой мелочи нельзя?
Я постоянно удивляюсь с какими унтерменшами я сижу на одной борде, просто не могу это принять. Это не мелочь, это основа, если ты не знаешь что такое тред пул то ты вообще ничего о многопотоке не знаешь. Особенно я хуею с того как этот дегенерат вместо того чтобы пойти и вызубрить (раз по-нормальному не получилось) многопоток сидит в тредах и занюхивает пердежи в надежде получить какую-то секретную информацию о вкате.
>постоянно удивляюсь с какими унтерменшами я сижу на одной борде, просто не могу это принять
Вздрочнул на собственное величие? Помой руки и спатеньки.
Поздно уже, хорошим мальчикам завтра рано вставать.
>Регион
Вот и ответ на твой вопрос. Все, кто знает про тредпул, находятся внутри мкада. В регионах если не судим и не был на сво - это идеальный кандидат, остальное доучит, а ты ему про какие-то тредпулы, будто у вас Калифорния за окном.
Судя по твоим высерам, это ты скотина деревенская, с программированием ничего общего не имеющая.
>Сосач это хайвмайнд что-ли
Не хайвманд, но все равно ж на одной борде капчуем.
>Попахивает пиздежом.
Понимаю, что это выглядит со стороны так. Но нахуя мне пиздеть, чтобы что?
>Там народ дум блядь на тупоскриптовой тупизне пишет чтобы ждуном вкотится, а вам блядь тред пул один подай и с руками и ногами заберёте
Ну у меня была мысль что возможно все они знают, просто на собесе менжуются, стесняются, замыкаются. Ну а я то хули сделаю? Как только я ни пытался со своей стороны сделать для них собес комфортным. И на вы с ними, и на ты, и смехуечки шутить пытался, и формально с ними. Разговаривал неформально по их опыту. Чаем блять угощал с пряниками. Все без толку.
>либо вы там 25к предлагаете
У нас зарплатные вопроосы утрясаются уже после техсобеса, поэтому нет - дело просто не может быть в зарплате.
>>404117
Ну все же писали ресты на спринге, ну емае. Неужели лишь избранные знают что под капотом томкат, сервлеты и тред пул обслуживающий запросы. Как вы тогда выживаете когда с рестами на проде что то не так, например когда они тупо перестают отвечать (риторический вопрос если че, был у меня реальный случай на прошлой работе, где я воочию наблюдал, как...)?
Ну ладно тред пул. Элементарно про хеш код зачастую такие фантазии несут...
>>404129
За МКАДом жизни нет? Обслуживаем метрополию, значит, ты к этому ведешь? Пынимаю. Грустно, хули. Раньше было лучше. Но тогда возвращаемся к этой части:
>нехуй анону ебало свое раскрывать перед вкатунами с тезисом "даже со знаниями не вкатишься". Вкатишься, просто знания покажи блять.
ПЫСЫ - я не этот (>>404119 >>404143)
>Сосач это хайвмайнд что-ли
Не хайвманд, но все равно ж на одной борде капчуем.
>Попахивает пиздежом.
Понимаю, что это выглядит со стороны так. Но нахуя мне пиздеть, чтобы что?
>Там народ дум блядь на тупоскриптовой тупизне пишет чтобы ждуном вкотится, а вам блядь тред пул один подай и с руками и ногами заберёте
Ну у меня была мысль что возможно все они знают, просто на собесе менжуются, стесняются, замыкаются. Ну а я то хули сделаю? Как только я ни пытался со своей стороны сделать для них собес комфортным. И на вы с ними, и на ты, и смехуечки шутить пытался, и формально с ними. Разговаривал неформально по их опыту. Чаем блять угощал с пряниками. Все без толку.
>либо вы там 25к предлагаете
У нас зарплатные вопроосы утрясаются уже после техсобеса, поэтому нет - дело просто не может быть в зарплате.
>>404117
Ну все же писали ресты на спринге, ну емае. Неужели лишь избранные знают что под капотом томкат, сервлеты и тред пул обслуживающий запросы. Как вы тогда выживаете когда с рестами на проде что то не так, например когда они тупо перестают отвечать (риторический вопрос если че, был у меня реальный случай на прошлой работе, где я воочию наблюдал, как...)?
Ну ладно тред пул. Элементарно про хеш код зачастую такие фантазии несут...
>>404129
За МКАДом жизни нет? Обслуживаем метрополию, значит, ты к этому ведешь? Пынимаю. Грустно, хули. Раньше было лучше. Но тогда возвращаемся к этой части:
>нехуй анону ебало свое раскрывать перед вкатунами с тезисом "даже со знаниями не вкатишься". Вкатишься, просто знания покажи блять.
ПЫСЫ - я не этот (>>404119 >>404143)
>Чаем блять угощал с пряниками
Блиин, а как именно к тебе на собес попасть? Чисто ради кормления, uwu. И про тредпул с хэшкодом я знаю, дада
>Чисто ради кормления, uwu
Анон, ты меня пугаешь. Нахрена те наша офисная пыль в пакетиках?
Ты мне напомнил одну индюшатину - Kenshi. Банды бандитов оттуда походу - один в один как современная айтишка. Ты - из голодных бандитов.
Не пыль, а забота. Просто это мило, что ну так переживаешь о собеседующихся. Вот чет и захотелось тоже подобное..
> >А переписывают на Go,
Блин, щас в джаве даже виртуальные потоки добавили а ля корутины, которые включаются в спрингбуте одной строчкой конфига, даже с реактором дрочиться не надо уже.
нет ни одной причины старый проект переписывать с джавы, выигрыш на го будет минимальный