Pull to refresh

Comments 688

Максим, есть идеи, отчего сложилась такая ситуация?

Могу предположить, что из-за бездумного подражания топовым компаниям западным.
Изначально они имели нестандартную сферу деятельности, которая значительно выбивалась из всего рынка. Это как пытаться найти разработчика в мире бухгалтеров. Приходится каждого оценивать как новичка.
А дальше — зачем придумывать новое, если мы можем позволить себе старое? Причем, доходит до абсурда — есть ТРЕНИНГИ по прохождению собеседования в google. лолчто. Это же явный симптом.


Но, предполагаю, это касается не всех позиций, а только тех, которые поставлены на поток. Там уже работает система, которую не остановить.
Вряд ли идеологическому лидеру по разработке ИИ, например, кто-либо задаст вопрос про big-O. За него говорит его опыт и разработанные проекты. И так должно быть везде.

И так должно быть везде.

Кому должно? Никто не мешает идти работать в компании попроще. Без бонусов и акций.
За него говорит его опыт и разработанные проекты.

Я опытный, но рассказать и показать ничего не могу. Вот такой я. Так???
Вряд ли идеологическому лидеру по разработке ИИ, например, кто-либо задаст вопрос про big-O.

Зачем задавать вопросы? Лид должен сам всё выдать и так. С потрахами. Он же лид, а не джуниор.
Никто не мешает идти работать в компании попроще. Без бонусов и акций.

Если я правильно понял посыл "не можете пройти сложное собеседование, то идите куда проще", то в этом и заключается проблема и стереотип.
Такой формат собеседования не 'сложный и потому крутой', а просто глупый. С таким же успехом вас могли попросить пробежать марафон. И все бы сидели и готовились к марафону в гугл. Бред же.

Зарплата программиста в гугле 150 000 + 100 000 акциями и бонусами. Давайте список компаний с такими условиями? Пойдем работать туда.
В фейсбуке, эппле, линкедине и во многих других компаниях все то же самое, но собеседования процентов на 50 более адекватные. Правда, самые адекватные интервью плана «тестового задания» и а давай ты вместо 6 часов каляканья олимпиадных программ на доске просто поработаешь часа три над реальным проектом встречались только в России, к сожалению.
UFO landed and left these words here
А это вы с чего взяли?
UFO landed and left these words here
Курицу изобразить не забудьте.
Максим, вы озвучили то что давно крутится на уме. Я был с двух сторон этих баррикад. И что самое интересное, я вникал в код который кандидаты указывали в резюме. Собеседования проводил — первое удаленно по телефону или по скайп, второе в офисе — небольшие упрощенные практические задачки на компьютере (проверял параллельно теорию, просил написать разные варианты сортировки и группировки коллекций с помощью lambda выражений, смотрел как кандидат работает в IDE, командной строке, как может найти в незнакомом коде нужные места, насколько понимает базовые фреймворки и т.п.). За свою карьеру я проводил сотню собеседований и скрининг интервью. Кроме теории нужно проверять что кандидат умеет писать код. И совсем не на бумаге и не блок схемы на доске.

Больше всего мне понравилось интервью в финансовый стартап elinvar — после технического интервью по скайпу, мы договорились о следующем интервью. В это время мне выслали задание, заготовку проекта без требуемого функционала — нужно было за 2 часа написать код и тесты, что я быстро сделал подключив к проекту apache camel. После проверки прислали мне job offer с отличной для Берлина суммой на руки. Не сложилось по личным причинам, отказался. Но подход к интервью отличный — знания, опыт и резюме интервьюверы проверили. Похожая coding session была и в cTrader на Кипр — но там нужно было еще поделиться своим экраном по скайпу и тоже оффер по завершению!

Общение же с HR, которые ко мне приходили в прошлом году всегда сводилось к шаблонным вопросам, а на тех. интервью рекурсивные задачки, обход деревьев, сложность алгоритмов и прочие вещи которые я хорошо делал на первом курсе. Что вряд ли возможно расценивать как адекватное интервью для senior dev позиций. Рекрутеры zalando и ali после такого идут лесом со своими предложениями.
Я опытный, но рассказать и показать ничего не могу. Вот такой я. Так???

Рассказывать можно и нужно, не знаю почему вы так решили.

Вот я себя, например, ощущаю так же. Опыт разработки специфичных приложений на достаточно закрытой платформе. Портфолио нет, код показать не могу — кровавый энтерпрайз…
Т.е. меня реально должны оценивать тестиками для зелёных джунов.
Да всегда, даже из кровавого энтерпрайза есть выход в open source в свободное время. Понятно что исходники с работы вы не имеете право показывать, но это не отнимает у вас опыта и знаний по решению задач. И интервью должно строиться вокруг требуемого опыта и знаний, а не вокруг теории и задачек для первокурсников или головоломок и прочей геймификации процесса интервью. Интервьювер и кандидат приходят туда не для того чтобы зачитывать шаблонные вопросы и получать на них шаблонные ответы, из книги по интервью в корпорацию зла/добра.
Хотя и я и согласен с мыслью в целом, но про оупенсорс — это какая-то чушь. Вы или не имеете жены и детей, либо на работе не заняты особо, либо забили на семью (но конечно же этого никогда не признаете). Видали мы таких. У человека 8 часов из которых эффективных 4-6 на разработку и ещё пару часов на общение и митинги. Всё. Остальное время мозг должен отдыхать. А на выходных есть домашние дела. Жена хочет внимания, дети с отцом поиграть, чтобы не вырасти мудаками и не сказали через 10 лет: «Слышь, дай прикурить, типа батя… хэ-хэ». Только полные задроты сидят бесплатно после работы в оупенсорсах и это медицинский факт. Нормальные специалисты получают достаточно бабла в энтерпрайзе и в ус не дуют. И уж точно ни я ни кто-то из моих бывших или текущих коллег или подчинённых не будем тратить свои вечера, чтобы удовлетворить какую-то там айчарку или четырёхглазого техлилда ссылкой на гитхаб «как я закоммитил в оупенсорс». Не тот возраст. Студенчество с беззаботной и ветряной жизнью кончилось у синьоров 10-15 лет назад. Хочешь узнать как я пишу код? Давай свою задачу сюда. Не достаточно? Нанимай меня, плати бабло и смотри всё что тебе нужно. Нет денег? Ищи студентов которые на гитхаб коммитят.
Кажется вы гиперболизируете сложность open source. Вопрос лишь желания и совсем небольшого времени. От получаса раз в пару дней вряд ли дети начнут курить. А вот от совместного просмотра зомби ящика — запросто…

Один из самых одаренных и коммуникативных бывших коллег — семейный человек, адепт scala и активный собиратель увлекающихся технологиями вокруг себя в рабочее время.
> От получаса раз в пару дней вряд ли дети начнут курить.

Полчаса раз в пару дней определенно недостаточно. Чтобы иметь что-то нестыдное для показать, надо тратить хотя бы часа 2-3 ежедневно. Ну или больше, если вы хотите иметь это нестыдное через 5 лет, а не через 10. У подавляющего большинства людей такой запас времени просто отсутствует.
А можно я задам очеь непопулярный вопрос: а зачем? Вот у меня есть пачка штук помогающих мне получать денежку. И многие из этих штук выстраданы в отсутствии спецификаций/статей/итд

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

Я вам даже немного завидую. Гораздо лучше иметь пару проектов приносящих деньги, чем много статей)

К сожалению время старых проектов уже ушло, а новые я пока не выстрадал 8(. В основном разные библиотеки, помогающие получать данные из различных crm-подобных систем.

У меня более чем достаточно денег, но мало статей, и я очень сильно грущу. Лучше бы было наоборот.
Деньги отдать легко, а вот получить обратно ранее потраченное время, дабы его потратить на всякий ресёрч, уже труднее.

Намеренно исследовать что-то ради статьи — это уже маньячество какое-то. А публикация ради публикации смысла особо не несет.

Скорее исследовать ради исследования, статьи — это так, побочный продукт.
Ответов может быть много, у каждого своя ситуация. Например из жизни знакомых: легаси проект на работе jre 1.6 на собственном велосипедном фреймворке. Никакого DI, code review, TDD, BDD и прочего. Чтобы быть в тонусе и не деградировать он в свободное время пишет свои проекты. Или работа от забора до обеда без возможности влиять на core библиотеки и улучшать то, что отнимает много времени у каждого на проекте. В этом случае чтобы развиваться и изучать новое можно выкладывать свои проекты для решения старых проблем на новом стеке технологий.

С open source у нас еще более странная культура — все пользуются, спасибо не услышишь, но почти никто не предлагает pull request или патчи для bug fix. Да и еще спрашивают ETA!

Нужно ли выкладывать код, если он приносит вам деньги и вряд ли кто-либо поможет с улучшением его качества. Я бы не стал. CRM адаптеры — это не библиотеки для Android. Может быть есть еще что-то что нужно большому количеству людей и от вас не убудет поделиться…
на собственном велосипедном фреймворке.

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

Никакого DI, code review, TDD, BDD и прочего

Я конечно верю что бывает иначе в кровавом ынтырпрайзе, но не видел 8(

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

Любопытно. Надо подумать.

С open source у нас еще более странная культура — все пользуются, спасибо не услышишь, но почти никто не предлагает pull request или патчи для bug fix.

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

Может быть есть еще что-то что нужно большому количеству людей и от вас не убудет поделиться…

Есть, но руки никак не доходят довести до ума и причесать 8(

Есть у меня табличка которая умеет работать наподобие гуглодоксов, сортирофка, флоатин хедер и прочие плюшки на чистом js. Но этож надо сесть, выделить зависимости, красиво все сделать. А как раз вот с этим пунктом у мну проблемы всегда.
UFO landed and left these words here
Да вряд ли разработчик… Раз за пол часа как-то получается предложить PR на небольшие улучшения в spring framework/spring boot или завести Jira ticket для ошибки там же, с информацией о контексте ошибки.

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

Не опенсорс, конечно, но про саморазвитие.
Как это все знакомо, респект! В студенчестве весь курс матана или спецглав изучался за неделю вечерами и ночами…
Увы, результаты такого изучения не очень, по моему опыту. Лучше мелкими кусочками, но долго, оно как-то всё лучше в голове оседает, всякие непонятные моменты лучше выявляются (потому что при долгом курсе больше расчёт на понимание, а не на механическую память), и так далее.
Согласен! Но в любом случае за неиспользованием весь университетский курс математик забылся. Все неиспользуемое — забывается, что еще один аргумент за разминку в open source.
UFO landed and left these words here
Как это не имеет? Именно что реальность. Полчаса хватает, чтобы вкладываться в самообразование.

На самом деле полчаса хватает даже на какой-то осмысленный вклад в свой проект, если заниматься этим ежедневно. Хотя, конечно, пара-тройка часов в день была бы эффективнее.
UFO landed and left these words here
В контексте этой статьи мы говорим о open source и candidate visibility. И вклада по пол часа раз в пару дней может хватить для того чтобы на интервью показать свои навыки.

Популярные проекты крупнейшей китайской корпорации не спасают человеко-века — качество кода хромает. Да и функционал тоже не прорывной по сравнению с другими open source проектами.
UFO landed and left these words here
Похоже вам нечего конструктивно ответить по существу обсуждения. Вам отвечают люди с опытом и знанием о чем речь, а вы утверждаете что все не так. Ваше право, конечно!
UFO landed and left these words here
Обычная демагогия.

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

Вполне получается при желании, уже ответил на это первым же комментарием, но вы даже не пытаетесь вникать.

В итоге что мы имеем в этой ветви обсуждения: 0xd34df00d и igor_suhorukov участвуют в open source проектах и делятся своим опытом (github1, github2) отвечают на вопросы, а evgenWebm не имея опыта активно спорит и даже не пытаетесь вникнуть в суть спора клеймя демагогией.
Вполне получается при желании писать по 30 минут в день

Скорее всего у вас разное понимание проектов, для вас проект это Хеллоу ворлд, а для Евгения что-то уровня mp3 плеера.
Там рядом примеры со ссылками есть, похоже на хелловорлды?
UFO landed and left these words here
я вот теорию за пол часа выучил

Вы таки не читаете, что вам пишут. Теорию за полчаса выучить трудно (и зачем её вообще учить, её понимать надо), а вот как раз попрактиковаться — вполне.

Ну и примеры вещей, которые можно сделать в разумные сроки с таким подходом и которые потом можно кому-то показывать, вам тоже привели.
Один мой проект занимает тысяч 800 строк кода, я его писал где-то 12 лет, и за полчаса в день его, конечно, не сделаешь никогда. Но самый большой предмет моей гордости там — чуть больше тысячи строк, сделано суммарно, ну, часов за 50, из которых чистого кодинга часов 20, остальное время — думать, причём весьма оффлайново.

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

И да, самообразование — важный компонент в долгосрочной перспективе.
Хоть бы несколько строк комментариев к своему предмету гордости написали.
Первое — это этакий ORM-слой в плюсах, позволяющий делать такое с минимальными аннотациями (из макросни нужно только BOOST_FUSION_ADAPT_STRUCT, в C++20 с рефлексией не нужно будет и этого).

Второе — вычисление производных в компилтайме на темплейтах. С одной стороны, там ридмишка есть, с другой — тут статья.
У меня для этого хаскель есть.

Хотя было бы интересно реализовать на плюсах и побенчмаркать. Но, из общих соображений, оно вряд ли будет быстрее.
Ну так вы несравнимые вещи сравниваете. По полчаса в день матана (или музыки, или спорт или еще там что) — как раз вполне достаточно (если регулярные занятия).

> часов за 50, из которых чистого кодинга часов 20, остальное время — думать, причём весьма оффлайново.

Так а почему вы «думать» не включаете в те «по полчаса в день»? Конечно же они должны включаться!
Ну так 50 часов — это всего три месяца по полчаса в день, никак не 50 лет.
По полчаса в день матана (или музыки, или спорт или еще там что) — как раз вполне достаточно (если регулярные занятия).

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

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

Правда, опять же, речь не об освоении с нуля, а о поддержании и расширении навыков.

Так а почему вы «думать» не включаете в те «по полчаса в день»? Конечно же они должны включаться!

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

Для хорошего любительского уровня. В плане читать и понимать статьи с архива в интересующей области, например. С-но среднестатистический выпускник матфака на протяжении обучения зачастую может «ботать матан» и меньше получаса в день, если уж ровно распределить все…

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

Ну почему, лет за 20-30 освоите вполне. Здесь как раз вообще рост времени занятий сродни закидыванию раб. силой у Брукса :)
Важна регулярность и концентрация, а пара занятий по часу часто лучше чем 1 но на 4 часа. Потому что задача (как к слову и в ботании матана) не сделать что-то, а прокачать скил. Короче это вещи несравнимые в силу того, что у процессов существенно разная цель.
В плане читать и понимать статьи с архива в интересующей области, например.

Смотря какая интересующая область, для того, чтобы дейта сайенс на пайтоне делать, многого действительно не нужно.

Я вот на этих выходных научился, помимо прочего, строить линейные функции из R в R, которые при этом неограничены на любом интервале. До сих пор приятненько. Прям жалею, что был тупым приматом, где ни про каких Цермело не слышали толком, и не ходил в какой-нибудь НМУ, пока была возможность.

С-но среднестатистический выпускник матфака на протяжении обучения зачастую может «ботать матан» и меньше получаса в день, если уж ровно распределить все…

Ну хрен знает, мы ботали как-то всё время. И я ещё раздолбом был и клал на урматы, и ещё пару предметов.

Ну почему, лет за 20-30 освоите вполне. Здесь как раз вообще рост времени занятий сродни закидыванию раб. силой у Брукса :)
Важна регулярность и концентрация.

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

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

А можно пример линейной ф-и из R в R, которая при этом не y = ax для какого-то a?

> Особенно, опять же, если вы хотите не только играть уже имеющиеся партии по табам, но и как-то худо-бедно генерировать что-то своё.

Умение играть что-то свое, к слову, скилл отдельный, и вы же можете свое придумывать, что не требует особой техники. Многие серьезной техникой не владеют но свое придумывают, в рамках того, что могут исполнять.
А можно пример линейной ф-и из R в R, которая при этом не y = ax для какого-то a?

Да. Посмотрите на R как на векторное пространство над Q, значит, если вы принимаете аксиому выбора, там есть базис (в котором континуум компонент, что любопытно само по себе), значит, можно взять функцию f(x) = { проекция x на какой-нибудь из компонентов этого базиса }. Легко видеть, что она линейна (потому что гладиолус векторное пространство). Важно заметить, что такая функция действует в Q, поэтому разрывна в каждой точке (потому что Q всюду плотно в R и поэтому если бы она была непрерывна, то была бы умножением на константу для любого x из R, что противоречит действию в Q). Ну а дальше обычный школьный эпсилон-дельта-формализм.

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

Мне всякая наркоманистая музыка интересна, так что без некоторой доли техничности никак.
> Важно заметить, что такая функция действует в Q

(f(x) = x, x in Q) не действует в Q? «Действует» в данном контексте — это что?

ЗЫ: а, в смысле (x in R => f(x) in Q), понятно
Важные замечания:

1. согласно тому определению, которое вы использовали для линейной функции — функция f(x) = ax + b не будет линейной!

2. функция, которая линейна в «R как векторном пространстве Q», совершенно необязательно будет линейна в R как поле.
1. Да, не будет. Линейность — вообще перегруженное понятие, ваша функция линейна в том смысле, что это полином первой степени. Моё определение ближе ко всяким функанам.

2. Можете пояснить?
В первом случае линейность функции означает что f(kx+ly) = kf(x) + lf(y) для любых k и l из Q, во втором случае — для любых k и l из R.

Таким образом, линейность в R как поле — это более сильное требование чем линейность в R как векторном пространстве над Q.

В частности, построенная вами функция не линейна в поле R.
> В частности, построенная вами функция не линейна в поле R.

а доказать сможете?
Да запросто. Рассмотрим два числа из выбранного базиса — x и y, такие что f(x) = 1, f(y) = 0 (по построению такие числа всегда существуют).

Теперь берем и считаем: 0 = f(y) = f(y/x * x) = (y/x) * f(x) = y/x. Получили противоречие, следовательно функция не линейна в поле R.
Да, тут важно, что сам базис состоит из элементов R, а не Q (или, чуть более безопасно, не только Q).

С другой стороны, такое вот интуитивное рассуждение: пусть α ∊ R, значит, мы можем найти последовательности q и r из Q, сходящиеся к α снизу и сверху соответственно. Значит, f(qx) = qf(x) сходится к αf(x) снизу, а f(rx) = rf(x) сходится сверху, и получаем αf(x) = f(αx). Почему это неправильно?

А, потому что я идиот и оно не непрерывно, поэтому обменивать f и предел нельзя.
Потому что f не является непрерывной функцией.
Да, я тоже уже сам догадался, спасибо :)
Кстати, раз уж мы так хорошо тут про матан всякий говорим, я тут пытаюсь построить неглавный ультрафильтр на натуральных числах через лемму Цорна, и пытаюсь, в частности, показать, что максимальный элемент на множестве фильтров, упорядоченных по включению, содержит все множества либо их дополнения. Это можно как-то элегантнее сделать, чем предположить, что есть какой-то непринадлежащий фильтру элемент, дополнение которого тоже не принадлежит фильтру (тут моя терминология может хромать), и показать очень аккуратным и скучным анализом случаев на уже принадлежащие множества, что тогда этот элемент (либо его дополнение) можно отнести фильтру, и это будет согласовано с уже принадлежащими ему элементами, что противоречит максимальности фильтра? Как-то ведь неизящно очень получается.
Вы же максимальный фильтр не сконструировали, а просто зафиксировали факт существования, иными словами, никаких фактов о нем, кроме того, что это фильтр, и что он максимальный — у вас нет (внутренняя структура неизвестна). По-этому никак иначе, кроме как от противного, вы о нем ничего и не докажете. Это верно для любых объектов, которые без аксиомы выбора не построить (потому ее некоторые и не любят).
О внутренней структуре я знаю то, что она удовлетворяет некоторым требованиям к фильтру (ну там, про дополнения, большие множества и всё такое). Этого вполне может оказаться достаточно.

Собственно, этого оказывается достаточно в доброй части других применений леммы Цорна — вы доказываете, что множество хорошее (цепи имеют верхние грани), значит, существует максимальный элемент, больший или равный данному, а дальше от противного показываете, что этот максимальный элемент является интересующим.
> а дальше от противного показываете, что этот максимальный элемент является интересующим.

Так я и говорю — поскольку «построить» объект невозможно, то единственный способ, которым вы о нем можете что-то доказать, это убедиться, что он не может данным свойством не обладать, то есть от противного.

> Этого вполне может оказаться достаточно.

Не может, т.к. вам нужно использовать факт того, что фильтр максимален, а а без аксиомы выбора существование такого фильтра доказать нельзя. То есть и самого противоречия без аксиомы выбора не существует.
Не может, т.к. вам нужно использовать факт того, что фильтр максимален, а а без аксиомы выбора существование такого фильтра доказать нельзя. То есть и самого противоречия без аксиомы выбора не существует.

Так в данном случае аксиома выбора как раз принимается. Вопрос в последующем рассуждении.
> Так в данном случае аксиома выбора как раз принимается.

Ну так я и говорю, приняли аксиому выбора — забудьте про изящество и доказывайте руками от противного :)
Так я и интересовался, можно ли это доказательство от противного провернуть изящнее, чем тупо разбирая где-то как минимум 9 случаев?
Не понял, что за 9 случаев. Предположим, что А с дополнением не лежит в фильтре, добавляем к фильтру все пересечения А с каждым из множеств фильтра и все надмножества, получаем новый фильтр, аксиомы для которого проверяются тривиально.
Может, и тривиально, но с ручкой и бумажкой мне это быстро надоело. Надо сегодня ещё разок попробовать.
Ну третья аксиома следует из построения (мы добавили все надмножества руками), ее даже доказывать не надо. Первая (о непринадлежности пустого множества): если предположить, что пустое множество лежит в новом фильтре, то значит, что А пересекается с каким-то множеством из оригинального фильтра, и, следовательно, дополнение А лежит в оригинальном фильтре, чего быть не может.
Ну и вторая: любое из «добавленных» множеств содержит пересечение А и некоторого множества из фильтра (по построению). Если мы пересечем это множество с некоторым множеством из фильтра, то получим надмножество множества, полученного пересечением А и пересечения с двумя множествами фильтра, каковое пересечение само является множеством данного фильтра, а значит, данная операция нас не выводит за пределы описанной совокупности.
> f(y/x * x) = (y/x) * f(x)

Выносить из-под f можно только элементы Q, а y/x — не обязательно из Q. И вы не сможете доказать возможность выносить элементы R без непрерывности f, т.к. для этого надо сделать предельный переход внутри. Так что не работает ваше доказательство, есть другой вариант?
С какого перепугу? Откуда в определении линейной функции в поле R вдруг появилась буква Q?
А, ну да. Я забыл предыдущий пост и начал рассматривать линейность в поле над Q :facepalm.jpg:
А вот от совместного просмотра зомби ящика — запросто…

можно ещё привлекать детей к совместному написанию opensource-а :)

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


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


Это ещё на GitHub просто — PR послал и всё. В других проектах нужно патчи по почте посылать, или ещё что интересное делать. Нет, не помогает это обычному человеку.


Если бы это было просто, то принятые PR были у каждого первого, правда же?

У меня есть ребенок(полтора месяца), жена(считает что я хорошо забочусь о ребенке и о ней), работа(три дня назад на мой вопрос «устраивает ли моя работы» мне ответили «вполне» и повысили зарплату).
Так что я считаю, что со всем справляюсь.
И да, я потихоньку пилю всякие разные эксперименты и OpenSource проекты.
Если вам не хочется делать opensource проекты — это можно понять. Но говорить, что на это нет времени у нормального человека — это ерунда.
Вернемся к вопросу когда ребенку будет хотя бы лет 10
Почему? Потому что это удобный аргумент — «вы еще не доросли, судить не можете». Вариация апелляции к возрасту. Ребенок в таком возрасте еще не ходит ни в школу ни в садик, требует к себе тьму внимания и все такое. Ну и 10 лет — они раз в жизни. Бывают дети и старше и младше, а бывает детей вообще нету. Почему все прикрываются чужими детьми десяти лет?
Я прикрываюсь своим опытом и ребенком. Скажем так до года это спринтерская дистанция, дальше будет тяжелее, ребенок меньше внимания требовать не станет, времени больше не станет, здоровье и выносливость не вечные, жена будет все больше раздражаться на тему опять за компьютером и порчее.
Мне непонятно, почему аргумент про десятилетнего ребенка распространяется на всех айтишников? Ну то есть я не осуждаю за отказ контрибута в опенсорс, но зачем прикрываться 10-тилетним ребенком?

11 лет назад вы контрибутили в опенсорс?

Если да, то — вот 11 лет назад контрибутил, а сейчас уже нету сил и времени.
Если нет, то зачем вы вообще ребенка вспоминаете. Дело значит не в ребенке, а в том, что вы не имеете желания туда контрибутить.

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

Можно интересоваться, но интерес иметь не с высшим приоритетом для свободного времени (после физиологии, семьи, работы), например третий. Если как-то сложилось, что есть свободное время после удовлетворения первых двух, то можно что-то поделать. Но это может быть раз в месяц, а то и реже. Причём зачастую оказывается гораздо больше времени уходит не на фикс какого-то бага, а на пропихивание его в апстрим. А если фикс отклонили, то большой вопрос стоит ли свой форк оставлять в паблике в целях произведения хорошего впечатления на потенциального работодателя.

Потому что до года ребенок это овощ, который не может ничего но и не хочет ничего. До трех он вроде уже не то чтобы овощ, может там ходить и чето говорить, но не мыслит толком и ему ничего особо и не надо. До 3 лет дети требуют времени чисто на покормить/убрать говно/одеть-раздеть и тд. А потом уже появляется подобие интеллекта и необходимость общения. И чем старше, тем больше этого общения надо. И вот это уже реально требует времени.
Чувствуется отцовский опыт =)
Если младенцу с рождения хватает внимания, то после трех лет он уже вовсю общается со сверстниками в садике, а к 10-12 уже плевать хотел на родительское общение. А деприванты наоборот продолжают висеть грузом на родительской или опекунской шее и требовать подкормки и полива. Так что не теряйте момент, общайтесь с «овощем», чтобы он реально в овощ не превратился.
Общение в саду и общение дома это совершенно разные вещи. Дети в саду не объяснят из чего мир состоит, не свозят по музеям/киношкам ну и прочее, смысл объяснять очевидное? Для ребенка (который еще не подросток) родители эталон всего и общаться он хочет именно с ними.
Ну и у моего ребенка давно не овощной возраст, результатом воспитания и успехами вполне доволен.
Так что не теряйте момент, общайтесь с «овощем», чтобы он реально в овощ не превратился.

Отцы обычно лишены материнского инстинкта и редко испытывают желание общаться с "овощем", не говоря уж о получении удовольствия.


то после трех лет он уже вовсю общается со сверстниками в садике

Детские сады и школы — это только по будням в рабочее время. В остальное время общаться с ребёнком все равно придётся.

Отцы обычно лишены материнского инстинкта и редко испытывают желание общаться с «овощем», не говоря уж о получении удовольствия.

Ну, это ровнехонько как с женским оргазмом =) Тоже до недавнего времени считалось, что приличным леди не свойственно получать удовольствие от секса. А потом ничотак, разогрелись, втянулись.
Я не так давно осознал, почему нет материнского инстинкта у мужчин.
Потому что когда условно приходишь уставший с работы, а тебя встречает кричащий комок плоти, а ты хочешь жрать, а жена говорит — свари себе лапшы.
Я с ребенком рядом, и он классный, и хочется с ним общаться. Потому что вижу его всё время, а не только когда я уставший а он орёт.
И вот это уже реально требует времени

Окей.
До 3-хлетнего возраста вы контрибутили в опенсорс?
А до рождения ребенка?

Да это все хрень про свободное время на самом деле. Я контрибьютить стал только после рождения. Сильно позже!

Смешно) А по сути на вопрос ответите?

Оно конечно смешно, но обстоит именно так, без шуток.

Значит, до рождения у вас детей в опенсорс вы не контрибутили, я правильно понял?
Именно. Но это никак не было связано с наличием или отсутствием времени. Просто с возрастом изменились желания.
Ну я же об этом и говорю, дети ни при чем, вы просто не хотели контрибутить, а детьми просто прикрываетесь
Я не прикрывался. Я как раз написал, что дети требуют все больше и больше времени в процессе их взросления (до определенного возраста конечно). Но это совсем не значит, что нельзя найти час-два-три в день на хобби, когда ребенок уже спит например. Было бы желание. А некоторые тут пытаются доказать обратное. Отцы-курицы встречаются конечно не так часто как матери-курицы, но как показывает тот же хабр, встречаются достаточно часто :)
Не интересно.
Я делаювсё чтобы быть хорошим мужем, отцом и работником. И у меня остается время на OpenSource и на кучу других дел. OpenSource естественно не является приоритетом.
Вы делаете вывод о том, что я жертвую ребенком/женой, я утверждаю что ваш вывод — бред.
Ваш опыт ничего не стоит в контексте данного обсуждения, поэтому я прошу не использовать его как «довод».
Вот мне, если честно, рожать страшно. Потому что муж всё время за компьютером, я всё время за компьютером, целый день работа-работа-работа, после работы учёба у обоих (институты давно окончены, но за современными технологиями надо как-то успевать, щупать их, верно?), свои проекты, и тут бы хоть выспаться или в кино вдвоем сходить. Безо всяких детей.
А если их заводить, то кто по ночам ребёнка будет вставать и успокаивать — Пушкин или Дед Мороз? Я не знаю.
Короче, если вы каким-то образом всё успеваете, то напишите статью на Хабр. Это действительно суперполезная и интересная информация.
А женщины — существа хитрые. Женщины полуторогодовалыми детьми на руках, как правило, не пилят сук на котором сидят и не ссорятся основным кормильцем в семье. Вы бы тоже не стали на её месте. Т.е. показания получаются постольку-поскольку показательные, приходится разве что честному слову верить.
Про честность я не буду ничего говорить и обсуждать. Тема специфичная, потому что у меня крыша на этом поехавшая. И здесь же на хабре лет так 6 назад мне уже объяснили что я идиот малолетний и «игра в честность» с опытом пройдет. Ну нет, 8 лет мы с женой вместе, игра в честность пока не закончилась. ТАк что я верю, что если она мне что-то говорит — это правда. Но это оффтоп, просто чтобы было понятно, почему я не буду обсуждать честность своей жены.

А по сути: Я 24 часа дома с женой. Отлучаюсь только чтобы съездить в магазин за очередрной телегой продуктов и шмотья. Его кровать в двух метрах от моего рабочего места. Так что мне не надо рассказов жены, чтобы знать что происходит с ней и моим ребенком.
UFO landed and left these words here
Практически наблюдавшееся решение — бабушки. Вполне согласуется со всеми стериотипами общества. Если вы достаточно получаете — няня. Но да, это не «три года с ребёнком», а скорее «месяцев шесть, пока он ещё головку не держит».
UFO landed and left these words here

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


  • удалённая или полуудалённая (раз-два в неделю в офисе) работа
  • реально гибкий график
  • работа на полставки
  • их различные сочетания

Естественно, это предполагает, что оба родителя идут на такую смену режима работы и равной или почти равной степени, чтобы обеспечить уход, как говорится, 24/7. Оба работают, оба за ребёнком ухаживают с непересекающимся графиком работы, "пост сдал-пост принял".


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

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

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

Даже если рассматривать финансово самый невыгодный вариант "оба на полставки"

Почему? Вот не знаю, как так получается, но в Москве при работе на полставки зарплата довольно быстро вырастает до полноставочной. Видимо, дело в эффективности работы — КПД программиста снижается при увеличении продолжительности рабочего дня.

С ребенком надо сидеть лет до 3 пока он в сад не пойдет.
Это кто вам такое сказал? А почему не 18ти?

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

А если хотите остаться на хорошем счету в фирме — найдите того, кто с ним будет сидеть. Можно домой работу брать, если фирма согласна.

Как я уже сказал: выход на работу через полгода, от силы год после рождения ребёнка — это то, что я практически наблюдал, это не какие-то теоретические изыскания. А уж кто там после этого сидит с ребёнком — тут вариантов много…

В сад берут что-то начиная с 2,6-2,8. Это так. Но это именно десткий сад, а не ясли.

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

Если вы программист, вы должны уметь оптимизировать алгоритмы.
Найдете решение как и кто может сидеть с ребенком.

Cнять для родителей квартиру поближе? Поискать няню?
Договориться о работе удаленно в течение первого года?

P.S. Сотрудница — девушка-тимлид в декрете была около 6 месяцев.
С ребенком надо сидеть лет до 3 пока он в сад не пойдет.

А почему именно до трёх лет? Почему не до двух или четырёх?


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


Да и спихивать детей на чужих людей — так себе затея.

Почему? С точки зрения развития ребёнка, больше важен процент отказов во внимании, а не сам факт присутствия родителей рядом. А программист, который разрывается между работой и ребёнком, будет постоянно отказывать ребёнку во внимании.


P.S. У меня жена-программист с первым ребёнком тоже так считала (до 3 лет с ребёнком вместе), как оказалось — зря. Со вторым, скорее всего, будет уже сидеть няня, начиная с года.

А на Кипре например декрет 4 месяца. И ничего, выходят потом на работу. Детей или бабушкам, или в ясли. Если много денег, можно и няню.
UFO landed and left these words here
Знаете, со своими детьми я уж как-нибудь сам разберусь :)
А спихнуть их на «левых» людей рано или поздно все равно придется. Они же, ведь какой ужас, пойдут потом в школу (на том же Кипре с 6 лет, а в Нидерландах с 4 лет). Особого отличия школы от садика я не наблюдаю (мои дети успели походить и туда, и туда).
В Африке может и хуже, я там не был. А вот кипрские дети вполне довольны жизнью. Как-то я не замечаю, чтобы они страдали от такого положения дел по сравнению с российскими детьми.
Хороший подход, кстати, не понимаю ваших негативных коннотаций. Я боюсь водить машину, я не вожу машину. Я не хочу тратить время на вождение машины, я не вожу машину. Я боюсь заводить детей, я не завожу детей. Ну и так далее.
с таким подходом вам не детей заводить надо, а тренироваться на рабках.

Яжемать, как это будущего заюшечку чужим людям доверю?
А почему 10, почему сразу не 50?

Самое сложное — первый год, когда ты не высыпаешься, когда ребенок не может подождать тебя 5-10-20 минут, если начинает кричать. Через полгода уже проще, через год еще проще. А когда с ним можно уже поговорить, то выделить себе 1 час непрерывного времени на опенсорс или другое хобби гораздо проще, чем в первые 1-2 года.
Потом ребенка надо водить (чаще — возить) на кружки, забирать из школы и все такое. На это уходит прорва времени. При условии 1 кружка, от 2 до 3 вечеров в неделю у вас будет уходить на эти логистические упражнения, а с двумя кружками — от 2 до 6 вечеров.
Плюс очень многое зависит от характера ребенка — кто-то в 7 лет вполне самостоятельный, кого-то и в 14 надо собирать в школу и на кружки.
Потом ребенка надо водить (чаще — возить) на кружки, забирать из школы и все такое.

Это ваши проблемы. Я не вижу особой необходимости в кружках для развития ребёнка, особенно если они требуют кучу времени.


Если мне вдруг нужно будет ребёнка возить в школу или сад, то я просто куплю/сниму квартиру возле школы — мне моё время дорого.

Поговорим, когда у вас будет ребенок в этом возрасте, а лучше — пара детей. Знаю три основным причины, по которым у детей нет кружков:
1) кружков просто нет. Так случается, если родители живут в некоей попе мира, деревне или депрессушном городке, где все буквально или умерло или разорилось. Shit happens
2) нет денег на кружки. Это случается гораздо чаще, и это печально.
3) родители забили на свое чадо. Что надо — выучит самостоятельно по самоучителю найденному в интернете (ага).

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

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

Поверьте мне, я рос тогда, когда мои родители не могли мне позволить кружков (правда тогда возить детей еще не было нужды, ибо люди были еще не настолько дикими) и максимум, на что их хватало — это на оплату дополнительных уроков в лицее.
Ну вот лично меня не водили ни на кружки, ни на курсы. Всё, что было — это бассейн раз в неделю в первом классе. Ни о чём не жалею. Зато у меня было детство, а не бесконечная учёба с утра до вечера.

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

Кроме того, не забываем, что речь идёт о высокооплачиваемом IT. Если оба родителя — программиста, то деньги вообще не являются проблемой.
UFO landed and left these words here
У меня другой опыт. Первый год — самый простой: желания ребёнка простые и легко удовлетворяемые, ребёнок много спит. Если ребёнок хочет телесного контакта — не вопрос, можно положить на колени и продолжить программировать.
Как верно заметили выше — интересно будет посмотреть на ваши суждения, когда ребенок подрастет и еще появится второй или третий.
И, кстати, с опытом приходит понимание, что иногда жена может сказать, что «все отлично, дорогой. Так и продолжай!». А сама на самом деле уже на пределе.
Короче, аккуратней с посиделками дома за компом, когда жена в поте лица носится с ребенком. Рекомендую на этот случай нанять дополнительно няню, которая будет вас заменять, пока вы котрибьютите в OpenSource.
Вот это вот «посмотрим что ты скажешь когда ХХХ» — очень любимый аргумент всеми. В основном потому, что можно строить из себя опытного дядьку, и аппелировать только к собственной «мудрости», и противопоставить то нечего.
И даже когда через 10 лет окажется, что вы несли херню — это всё равно значения иметь уже не будет.

Нужно садиться за комп, когда жена садится за комп, что-нибудь для себя попрогать. :)

А если у тебя не один ребенок, а 4 у тебя нет бабушек, нянь и т.д., Ты тратишь 2 часа на дорогу, 8 часов рабочего времени, причем все библиотеки уже добавлены и им больше 7-ми лет, по выходным ты подрабатываешь (ипотека и в отпуск хочется), код показывать нельзя да особо и нечего, пишешь в основном xml и for с if (все давно уже отлажено), читать бесполезно ( забываешь без использования через месяц, что прочел). И что говорить работодателю???????

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

Няня не всегда вопрос денег.

В дороге контрибутить?


P.S. хотел поставить смайлик, но по при желании вполне реально ведь в некоторых случаях.

ВСё всегда сводится к одному: либо хочешь, либо не хочешь.
Время и остальное вторично.
Понятно, что если тот же OpenSource интересен, но в списке на 50 позиции — не будешь контрибьютить. Понятно, что если занимаешься OpenSource или чем угодно другим — значит, жертвуешь чем-то в пользу этого дела.
Лично меня просто удивляет, что отсутствие проектов аргументируют — невозможно найти на это время!
Но это же не правильная формулировка. Правильнее «У меня есть дела и поинтереснее».

Ну, иногда может быть, что действительно обязательные дела занимают всё время. Максимум, какие-то слабопредсказуемые окна по 10-15 минут образуются несколько раз за день, но именно для опенсорса это как-то маловато, вот собрать их хотя бы в час непрерывно — другой разговор.

Меня больше удивляет неприкрытая агрессия в адрес тех, у кого это — одно из самых интересных дел. Хотя причины-то на самом деле ясны, и в одном из похожих тредов высказывались: те, кому это интересно, задают планку, уровень и «втягивают остальных в свои крысиные гонки».

И на самом деле удивляет поддержка этой агрессии, судя по треду.
Вообще не удивительно.
Люди, хотят работать с 9 до 18, и получать столько же, сколько те, кто любит дело и занимается им в своё свободное время, изучая новое и контрибьютя в OS.
Их можно понять. Я сам такой. Много вещей, которыми хочу заняться, но понимаю, что если забью на самообучение — быстро сольюсь.
Да, «удивительно» — неправильное слово, согласен. Но подбирать слово лучше долго.

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

Но мы же тут все вроде умные люди и по идее должны быть способны отличать реалистичные хотелки от нереалистичных. Поэтому приходится что-то выбирать и реалистично ботать матан вечерами и выходными, например.
Люди, хотят работать с 9 до 18, и получать столько же, сколько те, кто любит дело и занимается им в своё свободное время, изучая новое и контрибьютя в OS.
А почему, собственно? Почему люди, объективно делая меньше они требуют такую же оплату? Почему работая 40 часов в неделю, как в России, хотят, чтобы платили им, как Корейцам, у которых работая неделя 68 часов (да, я в курсе, что месяц наза её сократили до 52 часов).

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

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

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

Это всё очень энергозатратный и, кроме того, бьющий по эго процесс.
UFO landed and left these words here
Я мало что знаю про эту психотерапию, но, по идее, из общих соображений, она должна бы делать людей, ну, я не знаю, счастливее, что ли, а не просто эффективнее.
> А почему, собственно? Почему люди, объективно делая меньше они требуют такую же оплату?

Погодите, но человек, который на работе чесал яйца и смотрел видосы про котиков, и потому после нее идет опенсорсить часик-другой — объективно делает МЕНЬШЕ, чем человек, который честно работает с 9 до 18.
А тот, кто на работе чесал яйца и смотрел видосы про котиков, и потом после неё идёт дальше чесать яйца и смотреть видосы про котиков (ну или домой к жене), тот делает меньше, кто после того же делает опенсорс. И что?

При прочих равных надо сравнивать. Или оба чешут яйца, а потом один идёт контрибьютить, а второй валяться на диване, или оба честно работают, а потом один идёт контрибьютить, а второй валяться на диване.


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

> При прочих равных надо сравнивать. Или оба чешут яйца, а потом один идёт контрибьютить, а второй валяться на диване, или оба честно работают, а потом один идёт контрибьютить, а второй валяться на диване.

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

> В целом предполагается, что первый более эффективен, хотя бы потому что объективно больше опыта разработки «в часах» при равном стаже «в годах».

Так видите ли в чем дело, далеко не факт, что у него опыт действительно больше, и далеко не факт, что если он и больше — то это какой-то актуальный и полезный для работы опыт (в подавляющем большинстве случаев — как раз бесполезный, уже это обсуждали, что программирования для гитхаба и программирование для работы, процессы не связанные и друг другу буста скиллов не дают).
Зато вот то, что человек, который после работы идет плодотворно коммитит гитхабы, на работе работает спустя рукава — это уже факт.
При прочих равных не получится, потому что человек, который 8 часов работал, а не отдыхал с перерывами на работу, не будет в состоянии чего-то контрибьютить.

Спорно


Зато вот то, что человек, который после работы идет плодотворно коммитит гитхабы, на работе работает спустя рукава — это уже факт.

Откуда этот факт? Есть ссылка на исследование?

> Спорно

Прошу прощения, но что тут спорного? Все просто и логично — если человек пришел и контрибьютит, то он не устал. Если не устал — значит мог на работе работать с большей выкладкой. Он этого не сделал. На самом деле даже 8 часов работы с полной концентрацией — это нонсенс, после такого подавляющее большинство людей дорогу на светофоре с трудом перейти сумеет, не говоря уже о написании сколько-нибудь качественного кода. Просто на практике из этих 8 часов лишь часть приходится на эффективный труд. У кого-то, конечно, больше, а у кого-то — меньше.
Все просто и логично — если человек пришел и контрибьютит, то он не устал. Если не устал — значит мог на работе работать с большей выкладкой.
Вывод неверный.

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

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

Как же это неверный? Если у человека остались силы — значит он их не потратил. А мог потратить.

> В норме у человека остаются-таки ресурсы не только на переход дороги, а и на другие вещи… а дальше — каждый решает сам для себя на что из потратить.

Ну так вот, один человек решает эти ресурсы потратить на работу, в рабочее время. А другой — решил потратить на опенсорс. Кто полезнее для работодателя? Уж извините, но я уверен, что первый. По-моему понятно, почему. А вот откуда у вас уверенность в том, что более полезным окажется второй? Мне непонятно.
То есть, правильный ответ на вопрос «какие у вас хобби?» — «никаких, я полностью выкладываюсь на работе»?
Если хотите там работать, по опыту общения на интервью с JetBrains на вопрос «кем видите себя через 5 лет» нужно отвечать «крутым техническим специалистом у вас в компании на всем стеке и на всех языках программирования» но совсем не правду о личных проектах в свое свободное время и дополнительном изучении не относящегося к текущей работе.

Единственный вариант честной работы — прийти домой и лечь спать часов на 12, проснуться и идти на работу?

«Это уже факт» — отлично. Давайте подтверждения этого факта.
А вообще, ничего не мешает отдыхать занимаясь Pet проектом. Это совсем не таже эмоциональная и психологическая нагрузка как работа.
Это совсем не таже эмоциональная и психологическая нагрузка как работа.

«Психологическая» — ключевое слово, да. Поддерживать совместимость со старыми версиями компиляторов, заниматься не очень интересными мне багрепортами и всяким таким мне действительно стало существенно сложнее. Ну так я и послал подальше этот аспект и сижу себе дальше счастливо пишу код.
При прочих равных не получится, потому что человек, который 8 часов работал, а не отдыхал с перерывами на работу, не будет в состоянии чего-то контрибьютить.

А плодотворно воспитывать детей и помогать жене он будет в состоянии? Или семейным людям по вашей логике тоже надо снижать оплату и что-нибудь ещё?

Аналогичный вопрос, на самом деле, про любое хобби чуть сложнее и ресурсозатратнее, чем лежать на диване.
> А плодотворно воспитывать детей и помогать жене он будет в состоянии?

Конечно, нет! Но у него отсутствует выбор, приходится воспитывать и помогать со сниженной эффективностью. А вот не контрибьютить в опенсорс код заведомо низкого качества — у него выбор есть. И он не контрибьютит.
Просто чтобы уточнить, я правильно понимаю, что вы утверждаете, что любой хорошо работающий человек даёт воспитание заведомо низкого качества?
«качество» — это понятие относительное. Поскольку подавляющее большинство дающих воспитание людей, с-но, работают, то при прочих равных это и будет «хорошим качеством воспитания». А если бы они же не работали — то качество было бы лучше. Назовем его «очень хорошим». Безусловно, если человек не приходит с работы уставшим, то он может заниматься воспитательным процессом более качественно, чем если наоборот.
«качество» — это понятие относительное. Поскольку подавляющее большинство коммитящих в опенсорс людей, с-но, работают, то при прочих равных это и будет «хорошим качеством кода». А если бы они же не работали в полную силу — то качество было бы лучше. Назовем его «очень хорошим». Безусловно, если человек не приходит с работы уставшим, то он может заниматься опенсорсом более качественно, чем если наоборот.
> с-но, работают, то при прочих равных это и будет «хорошим качеством кода»

Но код ограничивается не только опенсорсом. В случае воспитания — мы сравниваем качество воспитания уставшим родителем с качеством существующего воспитания _в общем_.

В случае написания кода — мы сравниваем качество кода, написанного уставшим программистом, с качеством кода _в общем_ (в том числе, не опенсорс).

Ну вот, если качество воспитания работающими родителями можно считать «хорошим», то и код, написанный работающими людьми, тоже можно считать «хорошим». Воспитание мы тоже сравниваем «в общем», в том числе и с учетом тех, кто не работает, у кого «талант к воспитанию», и т.д.
> Воспитание мы тоже сравниваем «в общем», в том числе и с учетом тех, кто не работает, у кого «талант к воспитанию», и т.д.

Но мы сравниваем со «средней температурой по больнице», а не с максимальной. По-этому те, кто имеет талант и т.п. не дают значимого вклада просто статистически.
> Люди, хотят работать с 9 до 18, и получать столько же, сколько те, кто любит дело и занимается им в своё свободное время, изучая новое и контрибьютя в OS.

Так работодателю только хуже от того, что его работник контрибьютит в ОС, вместо того, чтобы работать. Логично, что у людей с большим гитхабом и зп должна быть по-меньше.
Потому что в том мире, откуда прилетел Druu у каждого индувидуума есть счётчик: на кодирование — 6 часов в день, больше никак. Так что если всё потратишь на работу — на opensource не останется.

В нашем мире, правда, есть такие вещи как «тренировка», «адаптация» и другие вещи, но дык эта… тяжело инопланетянам на другой планете — это завсегда так.
> Потому что в том мире, откуда прилетел Druu у каждого индувидуума есть счётчик: на кодирование — 6 часов в день, больше никак. Так что если всё потратишь на работу — на opensource не останется.

Да нет, все гораздо проще. Если вы пришли после работы и контрибьютите, то вы могли бы эту энергию затратить на более качественное решение рабочих задач на работе (сколько бы этой лишней энергии ни было). Но вы этого не сделали. Что в этом хорошего для работодателя? Чем человек, который выкладывается на 100% хуже, чем тот, который старается сберечь силы на «надо же еще после работы в ОС пару коммитов сделать...»?
Если вы пришли после работы и контрибьютите, то вы могли бы эту энергию затратить на более качественное решение рабочих задач на работе (сколько бы этой лишней энергии ни было).
Как я уже сказал — на вашей планете (не скажете, кстати, где она и как называется?) наверное да.

Чем человек, который выкладывается на 100% хуже, чем тот, который старается сберечь силы на «надо же еще после работы в ОС пару коммитов сделать...»?
Тем что человек, у которого нет хобби не может быть нормальным программистом. Ну вот так как-то получается. Подход «если ты контрибутишь в опенсорс, сочиняешь стихи или тратишь время на Хабре, то ты теряешь время зря — давай работать… время поспать часов восемь мы тебе дадим, так уж и быть!» приводит к тому, что у вас остаются одни «китайцы», порождающие много-много бессмысленного кода.

Вот заставить таскать мешки с утра до ночи — получается (и то с оговорками: к концу 16-часовой смены производительность всё равно падает). А писать программы — нет.

А если у человека остаётся время на хобби, то непонятно чем работа на оперсорс хуже срачей на Хабре. Только не надо мне рассказывать про то, что программирование на работе и работа с опенсорс — это одно и то же. Я ещё ни одного работодателя не видел, где были бы готовы терперь пока вы «что-то такое» сделаете годами и обсуждать потом то, что вы сотворили месяцами (что и разумно, у них бизнес, у них планы, им не до вашего «полёта мысли»).
> Как я уже сказал — на вашей планете (не скажете, кстати, где она и как называется?) наверное да.

Земля, третья от Солнца.

> А если у человека остаётся время на хобби, то непонятно чем работа на оперсорс хуже срачей на Хабре.

Уровнем ответственности, уважаемый, уровнем ответственности. Треп на хабре — это просто треп на хабре, я никому тут ничем не обязан, и если напишу какой-то «плохой» пост, то, максимум, любой пользователь мне волен поставить минус в карму, риск чего я принимаю, принимая правила данного ресурса (ну а иначе просто и нефиг постить). И мне тут вобщем-то плевать устал я, не устал. Может, я вообще пьян? Да ради бога, это просто обычный разговор с людьми. Исключение составляют разве что посты, связанные с объяснением технических деталей — надо понимать, что их может читать человек, который не разбирается в вопросе, это следует учитывать и подходить к написанию таких постов более ответственно, чтобы не ввести такого человека в заблуждение.

С другой стороны, если я пишу код и его на всеобщее обозрение выкладываю, да еще потом и потенциально работодателю — то я неким образом гарантирую его качество. Которое я не уверен совсем, что смогу обеспечить, если устал. Точно также, я не пишу код, когда я пьян.

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

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

Вот в этом и вся разница. «THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND…» в шапке каждого файла и LICENSE в корне проекта. В своё время, ещё до полноценных фуллтайм- или даже парт-тайм-работ я как-то заморачивался какой-то ответственностью, полезностью, распространённостью и прочими словами, убивающими драйв у тех, кому доставляет сам процесс. А потом перестал париться, и мои волосы стали мягкими и шелковистыми.

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

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

А с потенциальными работодателями и кодом для них разговор вообще отдельный.
> Вот в этом и вся разница. «THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND…»

Ну, понимаете, я не являюсь профессиональным скрипачом и по-этому мне плевать, если я играю плохо (даже если кому-то по просьбе, а не себе), потому как это хобби.
Но я являюсь профессиональным программистом и мне лично кажется, что «WITHOUT WARRANTY OF ANY KIND» и все такое — это просто некая отмазка в данном случае и притом кривая. Профессионал выполняет работу профессионально, пусть там и «WITHOUT WARRANTY OF ANY KIND». А наговнокодить что-то там, под соусом «ну я устал, ну это ж не работа, ну я никому ничего не должен и вообще визаут варранти» как-то недопустимо с точки зрения, скажем так, профессиональной гордости. Вот мы вроде с вами обсуждали пример врачей, которые иногда работают в больницах бесплатно. Вы представляете, чтобы такой врач при этом работал спустя рукава, потому что ну бесплатно же и «без варрантей»? Ну я как-то нет. Точно также я не представляю, чтобы он пошел туда (без необходимости) работать уставшим, с риском допустить ошибку. Или мы такого врача назовем, ну, плохим врачом.
Я стараюсь писать говнокода столько же, сколько на работе (даже меньше, потому что личная эстетика и я могу себе это позволить). Но вместе с тем я могу позволить себе класть на хотелки юзеров или кого там. Или, да, действительно, сказать, что баг в гуях, но за это отвечает какой-то третий компонент или хтмл-движок вообще, и мне лень с этим ковыряться.

Врача, который в свободное время отказывается принимать неинтересных ему пациентов, но принимает интересных и относится к ним со всей внимательностью и качеством работы, я бы не назвал плохим. Имеет право.
Но я являюсь профессиональным программистом и мне лично кажется, что «WITHOUT WARRANTY OF ANY KIND» и все такое — это просто некая отмазка в данном случае и притом кривая.

Тогда специально для вас в договор нужно добавить пункт что пожизненно вы отвечаете за все дефекты кода, который вы написали. И что все исправления вы будете, как ответственный профессионал, делать в течении дня с момента уведомления вас о дефекте и бесплатно. И это реальный пункт договора, который мне пытались дать на подпись.
Ну вот например, надо вам сделать какую-то операцию, и у вас есть выбор — чтобы ее делал, при прочих равных, хирург, который только что закончил 8-часовую операцию, или другой хирург, который только пришел, свежий и отдохнувший. Кого выберите и почему?
Того, у кого больше опыта. Потому что хирург, сделавший за свою жизнь несколько тысяч операций, сделает всё лучше и качественнее, чем тот, кто сделал сотню или, того хуже, несколько десятков. Даже если он будет уставшим после 8-часовой операции. Амосов по 12 часов день оперировал — тем не менее к нему, уставшему и не отдохнувшему, люди старались пробиться… а к молодым аспирантам — нет.

То же самое — и в программировании. Хороший пример, кстати.

А если надо написать код для решения какой-то задачи, то вы при прочих равных выбираете программиста, который уже отпахал 8 часов, или того, который свежий и отдохнувший выпил кофейку и готов к труду и обороне? Почему?
А нет прочих равных. Тот, кто «пашет» — имеет опыт и я, как правило, могу быть уверен в том, что он всё сделает. А Wally мне нафиг не нужен — пусть он будет суперотдохнувшим и «готовым к работе».

Причина — та же, что и с хирургами.
> Того, у кого больше опыта.

Я же говорю — «при прочих равных» Просто ответьте на вопрос.
Мы тут «сферических коней» обсуждаем? Или реальных сотрудников?

Ну не могут быть два человека «прочими равными» за исключением одного показателя. Хотя бы потому что если человек уже «отпахал 8 часов» то эти 8 часов на него несомненно повлияли. Если это время он копался в кишках той подсистемы, которую мне нужно править — то я однозначно предпочту его, так как ему сделать изменение будет проще. А если мешки грузил и у него руки дрожат — тогда вряд ли.

И это если мы забудем об Open Source и о том, что у наших двух друзей очевидно разная квалификация в принципе (один — исповедует принцип «не высовывайся» и ничего нового не изучает, другой — обладает более широкими навыками).

Зачем вам ответ на вопрос который не имеет никакого отношения к реальной жизни?
Давайте посмотрим на это с другой стороны
Предположим, у вас появится семья, ремонт, вы (не дай конечно вселенная) чем-то очень серьезно заболеете. Будете ли вы готовы к тому, что вам тут же, моментально, сольют зарплату (или вообще «уйдут»)?
Будете ли вы готовы к тому, что вам тут же, моментально, сольют зарплату (или вообще «уйдут»)?
Почему моментально-то? Что — зарплату поднимают на следующий день после того, как у вас появляется патчи в KDE? Нет же — это нужно довольно долго контрибутить, чтобы это заметили.

То есть речь идёт не об одномоментном «сливании зарплаты» (в наказание за то, что «посмели заболеть»), а том, что будет происходить несколько лет. А тут… у вас что — есть выбор? Нет, зарплату вам срежут, конечно, не за то, что вы больной или на ремонте занятый. А за то, что ваш сосед сделает больше. Но в сухом остатке — будет то же самое.
несколько лет…
Почему бы тогда и в OpenSource не контрибутить раз в несколько лет?
Просто тут и вопрос как я понимаю ставится о том, чтобы делать это боле-менее постоянно. То есть, если ты занимаешься этим постоянно, то зарплата выше, если нет — то ниже. Разве не так?
В таком случае, как только работатадель видит, что в течении например следующего месяца вы не имеете возможность контрибутить в OS (задерживаться на работе, просто программировать для себя и т.д.), он снижает зарплату. Справедливо?
Нет, это не бинарное явление контрибутил-неконтрибутил. Почитайте ниже мой пост про игру. Потратили 100 часов на опенсорс — прилетело 5 очков в параметр «занимался опенсорсом», который в свою очередь повышает зарплату. Если ты перестал заниматься опенсорсом — больше очки в этот параметр не прилетают и именно он твою зарплату не повышает еще сильнее.
То есть, это не требование постоянной работы? Захотел повышения раз в год — потратил пару часов на опенсорс и все?
Вы выборочно читаете? Или вообще не читаете, а сами придумываете, а потом отвечаете сами себе?
Что я выборочно читаю? Проясните свою позицию. Я предложил 2 варианта — или работник занимается опенсорсом постоянно или время от времени. Вы ни один этот вариант не подтвердили. Тогда что?
Я предложил 2 варианта — или работник занимается опенсорсом постоянно или время от времени

Скажите, а вы — негр или индеец? Выберите из двух.

Проясните свою позицию

Я дал вам ссылку на комментарий, где я поясняю свою позицию. Вы его прочитали? Если да, то почему задаете глупые вопросы?
Я русский. Смотрите, не так уж сложно уточнить.

Ссылку я прочитал. Там говорится о каких-то баллах и о том, что проект, сделанный вами 7 лет назад, приносит профит
Ну вот представьте, что вы накапливаете баллы, когда коммитите в опенсорс, но когда делаете перерыв — эти баллы не исчезают
Ну это я примерно понял.
Я не понял связи между количеством баллов и зарплатой.
Вот предположим, я хочу увеличить зарплату на x%. Сколько баллов для этого я должен набрать? И что вообще такое балл?

Да и вообще как-то странно, что баллы не имеют срока давности, но это уж ваше дело
Формулы нету, я просто описал, как оно приблизительно работает. На образном примере. У вас есть хоть капля воображения? Нету никаких баллов и мы не в РПГ, я просто на их примере передал мысль.
На самом деле они дисконтируются как-то, потому что тот опыт, который я получал 10 лет назад, сегодня чуть менее релевантен. Да, в том числе и на нём основывается последующий опыт, но всё же.
Почему бы тогда и в OpenSource не контрибутить раз в несколько лет?

Потому что толку в этом нет.

Я контрибьючу не для того, чтобы мне зарплату поднимали, а просто потому, что мне это интересно. Хобби такое. Зарплаты всякие — дело десятое. От этого хобби важнее и первостепеннее скиллы, которые я при этом приобретаю, возможность поиграться с новыми технологиями, с новыми стандартами, с новыми идеями, и так далее, а влияние этих результатов на зарплату — лишь следствие.

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

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

То есть, если ты занимаешься этим постоянно, то зарплата выше, если нет — то ниже. Разве не так?

Нет, не так, см. выше.
Я не очень понял связи.

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

Да и изначально большая зарплата позволит лучше подготовиться к ремонтам и болезням.
Связь прозвучала здесь
> Люди, хотят работать с 9 до 18, и получать столько же, сколько те, кто любит дело и занимается им в своё свободное время, изучая новое и контрибьютя в OS.
Эта связь может выражаться не только как «работодатель платит за коммиты в опенсорс в свободное время».
Тем не менее мысль именно такая. Вложили +2 часа в опенсорс, работодатель увидел, что оказывается, можно работать продуктивнее, у работодателя поменялась планка качества, вы отрезали себе пути к отступлению

Если рассматривать идеальные (несбыточные) мечты, то тогда уж большей инвестицией будет разработать инструмент (язык программирования и т.п.) который позволит за то же рабочее время писать более качественные продукты.
А повышать качество продукта (пусть и опосредованно) путем заимствования из личного времени — это по моему плохо.
Нет, ну реально, давайте мы все будем работать по 12 часов в сутки, тогда и продукты все будут мегаоптимальными, и жить все будем намного лучше (в том смысле, что новый айфончик будет более пафосным)
Тем не менее мысль именно такая. Вложили +2 часа в опенсорс, работодатель увидел, что оказывается, можно работать продуктивнее, у работодателя поменялась планка качества, вы отрезали себе пути к отступлению

У кого, у вас? Ни у меня, ни у, я подозреваю, khim именно такой мысли не было.

Кроме того, опенсорс — это немного другой стиль работы, чем, ну, собственно, оплачиваемая работа. Работодатель немного расстроится, если я дропну поддержку всех C++-компиляторов, кроме ещё незарелиженного clang 7.0, или если я потрачу недельку на упарывание зубодробительными шаблонами, которые ещё в компании сможет прочитать полтора человека, просто потому, что мне охота, или если я пошлю юзера или ПМа подальше со словами «чё-т скучный баг/фича, не хочу чинить/реализовывать».

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

Экспериментирование с новыми языками, новыми стандартами уже известных вам языков, новыми библиотеками и новыми подходами позволяет именно это.

Нет, ну реально, давайте мы все будем работать по 12 часов в сутки

Никто не говорит о том, чтобы работать по 12 часов в сутки. То, что за 8-ю часами обычного рабочего дня, это не работа, а хобби. Просто повезло, что хобби в более-менее той же области, что и работа.
Давайте тогда определимся, вы отрицаете связь (в идеале) между вкладом в опенсорс и размером зарплаты?
Я отрицаю универсальность описанной вами связи в формулировке из вашего предыдущего комментария: «Вложили +2 часа в опенсорс, работодатель увидел, что оказывается, можно работать продуктивнее, у работодателя поменялась планка качества, вы отрезали себе пути к отступлению».

Приписку про идеал я не понял. Мы тут вроде не наши фантазии обсуждаем.

По субъективным оценкам на ограниченной случайной выборке есть положительная корреляция.

Вспомнилось, как пописывал свой опенсорс на четвёртом курсе в метро и в электричке в Долгопу и обратно.
Посмотрим, что будет, когда ребёнку будет полтора года и жена будет беременна вторым (или второй появится). Откуда время то? Утром в 6:00 проснулся, в 8:00 на работе, домой приехал в 18:00, сходил в магазин, поужинал — уже 19:30, искупали ребёнка и уложили спать — 20:30, поставили вещи стираться, погладили вчера постиранное, помыли посуду, прибрались — уже 21:30. Полчаса блаженно посидели ничего не делая и в 22:00 легли спать. И где-то ещё вечером нужно втиснуть непредвиденные занятия, игру с ребёнком (часто ему мамы недостаточно и нужен ещё и папа), готовку еды (если то, что сделали на выходных, закончилось). На выходных вообще кошмар и ужас — магазины, готовка, тотальная уборка, игра с ребёнком, поездка в парк, поездка к родственникам. К вечеру еле ноги таскаешь.
И это не говоря уже о том, что когда папа дома, то ребёнок требует, чтобы папа с ним играл, а не сидел за компом — реально скучает все дни без папы.
КАК можно найти время на OpenSource у нормального человека?
КАК можно найти время на OpenSource у нормального человека?

То есть у всех программистов всегда ребенок 1.5 года + жена еще одного родила?
Ответьте на вопрос, пожалуйста, до того, как жена родила первого, два года назад вы контрибутили в опенсорс?
У меня как у «нормального»(счиаю себя нормальным) нет траты времени на проезд на работу и с работы. Voila, два часа в день «лишних».
Я не хожу в магазин каждый день, а езжу раз в пару недель и закупаюсь надолго. Сколько это еще мне времени экономит?
Ну и по остальным пунктам вопросы.
Вы сами себе устроили жизнь, в которой ни на что нет времени. Это ваша проблема, а не проблема всех людей.
Если магазин по пути с работы домой (нулевой оверхед), то не вижу никаких проблем заходить в него раз в пару дней. Заодно можно будет покупать вещи, которые при затаривании на неделю-две вперёд купить попросту невозможно.
С тех пор как стали кисломолочку сами готовить и отказались от хлеба — продукты скоропортящиеся пропали.
А дороги с работы домой нет просто.

А мясо вы не едите? Или покупаете только замороженное? Клубника, арбузы, бабаны две недели тоже ждать не будут.


А дороги с работы домой нет просто.

Если дороги до работы нет, то можно совмещать прогулку с ребёнком с походом в магазин.

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

Во, первое же, чему меня обучили (когда стал поваром в заведении), что приехавшее мясо надо разделать, окуратно очистив от лишнего, и порционно (под задачи… примерно по 500гр — стандартное кол-во мяса при заказе на «двоих») зафасовать в пищевую пленку. И в морозилку, на «мгновенную заморозку» (там капитальный минус был помнится).
Когда нужно, сразу достаются брикеты (штук по 10) и кладутся на поддон возле жаровни — весьма шустро размораживается. Далее уже идет готовка.
Дома процесс примерно сопоставим — проблем тут особо нет.

*Такие брикеты, если обернуть корректно, могут и месяца три пролежать, не «высохнув».
Уважаемый, Вы меня сейчас невероятно удивили. Со многими Вашими комментариями я был согласен, со многими был не согласен, но впервые я вижу полезный лично для меня комментарий. Кстати, а Вы не собираетесь составить конкуренцию Meklon на кулинарном поприще? Было бы интересно почитать, и думаю, не только мне.
впервые я вижу полезный лично для меня комментарий

Эм… даже не знаю, честно говоря, как и реагировать (неужели я постоянно несу какую-то пургу?).

невероятно удивили

Так же смущен — чем же именно? Что я был поваром в прошлом? Или что худо-бедно знаю тонкости кулинарии, помимо эм… «программирования»?

на кулинарном поприще

Помнится не так давно ресурс (гиктаймс конечно, не хабр, но все же) был под волной «сам-издата». Многим очень сильно не пришлось по нраву.
А готовка категории «сложней, чем отварить пельмешков» — я даже не знаю, чем местные за такой разговор не по делу меня закидают.

Ну и да, есть один существенный нюанс из кулинарии — всем людям нравятся разные блюда, что требует разных подходов. И конечный результат зависит не только от исходного качества ингредиентов, но и от индивидуальных вкусовых ощущений. Иными словами один человек повторит и ему понравится, а другой повторит и потом захочет меня «отстранить от клавиатуры навечно (чтобы всякую пургу не нес)».

Ну а так да, я могу сделать «диетическую» (без мяса) версию борща за 30 минут с нуля. На курице за 40.
У нас в заведении был весьма жесткий регламент на горячие блюда — из холодильника борщ был под запретом, поэтому всегда свежим был.

UPD: Поэтому, с моей колокольни, надо просто идти на проф-форумы за всем этим.
/Разводя руками/ — банально не знаю, о чем стоило бы конкретно тут писать. Как делать Шоколадные блины и роллы с фруктами из них?
А это вопрос стилистики подачи) Я вот потихоньку экспериментирую с размягчением жесткого мяса инъекциями протеолитических ферментов, чтобы из подошвенной задницы получить стейк.
Увы, я только про «жаренное мороженное» могу поведать.
Это когда снаружи будет оболочка, хрустящая на зуб, а внутри мороженное на вкус заказа.
Но в домашних условиях такое не сделать — это и трата «кучи литров масел» + замызганная кухня от хорошего такого фритюра.

P.S. Блин, чего же я только не готовил то… иная жизнь была прям.
Как ни странно, но нет — если делать правильно, то мороженное не успеет растаять даже в кипящем масле.
Вот примерно то, что и я делал:
image

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

Раз уж тред медленно превратился в кулинарный форум, то может кто-нибудь подскажет: готовил пахлаву, но тесто получилось такое, как будто стекло жуешь.
Где я накосячил? Как сделать так, чтобы есть сладкое без крови? А то не кошерно, все таки.

В кулинарии есть две шкалы:
1) «рыхлое» — «связанное»
2) «сухое» — «мокрое»
Обычно люди сталкиваются с проблемами вида «не пропиталось» что-то одно, что портит вкус от блюда в целом. Скажем вам необходимо иметь мягкую и сочную морковь в салате или достаточной мягкости болгарский перец.
В случае с пахвалой у людей чаще всего проблема в «пропитке орехов», что кстати далеко не всегда зависит от прямоты рук (как, впрочем, и во всей кулинарии) — бывают «плохие» орехи.
Вам необходимо «связанное» тесто (т.е. не рыхлое) + «мокрое» (т.е. не сухое).
На первое влияет по большей степени состав/качество исходников. На второе — процесс приготовления.

По ингредиентам общие советы — старайтесь избегать маргарина, не жадничаем на дорогое масло сливочное.
Мука — только высшего сорта. Яйца старайтесь брать свежие. Практика показывает, что чем больший по объему желток, тем лучше. Вам его надо по больше. Если партия яиц с мелким желтком, тогда возможным решением будет взять еще один желток сверх нормы (гугл показывает как бутылкой сделать отделение).

По режиму готовки — надо смотреть на оборудование. Т.е. какого типажа «печка/плита» и «тара». В зависимости от соотношения площади к объему тары возможны вариации тех-процесса. Типаж печи вносит так же свои тонкости в приготовлении.
Попробуйте рецепт на дрожжевом тесте. Я пока лучше не нашла, с тестом фило получилось как раз как стекло.
Нафига мясо то свежим хранить?

Я вполне ощущаю разницу между стейком из только что купленного мяса и полежавшего несколько дней в морозильнике.

Двойное слепое, впрочем, не проводил. И замораживаю я его, может, как-то не так — мгновенную заморозку не использую, как ниже пишут, нет такой опции в моей морозилке.
У меня Whole Foods по пути домой. Оверхед на стояние очереди до кассы, на проход по магазину, и так далее.
Как минимум, экономить можно на глажке-уборке-стирке и прочих ритуалах.
еще можно экономить на чистке зубов, умывании, купании, стрижке и прочих ритуалах. Сказывают, на этом даже заработать можно.
Полчаса блаженно посидели ничего не делая

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

UFO landed and left these words here
Я сначала подумал, что это шглюк хабра и мне повторно уведомление пришло о старом сообщении.
Ваше сообщение один в один как то, что уже было выше.
Не интересно.
Вот смотрите, есть перекуры на работе. В момент перекура люди страдают херней, курят, болтают.
Я во время перекура забираю малышу у жены и таскаюсь с ним по дому разговаривая о какой нибудь ерунде. А она отдыхает.
На выходе — у меня перекур, у жены отдых, малыш развлекается.
Довод про «когда будет два» у меня во первых вызывает вопрос — нахрена мне два? И во вторых почему два, а не семь?

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

Если мне вдруг сейчас станет резко не хватать свободного времени, я просто стану работать 6 часов вместо 12 и у меня его появится куча. Станет меньше денег? Я и так зарабатывают несколько средних зарплат, да стану чуть беднее, но есть вещи и важнее денег.
Согласен на 98% (ну бывают редкие «особые случаи»). В целом считаю, что вы правы — OpneSource, это легендарная отмазка на сегодня, когда лениво трудиться над собеседованием и нет желания выдавать кредит доверия разработчику из non public enterprise.
Только полные задроты сидят бесплатно после работы в оупенсорсах и это медицинский факт.

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


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

В текущем месте, где я тружусь, около 1к айтишников всех мастей. Каждый сотрудник подписывал бумажку примерно следующего содержания «все что сделано на рабочем месте в рабочее время — принадлежит работодателю. Это касается презентаций, статей, докладов, выступлений и чего-то там еще».

В западных компаниях вообще подписывают документ который говорит о том что вообще любые наработки которые были сделаны во время работы в компании в том числе и у себя дома в 1 ночи принадлежат копании либо открыто разрешают вносить вклад в opensource и делать пет-проекты даже на работе. Довольно сложно определить что вы делали в компании а что нет. Единственный способ — тотальный контроль и слежка за сотрудником, но вот большинство сотрудников этого не любят и сваливают.

во время работы в компании в том числе и у себя дома в 1 ночи принадлежат копании

А это законно?

В принципе да, но над этим парятся только "серьезные компании"


Компании поменьше чаще всего над этим не парятся не у нас не на западе. Главное чтобы успевал по своим таскам, а что ты там делаешь — читаешь хабр, пишешь в twitter делаешь левак или катаешь в cs — всем как-то по барабану.

Возможно, это связано с повсеместной оплатой за жопочасы. Работник-то может и рад работать не 40 часов в неделю, а 20-30 часов, выполняя тот же объём работы, но тогда его зарплата упадёт. Вот и приходится страдать фигнёй на работе.

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


Такой подход позволит покачаться и более эффективно выполнять работу в будущем. Когда я был джуном у меня уходило 3 дня на то что сейчас я делаю за пару часов. Причем 1:30 я думаю как это правильно сделать и 30 минут собственно набираю код. Такой скачок производительности естественно заметят руководители (если они есть) и грамотный руководитель пересмотрит оплату, если же нет всегда есть шанс сменить работу с повышением оплаты. Правда ответственность и сложность вырастают с ростом карьеры, если раньше я менял ссылки на сайте, то теперь мне могут кинуть важный но не срочный эпик который я буду делать пол года в одиночку и на который по хорошему нужно 2 отдела. Правда от таких фортелей начинаешь выгорать.


Именно в такой период стоит посмотреть другие технологии, которые внезапно помогут сдать проект быстрее. Для меня php быдлокодера такой технологией стал React и он позволил мне сэкономить кучу времени на верстку однообразных компонентов — ui киты просто замечательная идея!


Если же совсем выгорел то стоит посмотреть смежные области работы, например вместо кодинга можно вести курсы или стать тимлидом. Пара коллег так и сделали — один устроился на постоянную работу в универ, второй взял на себя отдел, пусть из всего 2-х людей но они реально тащат!

У них — да, у нас — нет (в общем случае). Там много оговорок и формальностей надо выполнить, включая задания на разработку и ненормированный рабочий день + использование своего оборудования, чтобы это стало законным.
Резковато но согласен. Почему компании пытаясь нанять специалиста которого у них нет пытаются задавать тонны вопросов на которые ответ вне контекста даже и не вспомнишь? Не проще сформулировать текущую проблему или нанять человека на н времени или заключить контракт на решение н задач?
Найм специалиста — процесс долгий и сложный и нанимать его на одну задачу банально невыгодно.
По моему опыту компании понятия не имеют чем занять кандидата за пределами текущих проблем. Поэтому для меня вопросы в духе «кем вы видите себя через н лет». Да никем не вижу, если не на позицию руководителя устраиваюсь.
Вы или не имеете жены и детей

А это плохо?

Опенсорс в свободное время помогает развивать навыки, чтобы опыт был не только в рамках «разработки специфичных приложений на достаточно закрытой платформе». Опенсорс в свободное время (ну или не опенсорс, а, как вы пишете, задрачивание в камплюктер) помогают изучить что-то новое и интересное, с чем на работе вы не встретитесь никогда. Нет, конечно, это не всем нужно, кого-то устраивает с 9 до 5 отсидеть, а после работы у них своя жизнь, с женами и играми с детьми, и нафиг эту работу до следующего дня. А кто-то так не может, увы. И агрессивно называть их четырёхглазыми и полными задротами — это
дело такое
и навевает вопросы о том, кого сможет такой человек вырастить. Дитя его, может, и не будет говорить «слышь, дай прикурить, типа батя», но вот аналогичная агрессия к четырёхглазым одноклассникам уже вполне представима.


Ну и, кроме того, это просто интересно. Это хобби такое. Какие хобби у неполных задротов?

И не всё измеряется баблом, в конце концов.
Люто плюсую как отец трех детей.
Сначала у тебя нет опыта, чтобы достойно работать над опенсорсными проектами. Через 10 лет, когда он появится — уже нет времени. Поскольку для того, чтобы был результат, ты должен серьезно вложиться в дело. Серьезно вкладываться получается только в основную работу.
А совсем необязательно заморачиваться достойностью.

Ну и лютая часть опыта, которую я получил годам к 22-м и которая мне в 22 позволила иметь вполне честную (по техническим скиллам, по крайней мере, хрен с ними с soft skills) позицию синиора-помидора, она как раз была благодаря всякому опенсорсу.
я в 21 только из армии вернулся, какой тут soft skills. заморачиваться обязательно.
А вы в армию за 10 лет до того или таки позже пошли?

К тем же 22 годам я писал код практически ежедневно на протяжении лет восьми. Естественно, первые потуги были полным дерьмом, но это нормально.
Не достаточно? Нанимай меня, плати бабло и смотри всё что тебе нужно. Нет денег? Ищи студентов которые на гитхаб коммитят.

Ага, как ни глянь на гитхаб — одни студенты, бл…
> Да всегда, даже из кровавого энтерпрайза есть выход в open source в свободное время.

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

Так можно же без фанатизма — пол часа раз в пару дней.
Я не понимаю, какую задачу можно решить погружаясь в неё «по пол часа раз в пару дней». Может это специфика работы моего мозга, но чтобы выдать более менее нормальное решение, мне сначала нужно подумать около часа, затем не меняя контекст дольше чем на пять минут, сесть и начать кодить на несколько часов выдать хоть какое-то решение. Затем этот цикл можно повторять. Что за решение (опять же, в моём случае) можно выдать «за 30 минут, пару раз в неделю» я понятия не имею.
> Так можно же без фанатизма — пол часа раз в пару дней.

Прошу прощения, на какой результат вы «пол часа раз в пару дней» рассчитываете и к какому сроку? По моим прикидкам вам с таким темпом придется потратить лет эдак 50.
Но ведь смотря на что? Небольшая либа, маленькая игрушка, багфикс в популярный продукт.
То есть вы пятистрочным багфиксом работодателя восхитить решили?
Не обязательно, хотя почему нет?
Но я говорю, что опен-сорс — это не обязательно проект на 50 лет, к чему эти крайности?
Мы, вроде, обсуждаем некоторый опенсорс, который вы потом покажете будущему работодателю, как демонстрацию своего опыта и скиллов. Именно в таком контексте. В моем понимании это предполагает серьезный вклад в серьезный проект, а не экспериментальный тудулист, чтобы разобраться с новым модным фреймворком, или пару багфиксов в используемые библиотеки. Последнее вам поможет в том случае, если вы претендуете на позицию джуна, докажет, что вы хоть что-то действительно можете. Но если вы претендуете на позицию мидла и тем более сениора — это все игрушки, которые требуемый уровень квалификации подтвердить не смогут ну вообще никак. Разве нет?
И я не вижу как можно предоставить опенсорс, подтверждающий действительно высокую квалификацию, без значительных инвестиций по времени.
Такое впечатление, что вы представляете потенциального работодателя/собеседующего такими себе мудаком, который только и думает, как бы вас завалить, ищет к чему прицепиться, лишь бы найти причину не пускать вас поближе к его рабочему месту. Ну или робота, у которого есть только булева логика: «этот опенсорс недостаточно хорош, чтобы мы брали в расчет, так что галочку не ставим».

Там, с другой стороны стола, тоже сидит живой человек, который, обычно, имеет разум и адекватность и он не станет говорить что-то вроде: «фу, что за недостойный опенсорс ты мне показываешь?». Если бы мне человек сказал бы, что-то вроде: «вот пару месяцев назад я отправил небольшой пул-реквест в МобХ, его, правда не приняли, потому-что не совпадает с будущим видением команды разработки» — я бы не заявил: «ты что, на джуна пришел собеседоваться?? такие фразы недостойны мидла, а уж на синиора теперь даже рассчитывать не можешь».

Благо, Druu, ну это смешно ведь)) Опенсорс — это не булево «подходит/не подходит», это не черно-белое «хороший-плохой», это просто дополнительная интересная информация о потенциальном коллеге.

Вот почитать всех комментаторов — непонятно как оценивать потенциальных кандидатов вообще.
— Задачки нельзя — несчастный разработчик не может тратить свое драгоценное время на алчных работодателей
— На листочке/доске нельзя — нежный разработчик может быть травмирован стрессом от того, что пишет ручкой
— Ноут дать нельзя — как вообще можно разрабатывать на чужой машине, где нету IDE, да и вообще, как можно писать какой-то код, не сидя в удобном кресле и когда на тебя смотрят, это ведь ужасный стресс.
— Алгоритмы спрашивать нельзя — это ведь только олимпиадники их решают, а в реальной практике такого не используется, так что все позабывалось
— Опенсорс смотреть нельзя, ведь у каждого программиста трое детей, 10 лет, 2 лет и новорожденный, он ответственный отец, а значит не до опенсорса ему.

Такое впечатление, что кандидата я должен оценивать при помощи астрального шара. В резюме люди врут, серьезно.
* Пишут «писал хайлоад», а когда спрашиваешь — «все пишут, вот и я написал, но у нас было максимум 100 запросов в сутки».
* Пишут «паттерны проектирования», а когда спрашиваешь — они делают удивленные глаза и говорят: «а что это?». Блин, чувак, ты хоть свое резюме прочитай перед собеседованием, если тебе его друг-программист писал.
* Не могут рассказать, как бы они написали игру орел-решка (загадываешь сторону, комп подбрасывает монетку и отвечает, угадал ли ты). Ну да, такую что в 5 строчек пишется.
* Пишут «10 лет опыта, Senior JS Developer», а никогда не слышали терминов «прототип», «замыкание», не слышали о методе «bind» и не знают, какой баг будет в этом примере, а если им укажешь на баг — не могут придумать ни одного решения:

<button>0</button>
<button>1</button>
<button>2</button>
<button>3</button>

var buttons = document.querySelectorAll('button');

for (var i = 0; i < buttons.length; i++) {
    buttons[i].onlick = function () {
        alert(i);
    }
}


Серьезно, со всеми этими приколами я сталкивался, когда собеседовал народ в Wargaming на позицию Senior Javascript Developer. Они 10 лет вставляли пару снипетов на JQuery со StackOverflow в 5 разных конторах и так и жили и у них довольно неплохое резюме — куча контор, сначала Jun, потом Mid, а в последней уже Senior был, а уровень — максимум на очень слабого миддла.

Так ответьте мне, Druu, как правильно собеседовать столь ранимых существ, есил каждый вариант может кого-то обидеть, возмутить, что я, тварь дражащая, посмел задавать им столь возмутительные вопросы?
> Такое впечатление, что вы представляете потенциального работодателя/собеседующего такими себе мудаком

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

> Вот почитать всех комментаторов — непонятно как оценивать потенциальных кандидатов вообще.

Почему бы не провести вместе с ним ревью какой-то уже выполненной задачи? Реальной, конечно, из реального проекта, над которым он потом (возможно) работать будет. Есть, конечно, риск того, что кандидат поглядит на говнокод и сбежит :)

> * Пишут… пишут… пишут…

А если у него три тудулиста на гитхабе, да еще и непринятый пр в мобх, то это, конечно, показатель. Что и в хайлоаде, и в паттернах, и кофе хорошо заваривает. Так что ли?
Вы опять в крайности впадаете. Гитхаб — это лишь маленький плюс, тема для разговора.

ревью какой-то уже выполненной задачи

Серьезно? Без понимания бизнес-требований? Без понимания существующей архитектуры проекта? Как вы себе это представляете? Просто фичу посмотреть — это разве что вкусовщина вроде: «вы тут пробельчик не такой как там поставили». А то, что человек может прочитать код не означает, что он может написать такой же.

Что и в хайлоаде, и в паттернах, и кофе хорошо заваривает

Вы так говорите (судя по шутке с кофе), словно я слишком много требую от кандидата. Разве «не врать в резюме» — это так много?

Багфикс в опенсорс продукте, конечно, не докажет, что он шарит в хайлоаде, но это еще один шажок в оценке кандидата.
> Вы опять в крайности впадаете. Гитхаб — это лишь маленький плюс, тема для разговора.

Я не впадаю ни в какие крайности, а обсуждаю то, что обсуждается со старта этой ветки. Напоминаю — человек сказал, что если показать по работе нечего (НДА), то всегда же есть опенсорс. На что закономерное возражение — ну нету физически времени на то, чтобы получить условный гитхаб с проектами того же качества, что делаются на работе. Если только вы не коммитите на регулярной основе в опенсорс по работе. Еще раз — гитхаб, рассматриваемый в качестве основного источника информации о скиллах разработчика, это конкретно контекст данной ветки обсуждения. Если вы хотите обсудить что-то другое, ради бога, но только тогда явно сформулируйте, чтобы было понятно. Может, тут и спорить будет не о чем?

> Серьезно? Без понимания бизнес-требований? Без понимания существующей архитектуры проекта? Как вы себе это представляете?

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

> Вы так говорите (судя по шутке с кофе), словно я слишком много требую от кандидата. Разве «не врать в резюме» — это так много?

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

Хорошо. Я считаю, что любой вклад в опенсорс (любой, от самого маленького, до огромного) — это еще один кирпичик в понимание того, подходит ли кандидат. Даже большого недостаточно, чтобы сложить мнение и даже маленький может для какого-то кандидата стать недостающим плюсом. Потому не нужно впадать в крайности «или опенсорс на 50 лет, или ничего». Опенсорс — дает просто определенное количество, грубо говоря, баллов. Представьте, что это ролевая игра, где вы — персонаж игры и вкладываете часы в разные пункты. Вот вы вложили в 5 пунктов в семью, повысился уровень счастья, вот 2 пункта в опенсорс — увеличился уровень престижа и вероятность получить работу на 1%. А вложите 20 пунктов — вероятность увеличится на 5%. 100 пунктов — 10%. Я понимаю, что я сейчас идеализирую, но это лишь пример.

Мне мой вклад в опенсорс 7летней давности до сих пор крайне положительно агукается на собеседованиях. Да даже клевую статью на Хабре можно кинуть перед собеседованием и обо мне уже сложится дополнительное впечатление.

Аналогично, когда я собеседовал десятками, если не сотнями ЖС-программистов — я заходил и на гитхаб, и смотрел единичные коммиты. Читал статьи, просматривал выступления. Да, я был лидом команды и ответственно подходил к своей работе, а отбор людей в команду был частью моей работы. И даже единичные коммиты на Гитхабе, которые я мог бы посмотреть были маленькими плюсами к моему решению.
А что насчет тех, чей вклад в опенсорс отсутствует на гитхабе в силу отсутствия гитхаба и гита в те годы, когда у человека было время на опенсорс?
Тогда был гугл-код, а еще раньше — мейллисты. А вообще — это ведь только бонус. Нету вклада — нету бонуса. Зато, может, есть другие бонусы. Большинство людей, которые я тогда нанял были без вклада в ОС (просто именно с вкладом было довольно мало, к сожалению)
Offtop
buttons[i].onlick

Какой интересный event :)

Вот не согласен с парой багфиксов и в роли соискателя, и в роли представителя работодателя.


Как минимум, фиксы в фреймворк {frameworkName} на языке {languageName} показывают, что ты "{languageName}-разработчик, владеющий {frameworkName}", а не "{frameworkName}-разработчик". Даже если в пресловутый jQuery пару фиксов сделал, то это показывает, что ты JavaScript-разработчик, владеющий jQuery, а не jQuery-разработчик.

Никто не говорит что за час в неделю за месяц можно написать hadoop или даже H2 database. Но в контексте этой статьи — можно исправлять ошибки, уменьшать технический долг в крупных проектах — на это у разработчиков проекта часто не остается сил. А вам, как специалисту — возможность показать ваши навыки улучшения кода и умение работать в крупном проекте. Это как один пример
Насколько я знаю — популярные и крутые продукты в opensource — приносят неплохой доход своим создателям.
Поэтому настаивать на том, что опенсорс настолько важен, что нужно им заниматься каждому программисту в его свободное время — зачем?

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

Все эти вопросы звучат так, будто вам кто-то обязан обеспечить работу, да с оплатой и задачами на том же уровне, как этим патлатым вонючим четырёхглазым задротам.
Условие найма в виде ссылки на гитхаб и неоплачиваемые тестовые задания — это всё из одной оперы. Расчёт на одиноких гиков, у которых помимо работы есть куча свободного времени, которое некуда девать. Хобби, спорт, семья — всё ерунда.
Зачем задавать вопросы? Лид должен сам всё выдать и так. С потрахами. Он же лид, а не джуниор.

Получается, что лид должен начинать общение не со своего опыта и проектов, а с обхода бинарного дерева. Он же лид и сам знает, что его спросят в итоге)

Кому должно?

Лид должен сам всё выдать и так. С потрахами.

Кому должен?
А если он не хочет никого потрахивать?
Компетентный тим/тех лид должен уметь потрахивать. Это моё официальное заявление!
Вряд ли идеологическому лидеру по разработке ИИ, например, кто-либо задаст вопрос про big-O.

И сразу вспоминается история про разработчика Homebrew

Он же сам потом писал, что не прав был с жтим твитом.

Под пытками и землю плоской называют.

UFO landed and left these words here
Недавно комментировал статью по найму. Чисто по моим ощущениям от чтения статей о собеседований в США и прочих буржуазиях.

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

Другой риск — взять не того. За что HR и команда будет раскритикован в изощрённой позе. Из-за чего перестраховка растёт из перестраховки.

Но это работает, потому что весь рынок так работает.

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

Поэтому у нас в отделе — пробегаемся по истории кандидата, смотрим что делал и насколько это было ему интересно. Рассказываем и показываем что делаем — ловим опять же заинтересованность. Дальше — живой тест — кусок реального кода, смотрим как читает код и мыслит. Дальше внутреннее обсуждение и быстро в работу. Адекватов же и без нас рвут на части.
Решение задачи про монеты
Всего монет N, делим их на две кучи — 20 и (N — 20).
Пусть в первой куче нам попалось X решек, значит во второй их (20 — X).
Чтобы добиться равенства просто переворачиваем все монеты в первой куче, X решек превращаются в X орлов, а (20 — X) орлов в (20 — X) решек.

А если, например, в первой куче нет монет с решкой наверх? То получится в одной N, а в другой 20. Но логика правильная была.

А, неправильно про разделение прочитал. Тогда все правильно, извиняюсь.

Заголовок спойлера
Ок, пусть монет будет 100.
80 орлов, 20 решек.
В первой куче (по вашим словам): 20 орлов и 0 решек
Во второй: 60 орлов и 20 решек.
Переворачиваем монеты в первой куче и получаем: 0 орлов и 20 решек
Видим что в обеих кучах по 20 решек. чтд.
Если в условии написано, что монет-решек всего 20,
и если все они попали в первую кучку,
то во второй не 60 орлов + 20 решек, а просто 80 монет-орлов.
Ну например у вас в условиях вообще не указано, что в мешке — четное количество монет.
А это не влияет на решение, как ни странно =)
Это только если все монеты на ребро ставить
Да, но ведь и не указано, что кучи должны быть равными. Почему-то пытаясь решить эту задачу, очень многие (включая меня) откуда-то вот это несуществующее условие про «равные» в голове нарисовали. И всё, с этим условием — задача уже нерешаема.
По-этому просто сгребаем все в одну кучу, и перекладываем во вторую по одной, пока не освободимся…
Решение методом перебора. Мое любимое!!!
Да, берем и все монеты переворачиваем орлами вверх.
ОМГ, не ужели есть кто-то кто впервые видит эту задачку на хабре)
а что простые решения отменили?
посчитать, разделить, пощупать(лизнуть), перевернуть…

Мне почему-то сразу брутфорс на ум пришел:


  1. Собрать монеты в две кучи — в первой 10 шт., во второй остальные;
  2. Спросить, равное ли количество решек в кучах?
  3. Если нет, добавить в кучу#1 одну монету из кучи#2, вернуться ко второму пункту;
  4. Если да, можно собрать деньги и уходить.
А зачем? Задача явно математическая. А значит стороны монет отличаются столько цветом и ядовиты :D