-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Программа наставничества / обучения F# #3
Comments
интересная затея, хотелось бы поучаствовать хотя бы как недо джун для начала в "спец. курсе". |
К идее дистанционного взаимодействия "наставник - подопечный" отношусь на данном этапе несколько скептически. Но курс (пока как набор статей) мы осилим. При переводе 3F&P иногда хотелось просто вычеркнуть 1-1.5 страницы текста и переписать все своими словами. Настолько манера подачи материала на английском отличается от принятой у нас (хотя это субъективный фактор). Наличие изначально русского массива текстов по сугубо практическим вопросам было бы серьезным подспорьем. |
Можно узнать почему? |
@FoggyFinder Сорян за объем. Ну сколько у нас сейчас наберется людей с опытом в F# достаточным для статуса наставника? Сколько из этих "наставников" способны к передаче опыта? Понимаю, что задача несколько упрощается благодаря фокусу на основы языка, но на мой взгляд, мы все еще не готовы к такому формату. У нас всего два крупных ресурса по F#, где-то с десяток разных степеней живости и сосредоточенности на F# ресурсов поменьше и около дюжины книг. И почти везде порядок "глав" различается даже в введениях в основы языка. В то время как порядок глав на C# ресурсах знает каждый шарпист, и это не от того, что у них один мозг на троих, а потому что они уже давно опытным путем нащупали оптимальный путь обучения (как минимум для большинства). Нам надо сформировать внятную программу обучения. Чтобы каждый наставник и подопечный мог в нее заглянуть и понять, где они сейчас находится, и куда и как им двигаться. Причем, о ужас, первые ее варианты будут мало жизнеспособными. Так что надо в обязательном порядке наладить обратную связь, чтобы каждый на постоянной основе указывал несоответствие с реальностью. В данный момент единственный наш кандидат - это "юноша со взором горящим". Где мы таких найдем? Это сейчас у нас 90% хоть как-то отсвечивающих проходят по категории (условно) selfmade man, которые готовы в одно рыло перепахать ООП поле во имя светлых идеалов. А что нас ожидает, когда мы пойдем в большой мир? Нужно отдавать себе отчет в том, что большинство кандидатов будут воспринимать эту программу как сервис. Это гораздо более низкий уровень терпимости к неудачам. Зачем несколько лет (?) страдать в F# наталкиваясь на неопределенности и прочие вызовы, если можно медленно, но верно добиваться результатов пописывая портянки в Java/C#/JS? Поэтому мне кажется, что стоит:
// Далее оффтоп
Немного субъективного бубубу (тоже не в тему), но быть может поможет понять ситуацию в провинции: Я по возможности пиарю F#. Плотно под мою агитацию попало почти два десятка человек. Из них синтаксис осилило человек 12 (забавно, мы юзаем F# синтаксис при обсуждении кода на C#). Из них 4 человека хоть что-то кодят на F#. И лишь один реально использует F# в проде (в основном в тестах). Я не могу сказать, что им не нравится F#. Но у нас в регионе просто на .NET (любом) с работой плохо, особенно для джуниоров. Соответственно им остается либо голодать и зубрить F# с туманными перспективами применения, либо идти на JS, уж таков у нас рынок. Года три назад я понял, что местный энтерпрайз меня похоронит, если я не смогу на него как-либо воздействовать, поэтому сильно урезал расходы и начал копить на "обучение". В результате я щас сижу на втором курсе магистратуры, не работаю более 8 месяцев и с перерывами на диплом учусь "делать все" на F#. При этом я как-то не особо преуспел. Думаю не надо пояснять, что такой режим неприемлем для подавляющего большинства смертных. |
@kleidemos ну как человек не особо знакомый с f#(джавист), было бы неплохо понять основы, т.к. С пунктом про рынок согласен на все 100%, у меня в городе то даже на с# особо нет вакансий. имхо лучше начать просто с легких курсов и т.д., возможно тогда и вакансии подтянутся с обилием программистов, ну и продвижение технологий в массы этому поспособствуют |
@kleidemos чем подробнее тем лучше ;)
А какой опыт может считаться достаточным?
Неготовы из-за количества "опытных" людей?
Именно это я и предлагаю сделать в первом раунде.
Не все так плохо, на данном этапе это сбор мнений для выработки оптимальной стратегии. На этапе набора уверен желающих будет достаточно.
Идея не идиотская, подобное уже обсуждалось в FSSF, но активной поддержки не нашлось. По моему мнению пока еще рано, но в перспективе может сработать.
Такие чаты уже есть (в телеграмм (наверное) и в Slack, хотя так нужна дополнительная регистрация в FSSF)
Определенно, лучше вынести в отдельный ишшуй https://github.com/fsharplang-ru/fsharplang.ru/issues
🥇 |
Это субъективно, но вообще как показывает практика, мы очень часто не знаем всего пула возможностей F# из-за специализации. Не знаю как это происходит, но в C# полное знание языка достигается гораздо быстрее (что компенсируется ограниченными возможностями). Например недавно обноружил, что альтернативный синтаксис дженериков на MSDN не описан от слова никак. Все примеры даны в утяжеленном варианте аля C#.
Отсутсвия отработанных гайдлайнов. Ну и людей естественно.
Гуд, значит в целом мы имеем ввиду один маршрут, просто по разному трактуем запуск программы (я считаю бету отдельным мероприятием).
Я имел ввиду, что нужен человек готовый терпеть серьезные несовершенства, а не остутсвие желающих. // Вроде предыдущий пункт снимает вопрос.
Не знал. Если так, то я опробую на местных, когда встану на ноги. Были единомышленники из соотечественников (или ЕАЭС)?
Я сижу в телеграме, народ периодически спрашивает, а можно ли задавать вопросы или просить code review. Пока сообщество более чем лояльно, однако иногда народ через чур топит за ФП. По мере роста сообщества новички все меньше задают вопросов, и связанно на мой взгляд это не с ростом грамотности, а с тем, что психологически задавать нубские вопросы в чате на 80 человек и на 330+ это несколько разные вещи.
Ок, попробую описать в сб или вс. Если кто-то не разовьет тему до этого. |
Я не понял, 1) у тебя в городе C# распространен больше чем Java (но и его мало), или ты имеешь ввиду, что 2) если нет C#, то и с F# все плохо? |
Можем ли мы что-то с этим сделать? Например, я видел, как в C++-сообществе завели отдельный чат для новичков, но это оказалось палкой о двух концах: теперь в основном обсуждении возникает некоторое количество негатива в ответ на новичковые вопросы, и их (обычно вежливо, но не всегда) отправляют во второй чат. Когда второй чат наполнился до краёв (>1200 человек на текущий момент), стали делать третий, четвёртый и т.п., что, на мой взгляд, выглядит и смешно, и жутковато :) |
@ForNeVeR Думаю, что нет необходимости принудительно перенаправлять людей в малый чат, пока поток вопросов не начнет мешать обсуждению новостей, либ или каких-то фундаментальных вещей. По факту малый чат нужен чисто как точка входа для сомневающихся и он безусловно будет частично дублировать функциональность основного. Пока у нас блок админов достаточно монолитен и вездесущ, чтобы успевать пресекать негатив и разъяснять позицию особо ретивым персонажам. Что касается создания третьих и четвертых чатов, то я не думаю, что в обозримом будущем мы дойдем до такого. Я бы даже сказал, что это был бы чрезвычайный успех. |
@kleidemos второе |
@Nojpg |
@kleidemos ну тем не менее hh не выдает ни 1 по слову f# у меня в городе |
@kleidemos ЕАЭС? Еще пару дней подождем желающих высказаться и будет подводить итоги обсуждения? |
Давайте ещё подождем, я пока не осознал всего посыла. |
@FoggyFinder https://ru.wikipedia.org/wiki/Евразийский_экономический_союз В принципе я имел ввиду Россию, Белоруссию или Казахстан (странно, последних в публичном IT пространстве почти не вижу). Понятно, что можно и с более отдаленными персонажами кооперироваться, но с этими проще, в свете последующих шагов. |
Отмечу, что товарищи из Казахстана просто концентрируются в своих группах (из активных я знаю https://t.me/dotnetgroup, ну и люди оттуда частенько мелькают в остальных .NET-чатах), и мы вообще-то с ними дружим (кросспостим ссылки иногда). Сообщество .NET-разработчиков в Казахстане есть, а с тематическими вопросами по F# я приглашаю к нам. |
Спасибо, а то как то стремно было. |
@FoggyFinder ну, в общем, я предлагаю к изначальному вопросу попробовать применить инженерный подход. Поставить задачу, посмотреть и обсудить различные методы её решения. Я вижу по посту, что с методами решения у нас есть какая-то определённость, предложены варианты. А какова задача? Кого и чему мы хотим научить? Необходимо определиться с целевой аудиторией, я считаю. В частности, у нас в сообществе нет сейчас совсем уж новичков программирования, для которых пришлось бы объяснять самые основы синтаксиса. А мне кажется, что аудиторию для каких-то курсов мы сможем набирать только из сообщества (по крайней мере, на начальном этапе). Мне кажется, что нам сейчас как раз ближе та система, которая используется в «большом» F#-сообществе — когда выбираются наставники и какие-то более глубокие темы, и они педалируются в рамках курсов. |
Развить сообщество за счет привлечения новых людей, так как сейчас оно довольно небольшое.
Свои мысли по этому поводу уже изложил в стартовом сообщении.
Почему? Один из самых простых вариантов (который уже предлагался) - привлечь знакомых и/или малознакомых людей. Например тех, кто слышал об F# но не знал с чего начать. А ты подходишь и говоришь - так и так, есть вариант и дальше в зависимости от ситуации действовать.
Я тоже целиком за и в перспективе именно на это рассчитываю. Как раз на серьезные и глубокие темы. Но сообщество на данный момент малочисленно, сколько реально набрать желающих (и умеющих) быть наставником на сложные темы? Учитель должен не только знать предмет, но и уметь подать материал. Например, у меня нет опыта в преподавании и, думаю, я такой не один. Основы языка самое то - не должно быть большим стрессом. Что мне не нравится в текущей программе FSSF это условная закрытость. Одно дело когда речь идет о углубленном изучении, второе - началах. В рамках первого этапа я предлагаю рассмотреть более коллективный подход в результате которого на выходе получится текстовый курс для желающих изучать F# самостоятельно. В "большом" F# сообществе темы самые разные - из текущих отзывов я видел только основы и компилятор. @Nojpg сколько вы готовы ждать открытия? ;) |
@FoggyFinder ну что ж, если ты предлагаешь для начала сделать какой-то курс или цикл статей для начинающих с упражнениями — я в любом случае не против и даже за. Вне зависимости от того, пойдёт ли этот курс в какую-то нашу программу наставничества, или же будет жить отдельно. Считаю, что польза от него будет (большая или нет — заранее сказать затрудняюсь). Однако, я не уверен, что курс по основам F# будет таким уж уникальным. Кажется, в интернете уже есть такие курсы (в т.ч. у уважаемого Д. Сошникова)? Насколько они доступны? Вот ссылка: http://www.soshnikov.com/fsharp/about.html |
@FoggyFinder Да подождать то не проблема вообще, по поводу глубоких/неглубоких тем думаю лучше всё же начать с неглубоких чтобы понять сколько желающих наставников/учеников вообще, как это всё идет(есть ли профит) т.к. мы все понимаем что глубокие темы сложнее будут идти нежели стартовые основы, ну а как устаканится уже разделять по этим темам, к примеру дата саенс и т.д. |
Не совсем так. Я предлагаю сделать примерно следующее.
Более конкретно (сроки проведения, как организовать регистрацию, где будет идти обсуждение между наставниками, кто будет распределять пары, как будет формироваться текстовый курс и т.д.) можно будет обсуждать уже если согласуем общую схему. |
Я думал речь идет о курсе а не о книге. Если о книге, то она мне совсем не подошла и по правде я сомневаюсь что новичок сможет по ней нормально разобраться. |
Программа наставничества / обучения F#
Предыстория
Предложение - вопрос создано по мотивам обсуждения в канале #mentorship FSSF Slack о расширении текущей программы F# Mentorship на локальные сообщества (включения участников не говорящих на английском языке).
Идея не встретила активной поддержки, но появилась мысль об отведении большей (или всей) части на плечи сообществ.
Тема обсуждения
Может ли подобную (не обязательно делать копию) обучающую программу организовать наше сообщества
Вопросы
Прежде чем перейти к рассмотрению вариантов разберем существующий подход к проведению
Об оригинальной программе
Предлагается формат нескольких получасовых "встреч" между наставником и учеников в течении 6-недель. Подчеркну что это только рекомендация, все подробности пары решают между собой.
При регистрации требуется только оставить данные о своем аккаунте в FSSF, а также ответить на ряд простых вопросов
(почему вы считаете себя хорошим кандидатом, указать часовой пояс и выбрать сферу интересов).
Выбор тем в прошлые два раза был примерно следующим
То есть если организовывать все по аналогии, то сообщество будет заниматься рекламой, сбором заявок и отбором. Все остальное - дело самих участников.
Текущий формат проведения довольно прост в реализации - от сообщества не требуется больших усилий, но пока он не направлен на широкое распространение.
Сложно сказать насколько успешен такой путь - слишком мало информации о прохождении публикуется самими участниками.
Больше мог бы рассказать тот, кто принимал участие, но насколько мне известно из нашего сообщества никто отбор не прошел.
Проблемы
Серьезное препятствие. F# совсем не востребован в русскоязычном сегменте.
Если предложения и встречаются то только для Senior разработчиков с большим опытом работы.
Что приводит к неутешительному выводу - для начинающего программиста F# выглядит не привлекательно.
Путь решения
Можно ли сломать эту стену? Однозначного ответа нет. Не попробуешь - не узнаешь.
Чтобы сделать программу (в любом виде) более привлекательной нужно делать акцент на сильные стороны если не F#, то самого сообщества.
Целевая аудитория
Если знать заранее кого в первую очередь заинтересует программа, то можно было бы некоторые части изменить для их большего удобства.
На мой взгляд основную количество обучаемых условно можно отнести к следующей довольной широкой группе - студенты, выпускники которые ищут работу, Junior - разработчики, а также возможно программисты - любители и научные сотрудники.
Многим из них, уверен, хотелось бы внести свой вклад в какие-нибудь open-source, но опасения что-нибудь сломать или просто неуверенность в собственных силах останавливают от активных действий.
Обучающая программа отлично подходит для решения проблем подобного рода.
Формат
Самым существенном минусом оригинальной программы, по моему мнению, являются общие рамки приема заявок от менторов и подопечных.
Двух-этапная регистрация должна быть более продуктивным подходом. Вначале оформляются наставники и уже по их ответам определяются темы которые будут предлагаться желающим пройти обучение. То есть выбор категории уже будет доступен на втором этапе.
Теперь что касается темы введения в F#. Насколько хорошей идеей является включение в программу основ языка?
Минусы
Плюсы
На мой взгляд минусы перешивают плюсы. С точки зрения перспективы обучение основам в формате
наставник - подопечный
мне кажется неэффективными и программа должна сконцентрироваться именно на практической части. Но как же тогда новички?Именно для них предлагаю написать специальный курс в котором также будет упор на практику (возможно 7-10 простых упражнений после каждой главы).
(голос из зала, скептик) - ага, еще одна крупная задача для сообщества, а кто воплощать в жизнь все будет?
Дорогу осилит идущий, но чтобы не распыляться - создание курса для новичков может быть целью для первой полузакрытой беты программы.
Что даст полузакрытая бета? Уверен, что многие участники сообщества не имеют навыков преподавания и им сложно себя представить в роли наставника. Таким образом острые углы будут сглажены и результат будет вполне осязаем.
The text was updated successfully, but these errors were encountered: