На реддите появилась статья "Популярные настройки git "
Например, автокоррекция опечаток: git ocmmit -> git commit
Или как подключить разные настройки для разных путей (можно задать разные e-mailы для личных и рабочих репозиториев)
Я для себя нашел пару полезных вещей
Например, автокоррекция опечаток: git ocmmit -> git commit
Или как подключить разные настройки для разных путей (можно задать разные e-mailы для личных и рабочих репозиториев)
[includeIf "gitdir:~/code/<work>/"]
path = "~/code/<work>/.gitconfig"
Я для себя нашел пару полезных вещей
👍19❤3
Cross Join - канал о разработке
Узнал сегодня небольшой хак из мира Postgres. Например, у вас есть таблица с купонами, и у купонов есть некая дата устаревания valid_until. Допустим, вам надо обеспечить такой констрейнт, чтобы у одного человека не было одновременно больше одного неустаревшего…
Оформил пост в статью на Хабре. Плюсаните, кто может )
Хабр
PostgreSQL: обеспечение уникальности записи с проверкой даты валидности
Как бы вы решали такую задачу? Предположим, есть таблица с купонами, и у купонов есть некая дата устаревания valid_until. Вам надо обеспечить такое ограничение (constraint) на уровне БД, чтобы у...
❤10🔥4👍2💩2
Котлин немного странный.
Если код на Java такой:
То на Котлине это будет
Во-первых, кому помешало слово new? А во вторых, почему лямбда-функция из второго аргумента аргумента переместилась куда-то наружу, за скобки? В чем логика-то?
С непривычки мозгу это как-то сложно распарсить.
Upd. Чтобы строить DSL
Если код на Java такой:
MyClass myObject = new MyClass("abc", n -> System.out.println(n));
То на Котлине это будет
val myObject = MyClass("abc") { n -> println(n) }
Во-первых, кому помешало слово new? А во вторых, почему лямбда-функция из второго аргумента аргумента переместилась куда-то наружу, за скобки? В чем логика-то?
С непривычки мозгу это как-то сложно распарсить.
Upd. Чтобы строить DSL
🤡21😁5👎4👍3🤯1
Недавно заопенсорсили Puter - так называемую "Internet OS". Там можно кодить в vscode, рисовать и прочие штуки. Короче, имитация десктопа операционной системы в браузере.
Но самый прикол, что там всё написано на jQuery :). А вы смеялись над выходом 4 версии )))
Но самый прикол, что там всё написано на jQuery :). А вы смеялись над выходом 4 версии )))
🔥13👍3❤1
Forwarded from StarScream Broadcasting
Составлял на работе “индивидуальный план развития сотрудника” и понял что именно мне не нравится в этой штуке.
1. Нет никакой связи между задачами на работе и этим самым развитием. Можно качать навык по БД но если задач на это нет - то и навык быстро уйдет и не закрепится.
2. На развитие нужно время и ресурсы - или программист тратит свое личное время, или тратит рабочее. Ни компания ни человек - особо тратить свое время и ресурсы не хотят.
3. Мотивация - выполнение какого либо пункта из плана развития сотрудника никак на него не влияет. И тут вопрос даже не про повышение оклада или грейда - а про промежуточные шаги, прогресс по развитию.
4. Выставление целей по методикам типа STAR на начальном этапе чаще всего туманно. Непонятно можно ли будет получить практический результат, можно ли его будет оценить?
5. ИПР это штука обязательная, но почему-то за пару лет все синьорами не стали. И не станут. И не факт, что хотят. И не факт, что нужно.
6. Есть бизнес задачи, цели спринта, итерации, квартала, до отпуска надо дожить, давайте после майских. Развитие не в фокусе. И это относится и к разработчику и к руководителю.
Как заставить эту штуку работать? И быть полезной и сотруднику и тимлиду? Что я делаю или пробую делать.
1. Нужен список болей, проблем, точек роста конкретно у вас на рабочем месте. Запросы долгие, процесс хромает, документации мало - с таким списком сотруднику будет легче выбрать навык который он может прокачать на практической проблеме.
2. Не делайте эту штуку обязательной: кто-то просто не захочет делиться своими планами, у кого то они просто не совпадают с вашими. Шапочно знаю одного девопса который активно осваивает пивоварение в свободное время и уже строит себе цех под Кропоткиным(никакого кубернетеса).
3. Если у человека все таки есть план развития - и он сам его составил, помогайте, спрашивайте про прогресс, отмечайте его.
Всякие штуки типа evolution review могут быть полезными только если обе стороны видят в них пользу иначе это свалится в бюрократию и демагогию.
1. Нет никакой связи между задачами на работе и этим самым развитием. Можно качать навык по БД но если задач на это нет - то и навык быстро уйдет и не закрепится.
2. На развитие нужно время и ресурсы - или программист тратит свое личное время, или тратит рабочее. Ни компания ни человек - особо тратить свое время и ресурсы не хотят.
3. Мотивация - выполнение какого либо пункта из плана развития сотрудника никак на него не влияет. И тут вопрос даже не про повышение оклада или грейда - а про промежуточные шаги, прогресс по развитию.
4. Выставление целей по методикам типа STAR на начальном этапе чаще всего туманно. Непонятно можно ли будет получить практический результат, можно ли его будет оценить?
5. ИПР это штука обязательная, но почему-то за пару лет все синьорами не стали. И не станут. И не факт, что хотят. И не факт, что нужно.
6. Есть бизнес задачи, цели спринта, итерации, квартала, до отпуска надо дожить, давайте после майских. Развитие не в фокусе. И это относится и к разработчику и к руководителю.
Как заставить эту штуку работать? И быть полезной и сотруднику и тимлиду? Что я делаю или пробую делать.
1. Нужен список болей, проблем, точек роста конкретно у вас на рабочем месте. Запросы долгие, процесс хромает, документации мало - с таким списком сотруднику будет легче выбрать навык который он может прокачать на практической проблеме.
2. Не делайте эту штуку обязательной: кто-то просто не захочет делиться своими планами, у кого то они просто не совпадают с вашими. Шапочно знаю одного девопса который активно осваивает пивоварение в свободное время и уже строит себе цех под Кропоткиным(никакого кубернетеса).
3. Если у человека все таки есть план развития - и он сам его составил, помогайте, спрашивайте про прогресс, отмечайте его.
Всякие штуки типа evolution review могут быть полезными только если обе стороны видят в них пользу иначе это свалится в бюрократию и демагогию.
👍32❤9👏2🤮1
Cognition labs разработали ai-программиста, который по их словам пользуется IDE, браузером, самообучается, коммуницирует с "заказчиком" для уточнения деталей, а самое главное - в тесте SWE-bench (решение реальных проблем с гитхаба) достиг показателя в 13%, что в 10 раз лучше всех других подобных попыток.
Чё делается-то
https://www.cognition-labs.com/blog
Чё делается-то
https://www.cognition-labs.com/blog
😁7👍6🔥3🥰2💩2🥱1
Уважаемые программисты. Накидайте плиз в коментах, что вас мотивирует работать.
По моим наблюдениям топ такой
1) хорошая зп (точнее, плохая зп демотивирует)
2) отсутствие микроменеджмента и бюрократии
3) возможность хотя бы иногда изучать что-то новое
Т.е. по сути, программировать и так интересно, надо лишь убрать демотиваторы и добавить чуток разнообразия.
По моим наблюдениям топ такой
1) хорошая зп (точнее, плохая зп демотивирует)
2) отсутствие микроменеджмента и бюрократии
3) возможность хотя бы иногда изучать что-то новое
Т.е. по сути, программировать и так интересно, надо лишь убрать демотиваторы и добавить чуток разнообразия.
👍32❤8
По мотивам поста про хранение купонов с временем устаревания и ограничение unique . Оказывается в Postgres 17 планируется нововведение: к ключевым словам UNIQUE и PRIMARY KEY можно будет добавить WITHOUT OVERLAPS. И тогда, в случае, когда в ключ входит диапазон чего-то, то уникальность будет сравниваться не тупым сравнением, а оператором &&
Вот комит: https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=46a0cd4cefb4d9b462d8cc4df5e7ecdd190bea92
вот пример из него:
Так что скоро это будет возможно без мудрёных хаков
Вот комит: https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=46a0cd4cefb4d9b462d8cc4df5e7ecdd190bea92
вот пример из него:
CREATE TABLE temporal_rng (
id integer,
valid_at daterange,
CONSTRAINT temporal_rng_pk PRIMARY KEY (id, valid_at WITHOUT OVERLAPS)
);
INSERT INTO temporal_rng VALUES
(1, '[2000-01-01,2001-01-01)');
INSERT INTO temporal_rng VALUES
(1, '[2001-01-01,2002-01-01)');
INSERT INTO temporal_rng VALUES
(2, '[2000-01-01,2001-01-01)');
-- запрос не пройдёт, так как перекается диапазон дат с первой строкой (для одного и того же id)
INSERT INTO temporal_rng VALUES
(1, '[2000-06-01,2001-01-01)');
Так что скоро это будет возможно без мудрёных хаков
Telegram
Cross Join - канал о разработке
Узнал сегодня небольшой хак из мира Postgres. Например, у вас есть таблица с купонами, и у купонов есть некая дата устаревания valid_until. Допустим, вам надо обеспечить такой констрейнт, чтобы у одного человека не было одновременно больше одного неустаревшего…
🤝13👍4
⚡️Microservices | Вопросы с Собеседований
❓Если вам интересно
- Почему батчевые update могут вызывать дедлоки
- Что делать, если одни и те же данные нужны в нескольких сервисах
- Что такое Consistent Hashing
✅ То подписывайтесь на канал Lead backend разработчика с авторскими статьями про проектирование, архитектуру, базы данных
❓Если вам интересно
- Почему батчевые update могут вызывать дедлоки
- Что делать, если одни и те же данные нужны в нескольких сервисах
- Что такое Consistent Hashing
✅ То подписывайтесь на канал Lead backend разработчика с авторскими статьями про проектирование, архитектуру, базы данных
Telegram
Microservices Thoughts
Вопросы и авторские статьи по микросервисам, архитектуре, БД
Сотрудничество: t.me/qsqnk
Сотрудничество: t.me/qsqnk
🔥10👍6👌3
Отличная лекция про Аду Лавлейс и первую в мире программу. Это не сухие факты из книжки, а интересный рассказ и интересные события из жизни + технические детали, что в этой программе было, какие концепции закладывались
https://www.youtube.com/watch?v=oZ5nmhehzpc
https://www.youtube.com/watch?v=oZ5nmhehzpc
YouTube
Ада Лавлейс и программирование
❓ Хочешь обсудить выпуск или задать вопрос эксперту? Вступай в наш tg-чат: https://news.1rj.ru/str/+QE7Frg-mBCFkODEy
📰 Не любишь чаты, но хочешь оставаться в курсе дел и прокачивать свой ИТ-кругозор? Подписывайся на наш tg-канал: там публикуются анонсы новых выпусков…
📰 Не любишь чаты, но хочешь оставаться в курсе дел и прокачивать свой ИТ-кругозор? Подписывайся на наш tg-канал: там публикуются анонсы новых выпусков…
👍13💩2
This media is not supported in your browser
VIEW IN TELEGRAM
А вы знали, что на 1C люди вовсю пишут микросервисы?
Платформа Гонец:Микросервисы создана для решения программистами 1С задач, связанных с высокопроизводительными распределенными вычислениями, создания микросервисов, вэб-сервисов и вэб-порталов для работы тысяч пользователей, работы с высокоэффективными базами данных, с использованием синтаксиса языка, похожего, но не ограниченного возможностями языка 1С. Для этого интерпретатор встраивается в решения на языке Go.
Ссылка на репу
Платформа Гонец:Микросервисы создана для решения программистами 1С задач, связанных с высокопроизводительными распределенными вычислениями, создания микросервисов, вэб-сервисов и вэб-порталов для работы тысяч пользователей, работы с высокоэффективными базами данных, с использованием синтаксиса языка, похожего, но не ограниченного возможностями языка 1С. Для этого интерпретатор встраивается в решения на языке Go.
Ссылка на репу
🤣35👏5👍4😱3🎉1🥱1
Помните, год назад писал про коллегу, который собрал дома интерактивный светодиодный пол?
Так вот, спустя год у его заведения выручка 1,2 млн. в месяц: https://vc.ru/u/36586-anatoliy-b/1100489-million-v-mesyac-na-detskih-igrah-pol-eto-lava-i-klassiki-biznes-kotoryy-poluchil-start-na-vc-ru-rovno-god-nazad
Поддержите, пожалуйста, статью, кому не сложно 👍
И, кстати, он пишет софт под него на Go и ведет телеграм канал о разработке: @pixel_quest
Так вот, спустя год у его заведения выручка 1,2 млн. в месяц: https://vc.ru/u/36586-anatoliy-b/1100489-million-v-mesyac-na-detskih-igrah-pol-eto-lava-i-klassiki-biznes-kotoryy-poluchil-start-na-vc-ru-rovno-god-nazad
Поддержите, пожалуйста, статью, кому не сложно 👍
И, кстати, он пишет софт под него на Go и ведет телеграм канал о разработке: @pixel_quest
vc.ru
Миллион в месяц на детских играх “Пол – это лава” и “Классики”: бизнес, который получил старт на vc.ru ровно год назад — Anatoliy…
“Дурная голова рукам покоя не даёт…” – всем привет, меня зовут Анатолий и с этих слов ровно год назад я начинал свою историю про разработку прототипа интерактивной светодиодной платформы. Я тогда и не верил, что смогу найти партнера-инвестора на vc.ru и что…
🔥21👍13
В официальном блоге Go.dev вышел пост с результатами опроса о текущем состоянии языка Go.
Там много чего, отчет прям большой. Из основного:
93% респондентов удовлетворены языком
80% сказали, что доверяют Go team, и считают, что ребята делают всё так, как надо разработчикам.
Много вопросов про AI, вывод такой, что Go можно использовать на проде для AI, но проблема в том, что все библиотеки и доки на питоне.
Ну и нельзя не заметить, что обработка ошибок по-прежнему где-то в топе проблем :)
Канал Cross Join. Подпишись
Там много чего, отчет прям большой. Из основного:
93% респондентов удовлетворены языком
80% сказали, что доверяют Go team, и считают, что ребята делают всё так, как надо разработчикам.
Много вопросов про AI, вывод такой, что Go можно использовать на проде для AI, но проблема в том, что все библиотеки и доки на питоне.
Ну и нельзя не заметить, что обработка ошибок по-прежнему где-то в топе проблем :)
Канал Cross Join. Подпишись
😁5👍4
Очень личная и внезапная просьба :)
Фолкс, помогите мне сделать жене подарок на день рождения, подпишитесь на её инстаграм. Саша - дизайнер-иллюстратор, и хотя сейчас не работает, очень любит своё дело, поэтому постоянно что-то рисует (на айпаде и бумаге). Несколько месяцев назад она завела инсту, и начала выкладывать там свои работы.
Если вдруг у вас есть акк instagram и вы цените прекрасное, то подпишитесь!
https://www.instagram.com/alekchis/
А за репост - я ваш должник навсегда
Фолкс, помогите мне сделать жене подарок на день рождения, подпишитесь на её инстаграм. Саша - дизайнер-иллюстратор, и хотя сейчас не работает, очень любит своё дело, поэтому постоянно что-то рисует (на айпаде и бумаге). Несколько месяцев назад она завела инсту, и начала выкладывать там свои работы.
Если вдруг у вас есть акк instagram и вы цените прекрасное, то подпишитесь!
https://www.instagram.com/alekchis/
А за репост - я ваш должник навсегда
👌19❤11👍4🤡2🥰1🤔1💩1😐1
Удивительно, какие графики можно сейчас делать. Прям представляю, как кто-то сидел и думал, ну какую бы еще ненужную хрень запилить в библиотеку для графиков на фронтенде, чтобы все ахнули.
И тут его осенило: земной шар, который можно покрутить! Вот это график!
Капец 🙂
Но смотрится очень круто, конечно.
И тут его осенило: земной шар, который можно покрутить! Вот это график!
Капец 🙂
Но смотрится очень круто, конечно.
🔥8🌚1
Одной из самых важных вещей в разработке и тимлидстве является управление фокусом внимания. Нельзя делать несколько вещей сразу - ты просто потратишь время и еще и устанешь.
Эта вещь далеко не всегда очевидна интуитивно. Такое бывает сплошь и рядом: день потрачен, вроде бы весь день что-то делал, но результат трудно понять и сформулировать.
У разрабов это отвлечение на митинги, обсуждения (особенно у синьоров) и постороннюю от работы активность. У лидов - это коммуникация с какими-то людьми и решение проблем разной важности.
Особенно часто этим страдают начинающие тимлиды: им что-то пишут, а они сразу отвечают и начинают суетиться, кодить че-то. Результат - выгорание при отсутствии результата.
Поэтому, разрабам я бы посоветовал что-то вроде метода pomodoro: делать явные периоды, когда занимаешься задачей со 100% фокусом, игноря вообще всё остальное, и явные периоды отдыха, когда ты, например, сидишь в твиторе и пишешь туда всякую токсичную хуйню. Сколько выделять на то, и сколько на это - индивидуально. Даже от времени дня зависит.
Ну и полезно ставить в календаре слоты "работаю", если часто задалбывают внешними событиями.
Лидам в приципе тоже самое. НЕ реагировать на каждое сообщение в мессенджере. Делать это раз в определенный период времени, например полчаса-час. Если будет что-то совсем срочное - вам позвонят. Я много лет скрываю нижнюю панель на маке, чтобы НЕ ВИДЕТЬ, что кто-то написал что-то. Даже если вы прочли какое-то сообщение, НЕ БРОСАТЬСЯ его сразу делать. Запишите себе в блокнот, в жиру и т.д. Потом спокойно приоритезируете, делегируете и т.д. и делаете в периоды фокуса, причем самое важное.
В состоянии расфокуса невозможно сделать ничего полезного.
По сути всё, что происходит на работе, - это пайплайн. На входе необработанное хаотичное говно, посередине две чередующиеся джобы (фокус и расфокус), на выходе - сделанные самые важные задачи.
Канал Cross Join. Подпишись
Эта вещь далеко не всегда очевидна интуитивно. Такое бывает сплошь и рядом: день потрачен, вроде бы весь день что-то делал, но результат трудно понять и сформулировать.
У разрабов это отвлечение на митинги, обсуждения (особенно у синьоров) и постороннюю от работы активность. У лидов - это коммуникация с какими-то людьми и решение проблем разной важности.
Особенно часто этим страдают начинающие тимлиды: им что-то пишут, а они сразу отвечают и начинают суетиться, кодить че-то. Результат - выгорание при отсутствии результата.
Поэтому, разрабам я бы посоветовал что-то вроде метода pomodoro: делать явные периоды, когда занимаешься задачей со 100% фокусом, игноря вообще всё остальное, и явные периоды отдыха, когда ты, например, сидишь в твиторе и пишешь туда всякую токсичную хуйню. Сколько выделять на то, и сколько на это - индивидуально. Даже от времени дня зависит.
Ну и полезно ставить в календаре слоты "работаю", если часто задалбывают внешними событиями.
Лидам в приципе тоже самое. НЕ реагировать на каждое сообщение в мессенджере. Делать это раз в определенный период времени, например полчаса-час. Если будет что-то совсем срочное - вам позвонят. Я много лет скрываю нижнюю панель на маке, чтобы НЕ ВИДЕТЬ, что кто-то написал что-то. Даже если вы прочли какое-то сообщение, НЕ БРОСАТЬСЯ его сразу делать. Запишите себе в блокнот, в жиру и т.д. Потом спокойно приоритезируете, делегируете и т.д. и делаете в периоды фокуса, причем самое важное.
В состоянии расфокуса невозможно сделать ничего полезного.
По сути всё, что происходит на работе, - это пайплайн. На входе необработанное хаотичное говно, посередине две чередующиеся джобы (фокус и расфокус), на выходе - сделанные самые важные задачи.
Канал Cross Join. Подпишись
👍57👏4🔥1