Код стайл или Чему мы учим молодежь

24 views
Skip to first unread message

Олег Андреев

unread,
Dec 6, 2007, 7:33:26 AM12/6/07
to RubyOnRails to russian
Я заскорузлый непедагогичный тупица или тут прошелся Ктул... министр
образования?

0) Тотальное "nycTou_maccuB = []; noJIHbIu_maccuB = [1,2,2,3]"

1) "А потом, две квадратные скобки добавляются слева и справа. Но
делать это надо быстро, чтобы элементы не успели разбежаться."

2) "Замечание. Имена методов unshift/shift неинтуитивны. Во-первых,
они не напоминают о том, что работа идет с головой массива, а не с
хвостом, во-вторых ничего не говорят о том, идет заполнение или
опустошение стека. Можно создать для этих методов псевдонимы с
говорящими именами, например, feed/spit (кормить/выплевывать)"

3) "Самый простейший способ создать матрицу - использовать метод
<батарейка> (метод [] выглядит как индикатор заряда батареи на сотовом
телефоне)"

http://ru.wikibooks.org/wiki/Ruby

Я не отрицаю многочисленных позитивных вещей в книге, но некоторые
изъяны меня передергивают как от нечистой силы.

Ваше мнение.

Max Lapshin

unread,
Dec 6, 2007, 12:00:09 PM12/6/07
to ror...@googlegroups.com
On 12/6/07, Олег Андреев <oleg...@gmail.com> wrote:
Я заскорузлый непедагогичный тупица или тут прошелся Ктул... министр
образования?

0) Тотальное "nycTou_maccuB = []; noJIHbIu_maccuB = [1,2,2,3]"


http://ru.wikibooks.org/wiki/Ruby

Я не отрицаю многочисленных позитивных вещей в книге, но некоторые
изъяны меня передергивают как от нечистой силы.


Если я не ошибаюсь, эта книжка создавалась силами человека, известного как Rubynovich. Он преподаватель в одном из ВУЗов и преподаёт он как раз руби. 

Олег, преподавать что-то студентам в техническом вузе средней руки и рассказывать людям, как им себе на жизнь деньги зарабатывать – совершенно разные вещи =)

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

 

Michael Klishin

unread,
Dec 6, 2007, 9:25:27 PM12/6/07
to ror...@googlegroups.com
А контакты этого товарища есть? Может,
он позволит подобные шедевры
поправить.

On 6 дек. 2007, at 19:00, Max Lapshin wrote:

>
> Если я не ошибаюсь, эта книжка
> создавалась силами человека,
> известного как Rubynovich. Он
> преподаватель в одном из ВУЗов и
> преподаёт он как раз руби.
>
> Олег, преподавать что-то студентам в
> техническом вузе средней руки и
> рассказывать людям, как им себе на
> жизнь деньги зарабатывать –
> совершенно разные вещи =)
>
> Мне самому эти моменты очень не
> понравились, но лично я не могу
> сказать ничего насчёт их
> педагогической правильности с точки
> зрения донести хоть что-нибудь до
> максимального количества людей.

MK

Можно лучше:
novemberain.com/tags/TiaBWTDI

Max Lapshin

unread,
Dec 7, 2007, 4:32:51 AM12/7/07
to ror...@googlegroups.com
On 12/7/07, Michael Klishin <michael.s.k...@gmail.com> wrote:
А контакты этого товарища есть? Может,
он позволит подобные шедевры
поправить.


У меня нет. 

 

Олег Андреев

unread,
Dec 7, 2007, 5:23:22 AM12/7/07
to ror...@googlegroups.com
http://vkontakte.ru/search.php?id=1178818

07.12.2007, в 5:25, Michael Klishin написал(а):

Julian 'Julik' Tarkhanov

unread,
Dec 7, 2007, 11:46:49 AM12/7/07
to ror...@googlegroups.com

On 6-dec-2007, at 18:00, Max Lapshin wrote:
> Олег, преподавать что-то студентам в
> техническом вузе средней руки и
> рассказывать людям, как им себе на
> жизнь деньги зарабатывать –
> совершенно разные вещи =)
>
> Мне самому эти моменты очень не
> понравились, но лично я не могу
> сказать ничего насчёт их
> педагогической правильности с точки
> зрения донести хоть что-нибудь до
> максимального количества людей.


Я собственно из-за этого волапюка и
перестал участвовать в написании
этой книги, потому как пальцы сломал.
--
Julian 'Julik' Tarkhanov
please send all personal mail to
me at julik.nl


Роман "Rubynovich" Шипиев

unread,
Dec 8, 2007, 1:37:41 PM12/8/07
to RubyOnRails to russian
Призвали меня все таки к ответу =)) Зачем оно было надо и почему не
приносит особого вреда (и пользы).

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

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

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

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

И вот здесь стоит самая большая дилемма: отказаться или продолжать
использовать? Если отказаться, то студенты будут хуже понимать
примеры. Если продолжать использовать, то будет наезд со стороны
общественности. Именно поэтому я долго не решался на введение этой
системы и обсудил это с соавторами. Мы решили, что это "скандальная
фишка" сыграет на руку популярности и решили эту систему использовать.

Есть предложения? Переменные вида key и value -- не предлагать, так
как приходится работать со студентами у которых проблемы с английским
языком.

Yaroslav Markin

unread,
Dec 8, 2007, 1:41:16 PM12/8/07
to ror...@googlegroups.com
On 08.12.2007, at 21:37, Роман Rubynovich Шипиев wrote:

> Есть предложения? Переменные вида key и
> value -- не предлагать, так
> как приходится работать со
> студентами у которых проблемы с
> английским
> языком.

Скажите, неужели вы ведете курс в ВУЗе,
где не читают английского языка?

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

--
Yaroslav Markin
yaro...@markin.net



Maxim Kulkin

unread,
Dec 8, 2007, 1:49:27 PM12/8/07
to ror...@googlegroups.com
On Dec 8, 2007 9:37 PM, Роман "Rubynovich" Шипиев <rubyn...@gmail.com> wrote:
> Есть предложения? Переменные вида key и value -- не предлагать, так
> как приходится работать со студентами у которых проблемы с английским
> языком.
Я так понимаю, т.к. wikibook рассчитан на самостоятельное изучение, то
оно подразумевает, что человек заинтересован в том, чтобы научиться.
Поэтому, ему нужно преподносить все в правильном свете, а иначе,
увидив Ваши nePeMeHHbIE, он может посчитать, что этот учебник (автор,
комьюнити и, в конечном итоге, язык) - палево.
Очные курсы, напротив, направлены на конкретную аудиторию. Если
аудитория не в состоянии освоить курс в таком виде, его упрощают.
Пусть это будет Вашим ноухау =) а в учебнике, имхо, все должно быть
правильно.

Alexey Verkhovsky

unread,
Dec 8, 2007, 1:51:52 PM12/8/07
to ror...@googlegroups.com
On Dec 8, 2007 11:37 AM, Роман "Rubynovich" Шипиев <rubyn...@gmail.com> wrote:
> привычка их писать быстро исчезает и народ скатывается на
> односимвольные переменные.

Что для читабельности кода страшнее, чем волапюк, разве нет?

--
Alexey Verkhovsky
CruiseControl.rb [http://cruisecontrolrb.thoughtworks.com]
RubyWorks [http://rubyworks.thoughtworks.com]

Роман "Rubynovich" Шипиев

unread,
Dec 8, 2007, 1:57:30 PM12/8/07
to RubyOnRails to russian
On 8 дек, 21:41, Yaroslav Markin <yaros...@markin.net> wrote:
> On 08.12.2007, at 21:37, Роман Rubynovich Шипиев wrote:
>
> > Есть предложения? Переменные вида key и
> > value -- не предлагать, так
> > как приходится работать со
> > студентами у которых проблемы с
> > английским
> > языком.
>
> Скажите, неужели вы ведете курс в ВУЗе,
> где не читают английского языка?

Английский язык читают одновременно с моим курсом. Ближе к концу моего
предмета народ уже нормально понимает англоязычный текст. Но я не могу
ждать, пока они его изучат по вполне понятным причинам. =)

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

Это проходит само собой. Как только они начинают понимать Руби и
писать собственный код. Псевдорусские имена переменных -- не очень
живучие! Мне приходится проверять тонны кода и я четко отслеживаю
подобные вещи.

Роман "Rubynovich" Шипиев

unread,
Dec 8, 2007, 2:00:17 PM12/8/07
to RubyOnRails to russian


On 8 дек, 21:49, "Maxim Kulkin" <maxim.kul...@gmail.com> wrote:
> On Dec 8, 2007 9:37 PM, Роман "Rubynovich" Шипиев <rubynov...@gmail.com> wrote:> Есть предложения? Переменные вида key и value -- не предлагать, так
Викибукс создавался мной как конспект лекций, чтобы студент мог
освоить пропущенные лекции. Для остальных есть приложение "Справочник"
в который было решено песевдорусские переменные не вводить.

Роман "Rubynovich" Шипиев

unread,
Dec 8, 2007, 2:02:15 PM12/8/07
to RubyOnRails to russian
On 8 дек, 21:51, "Alexey Verkhovsky" <alexey.verkhov...@gmail.com>
wrote:
> On Dec 8, 2007 11:37 AM, Роман "Rubynovich" Шипиев <rubynov...@gmail.com> wrote:
>
> > привычка их писать быстро исчезает и народ скатывается на
> > односимвольные переменные.
>
> Что для читабельности кода страшнее, чем волапюк, разве нет?
>

Именно! =) Поэтому приходится тратить лекцию по стилю написания кода.

Олег Андреев

unread,
Dec 8, 2007, 2:22:19 PM12/8/07
to ror...@googlegroups.com
Agree with Yaroslav. If one doesn't know basics of English, at least
he may learn it with "key/value" stuff. When guy is told to go read
RTFM carefully, he starts waving his paws and cry "when there gonna be
a translation, pleeease?!"

DRY! There won't be a translation! We live in a ONE world, let's not
to waste our time.


08.12.2007, в 21:41, Yaroslav Markin написал(а):

Олег Андреев

unread,
Dec 8, 2007, 2:28:19 PM12/8/07
to ror...@googlegroups.com
> Именно! =) Поэтому приходится тратить лекцию по стилю написания кода.


There are a few guidelines that your code should follow.
1. Parentheses around parameter lists for methods.
2. Two space indent.
3. Documentation is required.
4. Block-types in different situations. Use the {} syntax for single-
line blocks with one action. Use multi-line blocks for all other
situations that use the do/end style block.
5. Be wary of clever code! Cleverness for cleverness sake is not our
friend; if something is only slightly more handy but infinitely more
complex, then please reconsider your implementation.
6. 80 column line width except in exceptional situations.
(http://merb.devjavu.com/)


Source style
* Two spaces, no tabs
* Don't use and and or for boolean tests, instead always use && and ||
* MyClass.my_method(my_arg) -- not my_method( my_arg ) or my_method
my_arg
* Follow the conventions you see used in the source already.
(http://dev.rubyonrails.org/)

Тратить лекцию на стиль не пришлось бы, если бы выполнялся последний
пункт из рекомендаций Rails trac. Надо сразу писать правильно, а не
говорить потом, что "на самом деле, то была хитрожопая уловка, теперь
забудьте и переучивайтесь!"

Роман "Rubynovich" Шипиев

unread,
Dec 8, 2007, 2:39:27 PM12/8/07
to RubyOnRails to russian
Применение англоязычных переменных на начальном этапе невозможно! В
последствии -- запросто! Я мог бы и не писать учебник, если бы у меня
все студенты знали бы английский (хотя бы на базовом уровне). Есть
Кирка, которая написана просто замечательно и по ней реально выучить
Руби.

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

Yurii Rashkovskii

unread,
Dec 8, 2007, 2:56:42 PM12/8/07
to ror...@googlegroups.com
я давно склоняюсь к тому, что
преподавать программирование тем, кто
им не хочет заниматься как основной
или смежной профессией – трата
времени и усилий.

Роман "Rubynovich" Шипиев

unread,
Dec 8, 2007, 2:57:50 PM12/8/07
to RubyOnRails to russian
Итак, открою маленький секрет. На начальном этапе студенты
программируют "на листочках", чтобы научились писать осмысленный код,
а не перебирать всевозможные комбинации. =)

1. Самое главное -- это научить их расставлять скобки и с этим они
справляются.
2. Отступ в два символа -- решается настройкой редактора. Но мало кто
меняет настройки по умолчанию.
3. Документирование кода совершенно лишнее в программах размером в 1-3
строчки.
4. Все блоки пишутся только в записи {}, так как все итераторы у нас
принято писать только в строку. Это стимулирует написание небольших
блоков итератора, что в свою очередь позволяет упростить чтение
цепочки преобразований.
5. Это уж как получится =)
6. Это обязательно. Даже особую методику переносов в цепочке
преобразований придумал.

А зачем говорить? Народ сам забывает "плохую методику" и начинает
формировать свою. Именно в этот момент и стоит огласить общепринятый
Руби-стиль.

Олег Андреев

unread,
Dec 8, 2007, 3:01:39 PM12/8/07
to ror...@googlegroups.com

08.12.2007, в 22:39, Роман Rubynovich Шипиев написал(а):

> Применение англоязычных переменных на начальном этапе невозможно! В
> последствии -- запросто!

А не стоит ли перевести на русский и это (для начального этапа)? Где,
кстати, проходит граница между начальным этапом и всеми остальными?

Kernel
Object
Class
Module
Array
Hash
String
inspect
attribute_accessor
public
protected
private
self
do
begin
end
if
else
case
when
require
load
LOAD_PATH
raise
rescue
exception
error
open
close
push
pop
shift
unshift
eval
...

и стандартно-повсеместное из Рельсы:

model
controller
helper
fixture
migration
001_CreateUsersTable
params
before_filter
session
cookie
find
create
save
delete
destroy
render
redirect
establish_connection
cache
respond_to
partial
layout
map
connect
resource
...


Роман "Rubynovich" Шипиев

unread,
Dec 8, 2007, 3:01:59 PM12/8/07
to RubyOnRails to russian
Я преподаю тем, кто будет заниматься этой профессией в дальнейшем
(сис.админы и программисты). Это не пустая трата времени, хоть и с
очень низкой продуктивностью (в среднем 17% по курсу). Главное
выделить стремящихся в отдельную подгруппу и заниматься с ними более
усиленно.

On 8 дек, 22:56, Yurii Rashkovskii <yra...@gmail.com> wrote:
> я давно склоняюсь к тому, что
> преподавать программирование тем, кто
> им не хочет заниматься как основной
> или смежной профессией - трата

Yurii Rashkovskii

unread,
Dec 8, 2007, 3:03:46 PM12/8/07
to ror...@googlegroups.com
по моим наблюдениям, максимально
интересные программисты – самоучки

Роман "Rubynovich" Шипиев

unread,
Dec 8, 2007, 3:05:48 PM12/8/07
to RubyOnRails to russian
Хороший список, но изучение двух языков одновременно -- слишком
большая нагрузка как на меня (время не бесконечно и есть тематический
план), так и на студента. Но список хороший... обязательно использую.

Начальный этап -- это когда программу удобно писать в irb. Как правило
1-3 строчек.

Роман "Rubynovich" Шипиев

unread,
Dec 8, 2007, 3:08:39 PM12/8/07
to RubyOnRails to russian
Есть и такие, но их очень мало. Зато с ними меньше всего проблем. =)
Подкидывай олимпиадные задачки почаще и все... =)

On 8 дек, 23:03, Yurii Rashkovskii <yra...@gmail.com> wrote:
> по моим наблюдениям, максимально
> интересные программисты - самоучки

Yurii Rashkovskii

unread,
Dec 8, 2007, 3:11:02 PM12/8/07
to ror...@googlegroups.com
в моем окружении, как и у многих других,
как я понимаю – самоучек в окружении
преобладает.

и олимпиадные задачки не показатель. я
вон только до республиканской дошел и
провалил ее почем зря ;)

Олег Андреев

unread,
Dec 8, 2007, 3:11:22 PM12/8/07
to ror...@googlegroups.com

08.12.2007, в 22:57, Роман Rubynovich Шипиев написал(а):

> Итак, открою маленький секрет. На начальном этапе студенты
> программируют "на листочках", чтобы научились писать осмысленный код,
> а не перебирать всевозможные комбинации. =)

Надесь, под "листочками" понимается irb, не меньше.

> 1. Самое главное -- это научить их расставлять скобки и с этим они
> справляются.

Разве в 5-м классе не научили понимать структуру алгебраических
выражений?

> 2. Отступ в два символа -- решается настройкой редактора. Но мало кто
> меняет настройки по умолчанию.

Надо менять. Надо учить разбираться с тем, с чем работаешь. Читать
сорцы, например. Докапываться до того, как оно там внутри устроено. И
критерий выбора начальных задач — минимум объема для всеобъемлющего
изучения.

> 3. Документирование кода совершенно лишнее в программах размером в 1-3
> строчки.

Ну, когда программа начинает содержать Мысль, нужно учить её ясно
прописывать. В виде вменяемого "самодокументируемого" кода и, как
минимум, "how to run" и "usage examples" в Самом Начале. Чтобы любой
человек открыл код и увидел, зачем он ему и как с ним работать. Нужно
сразу учить писать "в команде", чтобы за корявый непонятный код
коллега надавал как следует по шапке. А тот, кто пишет код, должен
знать, что ему обязательно дадут по шапке, если он будет писать как
курица лапой.


> 4. Все блоки пишутся только в записи {}, так как все итераторы у нас
> принято писать только в строку. Это стимулирует написание небольших
> блоков итератора, что в свою очередь позволяет упростить чтение
> цепочки преобразований.

Блоки — это не только итераторы. И даже итераторы принято писать через
do .. end, если в одну строку не влезает. А если в одной строке
записано больше 20 (подставьте свое) языковых сущностей, то это,
конечно, пипец.

> 5. Это уж как получится =)

Вот этому clever code и нужно учить! Все остальное — дело техники,
приходит само с практикой.


Роман "Rubynovich" Шипиев

unread,
Dec 8, 2007, 3:13:36 PM12/8/07
to RubyOnRails to russian
В моем окружении тоже в основном самоучки. Но одно дело окружение и
совсем другое несколько потоков по 100 человек в каждом. =) Где
столько самоучек набрать? =)

Олимпиадные задачки хоть и не показатель, зато народу есть чем
заняться до следующей пары. =)

On 8 дек, 23:11, Yurii Rashkovskii <yra...@gmail.com> wrote:
> в моем окружении, как и у многих других,
> как я понимаю - самоучек в окружении

Yaroslav Markin

unread,
Dec 8, 2007, 3:23:08 PM12/8/07
to ror...@googlegroups.com
Я бы обобщил -- не стоит обучать
человека если ему это неинтересно.
Трата времени, абсолютно.

On 08.12.2007, at 22:56, Yurii Rashkovskii wrote:

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


--
Yaroslav Markin
yaro...@markin.net



Роман "Rubynovich" Шипиев

unread,
Dec 8, 2007, 3:28:58 PM12/8/07
to RubyOnRails to russian


On 8 дек, 23:11, Олег Андреев <olega...@gmail.com> wrote:
> 08.12.2007, в 22:57, Роман Rubynovich Шипиев написал(а):
>
> > Итак, открою маленький секрет. На начальном этапе студенты
> > программируют "на листочках", чтобы научились писать осмысленный код,
> > а не перебирать всевозможные комбинации. =)
>
> Надесь, под "листочками" понимается irb, не меньше.
>

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

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

> > 1. Самое главное -- это научить их расставлять скобки и с этим они
> > справляются.
>
> Разве в 5-м классе не научили понимать структуру алгебраических
> выражений?
>

Я промолчу по поводу того, чему их научили в 5м классе. =) Расстановка
скобок в основном касается методов вывода результата. С остальными
проблем никогда не было.

> > 2. Отступ в два символа -- решается настройкой редактора. Но мало кто
> > меняет настройки по умолчанию.
>
> Надо менять. Надо учить разбираться с тем, с чем работаешь. Читать
> сорцы, например. Докапываться до того, как оно там внутри устроено. И
> критерий выбора начальных задач -- минимум объема для всеобъемлющего
> изучения.
>

Давай-ка я расскажу в каких условиях мне приходится работать. Для
того, чтобы заставить админов поставить интерпретатор на все
компьютеры у меня уходит от нескольких дней до нескольких недель. В
конце концов меня все задолбало и я использую Try Ruby! Дома студенты
пользуются fxri. По крайней мере до тех пор, пока не начинается
написание объемного кода. Читать сорцы и менять настройки -- это
личное дело каждого. А так как народ программит преимущественно дома,
то и мое влияние ослаблено.

> > 3. Документирование кода совершенно лишнее в программах размером в 1-3
> > строчки.
>
> Ну, когда программа начинает содержать Мысль, нужно учить её ясно
> прописывать. В виде вменяемого "самодокументируемого" кода и, как
> минимум, "how to run" и "usage examples" в Самом Начале. Чтобы любой
> человек открыл код и увидел, зачем он ему и как с ним работать. Нужно
> сразу учить писать "в команде", чтобы за корявый непонятный код
> коллега надавал как следует по шапке. А тот, кто пишет код, должен
> знать, что ему обязательно дадут по шапке, если он будет писать как
> курица лапой.
>

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

> > 4. Все блоки пишутся только в записи {}, так как все итераторы у нас
> > принято писать только в строку. Это стимулирует написание небольших
> > блоков итератора, что в свою очередь позволяет упростить чтение
> > цепочки преобразований.
>
> Блоки -- это не только итераторы. И даже итераторы принято писать через
> do .. end, если в одну строку не влезает. А если в одной строке
> записано больше 20 (подставьте свое) языковых сущностей, то это,
> конечно, пипец.
>

У меня есть для этого свое решение. Это уже другой уровень и другой
стиль.

Magick::Image.new(cols, rows){ |image| image.background_color =
color }.

composite(b_image,Magick::SouthWestGravity,Magick::OverCompositeOp).

composite(a_image,Magick::NorthEastGravity,Magick::OverCompositeOp).

composite(Magick::Image.read(wm_before).first,Magick::SouthWestGravity,Magick::MultiplyCompositeOp).

composite(Magick::Image.read(wm_after).first,Magick::SouthEastGravity,Magick::MultiplyCompositeOp).
write('images/' + result)


> > 5. Это уж как получится =)
>
> Вот этому clever code и нужно учить! Все остальное -- дело техники,
> приходит само с практикой.

Это тоже дело техники. Если все программы на листочках, то то, что
может принять интерпретатор -- не принимаю я =)

Роман "Rubynovich" Шипиев

unread,
Dec 8, 2007, 3:38:52 PM12/8/07
to RubyOnRails to russian
Согласен. Но весь интерес состоит в том, чтобы к самоучкам добавить
еще несколько человек, которым программирование стало интересно. Ради
них и приходится постоянно работать над материалом. Смотреть, что
понятно, а что -- не очень.

Преподавание вообще штука жутко непродуктивная. Те, кому интересно --
выучат сами, а те, кому не интересно -- программировать так и не
научатся.

On 8 дек, 23:23, Yaroslav Markin <yaros...@markin.net> wrote:
> Я бы обобщил -- не стоит обучать
> человека если ему это неинтересно.
> Трата времени, абсолютно.
>
> On 08.12.2007, at 22:56, Yurii Rashkovskii wrote:
>
> > я давно склоняюсь к тому, что
> > преподавать программирование тем, кто
> > им не хочет заниматься как основной
> > или смежной профессией - трата
> > времени и усилий.
>
> --
> Yaroslav Markin
> yaros...@markin.net

Олег Андреев

unread,
Dec 8, 2007, 4:19:44 PM12/8/07
to ror...@googlegroups.com
1) Если студенту интересен предмет, он будет ковыряться сам, читать
сорцы, статьи, книги. Он так или иначе будет наталкиваться на все эти
слова и код-стайлы.

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

Те студенты, которые не горят желанием (1) или не могут осилить Факты
Реальной Жизни (2), весьма погано к этой жизни адаптируются (и в общем-
то, могут идти гулять).

Мне не нравится подход "Итак, вы получили диплом, а теперь - Реальная
Жизнь, товарищи! Начинайте учиться работать с ней!"
Курсовые работы, в моем понимании, должны идти в оупенсорс, быть кем-
нибудь востребованы, должны вызывать дискуссию (на английском,
желательно). Это может быть и не brand new library, а исправления в
существующей. Например, задача: пофиксить какой-нибудь тикет из
рельсы: разобраться в коде, написать тест/спеку, отрефакторить код,
добавить фичу/фикс и добиться того, чтобы патч приняли.

Для некоторых звучит утопично, но для меня это — поднять планку и
тянуться к ней, вместо того, чтобы опускать ее до тех пор, пока
человек не сможет перепрыгнуть, обладая ранее полученными силами. В
средней школе и в политехе был именно такой метод: "от каждого - по
способностям". Это никакое не образование, а тест на IQ (который не
меняется) и знание "фактов".
В Аничковом Лицее (супершкола в Питере с 10 по 11 класс) и разных
коммерческих компаниях планка была _всегда_ выше моих текущих знаний и
умений. В Аничковом нас и учили тому же, о чем Стив Джобс говорил в
Стенфорде: "Stay hungry, stay foolish" (эпилог в к какой-то глобальной
энциклопедии).

Из политеха мне мешает сбежать неотмазанность от армии, и я
реалистично отношусь к тому, какое "образование" я там получаю. Все,
что я хорошо знаю про радиотехнику, было мне интересно или было-таки
вдолблено годами. Все остальное — что-то страшно удаленное от моих
увлечний (СВЧ, аналоговое телевидение, оптика, схемотехника и т.д.) и,
как следствие, мне непонятное. Переводиться, скажем, на ФТК — менять
шило на мыло.

(Это я безотносительно к кому либо, так, мысли вслух.)

08.12.2007, в 23:05, Роман Rubynovich Шипиев написал(а):

kronos

unread,
Dec 8, 2007, 4:44:14 PM12/8/07
to RubyOnRails to russian
On Dec 9, 12:19 am, Олег Андреев <olega...@gmail.com> wrote:
> Курсовые работы, в моем понимании, должны идти в оупенсорс, быть кем-
> нибудь востребованы, должны вызывать дискуссию (на английском,
> желательно). Это может быть и не brand new library, а исправления в
> существующей. Например, задача: пофиксить какой-нибудь тикет из
> рельсы: разобраться в коде, написать тест/спеку, отрефакторить код,
> добавить фичу/фикс и добиться того, чтобы патч приняли.

У нас не тот уровень. Не удивлюсь если мои преподаватели не знают что
такое опенсорс.

Роман "Rubynovich" Шипиев

unread,
Dec 8, 2007, 4:54:58 PM12/8/07
to RubyOnRails to russian
On 9 дек, 00:19, Олег Андреев <olega...@gmail.com> wrote:
> 1) Если студенту интересен предмет, он будет ковыряться сам, читать
> сорцы, статьи, книги. Он так или иначе будет наталкиваться на все эти
> слова и код-стайлы.
>

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

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

То есть курс надо проектировать так, чтобы дать студенту как можно
меньше информации? =)

> Мне не нравится подход "Итак, вы получили диплом, а теперь - Реальная
> Жизнь, товарищи! Начинайте учиться работать с ней!"
> Курсовые работы, в моем понимании, должны идти в оупенсорс, быть кем-
> нибудь востребованы, должны вызывать дискуссию (на английском,
> желательно). Это может быть и не brand new library, а исправления в
> существующей. Например, задача: пофиксить какой-нибудь тикет из
> рельсы: разобраться в коде, написать тест/спеку, отрефакторить код,
> добавить фичу/фикс и добиться того, чтобы патч приняли.
>

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

> Для некоторых звучит утопично, но для меня это -- поднять планку и
> тянуться к ней, вместо того, чтобы опускать ее до тех пор, пока
> человек не сможет перепрыгнуть, обладая ранее полученными силами. В
> средней школе и в политехе был именно такой метод: "от каждого - по
> способностям". Это никакое не образование, а тест на IQ (который не
> меняется) и знание "фактов".

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

> В Аничковом Лицее (супершкола в Питере с 10 по 11 класс) и разных
> коммерческих компаниях планка была _всегда_ выше моих текущих знаний и
> умений. В Аничковом нас и учили тому же, о чем Стив Джобс говорил в
> Стенфорде: "Stay hungry, stay foolish" (эпилог в к какой-то глобальной
> энциклопедии).
>

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

Роман "Rubynovich" Шипиев

unread,
Dec 8, 2007, 4:56:09 PM12/8/07
to RubyOnRails to russian
Не только не знают, но и не могут его использовать. Закон об авторском
и смежном праве мешает. Мне уже по башке настучали =)))

Олег Андреев

unread,
Dec 8, 2007, 5:34:29 PM12/8/07
to ror...@googlegroups.com

>> 2) Если курс хорошо построен, то студент будет вынужден гуглить
>> сорцы,
>> статьи, книги. И будет вынужден сталкиваться со всем, что
>> происходит в
>> реальном мире.
>
> То есть курс надо проектировать так, чтобы дать студенту как можно
> меньше информации? =)

Нет, конечно. Я бы не тратил время на пересказывание деталей мануала.
Рассказывал бы вводные вещи и разные плохоизученные/неочевидные/
сложные вещи. Afaik, в западных вузах, меньшую часть курса препод
читает лекции, а большую — студенты читают книги и лабают какие-нибудь
злые домашние работы и курсовики.


>> Мне не нравится подход "Итак, вы получили диплом, а теперь - Реальная
>> Жизнь, товарищи! Начинайте учиться работать с ней!"
>> Курсовые работы, в моем понимании, должны идти в оупенсорс, быть кем-
>> нибудь востребованы, должны вызывать дискуссию (на английском,
>> желательно). Это может быть и не brand new library, а исправления в
>> существующей. Например, задача: пофиксить какой-нибудь тикет из
>> рельсы: разобраться в коде, написать тест/спеку, отрефакторить код,
>> добавить фичу/фикс и добиться того, чтобы патч приняли.
>
> Хорошая идея, но все имущественные права на курсовые студентом по
> закону принадлежат учебному учреждения. Убедить руководство отказаться
> от этих прав -- еще та задачка. =) Но такая практика тоже есть, хоть
> пока и пробуксовывает. По хорошему, нужно несколько команд, которые
> будут принимать волонтеров на период написания курсовой или дипломного
> проекта. Именно эти команды и покажут студенту, что ждет его в
> реальности. Пока это только мечты.

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

Мечты надо реализовывать, а не мечтать :-)

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

Согласен.

Олег Андреев

unread,
Dec 8, 2007, 5:34:56 PM12/8/07
to ror...@googlegroups.com

09.12.2007, в 0:56, Роман Rubynovich Шипиев написал(а):

> Не только не знают, но и не могут его использовать. Закон об авторском
> и смежном праве мешает. Мне уже по башке настучали =)))

Подробнее можно? Что не так с MIT license?

Роман "Rubynovich" Шипиев

unread,
Dec 8, 2007, 5:39:33 PM12/8/07
to RubyOnRails to russian
Если ты даешь студенту задание, то все, что он сделает -- принадлежит
учреждению (а значит и устанавливает лицензию), где работает
преподаватель и учится студент. То, на что студент имеет право --
поставить свое имя на работе. Понятное дело, что все, что делает
студент по собственной инициативе -- принадлежит ему и лицензию будет
устанавливать он. Теоретические, если студент использует исходники
чужой работы под лицензией вроде GPL, то у него могут эту работу не
принять.

Роман "Rubynovich" Шипиев

unread,
Dec 8, 2007, 5:47:30 PM12/8/07
to RubyOnRails to russian
On 9 дек, 01:34, Олег Андреев <olega...@gmail.com> wrote:
> >> 2) Если курс хорошо построен, то студент будет вынужден гуглить
> >> сорцы,
> >> статьи, книги. И будет вынужден сталкиваться со всем, что
> >> происходит в
> >> реальном мире.
>
> > То есть курс надо проектировать так, чтобы дать студенту как можно
> > меньше информации? =)
>
> Нет, конечно. Я бы не тратил время на пересказывание деталей мануала.
> Рассказывал бы вводные вещи и разные плохоизученные/неочевидные/
> сложные вещи. Afaik, в западных вузах, меньшую часть курса препод
> читает лекции, а большую -- студенты читают книги и лабают какие-нибудь
> злые домашние работы и курсовики.
>

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

Курсовой работы по моему предмету не предусмотрено, но она есть =)
Стучали уже много раз за это по башке. Именно при ее выполнении
студенты начинают читать книги, документацию, исходники...

>
> >> Мне не нравится подход "Итак, вы получили диплом, а теперь - Реальная
> >> Жизнь, товарищи! Начинайте учиться работать с ней!"
> >> Курсовые работы, в моем понимании, должны идти в оупенсорс, быть кем-
> >> нибудь востребованы, должны вызывать дискуссию (на английском,
> >> желательно). Это может быть и не brand new library, а исправления в
> >> существующей. Например, задача: пофиксить какой-нибудь тикет из
> >> рельсы: разобраться в коде, написать тест/спеку, отрефакторить код,
> >> добавить фичу/фикс и добиться того, чтобы патч приняли.
>
> > Хорошая идея, но все имущественные права на курсовые студентом по
> > закону принадлежат учебному учреждения. Убедить руководство отказаться
> > от этих прав -- еще та задачка. =) Но такая практика тоже есть, хоть
> > пока и пробуксовывает. По хорошему, нужно несколько команд, которые
> > будут принимать волонтеров на период написания курсовой или дипломного
> > проекта. Именно эти команды и покажут студенту, что ждет его в
> > реальности. Пока это только мечты.
>
> Хехе. Это детали. Можно назвать не курсовой, а "домашним заданием".
> Не думаю, что нужно приглашать сторонние команды. Достаточно попросить
> студентов разделиться на пары-тройки, чтобы они совместно решали какую-
> нибудь проблему. При этом, для детектирования дизбаланса, для разных
> параллельно поставленных задач, каждый студент должен состоять в
> разных командах. И может даже играть разные роли в каждой из них.
>
> Мечты надо реализовывать, а не мечтать :-)
>

Пытаемся. Но слишком уж много хочется =)

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

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

Олег Андреев

unread,
Dec 8, 2007, 5:48:57 PM12/8/07
to ror...@googlegroups.com
Хм. А негосударственное учреждение может свои правила выставлять? В
России есть еще веселуха с госбезопасностью и ограничениями на экспорт
технологий. Впрочем, в США тоже есть (RSA долго была невыездной).

Какой закон/устав нужно почитать на эту тему?

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

09.12.2007, в 1:39, Роман Rubynovich Шипиев написал(а):

Michael Klishin

unread,
Dec 8, 2007, 5:47:03 PM12/8/07
to ror...@googlegroups.com
Вот чтобы не бороться с такими
прелестями российской системы
образования, надо изучить вопрос с
лицензией (все в википедии и смежных
сайтах под CC sharealike 2.5?) и форкать этот
учебник.

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

On 9 дек. 2007, at 00:39, Роман Rubynovich Шипиев wrote:

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

MK

Можно лучше:
novemberain.com/tags/TiaBWTDI

Олег Андреев

unread,
Dec 8, 2007, 5:53:30 PM12/8/07
to ror...@googlegroups.com
Ну, я бы тщательно показал стучащим по башке (и студентам, и
начальству) качество полученного таким образом образования :-)

09.12.2007, в 1:47, Роман Rubynovich Шипиев написал(а):

Роман "Rubynovich" Шипиев

unread,
Dec 8, 2007, 5:57:04 PM12/8/07
to RubyOnRails to russian
On 9 дек, 01:48, Олег Андреев <olega...@gmail.com> wrote:
> Хм. А негосударственное учреждение может свои правила выставлять? В
> России есть еще веселуха с госбезопасностью и ограничениями на экспорт
> технологий. Впрочем, в США тоже есть (RSA долго была невыездной).

Да и государственное может. Принимается решение на уровне ректора и
все.

> Какой закон/устав нужно почитать на эту тему?

Закон один -- "Об авторском и смежных правах".

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

Специалистам подобные вещи понятны, а вот тем, кто принимает решения
-- нет. Есть ВУЗы, которые возвели открытый исходный код в ранг своей
политики. Но таких, меньшинство!

Роман "Rubynovich" Шипиев

unread,
Dec 8, 2007, 6:01:13 PM12/8/07
to RubyOnRails to russian


On 9 дек, 01:47, Michael Klishin <michael.s.klishin.li...@gmail.com>
wrote:
> Вот чтобы не бороться с такими
> прелестями российской системы
> образования, надо изучить вопрос с
> лицензией (все в википедии и смежных
> сайтах под CC sharealike 2.5?) и форкать этот
> учебник.
>

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

> Псевдорусские переменные и вместе с
> ними все чудеса системы образования
> пусть живут в старом.
>

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

Роман "Rubynovich" Шипиев

unread,
Dec 8, 2007, 6:05:07 PM12/8/07
to RubyOnRails to russian
У администрации совсем другие задачи. И качество образования на выходе
их волнует в последнюю очередь. Качество образования -- это задача
преподавателя, которому приходится крутиться в рамках программ курса и
тематических планов. Если что-то не предусмотрено программой, то
настучать могут запросто.

Michael Klishin

unread,
Dec 8, 2007, 6:06:38 PM12/8/07
to ror...@googlegroups.com
Ответьте в соседнем треде явно, "Да" или
"Нет".

On 9 дек. 2007, at 01:01, Роман Rubynovich Шипиев wrote:
>
>> Псевдорусские переменные и вместе с
>> ними все чудеса системы образования
>> пусть живут в старом.
>>
>
> Псевдорусским переменным и так
> выделено мало времени жизни.

MK

Можно лучше:
novemberain.com/tags/TiaBWTDI

Роман "Rubynovich" Шипиев

unread,
Dec 8, 2007, 6:14:23 PM12/8/07
to RubyOnRails to russian
Псевдорусские переменные использоваться будут, но только на начальном
этапе. В дальнейшем от них пользы нету никакой.

On 9 дек, 02:06, Michael Klishin <michael.s.klishin.li...@gmail.com>
wrote:

Олег Андреев

unread,
Dec 8, 2007, 6:16:26 PM12/8/07
to ror...@googlegroups.com

09.12.2007, в 1:57, Роман Rubynovich Шипиев написал(а):

> On 9 дек, 01:48, Олег Андреев <olega...@gmail.com> wrote:
>> Хм. А негосударственное учреждение может свои правила выставлять? В
>> России есть еще веселуха с госбезопасностью и ограничениями на
>> экспорт
>> технологий. Впрочем, в США тоже есть (RSA долго была невыездной).
>
> Да и государственное может. Принимается решение на уровне ректора и
> все.
>
>> Какой закон/устав нужно почитать на эту тему?
>
> Закон один -- "Об авторском и смежных правах".

Эээ. Я про тот закон, который делает работу студента принадлежащей
вузу. Который мешает использованию GPL- и другого стороннего материала
(что абсурдно, на самом деле).

В моем наивном понимании:
1) студент может забацать свой проект и выложить его по MIT/GPL, дать
другим контрибьютить. Он всегда сможет отчитаться, что лично он сделал
для этого проекта и за что заслужил зачет.
2) студент может контрибутить в чужой проект и отчитаться, что лично
он сделал для этого проекта и за что заслужил зачет.

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

Какие, например?

Олег Андреев

unread,
Dec 8, 2007, 6:18:07 PM12/8/07
to ror...@googlegroups.com
Так форкать учебник или "начальный этап" уже прошел и можно
редактировать имеющийся? Я не хочу зря тратить ничье время, поэтому
добиваюсь ясного ответа Да/Нет.

Здесь нет никаких личных обид или ссор (еще чего не хватало :-), есть
только желание сделать мир лучше.


09.12.2007, в 2:14, Роман Rubynovich Шипиев написал(а):

Michael Klishin

unread,
Dec 8, 2007, 6:21:58 PM12/8/07
to ror...@googlegroups.com
Я явно попросил ответа "ДА" или "НЕТ",
мне не интересны детали сферы
российского образования, мне
интересно, каковы наименьшие усилия,
которыми можно вычистить из учебника
эту типично российско-образовательную
дурь.

Делать форк или поправим старый
учебник?
> --~--~---------~--~----~------------~-------~--~----~
> --

MK

Можно лучше:
novemberain.com/tags/TiaBWTDI

Роман "Rubynovich" Шипиев

unread,
Dec 9, 2007, 3:32:29 AM12/9/07
to RubyOnRails to russian
On 9 дек, 02:16, Олег Андреев <olega...@gmail.com> wrote:
> 09.12.2007, в 1:57, Роман Rubynovich Шипиев написал(а):
>
> > On 9 дек, 01:48, Олег Андреев <olega...@gmail.com> wrote:
> >> Хм. А негосударственное учреждение может свои правила выставлять? В
> >> России есть еще веселуха с госбезопасностью и ограничениями на
> >> экспорт
> >> технологий. Впрочем, в США тоже есть (RSA долго была невыездной).
>
> > Да и государственное может. Принимается решение на уровне ректора и
> > все.
>
> >> Какой закон/устав нужно почитать на эту тему?
>
> > Закон один -- "Об авторском и смежных правах".
>
> Эээ. Я про тот закон, который делает работу студента принадлежащей
> вузу. Который мешает использованию GPL- и другого стороннего материала
> (что абсурдно, на самом деле).
>

Именно он и есть. По этому закону именно ВУЗ устанавливает лицензию на
работу, а не студент. А использование стороннего материала --
следствие. Если студент его использует, то это автоматически блокирует
имущественные права ВУЗа.

Здесь проблема только в том, что ВУЗ может зарабатывать на разработках
своих студентов, а всякие MIT/GPL автоматом блокируют подобную
возможность.

> В моем наивном понимании:
> 1) студент может забацать свой проект и выложить его по MIT/GPL, дать
> другим контрибьютить. Он всегда сможет отчитаться, что лично он сделал
> для этого проекта и за что заслужил зачет.

ВУЗ может запросто не оценить подобную работу.

> 2) студент может контрибутить в чужой проект и отчитаться, что лично
> он сделал для этого проекта и за что заслужил зачет.

Это может оценить преподаватель. И если он примет подобную работу, то
у этого преподавателя могут быть проблемы.


> > Специалистам подобные вещи понятны, а вот тем, кто принимает решения
> > -- нет. Есть ВУЗы, которые возвели открытый исходный код в ранг своей
> > политики. Но таких, меньшинство!
>
> Какие, например?

МГИУ, например =) Роганову удалось выйти на ректора и добиться "курса
на открытый исходный код".

Роман "Rubynovich" Шипиев

unread,
Dec 9, 2007, 3:37:11 AM12/9/07
to RubyOnRails to russian
Это зависит от того, какую часть учебника вы хотите править. Если ту,
где разбираются типы данных и особенности их применения (начальный
этап), то лучше форкайте. Если все, что после, то лучше править
существующий.

ЗЫ. А лучше, направьте энергию на создание полного справочника по
методам языка ( http://ru.wikibooks.org/wiki/Ruby/Справочник )

Роман "Rubynovich" Шипиев

unread,
Dec 9, 2007, 3:38:23 AM12/9/07
to RubyOnRails to russian
Если вам принципиально надо вычистить учебник от псевдорусских
переменных, то лучше делайте форк.

On 9 дек, 02:21, Michael Klishin <michael.s.klishin.li...@gmail.com>
wrote:

Maxim Kulkin

unread,
Dec 9, 2007, 8:40:14 AM12/9/07
to ror...@googlegroups.com

Хе-хе.. Помню нас тоже разбивали на пары.
Обычно решалось все так: у нас в студенческой компании были более
слабые (в данной конкрентной теме) и более сильные. Пара всегда
состояла из слабого + сильного. Я обычно был в паре с подругой -
безусловно умной девочкой, но программировать ей было не особо нужно.
Поэтому все программирование (и проектирование) делал я. А так как я
был очень занятой и ленивый и на лекции мог (и/или хотел) приходить
только по большим (или важным) праздникам, то мне надо было знать,
каково положение с данной курсовой, какие новые указания поступили,
кто уже сдал (чтобы придти и заценить работу одногруппника). Вот этим
обычно занималась моя напарница =).

Как правило, на нашем потоке курсовую делали 2-3 человека (2-3 разных
версии), остальные просто копировали, стараясь изменить ее до
неузнаваемости (передвинуть кнопки, поменять цвета и т.п.).

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

Резюме: если разюивать на пары/тройки и т.п. то работу как правило все
равно делать будут примерно одни и те же люди.

Ilya

unread,
Dec 10, 2007, 3:29:34 AM12/10/07
to ror...@googlegroups.com
Привет!

> Здесь проблема только в том, что ВУЗ может зарабатывать на разработках
> своих студентов, а всякие MIT/GPL автоматом блокируют подобную
> возможность.

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

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

С уважением,
Илья

Max Lapshin

unread,
Dec 10, 2007, 5:09:04 AM12/10/07
to ror...@googlegroups.com


On 12/8/07, Yaroslav Markin <yaro...@markin.net> wrote:

Скажите, неужели вы ведете курс в ВУЗе,
где не читают английского языка?

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


Ярослав, ну сколько можно объяснять, что в среднем ВУЗе среди 30 человек
есть только 2-3, кому что-то нужно. остальным надо просто донести максимум информации,
который способен донести преподаватель. 

 

Yaroslav Markin

unread,
Dec 10, 2007, 5:11:51 AM12/10/07
to ror...@googlegroups.com
Макс, я знаю -- я пробовал преподавать в
своем ВУЗе. По этой причине и бросил --
никому ничего не нужно, проще лично с
человеком работать, рассказывать,
давать задания, смотреть.

--
Yaroslav Markin
yaro...@markin.net




Max Lapshin

unread,
Dec 10, 2007, 5:19:44 AM12/10/07
to ror...@googlegroups.com
On 12/10/07, Ilya <nem...@gmail.com> wrote:

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

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


Все права на любой объект авторского права, произведёный студентом или преподавателем, на территории ВУЗа, во рабочее время и/или используя технические средства ВУЗа, принадлежат ВУЗу. Именно он диктует чего и как с лицензиями.

 

 

Роман "Rubynovich" Шипиев

unread,
Dec 10, 2007, 11:30:44 AM12/10/07
to RubyOnRails to russian
Все именно так, но что произойдет, если ВУЗ захочет закрыть код или
запретить его открытую публикацию и/или использование? Вроде бы он и
собственник, и вроде бы лицензия запрещает. Вот именно такие вещи и
пресекаются.

До 1995 года точно такая же ситуация была в ВУЗ'ах США. Там за
отслеживанием подобных вещей следит патентное бюро ВУЗа. Но после 1995
года (на фондовую биржу вышла компания Netscape) они пересмотрели свою
позицию и позволили сотрудникам использовать свои наработки в обмен на
% акций их предприятия.

andrey andreev

unread,
Dec 10, 2007, 12:00:55 PM12/10/07
to ror...@googlegroups.com
Добрый вечер.
По теме ветки: использование переменных исключительно на английском
языке развивает словарный запас напрямую (поищешь в словаре перевод с
рус. яза). Важно, что использование псевдо-русских наименований --
медвежья услуга. Это развращающее облегчение условий обучения, а не
нормальная помощь. Нормальная -- давать ссылки и писать грамотный код,
чтобы студенты привыкали писать грамотно.

Также спешу поделиться тем, что мне известо об обучении в неплохом
техническом вузе. Я учусь на первом курсе СПб-шного Политеха,
физико-механический фак., кафедра биофизики (и пишу в рор2ру, ага...)
Так вот.
Во-первых, из двух наших кафедральный групп (по 10 человек в группе)
математику знают четверо. Физику -- двое. При этом все писали при
поступлении математику (те, кто писал физику не знают ничего. И не
понимают.) Человек пять знали, куда идут учиться (один знает что такое
биофизика).
Во-вторых, преподаватели делятся на тех, кому "пофиг", и тех, кто ничего
не делает. То есть не учат тех, кто не понимает предмета, и дают скучать
остальным. Сложнее всего получить зачет по английскому языку и
информатике -- предметам, которым даже не пытаются учить: преподают
одновременно пофигисты и идиоты. Пофигисты в данной классификации --
люди, дающие задания и отвечающие на вопросы. С лекторами гораздо лучше
дело: читают честно и неплохо, в общем-то.
Что с этим делать, не понятно. И катится система образования не в лучшую
сторону, по моим наблюдениям. Несмотря на националистические проекты ;)

Michael Klishin

unread,
Dec 10, 2007, 12:50:54 PM12/10/07
to ror...@googlegroups.com
Ребят, открывайте группу fucked-up-higher-
technical-education-in-russia-to-ru и фигарьте там,
фигарьте. Хотите, я вам группу открою и
вас туда приглашу, только свалите с
этими дискуссиями отсюда, горемычный
учебник уже форкнули и вычищаем.
MK

Можно лучше:
novemberain.com/tags/TiaBWTDI

Reply all
Reply to author
Forward
0 new messages