Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Регистрируясь, я даю согласие на обработку данных и условия почтовых рассылок.
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Вы владелец небоскреба! Стройте этажи, управляйте магазинами и работниками!

Небоскреб Мечты

Казуальные, Симуляторы, 2D

Играть

Топ прошлой недели

  • solenakrivetka solenakrivetka 7 постов
  • Animalrescueed Animalrescueed 53 поста
  • ia.panorama ia.panorama 12 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

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

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
0 просмотренных постов скрыто
15
xfides
Лига программистов

Занятия с напарниками по Haskell (2)⁠⁠

3 года назад

Здравствуйте. Продолжаю описывать интересные моменты из наших занятий в группе по Haskell ( Предыдущий пост ). 


Прошла еще неделя. Мы стабильно выдерживаем 1ч 20мин за занятие в день. Иногда чуть подольше.

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


Второе - о, это особенный момент, который встречается много в каких обучающих материалах!

Этот неприятный момент -  прыжки в будущее. Можно читать, разбирать базовые операции со строками, но уже в примерах используются модули и\или монада IO. Причем автор книги уверяет читателя в том, что вы узнаете и поймете эти моменты потом. Сейчас же просто скопируйте пример кода и запустите. Сместите фокус на то, что делает функция putStrLn, а на тип не смотрите. Потом узнаете зачем в типе у этой функции написано IO.


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


Теряется последовательность изложения материала. А это сбивает. И если мозг можно усмирить - реально сместить фокус на важное, то на эмоциональном уровне остаются мелкие "зазубрины". Эх, вот бы еще и то знать. А как вон ту штуку использовать, про которую рассказали? Блин, ну интересно же было бы понять. А прыгать вперед еще хуже. Это и с мысли собьет. И все равно это будет непонятно.


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


В начале занятий иногда проводим опросы, вдруг кто что подзабыл. Был случай: дали напарнику пример из книги на подстановки из лямбда-исчисления, применение термов. И пример был решен. Вроде даже хорошо. Только забыли про альфа-эквивалентность. И следовательно, ответ был не верен. Ничего страшного. Другой пример уже был сделан как надо.


Начали делать первые практические упражнения. Тут наши предпочтения разошлись. Моя личная цель - это изучения языка, а не его экосистемы. Поэтому я просто открываю вкладку с онлайн компилятором Haskell и тут же решаю задачи. Ребята же захотели установить среду разработки себе на компьютер локально. GhcUP или как-то так. Там еще stack, cabal. Брр, мне пока лень в этом разбираться. Наверное, напарники поступают лучше. Может, в будущем они меня мотивируют поступить так же.

Ну и поделюсь еще одним интересным случаем. Разбирали мы простейшие математические операторы в Haskell. Умножение, сложение, вычитание. И div, mod, quot, rem. Какой остаток будет от деления 20 на 6? Два - бодро отвечает вся группа. А каков будет остаток от деления 20 на -6? И все, мы поплыли. Думали, сейчас в гугле посмотрим, за 5 минут разберемся. 3 парням, которым за 30, и не справиться с таким простейшим вопросом? Ага. Не справились, ни за 5 минут, ни за оставшиеся полчаса того занятия. Справились за выходные к следующему уроку. И то, на троих. Первый разобрался, что такое делимое, делитель, неполное частное, остаток от деления. Второй указал на момент, что бывает округление в минус бесконечность и к нулю. Третий собрал эти факты в кучу, и наконец-то - вы можете нас поздравить с пониманием куска школьной программы.


Посмотрим, что будет дальше. Будут новые главы книги, будут новые вызовы. Справимся? =) 

Показать полностью
[моё] IT Обучение Программирование Haskell Хаскель Текст
13
42
xfides
Лига программистов

Занятия с напарниками по Haskell⁠⁠

3 года назад

Собирал я как-то напарников в группу для изучения haskell. Пост вот написал на пикабу ( Ищу напарника для совместного изучения haskell ). Сейчас есть немного времени. Расскажу, что происходило дальше. Вдруг кому интересно будет. Или для себя напишу, типа как дневник.


Откликнулось 2 человека. Один из дискорда, другой с пикабу. Всем нам что-то около 32-35 лет. У каждого своя судьба, но все вместе сошлись в своих стремлениях. Haskell нам интересен, но нужен мотивирующе-дисциплинирующий фактор. И группа с совместными занятиями - хорошее решение.


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


Группа выручает. Часто бывает, что где-то один подвисает. Другие объясняют, подсказывают. Например, я затупил над выражением "Project building tools". Спрашиваю - это что такое, npm что ли? Говорят нет - это аля Gulp, Grunt. Кому-то немножко трудно было разобраться с применением абстракции в лямбда исчислении. По сути для себя сделали вывод, что это особая постановка. Заключается в три этапа, связывание параметра с аргументом, вычисления тела абстракции, и отрезания головы функции. Слово английское еще такое забавное выучил: eliminating. Потренировались в этом приеме - стало куда яснее.


Забавный случай вспомнился. Изучили определение ссылочной прозрачности. Для выполнения этого условия необходимо, чтобы функция была чистой. И кто-то по-приколу спросил, а если функция чистая, означает ли это, что она автоматически ссылочно-прозрачная. А в книжке то прямого ответа на этот вопрос нет. Погуглили, подумали. Ничего внятного не нашли. Сделали вывод. Пока не найдем опровержения, приравняем эти 2 термина друг к другу. Типа чистая функция ссылочно-прозрачная и наоборот.


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

Можно было бы даже  проводить вечера на ютубе. То есть мы проводим занятие. И оно транслируется для всех других. И весь мир будет учить haskell вместе с нами. =) Но это так, утопия.


В любом случае учеба продолжается. Мы хотим стать чуточку умнее, реально подразобраться в функциональной парадигме. Посмотрим, насколько нас хватит =)

Показать полностью
[моё] IT Программирование Обучение Haskell Хаскель Текст
18
xfides

Ищу напарника для совместного изучения haskell (Дубль)⁠⁠

3 года назад

Если можно \ возможно то данный пост надо удалить. Так как он изначально он был создан по невнимательности автора. Данная запись - дубль вот этого поста


Ищу напарника для совместного изучения haskell

[моё] Программирование Haskell IT Обучение Длиннопост Текст
6
3
xfides

Ищу напарника для совместного изучения haskell⁠⁠

3 года назад

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


Коротко о главном. Ищу напарника для изучения haskell. Чтобы совместные занятия были эффективными, необходимо:

- быть готовым заниматься от 4 дней в неделю от 1.5 часов ежедневно. Мы определим расписание и будем его придерживаться;

- быть готовым не “на недельку попробовать” , а прозаниматься от 2 месяцев. Вода камень точит, но для результатов нужно ощутимое время;

- иметь хоть какой-то бекграунд в программировании. Чтобы слова “абстракция, функция, параметр...” не ставили вас в тупик;

- не стесняться своих мыслей, уметь их формулировать, не просто сидеть молча и слушать, а быть заинтересованным, вовлеченным;

- так как я сам недавно только начал изучать haskell, то для синхронизации удачно будет вам тоже находиться приблизительно на этом же уровне;

- для связи писать в телеграмм ( @xfides );


Распространенные вопросы \ мнения:


Вопрос - Это платно? И кто вообще кому должен платить. Я напарнику или напарник мне?

Ответ - Нет, тут никто никому ничего не должен платить. Мы одного уровня, у нас общие цели. В идеале.


Вопрос - Может, легче взять ментора?

Ответ - Может и легче. Но я не находил бесплатных менторов, готовых заниматься со мной именно в таком режиме, по такой схеме. Хотя и пытался.


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

Ответ - Спасибо за советы. Но в данный момент я буду заниматься по вышеописанной схеме. Таков мой выбор.


Вопрос - Ты пробовал раньше так делать \ заниматься? Это вообще работает?

Ответ - Да. Не только пробовал, а до сих пор по многим вещам так учусь. Это работает.


Вопрос - Ну допустим, а как будут проходить занятия?

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


Вопрос - Собираться вместе онлайн, чтобы читать книги? Ты прикалываешься?

Ответ - Нет.


Вопрос - Так я и один могу сам читать. В чем плюсы совместного чтения?

Ответ - Мы не будем позволять друг другу “срезать углы” на сложных моментах. Мы будем задавать вопросы друг другу по прочитанному абзацу, проверяя \ выясняя, а совпадает ли у нас понимание пройденного материала. Если не совпадает, мы останавливаемся и ... чаще всего перечитываем абзац. Реже идем за дополнительным источником информации в интернет. Совместное прохождение материала в 2-3 раза медленнее чем в одиночку, но в 1,5-2 раза качественнее осознание. Плюс дисциплина нашей группы не даст прохалтурить в течении длительного времени.


Вопрос - А зачем сюда пишешь? Вот есть профильные паблики и форумы. Иди туда и пиши.

Ответ - Уже туда писал. Пока оттуда никто не откликается. Вообще в целом, я заметил, что поиск человека по духу для совместных занятий занимает от месяца до двух. Поэтому я не спешу. И рассматриваю различные варианты достижения своих целей.


Вопрос - Если бы JS \ React \ Laravel \ подставьте что-то свое - то я бы подумал. А haskell...

Ответ - JS уже знаю. React в планах есть, но немного позже. А меня сейчас интересует именно haskell. И еще приятная новость. Для того, чтобы изучать любимую \ необходимую технологию, то не надо ждать. Создавайте уже свои мини-группы с подобным укладом по своим любимым темам и вперед, к покорению звезд.


Вопрос - Постой, мини-группы? Ты же сказал, что ищешь напарника.

Ответ - Да. Я заметил, что эффективная группа состоит из 3 человек. Из 2 , только с 1 напарником, чуть хуже эффективность. Из 4 приемлимо. Больше 4 человек - плохо. Лучше разделиться еще на подгруппы. Почему сейчас говорю “напарник” - потому что хочу найти хотя бы 1 человека на совместные занятия.


Вопрос - Я вот тут еще кое-что хотел спросить...

Ответ - Спрашивайте в комментариях. Постараюсь дать ответ.

Показать полностью
[моё] Программирование Haskell IT Обучение Длиннопост Текст
10
4
RarogCmex
RarogCmex
IT-юмор

Ответ на пост «Извечное противостояние языков программирования»⁠⁠1

5 лет назад
Перейти к видео

Загрузочный экран с режима «Deep Dive» игры Deep Rock Galactic.


Код с видео, дабы проникнуться:

module Main where


multiply :: Int -> Int -> Int

--Объявляем функцию


multiply x1 x2 = x1 * x2

--Определяем функцию


main = do

putStrLn ("Скажи имя, пикабушник")

name <- getLine --Пикабушник

putStrLn ("Привет, пикабушник " ++ name)

putStrLn "Результат умножения:"

print $ multiply 10 5

--вызываем функцию multiply


Желающие попробовать код ставим stack

https://docs.haskellstack.org/en/stable/README/

И запускаем через stack ghci main.hs


@moderator,  Прошу добавить в IT-юмор , не хватает рейтинга

Показать полностью
[моё] Python Java C++ Робот-пылесос Видео Ответ на пост Haskell
12
641
Drovosek01
IT-юмор

Гетто в мире программирования⁠⁠

7 лет назад
Гетто в мире программирования

P.S.

Книга "Денис Шевченко "О Haskell по-человечески" для обыкновенных программистов"

Хаскель Haskell Программирование Гетто Отрывок из книги Юмор
75
aracks
aracks

Haskell и хаски.⁠⁠

7 лет назад

А вот интересно: а знают-ли хаски язык программирования Haskell?

Вопрос Хаски Haskell Юмор Игра слов Текст
6
pav5000

Кортеж здорового человека⁠⁠

10 лет назад
Кортеж здорового человека
[моё] Кортеж Haskell
5
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии