Автор Тема: Естония: Часове по програмиране още от първи клас  (Прочетена 2836 пъти)

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Дори да се изисква малко повече, това повечето не се препокрива с нужното за плочкаджията. Същото и с автомонтьора, и с неврохирурга, и с музиканта, ако ще и с учителката.

Още по-малко пък това означава, че програмирането е изкуство. Ако някой програмист тръгне да твърди че това което твори е изкуство, бих го пратил на 4-ти километър.
Активен

"Knowledge is power" - France is Bacon

kifavi8024

  • Новаци
  • *
  • Публикации: 0
    • Профил
От изкуство до изкуство има огромна разлика :D
Но като цяло много малко програмисти могат да съзадават програми, които наистина са изкуство.
То затова ни е на такова дередже бранша - ако всички програмисти бяха добри и читави, до сега да сме станали със заплати от по 300 лв, заради голяма конкуренция :)
« Последна редакция: Sep 12, 2012, 14:54 от !ntel »
Активен

lunarvalley

  • Гост
go_fire,

Интересно ми е, ти можеш ли да избиваш стени, слагаш плочки, прекарваш ВиК, тапети, паркети, чак някои мебели сам да направиш, които по никакъв начин да не се отличават от купешките?  :)
« Последна редакция: Sep 12, 2012, 14:30 от lunarvalley »
Активен

Naka

  • Напреднали
  • *****
  • Публикации: 3401
    • Профил
Амии.. Тези са много назад. Трябва още от предучилищна да ги учат на програмиране!
Активен

Perl - the only language that looks the same before and after encryption.

go_fire

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 8792
  • Distribution: Дебиан Сид
  • Window Manager: ROX-Desktop / е17
  • кашик с гранатомет в танково поделение
    • Профил
    • WWW
Никога не съм правил нищо от това, но се надявам, че мога да се науча.

Въпроса не беше в това. Аз казвах, че да програмирането не е изкуство, но да то изисква повече творчески поглед от обичайните дейности.
Активен

В $por4e2 e истината  ;)

***

Aко даваха стипендия за най-глупави, щях да съм човека с най-много Mини Kупъри

***

Reborn since 1998 || 15.09.2007 totally М$ free && conscience clear

ddantgwyn

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 1262
    • Профил
Никога не съм правил нищо от това, но се надявам, че мога да се науча.

Въпроса не беше в това. Аз казвах, че да програмирането не е изкуство, но да то изисква повече творчески поглед от обичайните дейности.

Ами не съм много убеден в това, което казваш. Да, в програмирането може да се влага творчески подход и други такива неща, но колко го правят?! За справка -- блога на зеления крокодил. Там има поучителни публикации за подхода copy & paste в програмирането.

А имам усещането, че и така модерният в последно време визуален подход в програмирането (visual studio например) убива съвсем творческия подход. така както стана с web „програмирането“ в момента, в който се появи Macromedia Dreamweaver. Но понеже не ставам за програмист, има все пак някакъв нищожен шанс и да не съм съвсем прав ;)

А да, да уточня -- в настоящата тема под „програмиране“ разбирам именно писането на код. Останалото, което е преди кодонабиването е предмет на съвсем различна дискусия.
Активен

the lamer's team honourable member

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Това с copy-paste има противоположна крайност, изразяваща се в доста извращения. На някои хора това с code reuse-а им е самоцел и като почнат да творят абстракция върху абстракция върху абстракция върху абстракция и накрая сътворяват някакво ужасно неудобно и криво за ползване нещо. Определено не е по-добре.
Активен

"Knowledge is power" - France is Bacon

ddantgwyn

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 1262
    • Профил
Това с copy-paste има противоположна крайност, изразяваща се в доста извращения. На някои хора това с code reuse-а им е самоцел и като почнат да творят абстракция върху абстракция върху абстракция върху абстракция и накрая сътворяват някакво ужасно неудобно и криво за ползване нещо. Определено не е по-добре.

И аз мисля, че не е добре :)

И че няма нищо творческо в това.
Активен

the lamer's team honourable member

Naka

  • Напреднали
  • *****
  • Публикации: 3401
    • Профил
Това с copy-paste има противоположна крайност, изразяваща се в доста извращения. На някои хора това с code reuse-а им е самоцел и като почнат да творят абстракция върху абстракция върху абстракция върху абстракция и накрая сътворяват някакво ужасно неудобно и криво за ползване нещо. Определено не е по-добре.

Ами ако правиш copy-paste със собственият си код? Код който ти си го писал и си го разбираш идеално. Много пъти ми се е случвало - трябва да се реши някакъв проблем... ама имам спомени, че подобно нещо съм го правил преди.... copy-paste ... малко видоизменяне... Някой път просто не мога да се сетя наново за алгоритъм, организация, какви функции се използват или пък за най- обикновен синтаксис.

Активен

Perl - the only language that looks the same before and after encryption.

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Под "copy-paste" се има предвид нещо друго. Представи си процедурен език като C, един и същ код, клониран (копи-пейстнат) вместо common функция, която се вика. Това е по принцип кофти pattern, който всички нормални хора избягват, но аз понякога правя компромиси с това (и като цяло не съм чак толкова против това в зависимост от ситуацията). Забавното е че едни пичове бяха писали университетски труд по въпроса дали клонирания код води до по-стабилен софтуер или обратното (странни метрики имат трябва да призная) с няколко примера за opensource софтуер, които анализираха, като един от примерите беше една стара версия на hashkill:

http://www.cs.usask.ca/~croy/papers/2012/Mondal_SAC2012_Stability.pdf

Забавното е че hashkill беше от малкото примери, където клонирания код води до по-стабилен софтуер (как установиха че е по-стабилен както казах е леко мъглява работа).  А като се сещам какво са анализирали, беше тотален кошмар. Като пример - имах три различни функции, които правеха едно и също - да кодират binary данни в base64, по един и същ начин, с една и съща таблица, голямо разхищение :)
Активен

"Knowledge is power" - France is Bacon

go_fire

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 8792
  • Distribution: Дебиан Сид
  • Window Manager: ROX-Desktop / е17
  • кашик с гранатомет в танково поделение
    • Профил
    • WWW
Помня този запис в дневника ти, но и тогава, както и сега съм достатъчно глупав, че да не разбера, за какво става въпрос  :'(

Все пак да приема, че истината е някъде там  ::)

ddantgwyn ужасно труден за запомняне/изговаряне прякор имаш. Преди години бях нещо като „почитател“ на PCWORD. Там почнаха една дълга поредица по „програмиране“ с визуален бъзик и студио. Бях в унесвест.

Щракаш тук с второ копче на мишката и избираш това, после на него и му редактираш етикета, след това още двадесет щракания и нещото работи, ама какво става не питай. Това почна от обективният Паскал. Днешните Ембаркадеро, бивши тдел на Борланд са виновни.

Но аз дори нямам достаръчно налудничав пример. G3w може да разкаже за преживяването си с Беa, компания закупена от оракулите. Там се рисуват диаграмки, за да стане нещото. Почти като UML, но още по-извратено.


Активен

В $por4e2 e истината  ;)

***

Aко даваха стипендия за най-глупави, щях да съм човека с най-много Mини Kупъри

***

Reborn since 1998 || 15.09.2007 totally М$ free && conscience clear

Naka

  • Напреднали
  • *****
  • Публикации: 3401
    • Профил
« Последна редакция: Sep 12, 2012, 23:43 от Naka »
Активен

Perl - the only language that looks the same before and after encryption.

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
То и на мен ми е трудно да го обясня, защото колкото пъти съм опитвал да вникна в метриката, която са ползвали, толкова пъти според мен е пълна глупост. От друга страна щом си вярват и щом се броят за големи глави, не искам да споря. Като цяло представи си едно парче код, което прави нещо, сравнително често. Логичното е да го отделиш в отделна функция. Сега нека нещата се усложнят още малко, да кажем има съвсем малки нюанси, които налагат промени в този код в зависимост от контекста. Нормалното е примерно във функцията да направиш една проверка какъв е контекста и да подходиш различно. В конкретният случай на мен не ми изнасяше, защото самата проверка при положение че се прави стотици хиляди пъти в секунда почва да тежи. Следователно подържам две различни функции. В този случай ако имам генерален проблем трябва да оправям две функции, не една. Ако искам подобрения, трябва да оправям две, а не една. Това си е товар. Ако работя с други хора, този товар става още по-тежък. Обаче аз не работя с други хора и държа нещата да стават максимално бързо, като приемам факта, че кодът става по-малко maintainable. Това е компромисът. В общият случай това клониране на код е малоумна история с прекалено много негативни страни. Има случаи, където обаче почва да има смисъл. Ммм темата е дълга и широка и всеки си има виждане по въпроса, няма нужда да излизаме толкова оффтопик :)
Активен

"Knowledge is power" - France is Bacon