2010-03-30

by Vasil Kolev

Ден почивка.

Реших да свърша нещо полезно и се разходих до ФМИ да присъствам на една лекция от курса по Python, която Стефан водеше. Изводи/наблюдения:
– В python могат да се свършат вероятно огромно количество мизерии. Трябва да видя как ще стане, но май има начин да се припокрие object.__getarguments__ и да не може да се заобиколи (ще си поиграя тия дни).
– Рядко съм виждал в два часа описани толкова много средства за прострелване в крака. Изглежда аз съм повреден, но си мислех през цялото време разни програмисти колко жестоко могат да се омажат.
– Цялото ФМИ е в камери и има надписи “Обектът е под видеонаблюдение”. В 325 имаше 4. Усещането е странно.
– “Мусала” изглежда са си купили зала 325 (и са я оправили, има вид на зала от истински университет).
– В почивката м/у двата часа на лекцията едни студенти дойдоха и ме питаха дали могат да се снимат с мен. WTF. (снимката е в Бачийски)
– Видях обява за хора, дето си организират grid от хора, browse-ващи една страница и пускащи flash. Ебати (computing) пауъра.
– Торонто със зор събра хората след лекцията.
– Запознах се с малко студенти.

За малко се замислих не искам ли пак да водя лекции.

In other news, зимния семестър на 2010/2011 ще има “Мрежова сигурност 1”, по твърдения на Мариян.

Tags: ,

13 Responses to “2010-03-30”

  1. velin Says:

    селебрити :)

  2. iCaci Says:

    Ако в първите две точки са синтезирани впечатленията ти от Python, то очевидно това не е езикът за теб.

  3. Vasil Kolev Says:

    @icaci, това са впечатленията ми от лекцията, от езика като цяло са по-различни. Иначе – за мен подходящ език няма, аз по принцип не съм програмист (живея на shell scripting).

  4. dzver Says:

    Не е леко да си звезда. Чухме, че те готвят за следващия биг брадър :-)

  5. velin Says:

    който ще е във фми, за това са и камерите

  6. Кирил Владимиров Says:

    Хаха! Абе аз се чудех защо Стефан 10 пъти спомена, че някой може да се снима с тебе, ако иска след края на лекцията :D

    Относно прострелването в крака… повечето неща, които предполагаш, че ще те прострелят в крака… няма да стане точно така(заключние, базирано на въпросите ти) ;)

  7. Георги Иванов Says:

    Гласят те за рекламно лице на каркаде маниаксе , затова е била снимката.

  8. iCaci Says:

    По въпроса за камерите:

    Не на секса в коридорите, тоалетните, учебните зали и лабораториите на СУ!

  9. Кирил Владимиров Says:

    iCaci…че какво лошо има, баси, жигосват хора за цял живот там, поне малко да се повеселят, завалиите…

  10. Vasil Kolev Says:

    @iCaci, спокойно, те ползват презервативи, няма шанс да се размножат :)
    (освен това – за тоалетните и коридорите съм съгласен, ама има някои много удобни зали и лаборатории)

    @Кирил Владимиров, що да не стане :) Възможността да бърникаш на дълбоко в обекта и да подменяш функцията, която се вика за всяко достъпване на нещо от него дава невероятни възможности за правене на мизерии например.

  11. николай Says:

    Снимката: http://nikolay.bg/mess/maniax-and-students.jpg

  12. tie Says:

    “Възможността да бърникаш на дълбоко в обекта и да подменяш функцията, която се вика за всяко достъпване на нещо от него дава невероятни възможности за правене на мизерии например.”

    Да, ако успееш да го докараш до изпълняване на произволен код, можеш да направиш невероятни мизерии. Което е в сила за почти всички езици :) Трудната част е да накараш въпросното приложение да изпълни твоя произволен код. За щастие, подобни слабости са рядкост в Python-ските скриптове.

  13. Петър Пенчев Says:

    @tie – тук дори не би трябвало да става дума за изпълняване на произволен код as in код, зададен от външен агент (от гледна точка на сигурност). Лично за мен дори това *програмистът* да може да замести / допълни “системните” функции, свързани с даден обект (или модул, или функция, или каквото там още има езикът) си *е* възможност за прострелване в крака – много, много хубаво за опитните (и внимателни!) програмисти, но много, много опасно и за опитните, но невнимателни програмисти, и за не-толкова-опитните програмисти, които искат да се изфукат с това колко готини възможности на езика познават, какви са магесници.

    Не казвам, че е лошо – напротив дори – в ръцете на опитен и внимателен програмист може да направи чудеса – на C съм виждам какви ли не неща, правени с __init / __fini функции в обектни файлове; на Perl съм виждал много забавни неща, правени в BEGIN / END блокове и с tie(); в Java и .NET с reflection можеш да правиш магии; FORTH като цяло си е писан за това; на много други езици има много хубави неща, които можеш да направиш с бърникане из вътрешностите. Става лошо в три основни случая:

    – програмистът не е достатъчно опитен и прави нещо, което на неговата машина работи, но на машината на клиента се държи… странно.

    – програмистът е опитен, но невнимателен и прави нещо, което и на неговата машина, и на машината на клиента работи в 100% от тестваните случаи и 99.98% от нетестваните… и клиентът на третия час след подписването на приемо-предавателния протокол стъпва в останалите 0.02%.

    – програмистът е опитен и малко по-внимателен, прави нещо, което за конкретния проект работи съвсем както трябва, но той си знае, че в еди-какъв си извратен случай ще направи голяма мизерия. Два месеца по-късно в друг проект се сеща, че това би било полезно, копира кода и, понеже все пак не е съвсем внимателен и не е документирал извратения случай, изобщо не се сеща за него, докато клиентът не вземе, че се натресе право на него.

    Аз лично много харесвам възможността да бъркам където ми хрумне, но съвсем не я използвам всеки път, когато ми се отвори.
    (да, знам, че вероятността да бъда цитиран извън контекст е… доста голяма ;)

Leave a Reply