черепашки

2012-10-24

Позавчера была «няшности пара» — на следующей неделе модуль, поэтому в качестве психологической разгрузки показал студентам, как работает «черепашья графика». При словах «по экрану ползает черепашка» мимимиметр просто зашкалило. А когда они начали возиться с этим на паре… О! Особенно, после того как посмотрели что выдает turtle.py в демо-режиме и что можно творить набором простейших правил. Они самостоятельно расколупали библиотеку, чтобы посмотреть как задавать цвета и как рисовать дуги (мы же хотим рисовать смайлики, ага?). Мне оставалось только подкинуть идею, что цвет можно менять в цикле и… Короче, народ пришлось выгонять из класса после перерыва, чтобы освободить машины для другой группы.

Язык ЛОГО в свое время создавали умные люди. И черепашью графику они включили туда не зря. Я не знаю лучшего наглядного пособия по обучению простым алгоритмам, которое бы так легко осваивалось (все на экране, все видно). Ну и товарищи создавшие python тоже молодцы, поскольку (а) turtle.py отличная библиотека (б) то, что она поставляется вместе с дистрибутивом делает из него быстрорастворимую обучающую систему.

p.s. И ведь таки да умные люди делали.
Язык Лого был разработан в конце 60-х годов в МТИ под руководством профессора математики и педагогики Сеймура Пейперта (Seymour Papert). Страстно увлекаясь изучением работы мозга, Пейперт однажды заметил, что он «всегда рассматривал процесс обучения как хобби». Следуя этому «хобби», он освоил такие различные виды деятельности, как пилотирование самолетов, чтение на китайском языке, искусство иллюзионизма.

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

По инициативе Пейперта в язык было добавлено понятие черепашки, обеспечивающее связь «объект — мысль» (сначала использовалась механическая черепашка, ползающая по полу, а затем ее условное изображение на экране дисплея), которое и придавало языку очарование и притягательность для детей. Как указывал Пейперт, в большинстве машинных команд «компьютер обычно шаг за шагом ведет ребенка за собой, т. е. как бы программирует его». Лого же, напротив, «убеждает ребенка в том, что он может управлять машиной, позволяет ребенку сказать: «Здесь я хозяин»».

(c) История ЛОГО

Реклама

palm, linux makeztxt и iconv

2010-07-24

Я уже писал про то, что АБТФ имеет то преимущество, что достаточно просто закидывается в палм. У меня это происходит следующим образом. Для начала я копирую файл в папку ~/tmp и конвертирую его в виндовую кодировку с помощью iconv:


cp ~/blog/main.txt ~/tmp/main.txt
iconv -t=cp1251 -c main.txt > main_cp.txt

Ключ -t=cp1251 указывает куда конвертировать (в данном случае из utf-8, в которой я веду заметки в cp1251, которую понимает палм), ключ -c нужен, чтобы подавлять вывод заведомо непечатаемых символов, которые есть в utf-8, но которых нет в cp1251 (например, знак йены).

Дальше остается преобразовать main_cp.txt в .pdb файл. Это можно сделать простой командой:

makeztxt -o main.pdb main_cp.txt

Ключ -t добавляет в файл заголовок под которым файл будет виден в базе палма.

makeztxt -t blog_main -o main.pdb main_cp.txt

Мне удобно, чтобы файл имел оглавление — сразу автоматически расставленные заголовки по всем ключевым разделам блога (90000 строк очень долго листаются в поисках нужного раздела). Поэтому я добавляю ключ -r, который расставляет закладки по всем заголовкам разделов. Разделы находятся через регулярное выражение ^#.{,15} — начало строки, за которым следует решетка #, за которой следует пятнадцать или меньше любых символов. Ключ -l (list) выводит на печать список сгенерированных закладок, чтобы можно было контролировать процесс.

makeztxt -r "^#.{,15}" -l -t .main2010 -o main.pdb main_cp.txt

Теперь можно скопировать main.pdb в память палма и наслаждаться :)

У меня все эти операции проделываются через скрипт ~/bin/bmz, который выглядит примерно так:

#! /bin/bash

cd ~/tmp
cp ~/blog/main.txt .
iconv -t=cp1251 -c main.txt > main_cp.txt
makeztxt -r "^#.{,15}" -r "^@ 20..-..-.. @ ..:.." -l -t .main2010 -o main.pdb main_cp.txt 
cp ~/blog/cites.txt .
iconv -t=cp1251 -c cites.txt > cites_cp.txt
makeztxt -r "^#.{,15}" -r "^@ 20..-..-.. @ ..:.." -l -t .cites2010 -o cites.pdb cites_cp.txt 
rm ~/tmp/main.txt
rm ~/tmp/main_cp.txt
rm ~/tmp/cites.txt
rm ~/tmp/cites_cp.txt

Достаточно набрать bmz в командной строке, а потом скопировать получившиеся .pbd-файлы в палм. Поскольку у меня сейчас Palm Sony с внешней карточкой, я просто вставляю ее в кардридер и копирую файлы напрямую.


Каталогизация дискохранилища

2010-03-27

Идея каталогера, который бы сохранял на диске содержимое моей библиотеки (медиатеки? информатеки? дискохранилища?) dvd не отпускала меня с тех самых пор, как я перебрался на убунту. Конечно, Cathy прекрасно работала под wine-ом, и вполне справлялась с теми задачами, которые на нее были возложены еще в старой системе. Некоторое время у меня крутилась в голове идея обобщенного скрипта на Питоне, однако в конце-концов на Хабре появился пост, который расставил все по своим местам. Главной оказалась идея о том, что файловую структуру диска без особых хлопот можно получить через find.

Читать далее…


Букмаркерство — 3

2010-02-01

2010-01-31 17:28

Разбирая свои закладки, понял, что «в консерватории снова что-то не так». В Яндекс.Закладках количество линков постоянно растет, а в разделе «Линки» текстового блога — ни разу не прибавляется. Что может быть причиной? Почему Яндекс.Закладки (да и всякий другой закладывательный сервис) удобнее, чем прямое копирование ссылки из адресной строки по Ctrl+L?

Читать далее…


Букмаркерство — 2

2009-11-12

Не прошло и полгода (с 19 июня), после того как я перешел на новую систему работы с закладками. Возникла потребность сделать систему удобнее. И я написал небольшой скрипт на Питоне, который переводит Яндексовые закладки в текстовый вид.

Напомню суть системы. Большая часть закладок лежит в разделе «СборникЛинков» моего АффигительноБольшогоТексовогоФайла — это база данных, которая нужна не ежедневно, а в режиме «по запросу». Они легко находятся поиском по файлу и легко открываются в браузере по F3.

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

Практика внесла свои коррективы.
Читать далее…


Букмаркерство

2009-06-19

Пару месяцев назад сэр Ollycat поднял вопрос об отложенном чтении. Что привело к обмену идей по «правильному приготовлению» закладок.

Несколько дней назад выяснилось, что мой провайдер не желает дружить с гуглопочтой. Никаких других объяснений после многодневного выяснения причины (Д-р Хата обзавидуется) я придумать не могу. разве что фазу Луны вспомнить.

По ходу дела было переустановлено, проверено и перебрано все, что может быть переустановлено, проверено и перебрано. Попутно, я воспользовался этим процессом, чтобы убить нафиг тонну закладок, которая хранилась у меня в огнелисе и пересмотреть свои методы работы с ними. Идеи, которые крутились у меня в голове со времен поста сэра Ollycat, наконец материализовались во что-то конкретное.
Читать далее…


%d такие блоггеры, как: