Python и БЯРС
Jan. 7th, 2014 07:56 pmВ уже прошедшем году меня дёрнуло изучить язык программирования Python. Давно не кодил, год Змеи, много очень модных онлайн-курсов.
Как раз с онлайн-курсов и начал:
- Learn to Program: The Fundamentals и его продолжение
- Learn to Program: Crafting Quality Code от Университета Торонто, на Курсере. Эти курсы очень понравились: лаконичные, доходчивые, упоминаются разные полезные мелочи - в количестве, переходящем в качество. К сожалению, не организовался получить сертификат об окончании, не доделал домашнюю работу, но курсы большей частью прошёл.
- An Introduction to Interactive Programming in Python опять на Курсере, от Университета Райса
- Introduction to Computer Science от Юдасити - а эти два курса бросил почти в самом начале, не понравились, не выдержали конкуренции.
- Introduction to Computer Science and Programming от Массачусетского Технологического Института на EdX'е
Хотя курс и называется введением, он сложный и объёмный, пройдя первую треть я завяз в разделе Объектно-ориентированное программирование. Наверно многие не справились, при перезапуске курс был разделён, на 2 или 3 части. Первую я прошёл, на 84% - почти минимум для оценки "отлично". Добирать баллы не стал, решил заняться чем-то практическим. Теперь жду публикации оставшихся частей.
Дельная статья о курсах: http://habrahabr.ru/post/166697/
До конца года Змеи (календарь-то китайский) хочу пройти
- Design of Computer Programs на Юдасити - продвинутый курс
Об онлайн-курсах: идея не оригинальна, даже странно, что реализовывать начали совсем недавно, все составляющие были уж лет 5. Читаю на английском медленно и с трудом, а просмотр лекций по видео даётся легко. Иногда даже ускоряю лектора на четверть. У преподавателя онлайн-курсов появился новый инструмент: можно в любой момент лекции задать учащемуся вопрос. В книгах я почти всегда пропускаю упражнения, а в онлайн-курсах учащийся прямо за компьютером, получив сложный вопрос можно справиться со справочной литературой, интернетом, а про обучении программированию - опробовать код. Или отмотать лекцию назад.
С книгой всё-таки эффективнее, купил и проштудировал:
- Марк Лутц. Изучаем Python. Хорошо, но если бы автор ужал книгу на каких-нибудь три сотни страниц - то было бы гениально. Есть продолжение 2 тома - Программирование на Python, тут проблема объёма ещё острее. Я не закончил даже с первым томом Программирования, и мне очень недостаёт учебника по инструментам питон-программиста, думаю даже отложить Лутца и подыскать более прикладную книгу.
Накачавшись таким количеством курсов решил сделать что-то полезное. Есть "Большой японско-русский словарь" (БЯРС) http://warodai.ru/ - жемчужина, лучшее что я видел из электронных словарей, хотя и не самый распространённый язык, сложный для ввода. Сборка словаря под мою любимую оболочку Stardict мало того что устарела, так ещё и не разбирает иероглифические синонимы. И я решил написать конвертер словаря в формат Stardict (DICT).
Первая версия - работала почти как надо, но когда я захотел внести улучшение - рухнула под весом своих костылей.
Вторую версию - планировал написать с чистого листа до уровня первой версии за полчаса - так и сделал, но оказалось, что запланированное улучшение - сложно реализуемо, даже при новой архитектуре второй версии. Сделал, понадобилось узнать больше про формат словарей - прочитал отложенные на потом спецификации. Там была информация, как сделать словарь лучше того, что было на тот момент у меня - но программа должна работать иначе.
Когда тестировал результаты работы третьей (или два с половиной) версии обнаружил важный пункт обработки, который не был реализован и эта реализация заняла неожиданно много времени.
И теперь, написав отчёт на сайте БЯРС, думаю что всё надо было делать по-другому. Хоть тягу к обучению, решение этой практической задачи у меня вернуло. Результат работы: http://e-lib.ua/forum/topic1530.html (нужна регистрация, если нет никакого интереса к восточным языкам, то ходить не стоит)
Как раз с онлайн-курсов и начал:
- Learn to Program: The Fundamentals и его продолжение
- Learn to Program: Crafting Quality Code от Университета Торонто, на Курсере. Эти курсы очень понравились: лаконичные, доходчивые, упоминаются разные полезные мелочи - в количестве, переходящем в качество. К сожалению, не организовался получить сертификат об окончании, не доделал домашнюю работу, но курсы большей частью прошёл.
- An Introduction to Interactive Programming in Python опять на Курсере, от Университета Райса
- Introduction to Computer Science от Юдасити - а эти два курса бросил почти в самом начале, не понравились, не выдержали конкуренции.
- Introduction to Computer Science and Programming от Массачусетского Технологического Института на EdX'е
Хотя курс и называется введением, он сложный и объёмный, пройдя первую треть я завяз в разделе Объектно-ориентированное программирование. Наверно многие не справились, при перезапуске курс был разделён, на 2 или 3 части. Первую я прошёл, на 84% - почти минимум для оценки "отлично". Добирать баллы не стал, решил заняться чем-то практическим. Теперь жду публикации оставшихся частей.
Дельная статья о курсах: http://habrahabr.ru/post/166697/
До конца года Змеи (календарь-то китайский) хочу пройти
- Design of Computer Programs на Юдасити - продвинутый курс
Об онлайн-курсах: идея не оригинальна, даже странно, что реализовывать начали совсем недавно, все составляющие были уж лет 5. Читаю на английском медленно и с трудом, а просмотр лекций по видео даётся легко. Иногда даже ускоряю лектора на четверть. У преподавателя онлайн-курсов появился новый инструмент: можно в любой момент лекции задать учащемуся вопрос. В книгах я почти всегда пропускаю упражнения, а в онлайн-курсах учащийся прямо за компьютером, получив сложный вопрос можно справиться со справочной литературой, интернетом, а про обучении программированию - опробовать код. Или отмотать лекцию назад.
С книгой всё-таки эффективнее, купил и проштудировал:
- Марк Лутц. Изучаем Python. Хорошо, но если бы автор ужал книгу на каких-нибудь три сотни страниц - то было бы гениально. Есть продолжение 2 тома - Программирование на Python, тут проблема объёма ещё острее. Я не закончил даже с первым томом Программирования, и мне очень недостаёт учебника по инструментам питон-программиста, думаю даже отложить Лутца и подыскать более прикладную книгу.
Накачавшись таким количеством курсов решил сделать что-то полезное. Есть "Большой японско-русский словарь" (БЯРС) http://warodai.ru/ - жемчужина, лучшее что я видел из электронных словарей, хотя и не самый распространённый язык, сложный для ввода. Сборка словаря под мою любимую оболочку Stardict мало того что устарела, так ещё и не разбирает иероглифические синонимы. И я решил написать конвертер словаря в формат Stardict (DICT).
Первая версия - работала почти как надо, но когда я захотел внести улучшение - рухнула под весом своих костылей.
Вторую версию - планировал написать с чистого листа до уровня первой версии за полчаса - так и сделал, но оказалось, что запланированное улучшение - сложно реализуемо, даже при новой архитектуре второй версии. Сделал, понадобилось узнать больше про формат словарей - прочитал отложенные на потом спецификации. Там была информация, как сделать словарь лучше того, что было на тот момент у меня - но программа должна работать иначе.
Когда тестировал результаты работы третьей (или два с половиной) версии обнаружил важный пункт обработки, который не был реализован и эта реализация заняла неожиданно много времени.
И теперь, написав отчёт на сайте БЯРС, думаю что всё надо было делать по-другому. Хоть тягу к обучению, решение этой практической задачи у меня вернуло. Результат работы: http://e-lib.ua/forum/topic1530.html (нужна регистрация, если нет никакого интереса к восточным языкам, то ходить не стоит)