- 78
- 364 530
Куда войти?
Russia
Приєднався 4 лис 2021
Автор: Илья Ильиных, Java разработчик. Программирую деньги с 2018 года.
Github: github.com/IlyasYOY
VK: kydavoiti
Github: github.com/IlyasYOY
VK: kydavoiti
ЛУЧШИЙ способ учить ЛЮБОЙ язык программирования // Хорошие практики
- [Как использовать TDD, жить с vim в Java и Go и почему тебе нужна сплит-клавиатура - UA-cam](ua-cam.com/video/8NdaPHWSRk4/v-deo.html)
- [Go Proverbs](go-proverbs.github.io/).
- [Linters | golangci-lint](golangci-lint.run/usage/linters/).
- [Features - Ktlint](pinterest.github.io/ktlint/latest/)
- [mockery](vektra.github.io/mockery/latest/)
- [Как использовать TDD, жить с vim в Java и Go и почему тебе нужна сплит-клавиатура - UA-cam](ua-cam.com/video/8NdaPHWSRk4/v-deo.html)
- [stretchr/testify: A toolkit with common assertions and mocks that plays nicely with the standard library](github.com/stretchr/testify)
- [golangci/govet](github.com/golangci/govet)
- [golang/lint: [mirror] This is a linter for Go source code. (deprecated)](github.com/golang/lint)
- [jingyugao/rowserrcheck: Analyzer: checks whether err of sql.Rows is checked.](github.com/jingyugao/rowserrcheck)
- [tools/gopls/doc/analyzers.md at master · golang/tools](github.com/golang/tools/blob/master/gopls/doc/analyzers.md)
- [PMD](pmd.github.io/)
- [caramelomartins/awesome-linters: A community-driven list of awesome linters.](github.com/caramelomartins/awesome-linters)
- [Hello from detekt | detekt](detekt.dev/)
- [Writing Useful go/analysis Linter](disaev.me/p/writing-useful-go-analysis-linter/)
- [tools/gopls/doc/analyzers.md at master · golang/tools](github.com/golang/tools/blob/master/gopls/doc/analyzers.md),
- [copylock package - golang.org/x/tools/go/analysis/passes/copylock - Go Packages](pkg.go.dev/golang.org/x/tools/go/analysis/passes/copylock).
- [Welcome | detekt](detekt.dev/docs/intro).
- [Standard rules - Ktlint](pinterest.github.io/ktlint/0.50.0/rules/standard/#trailing-comma-on-call-site)
Подписывайтесь на канал и на ссылке ниже, там обсуждают правду:
- Telegram Channel: t.me/kydavoiti
- Telegram Chat: t.me/kydavoitichat
- VK: kydavoiti
- GitHub: github.com/IlyasYOY
Главы:
00:00 Начало
00:20 О чем видео?
01:27 Новый год!
02:59 Чтение документации
04:36 Подробнее про testify
05:34 Interfaces
06:37 Function Types
07:09 Linters
08:38 Linters - это источник знаний
09:17 Как я изучал линтеры в Go?
10:40 Изучить проверки LSP
11:13 Не Go едины
11:49 Что я узнал из ktlint?
13:21 Выводы
- [Go Proverbs](go-proverbs.github.io/).
- [Linters | golangci-lint](golangci-lint.run/usage/linters/).
- [Features - Ktlint](pinterest.github.io/ktlint/latest/)
- [mockery](vektra.github.io/mockery/latest/)
- [Как использовать TDD, жить с vim в Java и Go и почему тебе нужна сплит-клавиатура - UA-cam](ua-cam.com/video/8NdaPHWSRk4/v-deo.html)
- [stretchr/testify: A toolkit with common assertions and mocks that plays nicely with the standard library](github.com/stretchr/testify)
- [golangci/govet](github.com/golangci/govet)
- [golang/lint: [mirror] This is a linter for Go source code. (deprecated)](github.com/golang/lint)
- [jingyugao/rowserrcheck: Analyzer: checks whether err of sql.Rows is checked.](github.com/jingyugao/rowserrcheck)
- [tools/gopls/doc/analyzers.md at master · golang/tools](github.com/golang/tools/blob/master/gopls/doc/analyzers.md)
- [PMD](pmd.github.io/)
- [caramelomartins/awesome-linters: A community-driven list of awesome linters.](github.com/caramelomartins/awesome-linters)
- [Hello from detekt | detekt](detekt.dev/)
- [Writing Useful go/analysis Linter](disaev.me/p/writing-useful-go-analysis-linter/)
- [tools/gopls/doc/analyzers.md at master · golang/tools](github.com/golang/tools/blob/master/gopls/doc/analyzers.md),
- [copylock package - golang.org/x/tools/go/analysis/passes/copylock - Go Packages](pkg.go.dev/golang.org/x/tools/go/analysis/passes/copylock).
- [Welcome | detekt](detekt.dev/docs/intro).
- [Standard rules - Ktlint](pinterest.github.io/ktlint/0.50.0/rules/standard/#trailing-comma-on-call-site)
Подписывайтесь на канал и на ссылке ниже, там обсуждают правду:
- Telegram Channel: t.me/kydavoiti
- Telegram Chat: t.me/kydavoitichat
- VK: kydavoiti
- GitHub: github.com/IlyasYOY
Главы:
00:00 Начало
00:20 О чем видео?
01:27 Новый год!
02:59 Чтение документации
04:36 Подробнее про testify
05:34 Interfaces
06:37 Function Types
07:09 Linters
08:38 Linters - это источник знаний
09:17 Как я изучал линтеры в Go?
10:40 Изучить проверки LSP
11:13 Не Go едины
11:49 Что я узнал из ktlint?
13:21 Выводы
Переглядів: 3 286
Відео
Сделай репозиторий понятнее! 💻 // Хорошие практики
Переглядів 2,9 тис.Місяць тому
Сегодня обсудим, как можно сделать свой репозиторий не таким уж страшным! Ссылки: - [junit-pioneer/CONTRIBUTING.adoc at main · junit-pioneer/junit-pioneer](github.com/junit-pioneer/junit-pioneer/blob/main/CONTRIBUTING.adoc#writing-code) - [neovim/CONTRIBUTING.md at master · neovim/neovim](github.com/neovim/neovim/blob/master/CONTRIBUTING.md) - [IlyasYOY/detailederror](github.com/IlyasYOY/detail...
Go - убийца Java?
Переглядів 4,6 тис.2 місяці тому
Подписывайтесь на канал и на ссылке ниже, там обсуждают правду: - Telegram Channel: t.me/kydavoiti - Telegram Chat: t.me/kydavoitichat - VK: kydavoiti - GitHub: github.com/IlyasYOY Ссылки - [Как пользоваться Optional! Обманываем Jacoco // Беги! Баги! - UA-cam](ua-cam.com/video/GrZ-SM1efWM/v-deo.html) - idea format - [Format files from the command line | IntelliJ IDEA Documentation](www.j...
Настройка компьютера на Python за 5 минут
Переглядів 1,9 тис.3 місяці тому
- Примеры использования ansible: - [github.com/mrlesmithjr/developers-workstation-setup/](github.com/mrlesmithjr/developers-workstation-setup/) - [github.com/logandonley/dotfiles](github.com/logandonley/dotfiles) - [github.com/TechDufus/dotfiles/](github.com/TechDufus/dotfiles/) - [mfussenegger/dotfiles: Various config files from my home directory](github.com/mfussenegger/dotfiles) - [Видео про...
Комментарии против багов! 🪲 // Хорошие практики
Переглядів 7444 місяці тому
Привет! Сегодня научимся не забывать поправить что-то, что хотели, но забыли. - [Ruby rule: Track uses of "TODO" tags - Rules - SonarQube](cloud-ci.sgs.com/sonar/coding_rules?open=ruby:S1135&rule_key=ruby:S1135) - [java - How to handle TODO comments when sonar error is encountered - Stack Overflow](stackoverflow.com/questions/34608985/how-to-handle-todo-comments-when-sonar-error-is-encountered)...
gen.nvim для работы с ollama, мощное расширение для слабой технологии
Переглядів 2,9 тис.6 місяців тому
Привет! Сегодня поговорим про мощный способ работы - vim-расширение, со слабой технологией. А вы пользуетесь LLM в каждодневной работе? Для чего? Действительно ли эти "модели" вам помогают? Ссылки: - Модели, доступные ollama: [library](ollama.com/library) - Документация ollama: [ollama/docs/README.md at main · ollama/ollama](github.com/ollama/ollama/blob/main/docs/README.md) - Прошлое видео: [U...
Смотри свой код сам! Code Review и Self Review // Хорошие практики
Переглядів 1,5 тис.7 місяців тому
Подписывайтесь на канал и на ссылке ниже, там обсуждают правду: - Telegram Channel: t.me/kydavoiti - Telegram Chat: t.me/kydavoitichat - VK: kydavoiti - GitHub: github.com/IlyasYOY Подумал запустить серию видео, которые расскажут про важные практики. Я считаю, что именно они отличают мощного разраба, от среднего. Если у вас есть такие лакмусовые-практики - пишите в комментах, буду рад об...
Trackball - мышь вверх ногами. Манипулятор программиста.
Переглядів 3,7 тис.8 місяців тому
Сегодня поговорим про альтернативы мыши. Старый ролик про клавиатуры: ua-cam.com/video/FUCTwLu0lhM/v-deo.htmlsi=AVt3URAchiONWnkV Подписывайтесь на канал и на ссылке ниже, там обсуждают правду: - Telegram Channel: t.me/kydavoiti - Telegram Chat: t.me/kydavoitichat - VK: kydavoiti - GitHub: github.com/IlyasYOY Главы 00:00 Начало 00:23 Я был там же 00:48 Я люблю трэкпады 01:09 Появились воп...
Хватит писать тесты! Ими надо жить ✍️
Переглядів 1,7 тис.8 місяців тому
Надо писать тесты? Сегодня поговорим об этом. Я собрал мнения о том, почему этого делать не стоит и решил поделиться мыслями на тему. Что вы об этом думаете? Главы 00:00 О чем видео? 00:38 Код же компилируется! 02:44 Немного про статический анализ 03:46 Код простой! 07:00 Тест не будет меняться 08:46 Тесты все равно удалят потом! 11:45 Тесты будут только мешать! 14:52 Покрытия достаточно! 17:27...
Учиться - читать и делать! 📚🧑💻
Переглядів 4,4 тис.9 місяців тому
Привет! Как я учусь? Как учитесь вы? Погнали обсуждать это в комментах на UA-cam. Это ключевой процесс в любом деле. Ученье свет - неученье тьма. Главы 00:00 Начало 00:34 Формирование идеи 01:51 Далее - развилка 02:40 Теория 03:42 Точка отступления 04:37 Поиск материала 05:42 Сообщества 07:08 Reddit 07:41 awesome-lists 08:17 Умная лента 08:47 Книги - это база 10:20 Практика 10:42 Задачки 11:17 ...
Новости, RSS и как перестать бесцельно ковырять интернет?
Переглядів 6 тис.10 місяців тому
Описание Давно я ничего не выкладывал! Перерыв я решил прервать рассказом про *RSS* и почему его надо использовать, чтобы не тратить время. Такое надо отметить лайком и комментиком. Пишите какой читалкой пользуйтесь вы. Подписывайтесь на канал и на ссылке ниже, там обсуждают правду: - Telegram Channel: t.me/kydavoiti - Telegram Chat: t.me/kydavoitichat - VK: kydavoiti - GitHub: github.co...
Как не делать багов 🪲 Предусловия и Guard Expressions
Переглядів 2,4 тис.11 місяців тому
Сегодня про ООП и небольшой подход к его организации. Как предусловия, постусловия и инварианты связаны с guard expressions? И конечно, опять немного шашек! Главы 00:00 Начало 00:35 Что такое куча? Шашек 02:33 У каждого свои шашки 05:16 Давай код!! 07:58 Защищаем инвариант 09:53 Абстракция игры 13:16 Промежуточный итог 14:24 Guard Expression 17:32 Кент Бек про Multiple Returns 18:32 Выводы Подп...
Как печатать быстрее? Помоги мизинчику! home row mods
Переглядів 5 тис.11 місяців тому
Привет! Пишу это на MacBook и уже устал зажимать шифт МиЗиНЧиКоМ 😭 Сегодня расскажу, как сделать работу с модификаторами проще! *home row mods*! - [A guide to home row mods](precondition.github.io/home-row-mods) - [manna-harbour/miryoku](github.com/manna-harbour/miryoku) - [kmonad/kmonad](github.com/kmonad/kmonad) - [VIA - Большой русскоязычный](wiki.geekboards.ru/guides/via-russian-guide/) Под...
ААА! Тесты! Почему они такие простые? Arrange-Act-Assert или Given-When-Then!
Переглядів 918Рік тому
Это правило написания тестов должен знать каждый программист. Ссылки на Кента Бека, размышления по теме, все как всегда. Приятного просмотра. Не забывайте про лайки и комментарии. Буду рад, если вы в комментариях на UA-cam поделитесь похожими правилами. Главы: 00:00 Вступление 00:24 О чем поговорим? 01:11 Мы любим все структурировать 02:31 Работа с текстом 05:00 Теперь про ИТ 05:21 Делим методы...
📚Читай книги, но не забывай применять знания!
Переглядів 1,8 тис.Рік тому
Читаем книги? А не забыли зачем? Я тут решил напомнить: зачем мы читаем. Думаю, что лишним не будет. Всех с наступающими праздниками. Желаю в новом году успехов и свершений. Не давайте себе засохнуть, ага, как говорила одна панда. Главы 00:00 Начало 00:40 Intro 02:14 Почему нам интересно читать? 03:50 Почему книги не всегда помогают? 08:27 Надо инициировать практику! 11:40 Выводы Подписывайтесь...
Тестирование старого legacy-кода. Как и когда это делать?
Переглядів 898Рік тому
Тестирование старого legacy-кода. Как и когда это делать?
"DBeaver" в Vim! Запросы к БД из редактора.
Переглядів 2,4 тис.Рік тому
"DBeaver" в Vim! Запросы к БД из редактора.
Подсветим SQL, где бы он ни был! 🌳👨💻
Переглядів 1,8 тис.Рік тому
Подсветим SQL, где бы он ни был! 🌳👨💻
Какую клавиатуру выбрать? 👨💻 Механическая, раздельная или встроенная? 🤔
Переглядів 24 тис.Рік тому
Какую клавиатуру выбрать? 👨💻 Механическая, раздельная или встроенная? 🤔
Ответственность в IT. Скидываем проблемы на команду 😈
Переглядів 710Рік тому
Ответственность в IT. Скидываем проблемы на команду 😈
IdeaVim или как бросить IDE от JetBrains.
Переглядів 11 тис.Рік тому
IdeaVim или как бросить IDE от JetBrains.
Проверь свои тесты! Mutation Testing в Java, pitest.
Переглядів 622Рік тому
Проверь свои тесты! Mutation Testing в Java, pitest.
Улучшаем тесты, mutation testing и TDD
Переглядів 1,1 тис.Рік тому
Улучшаем тесты, mutation testing и TDD
Приложения для Mac 👨💻 (и не только) Мое любимое, делюсь секретами.
Переглядів 4,8 тис.Рік тому
Приложения для Mac 👨💻 (и не только) Мое любимое, делюсь секретами.
10 пальцев - одна клавиатура. Про слепой набор для разработчика 👨💻
Переглядів 10 тис.Рік тому
10 пальцев - одна клавиатура. Про слепой набор для разработчика 👨💻
Pomodoro - управляй временем! Как это делаю я? 🤔
Переглядів 4,3 тис.Рік тому
Pomodoro - управляй временем! Как это делаю я? 🤔
какую камеру используешь для видоса?
Вот чем мозг програмиста отличаться от мозга обычного человека... Бывает, что собеседник приводит пример, чтобы доказать своё ошибочное мнение, а я, понимая это, писал чуть ли ни целую статью, в которой пытался по полочкам разложить, почему какая-либо конкретная аналогия не отображает действительности. А этот чел просто базу выдал: "аналогия - не аргумент". Не зря говорят: "всё гинеальное - просто". Навык лаконично выстраивать логические цепи, всё таки, решает
Привет! Рад, что ролик не оставил равнодушным) Я думаю, что тут не только программисты могут (но не обязательно) думаю стройно. Я думаю, что юристы должны быть достаточно последовательным, криминалисты и другие профессии, где надо строить выводы. Я использую аналогию, чтобы разнообразить речь или для простоты запоминания. То, что аналогия не аргумент, не помню откуда я такое радикальное выражение взял. Кажется, что-то такое было в одной из книг Поварнина, но уже плохо помню. В целом, многие приемы украшения повествования идут во вред содержанию. В любом случае, спасибо за комментарий, есть о чем подумать.
@@kydavoiti да не за что... Просто мысли в слух
Отдельный респект за бюст Ленина
Есть потребность перехода на go. Хорош ли он для сложной бизнес логики как java?
Смотря, что вы считаете сложной логикой. Мне кажется, что часто верно утверждение: меньше - больше. Для меня этот язык кажется достаточно выразительным, чтобы писать нормально. И достаточно невыразительным, чтобы не писать заумно. Надеюсь, ответил на вопрос.
Что значит эффективнее) стоило бы раскрыть этот момент. Если чисто вот натуральным кодерам/девелоперам, которые только и пишут код, то ну окей. И то с оговорками. Но вот для софтварь инженегров, кем я и тебя считаю, это так не работает все же, рост т.н. эффективности/скорости работы близок к нулю, потому что написание кода это далеко не основная задача такого спеца, повезет, если хотя бы половина времени, но на деле и то меньше. И быстрое написание кода для таких людей не приносит никакого профита в остальных задачах и аспектах работы. Вим не позволяет быстрее думать, или быстрее проводить ресерчи, или быстрее проводить митапы, быстрее рисовать схемы. Ты можешь в рамках решения задачи или бага за неделю написать или исправить всего лишь одну/пару строк кода, а остальное время уходило на ресерч и всякие тесты с экспериментами. P.S. я не против Вима, но меня прям дёргает от того, что многие вим-популизаторы говорят о том, он позволяет что-то там делать быстрее или эффективнее. Нет, не позволяет.
Привет! Да, есть у разработчика и другие занятия, кроме того, чтобы писать код. И мне кажется, что вы сами себе противоречие. Говорите, что мы не пишем код все время и как пример даёте тесты и эксперименты. Умение быстро прототипировать в Vim и быстро писать тесты - это и есть набор кода. Я скажу честно, мне и во времена IDE от JetBrains хотелось помочь человеку, который шарит экран с навигацией по коду. Подсказать шорткаты и как настроить IDE. Сейчас мне просто их жаль. Более того, никто не мешает писать в Vim сообщения и документы проекта. Благо Vim тесно интегрирован с shell и pandoc может любой текст буфера перегнать в какой угодно формат. Думать, конечно можно и без Vim. А с Vim можно быстро делать и изменять заметки: использовать text objects, инструменты командной строки и так далее. И в конце концов, Vim точно поможет оптимизировать ключевую часть работы программиста, которая позволит раскрыться остальным. Мало пишешь код - будешь ещё меньше. А большая часть советов по оптимизации умственной работы - перегон из пустого в порожнее. И это я ещё не говорю о других его плюсах, а только о удобстве работы с текстом.
какие ещё заметки? что такое заметки? ап чом речь?
Класс
Импонирует твой подход к изучению) Я в свое время при помощи Rubocop быстро разобрался, как писать идиоматичный код на Ruby, имея за плечами только Java-опыт и не имея рядом опытных рубистов-коллег, кто мог бы что-то подсказать. Всегда ставлю линтеры и плагины для них, и с их помощью быстро разбираюсь с типичными анти-паттернами и best practices. Ну а если хочется глубоко разобраться, то можно пойти и почитать описания всех правил. Что я и сделал с ktlint и detekt, т.к. Kotlin мой основной язык сейчас. Я уже давно пишу на Kotlin и только благодаря изучению одного правила ktlint я узнал, что в Kotlin в отличие от Java не обязательно воссоздавать всю структуру папок, соответствующую package name. Например, если все классы лежат в `com.example.mycompany.myapp`, то эти мусорные директории com/example/mycompany/myapp можно скипнуть и начать создавать файлы прямо в src/main/kotlin/*.kt, при этом package по прежнему будет `com.example.mycompany.myapp`. Круто? Круто и очень прагматично. Но если бы не ktlint, я бы еще нескоро об этом узнал. Ведь даже генератор start.ktor.io создает эти мусорные директории 🤷🏻♂
Очень обидно то что все более "Правильные" вещи стоят очень дорого. Я бы хотел купить себе такую клавиатуру но ценник очень кусается
По поводу раздельных клавиатур нужно было уточнить момент со "слишком много рядов, не удобно тянутся за верхними клавишами" Есть люди с удленёнными пальцами, обычно у нас на 1 фалангу длиннее и как раз нам подойдут удленённые
Согласен, если руки длинные, то это не проблема.
быстро напечатанный код это обычно говнокод 😂
очень крутой навык который поможет вам сидеть правильно не сутулив плечи это набор слепой печатью одной рукой. если вы умеете печатать в слепую двумя руками, не составит труда научиться печатать одной рукой. Боже, это прекрасно! у вас всегда раскрыты плечи, благодаря тому что вы всегда держите в правой руке мышь, а под левой всегда находится клавиатура, продуктивность повышается в разы. на мышке кнопку DPI забиндил backspace и огонь! вообще нет разницы на каком языке и где расположены символы. даже горячие клавиши в целом спокойно набираются. ведь alt, shift. ctrl, есть с обеих сторон. по поводу сплит клавиатур скажу что когда то грезил о них. в частности Charybdis. но думаю на них не совсем будет удобно работать одной рукой и передумал. и остановил свой выбор на Rapoo-9000m. мембранка с закосом под мак. пока норм. в будущем хочу перерйти на Lofree или NuPhy. кстати проблема в переходе на сплит клавы и прочие экспериментах есть нюансы с постоянным переучиванием, макросы шмакросы, мелкие косяки по самой клаве по эргономике. "тезис" эрго сплиты кому то удобны кому то нет. а обычные клавы одинаково для всех вот и середина. тем более они есть везде. ладно я купил себе домой но и не особо охота покупать еще клаву для офиса. Суммирую. печатание одной рукой это - имба!
Хм, интересный способ! 🤔
Высшее образование растомана :DD В голос, крутой видос, очень много вопрос раскрыл к языку!
Спасибо! Приятно слышать, что видос полезный 👍
Блин, как пасти котов)) Мои ощущения просто в точку!)
День 200 смотрю какие классные другие языки и продолжаю писать на С
Ровно то же самое может написать программист на php. Постоянно появляются какие-то новые "убийцы", которых форсят блогеры, типа данного автора :)
Интересно 👍
Круто! Не самый мой популярный ролик, я рад что вы его нашли и вам понравилось
почему в monketype тренировки без символов?
Привет! У меня уже есть мышечная память, меня отвлекает клавиатура на экране. Если вы об этом
@@kydavoiti наверное не об этом. Сам текст без знаков препинания.
Просто смешно смотреть, чувак призывает уйти с idea, сравнивая навигацию мышью с vim-hotkey'ями. Я тебе сейчас назову причину бросить vim и вернуться обратно на idea - в настройках можно все комбинации клавиш настроить под себя. И т.к. это нужно сделать всего один раз - то можно и время потратить, на то чтобы найти нужные тебе функции и назначить на них удобные комбинации (это уж точно быстрее чем научиться с нуля работать на vim). Я пользуюсь idea последние 5 лет и все нужные комбинации клавиш давно перенастроил. Мои кобинации я начал использовать лет 10 назад и таскаю их по всем редакторам, поэтому они находятся на подкорке мозга. У меня тоже одинаковые комбинации в разных редакторах - idea, vscode, sublime. В чем фундаментальное отличие твоих vim-комбинаций, от тех что можно настроить в idea, я из видео так и не понял. При этом idea (которая еще и денег стоит) обычно используют не только и не столько из-за навигации по коду (для этого подходит тот же vim), сколько из-за крутых плагинов (у меня это CI/CD, JIRA, База, playground'ы для кода/тестов и тд - все это интегрировано в редактор и реально позволяет экономить время в работе). Поэтому vim навигация это уж точно не причина уходить с idea.
Спасибо за очень интересное и полезное интервью с Алексеем! С Наступающим! Развития и продвижения каналу в Новом году!)
Может надо было назвать видео ЛУЧШИЙ способ учить язык go?
Может
За гофера - респект. В го до 18 версии все было хорошо а потом всунули женерики, за ними итераторы, скоро и фреймворки появяться...
По поводу фреймворков - большой вопрос. Фреймворк заставляет ломать решение задачи под фреймворк. Библиотека дает функциональность без жестких обязательств по ее использованию. Фреймворки упрощают вхождение, но усложняют рост.
Кодогенерация дает более чистый и простой статический рантайм, тогда как вся жабская динамика тащится в рантайм с рефлекшеном (где, интересно, лежит инфа для рефлекшена?) и там жрет ресурсы. Думай о кодогенерации как о специфичном DSL и все становится проще. Это типа протобафа, но на го.
ну ок +1 старый подпысчик) Ты клёвый братанчик) Делай то что делаешь и в будущем году - это очень хорошо.
До тебя у меня был в авторитетах - Sorax на ютубе) Ну он ушел в практики осознанности и личной продуктивности. А свято место пусто не бывает)
возможно он даже сделал из себя флешку и поэтому сейчас chatgpt o3 создали и опубликовали)
ок
Подскажии пожалуйста, что за лампа над монитором у тебя? Benq?
Стандартная, много у кого ее видел Yeelight. Я ее сначала в подарок покупал, так в той версии она немного тупит, с моей проблем нет. Видимо у них раз на раз не приходится, либо нам "повезло"
Спасибочки! С наступающим, взаимно!!!!!!!!!!!!!!
не уж-то Смена 8м на заднем фоне? )))
Смена Символ, да У меня была 8М, но мне больше нравится курковый затвор
Мужик ты реально крутой, продолжай делать видосы!
Привет! Нашел тебя от Диджитализируй! Подписка.
11:19 Илья, привет, тут ты не прав. Idea поддерживает мультиинстансы: можно открыть несколько проектов одновременно. Кроме этого, Idea поддерживает открытие множества инстансов одного и того же проекта, если один и тот же проект открыть из папок разного уровня вложенности.
Привет. Я прав, то о чем вы говорите, это не разные процессы. Это один инстанс IDEA, то что там несколько окошек - это только так выглядит. Если вы запустите idea как форматтер, то увидите ошибку, про которую я говорю. 3 них есть issue про это.
Ссылку на задачу вы можете найти в моем ПР в spotless, ссылка есть в описании
Какой микро используешь?) Звук кайф!)
Привет, в разных видео разный Тут использую DJI Mic 2 + Zoom петличка в него Дорожка 32-бит, не из камеры. Я с ней чуть шаманил, но только по уровню, EQ не использую, обычно.
10:55 - как там сидят, куда девают ноги?
Не совсем понял - почему нельзя использовать просто тэги, зачем создавать файл-прокладку и ссылаться на него? И почему нельзя проанализировать статистику просто по тэгам, к чему этот промежуточный файл снова?
Потому что сами тэги не могут ссылаться на что-то и а них не может быть текста
Коллеги кайфанут, когда им придётся читать исходники, чтобы понять, *что* вообще делает твой код
Конечно, разработчиком быть и код не читать - так победим
@@kydavoiti Речь не о том, что люди не могут читать код. Но о том, что документация нужна как раз для того, чтобы другому разработчику не нужно было читать твой код, если он его использует, а не дорабатывает. Может, у нас немного разные ситуации и я не знаю, как у бэкендеров, но у девопсов обычно так: кто-то пишет какой-нибудь Ansible плейбук и хорошо его документирует и остальным инженерам это позволяет эффективно его использовать (или использовать, например, роли, написанные для него) без необходимости вчитываться в код. Потому что бизнесу нужно быстро решать задачи, а не чтобы инженеры вчитывались в код друг друга и пытались в чём-то разобраться. Представь, что ты используешь какую-то open source библиотеку, но вместо документации там будет "разработчиком быть и код не читать - так победим" и ссылка на исходный код. И ты пойдёшь вчитываться в тысячи строк кода, чтобы понять, что вообще делает эта либа и как ей пользоваться. Нет, ты ожидаешь, что у хорошего проекта будет обширная документация и описаны все методы, где разработчик говорит тебе "вот эта функция нужна для того-то, принимает она то-то и использовать её так-то". В этом культура написания документации. Если ты когда-то работал в бигтехе или в более-менее приличной компании, а не в галере, ты понимаешь, что от этой культуры, ровно как и от agile методологий, зависит эффективность команды. Для всех типовых действий должны быть инструкции в конфлюенсе, а во всех readme должно быть чётко описано, зачем и как использовать тот или иной инструмент, библиотеку, плейбук и проч.
Согласен, что для разных целей нужна разная документация Если у вас есть Ansible роль, то качественнее ее задокументировать, чем писать тесты (никогда не видел, чтобы они были понятными) Я писал библиотеки. Большинство сценариев использования библиотеки покрывается тестами, доку на это можно её писать. Доку имеет смысл писать на gotchas, если у вас фоеймворк и надо идеологию рассказать (ответить на вопрос почему). Если сложный алгоритм, то можно его описать докой, но лучше уже тогда просто на paper сослаться. В целом, я вас понял и я с вами согласен. Надо просто каждый раз задавать себе вопрос - зачем я пишу доку, а уже от этого решать что в нее добавить
@@kydavoiti Хорошо, я вас тоже понял. Не хочу развивать тут бугурт-тред, просто за мою карьеру неоднократно было такое, что в критических ситуациях всё происходило очень печально из-за того, что не было возможности открыть документацию и быстро выполнить действия, которые в ней описаны. Если у вас лежит прод и SLA уже на грани стать ниже лимита на год, вы вряд ли будете любить человека, решившего, что все остальные в его продукте разберутся и без документации
upd: или вы заходите в документацию и видете там философствования вроде "Почему же я решил делать именно так, как вам следует воспринимать смысл моего кода и т.д.". Через 6 секунд вас всех уволят. Вам нужно видеть в документации следующее: 1. Чтобы всё поднять, нужен такой-то кластер там-то там-то, кэши хранятся тут-то. 2. Если всё сломалось и не поднялось через HA само, сделайте то-то 3. Если у вас осталось 6 секунд - запускайте скрипт такой-то и празднуйте второй день рождения ... n. Кстати, философия моего продукта такая-то. Не читайте это, если вы не философ. И да, может действительно у нас очень разные области и у разработчиков всё намного медленнее и вдумчивее происходит. --- В конце хочу подкинуть пищу для размышления. Если весь деплоймент описан в .yaml файлах, зачем девопсы рисуют схемы в draw.io и почему смотрят на них, а не читают .yaml файлы, если все вокруг знают .yaml?
Очень хорошо все рассказываешь. Понятно что это не обучающий ролик, а информационный, но если бы ты добавил к этому видео кусками и с логическими переходами, где и как ты это все делаешь. Это был бы 100 левел, а так это всего лишь 20, от сделанной работы на 80.
Привет, спасибо за отзыв. Да, есть такая проблема Сложно мне так делать, но понимаю что текущая подача может отпугивать непосвящённых
@@kydavoiti Привет. Ты наверняка уже знаешь что учителем может быть не каждый, а в ИТ это вообще днем с огнем не сыщешь. Либо человек не может объяснить что он делает, потому что он сам не понимаем, зазубрил как стишок на утренник и рассказывает, либо наоборот воды столько что затопит весь класс, пока научатся круг надувать) У тебя без воды и как минимум у меня сложилось впечатление что ты понимаешь о чем говоришь. Скорее всего ты все конспектируешь, потому что подача выстроена и понятна, то есть делаешь как это должно быть 80 левел. Про сделанную работу на 80 и результат на 20, ты наверняка слушал. Потому что именно вот эти 20 труднее всего завершить, поэтому у 90% делающих такие результаты. А в компаниях то что делаешь ты, делают человек 5 и то топорно ))) Но зато что то там выдают на 90 левел, с результатом на 30. Цифру субъективны, но примерно все верно ) Конечно я понимаю, что ты не для первоклассников рассказываешь, а зачем тогда я тебе пишу? Именно потому что ты сделал хорошо работу на 80% и получил 20% вовлеченных зрителей, а сделав с демо видео, ты получил бы 80%. Эти окончательные 20 делать очень легко, буквально за 15 минут обучения и нажимая последовательность трех кнопок, которые ты сам же и выберешь, и получаешь 100 левел, который в нашем мире могут себе позволить даже не все миллиардеры.) Например вставляешь это видео в Камтазиа студио. И на голос пишешь сверху действия показывая, то о чем говоришь.) Все, у тебя уникальный и на 100 левел контент с 80% вовлечением зрителей. )
22:00 не инверсия контроля, а инверсия зависимостей.
Привет, я мог ошибиться, но тут сказал именно то, что хотел сказать. Инверсия зависимостей - это частный случай инверсии контроля. Как и многие и другие вещи: DI, Service Locator, Factories, Strategies. Более того, я сказал именно инверсия контроля, потому что реализовать ее можно не только через интерфейс в Go, но и через callback. Некоторые инструменты даже это поддерживают (mockery).
@@kydavoiti инверсия зависимостей это не частный случай инверсии контроля. > Принцип инверсии зависимости говорит о том, к каким видам зависимостей нужно стремиться. 1.Высокоуровневые модули не должны зависеть от низкоуровневых. И то, и другое должно зависеть от абстракций. 2.Абстракции не должны зависеть от деталей. Детали должны зависеть от абстракций. > инверсией управления (фреймворк управляет кодом программиста, а не программист управляет фреймворком).
> traditional programming, the flow of the business logic is determined by objects that are statically bound to one another. With inversion of control, the flow depends on the object graph that is built up during program execution. Such a dynamic flow is made possible by object interactions that are defined through abstractions. This run-time binding is achieved by mechanisms such as dependency injection or a service locator. In IoC, the code could also be linked statically during compilation, but finding the code to execute by reading its description from external configuration instead of with a direct reference in the code itself. Википедию можно почитать, хотя бы. Там хорошо описана технические термины.
в Java же можно подключить в качестве зависимости проект с github через Jitpack.
Да, есть такая возможность. Тут, как в Java много где, есть проблема того, что это слишком сложно + платно. Грустно там только то, что нам надо покупать Enterprise версию, если хотим ходить не в github или работать с приватными репами. И если мне не изменяет память, то там все JAR ходят через jitpack сервера. Не думаю, что все компании согласятся так делать (тем более сейчас). По сути, если я правильно помню, то там ребята просто у себя build выполняют и отдают артефакт. Короче, это выглядит не как решение, а как костыль.
Что мешает на java программировать в neovim?
Ничего, писал спокойно, но надо было преодолеть порог, который намного выше, чем в Go В целом, инструменты для работы с Java сделаны не для людей, если сравнить с Go. Тот же Gradle, Maven.
В каком файле в junit-pioneer примеры?
Примеры у них в src/demo Ссылку не кидал, может ютуб удалить
В своем пет проекте можешь класть болт на документацию, потому что он, кроме тебя, больше некому в этом мире нахрен не сдался. Максимум кто его увидит, это твой друг которому ты кинешь ссылку на диплой😅
Ждем фидбек по nothing ✍
Вряд ли будет видео, но если есть вопросы - можно мне в ТГ написать или в чат канала. Отвечу без проблем. В целом, впечатления положительные. Есть омрачающие моменты: не нравится материал корпуса, какой-то экран непривычный после IPS на 11 яблоке, гимики оказались гимиками и пользы в них маловато.
@ да как таковых вопросов нет. В канале если бы выкатил пост, было бы интересно. Как оболочка в целом? Слышал, что самая слабая сторона нафинга камера.
Камера говно, да Но я всегда с собой беру полноценную)))) Отпишу в ТГ тогда на выходных
@@kydavoiti Спасибо! Буду ждать.
Хорошее название, очень captivating, даже видео боюсь смотреть - а вдруг..?
Не бойтесь, джава просто так не отпускает
я рад что встретил вас на просторе ютуба, класс!
Привет, спасибо Рад, если видео так или иначе помогают
Братишка спасибо за видео. Ещё, ты один из тех ютуберов которые мне порекомендовали Nvim. я уже пару месяцев пользуюсь плагином в android studio но постепенно хочу разобраться в самом nvim с его конфигами.
Я думаю, что для работы с Android лучше Studio не получится придумать Я бы на вашем месте нырял в IDEA Vim, расширение хорошее и мне кажется из него можно много выжать Более того, есть много хороших материалов по оптимизации сред от JetBrains, советую пошерстить Ютуб
У меня пока получается около 20 слов в минуту печатать, но так приятно, когда не нужно каждый раз бегать глазами от клавиатуры к экрану и наоборот!)
Круто! Тоже это нравится, глаза только на экране. Скорость на работается, тут не надо париться
what
Я часто вечером работаю с мягким светом и мне важно что бы несколько клавиш светились белым постоянно. С B Z (монтаж) бывает такое?
Привет! Я не смотрю на клавиатуру, руки помнят Поэтому не подскажу
Меня в Го больше всего раздражает: 1. Не методов работы с коллекциями типа map, filter, reduce 2. Нет null-safety. Это для меня крайне важно. Понимаю, что язык не новый, но в 2024м без null-safety уже как-то странно. 3. Нет string-interpolarion. Казалось бы мелочь, но так неприятно без неё. 4. Кастрированные дженерики. Спасибо, что хоть вообще добавили. 5. Нет обёрток для асинхронности вроде async/await или suspend functions как в котлине. Корутины - это далеко не везде удобный паттерн. Из положительных сторон: 1. Структурная типизация (обратные интерфейсы) 2. Обработка ошибок (хотя такое ощущение, что создатели сами не могут определиться нужно их wrap'ать или нет) 3. Скорость выполнения и компиляции. 4. Нет надобности в сборщиках (хотя отдельные одарённые используют bazel, но это, к счастью, редкость) В целом я скорее страдаю, чем получаю удовольствие от написания кода на Го. Новые проекты я бы начинал сейчас на Kotlin, C# или Typescript. Java для меня вообще не вариант. Совершенно не понимаю зачем её использовать в новах проектах, если есть Котлин.
очередной недовольный джаваскриптер раздражает: 4. Кастрированные дженерики. Спасибо, что хоть вообще добавили. положительные стороны: 3. Скорость выполнения и компиляции. Алло. При дженериках как в плюсах как раз и упадет скорость компиляции. Разрабы и так пожертвовали ей, добавив хоть такие дженерики
@leonscander1431 классный комментарий. А по существу есть что сказать?
красивый видос, большое спасибо. судя по видео, копирование и вставку в vim до сих пор не починили.. вроде 30 лет прошло.
А какая была с этим проблема? Сейчас все окей и в Vim и в Neovim
Интересный ботан!😅
Изучаю тараканов