Какви алгоритми, какво математическо мислене, не мога да ги разбера тия твърдения, ужасно е скучно и хората, които прекалено много ми дълбаят такива разкази органично не мога да ги понасям. Винаги ми е било ужасно досадно това, още от ученик като ходих на олимпиади. Да хубаво, има много елегантни и хитри решения на разни проблеми, обаче да пукна ако някога се прехласна толкова че което и от това да ми стане интересно без да е свързано с някакъв конкретен проблем, който трябва да се решава, самоцелно набиване на глупости в главата. Има две неща, които не мога да понасям и считам че са формулирани и религиозно следвани от пълни чекиджии - complexity theory нещата и малоумните design patterns. Да, в определени случаи те може и да са много релевантни, обаче първите са абсолютно ирелевантни за програмен код който се изпълнява за милисекунди върху малък dataset и рядко и ми е през оная работа колко елегантен O(N) алгоритъм ги решавал по-добре и това става в 99% от случаите в днешния софтуер. Design pattern-ите от друга страна превръщат хората в малоумни зомбита-сектанти, които не мислят, а повтарят и тази религия е наложена най-вече от корпоративни тъпаци, които се интересуват повече от bus factor-а, отколкото нещата им да си вършат работата като хората.
Това казано, важното е да можеш да си представиш проблема и решението му ясно и в този ред на мисли няма нищо лошо да се разтърсиш за оптимално решение на (част от) него щом се налага, тук пак се намесват чекиджиите, които ти обясняват глупости, в интерес на истината това мислене е от 70-те години, когато не е имало интернет, съответно не е имало google и не е имало stackoverflow. Това само по себе си не е някакво свръх-велико умение.
И между другото - да - C е много хубав език като за въведение в програмирането, напротив на това което разни хора казват.
Апропо първият елементарен пример с алгоритмични хора, който отидох и видях в списъка с последните мнения в bgdev:
http://forums.bgdev.org/index.php?showtopic=45453&st=0Мнението на тоя пич Lachezar, рекурсии, буфери, болни мозъци. Два вложени цикъла, никакви рекурсии и буфери, никакво делене, никакви операции с остатък и съвсем натурално задачата се решава, при това ще работи порядъци по-бързо, защото алгоритмичните хора нямат грам идея как им работи железарията. Трагично направо, но това е положението с хората загубени в абстракциите и логиката.