dr-mart

Программирование и я

Итак, продолжаю биться головой о C#. Решил поделиться парочкой идей. Во-первых, я стал думать, что почти каждый, кто захочет, сможет изучить всё что захочет и начать это делать на среднем уровне. Это всего лишь вопрос времени. Допустим, тебе что-то кажется совершенно непонятным. Ты сидишь час, два, три… А потом бах, наступает час, когда ты, наконец, осознал и понял… Это всё вопрос времени! Я думаю каждый может научиться программировать C#, или кодить Php, или писать приложения для iPhone… И то, что кажется совершенно немыслимым вначале, спустя 200-300-400 часов изучения начинает казаться понятным и ты сам в то не веря, начинаешь лепить рабочий код как из пластелина.
Главная проблема всегда в том, что хочется всё освоить с наскока. Оп! и ты начал кодить. Не, так тока вундеркинды могут. Отсюда и то, что руки быстро опускаются, если сразу не смог, и ты бросаешь это дело. А тут надо маховик раскручивать, долго и нудно, чтобы он начал сам потихонечку себя вращать по инерции...

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

В-третьих, я прям чую, что программирование надо изучать мелкими шажками… То есть последовательно осознавая каждый этап знаний. Нельзя перескакивать. Только медленное поэтапное осмысление. Иначе голова просто взоврвётся на месте и всё (как это у меня было с неделю назад). И постоянно писать примеры на языке программирования и нельзя перескакивать на новые темы, пока полностью не осознаешь как устроен предыдущий этап. Лучше потратить больше времени, чем пропустить что-то и потом уперется лбом в бетон полного непонимания.
79 | ★11
83 комментария
Если гуманитария учить программированию, то он будет ниже среднего. Нужно идти по тому пути, где тебе с твоими способностями легче.
avatar
Глеб Райцесс, это всегда так, ага
Тимофей Мартынов, в кодинге первичен не навык, а  ОБРАЗ МЫШЛЕНИЯ… навык же является следствием этого мышления… ИМХО
а чтобы сформировался «прогерский образ мышления» надо как минимум покопаться в «программировании материи» (не зря масоны выходцы из древних строителей) — фрактальные формы, лабиринты, цитология, архитектура, системы управления, эволюция живых и техногенных систем. Надо впитать образ мысли когда все вокруг — это поток материи которую ПРОГРАММИСТ (оно же создатель) формирует в некую ФОРМУ — программу… и тем совершеннее программа чем за меньший поток происходит БОЛЬШЕЕ число ПОЛЕЗНЫХ перемен (оно же чем больше функциональность системы в единицу времени и ее устойчивость к хаотичному воздействию из вне и в самом сигнале потока). А таковой формой являются «фрактальные формы» оно же «подобия» оно же «иерархические вложенности» (процесс наследования — это аналог слияния материи, подобия — схожие свойства элементов таблицы Менделеева, приведения типов — радиоактивный распад на новые элементы)

p.s. самым большим достижением фараонов был «лабиринт». У меня вообще ощущение что «лабиринт» как структура в пространстве — фундаментальная «идея любой ЖИЗНИ». Любая клетка — это «лабиринт химического конвейера», поверхность нашей планеты — это «лабиринт ручейных-речных-морских» русел/бассейнов. Галактика — это «гравитационный лабиринт» разных элементов «гиганстких циркуляций межзвездной пыли», «самих звезд», «планет», «астероидов», «комет» — ЛАБИРИНТ… это «алгоритм в пространственном выражении». Код программы — это лабиринт но представленный уже на уровне «словесной информации». Все вложенности функций — это аналог «устья рек»… любое условие — это стена/преграда, любое число — это ширина канала русла. Любая функция — это различное вещество и его концентрации… Как только ты увидишь что КРУГОМ ЛИШЬ ОДИН КОД но выраженный на языке материи… а современное ПРОГРАММИРОВАНИЕ — это всего-лишь очень узкий спектр в атрибутах «электро магнитного сигнала», «булевой алгебры» и «полупроводниковой базы»… то поймешь, что человек просто «изобретает велосипед» пытаясь состряпать его своим разумом, хотя природа — это гигантские жернова подбора САМОГО СОВЕРШЕННОГО КОДА… воплощенного в виде СТРУКТУР МАТЕРИИ… в частности если брать проекцию на «живое» — она просто «эволюционно формирует ЛУЧШИЙ вид»… оно же «свою ЛУЧШУЮ ПРОГРАММУ воплощенную в языке материи/энергии»
palka, признавайся, где такие шишки покупал?)
avatar
stitrace,… примат обнаружен, запускаю режим «строгий игнор животного»
palka, вообще по аналогии (а это САМЫЙ МОЩНЫЙ ИНСТРУМЕНТ ПРОГРАММИСТА… аналогия/подобие)… многие сейчас не беспричинно ругают: «современные технологии делают людей тупее! Посмотрите, все сложные преобразования спрятаны за примитивным процессом выбора… *НАЖМИ НА КНОПКУ — ПОЛУЧИШЬ РЕЗУЛЬТАТ… И ТВОЯ МЕЧТА ОСУЩЕСТВИТСЯ!*
Кругом не думающие люди, а тыкуны_в_кнопки»...
так вот аналогия… а что если нас создали более совершенные цивилизации, и по тому же принципу «раб должен знать как собака — где стоит миска, где у него кнопка которую в случае примитивного желания он нажмет и запустит процесс основанный на наших сверх сложных технологиях..»… Где такие кнопки у людей?.. Ну навскидку… «У меня мало энергии — КНОПКА_1_ЖРАТЬ»..  «У меня энергии достаточно, но лимит износа на сегодня заставляет отдохнуть — КНОПКА_2_ЛЕЧЬ_СПАТЬ, мозг переформатируй всю накопленную за сегодня информацию»… «Я понял что готов к созданию своей копии но с некоторыми дополнительными функциями — КНОПКА_3_СЕКС_ЗАЧАТИЕ»… «Я накопил много неусвоенного вещества — КНОПКА_4_СНЯТЬ_ШТАНЫ_ПО****ТЬ».....

о_О кто не видит как я аналогии с «в айфоне надо просто тыкать одним пальцем — там все интуитивно понятно»… в человеке «в биороботе человек все примитивно — к его сознанию сложная система подает простые команды, человек *НАЖИМАЕТ_КНОПКИ* коих мало — мы сделали его сознание примитивным, он больше не должен знать… и запуская сверх сложные био-физические процессы является как их исполнителем так и наблюдателем. Мозг — это элемент некого случайного апгрейда. Он может что-то примитивное запомнить, что-то передать своим клонам, но те как и он тычут_в_кнопки коих мало, но они запускают сверх сложные процессы, которые мы «инженеры-пришельцы» разрабатывали миллионы лет, но он об этом даже не узнает — он примитивен для нас, как для него -  бактерия»

p.s. ищи образ мышления «творца» в окружающем мире… учись видеть подобия — это путь к программированию
это чтобы окончательно «лишить мозг девственности» ))

palka, «p.s. ищи образ мышления «творца» в окружающем мире… учись видеть подобия — это путь к программированию»
да, помнится как мудрейший Будда говорил «Один день мудрого и медитирующего человека воистину лучше ста лет человека не имеющего ни мудрости, ни самоконтроля, ни Вижуал Студио»
avatar
palka, да именно — образ мышления. Но ему реально научить быстро. передав этот способ мышления!
avatar
Тимофей Мартынов, лучше не заморачивайтесь, там вообще больше математике и матанализа нежели софта…
avatar

Тимофей Мартынов, 
Прошелся по вашим ссылкам на посты, вплоть до 2012 года.
Первое что бросилось в глаза — активная аудитория на смартлабе полностью поменялась.
И если раньше, к вашим постам, было много вдумчивых конкретных комментариев, то сейчас по типу "+1"
Зачем вы по-прежнему плодите тролей и ботов, которые уничтожают ядро ресурса и снижают капитализацию проекта?
Подобные проекты дорого стоят(оцениваются) не из-за посещаемсти и тупых постов, а по качеству ядра (пост. аудитории)

Насчет с+ и програмирования, если нет цели полностью поменять профессию, то  прикладные задачи лучше отдавать на аутсорсинг. ТС можно сркыть или вставить в код позже.

avatar
tregert, и что же делать со смартлабом?
Тимофей Мартынов, 
вопрос не по адресу
думаю, что у вас есть своя ТС насчет этого стартапа

единственное, что точно стоит сделать: убрать троллей и ботов, жестко отсекать их, несмотря на то, что последует значительное снижение постов, комментариев и посещаемости

одновременно пригласить «старую аудиторию» обратно

через полгода-год значительно вырастет качество ресурса, что скажется на его рыночной стоимости
возможно и посещаемость также
avatar
Глеб Райцесс, чушь. Ч много раз слышал, что именно гуманитарии проявляют хорошие способности к сабжу. Кстати, Джейми Завински ЕМНИП, говорил, что программирование сродни лит творчеству.
avatar
sortarray sortarray, я образно написал. Имелось ввиду, что если ты уже побывал, что-то делать, а тебя от этого тошнит, то лучше заняться тем, что приятно. 
avatar
Глеб Райцесс, к счастью, для того чтобы прогать ботов, уровня ниже среднего больше чем достаточно :) 
avatar
отличный текст. невероятное кол-во людей ноет о своей жизни, а когда надо учить что-то новое, просто упираются как старички 90летние. Молодец, что С#. 
avatar
стаый дед, я неуч!
Да, новые нейронные тропинки тропить это не гантели тягать.
И чем старше будешь, тем тяжелее.
Чем дольше будешь такие вещи делать, тем дольше здоровье сохранишь.
avatar
да это так же, как научиться уверенно водить авто в плотном потоке, или научиться играть на гитаре. С наскока не получится, порог входа достаточно высокий. Практика практика и еще раз практика. 
Многие трейдеры привыкли к низкому порогу входа в трейдерство,  отложил с зарплаты 30 тыщ. установил квик, почитал чем лонг от шорта отличается, и все, он трейдер. Но это обманчиво конечно. 
avatar
Молодец! Новые нейронные или каких там связи, в любом случае пригодятся)
avatar
Несогласен, программистами рождаются, а не становятся. Если в душе ты не программист, то ничего путного из этого не выйдет.
avatar
Costa, ну вот Тимофею же интересно, другой бы обплевался. Может он в душе программист?
Тим, почему C#?
avatar
Руслан Вяз, Потому что с ним проще задачи решать по торговым роботам
да, кстати, как ты выбирал язык программирования? почему Си, а не Ява? или что там еще есть
avatar
Warren Warren, потому что вроде самый распространенный
Тимофей Мартынов, С++ вроде, не?
avatar
okolorynok.ru, java
avatar
99% кода написано, все остальное вариации
avatar
mamont, 
99% кода написано, все остальное вариации
и это плохо на самом деле, в контексте обучения. для обучения, как раз, велосипеды полезней изобретать, чтобы основы осилить.
avatar
sortarray sortarray, напротив это прекрасно, в институте надо было изучать не язык, а методики правильной работы с литературой, это конечно касается инженеров, чтоб быстро найти где и применить, а не изобретать новые велосипеды — на это уходит слишком много времени
avatar
mamont, все так, сейчас продакшн скоростной, за исключением небольшого кол-ва индивидуумов, все пишут свой код поверх чужого, если есть тяга к изобретательству, можно всегда поконтрибьютить в каком-нибудь «супер-мега-новом» фреймворке, со 100500 переосмыслением MVC.
avatar
mamont, понимание что эффективнее не начинать все с нуля приходит только с опытом, после парочки изобретенных велосипедов
avatar
как скальпинг Тимофей — продолжает получаться?
avatar
l-way, плохо, но пока в плюсе 
Тимофей Мартынов, как думаешь, почему так? я так понял ты с рокибитом общался и вроде знаешь что делать? скорости не хватает, дисциплины или чего еще?
avatar
Научившись программировать (думать как программист) язык уже не так важен, разница только в нюансах использования.
avatar
Kadabra, 

Норвиг с Вами не согласен
Кстати, раньше наоборот ходила байка, что фортранщик будет писать фортран на чем угодно. Просто современные мейнстримные языки похожи друг на друга, отсюда и это мнение. А попробуй, к примеру, пересадить плюсовика на форт.
avatar
Kadabra, Вы бы раскрыли «думать как программист», а то подумают, что программисты как-то иначе «думают». (-;
Если Ваше мышление использует только логику и знания, то Вы будете «думать как программист», но далеко не каждый программист использует логику и знания. Именно поэтому столько дерьмового кода и столько бессмысленных проектов. Не стоит «канонизировать» человека, только потому, что у него определённая профессия. (-;
Kadabra, может раньше так и было, а сейчас какая-нибудь новая технология внутри языка по объему информации тянет на отдельный язык. То есть легче вам не станет никогда. :)

Ээээ, а ты сразу так стал программировать нейронные сети и прочий ИИ?

Или это было образно

avatar
alexds, он имел в виду связи в башке
avatar
Во-вторых… Блин, бошка действительно кипит и мозг сопротивляется созданию новых нейронных связей. Прикольное упражнение. Ведь на самом деле, многие из нас даже не задумываются о том, что разучились по-настоящему думать.

Не даром в народе говорят -" лиши свой мозг девственности — начни изучать программирование".  
avatar

Да уж. Жажда наживы мощный стимул.

avatar
Образование- тяжелый, физически неприятный труд. Но доступен каждому. Не каждый на него соглашается.

И еще. Программирование, на мой взгляд, более доступно гуманитарию. Потому что в его основе логика, а вовсе не математика, как принято считать.
avatar
TT, Собственно, в основе математики, как бы тоже логика,  а то что в основе программирования логика, это еще вопрос, логические языки, к примеру, провалились, логический вывод не работает для конкурентных систем, да и вообще, логика — это темный лес, их толко основных разновидностей с десяток наверное наберется:). Я бы посмел утверждать, что в основе программирования эвристики и инженерный подход рулят, а так же творчество, в широком смысле, умение оригинально мыслить, нестандартно подходить к решению задач, как-то так:). Одним словом *изобретательство*.  Так же, в программировании очень много общего с лингвистикой, языкознанием. Но я согласен, в целом, что знание математики может дать преимущество только в языках, заточенных на математику, например в хаскеле, а, скажем, в динамических ЯП математику будет скорей сложней.
avatar
sortarray sortarray, Математика абстрактна, логика конкретна.
avatar
TT, математика — это способ разбиения пространства. Любая цифра — суть «координата и объем пространства». Логика дополняет математику оперируя множествами объемов причем нечеткими, когда как математика оперирует точными «формами» и со строгой порождающей природой (определенные функции)…
palka, 
когда как математика оперирует точными «формами» 
Да я бы не сказал, что это точно так. Нечеткие множества, пределы, вероятности, не сказать чтобы уж такие точные из себя. Вполне размытые:)
avatar
sortarray sortarray, нечеткость математики описывается вполне себе четкими правилами. И вообще, в мире все «чётко». Это в мозгу человека есть слово «нечетко», т.к. он не может описать конечными понятиями все что видит и чувствует.
avatar
TT, Первый раз такое слышу. Ну, умение программировать тоже процентов на 90 сводится к умению строить абстракции, в этом смысле это близко. Только математика, больше внимания уделяет формализации, пожалуй.
avatar
TT, Да нет, пожалуй Вы не правы:) Логика не менее абстрактная наука, нежели математика:)
avatar
sortarray sortarray, Я рассматриваю математику, как науку о количественных соотношениях, а логику, как науку о законах мышления. Количественные соотношения могут быть произвольными, а законы- нет. Предмет науки более конкретен.
avatar
TT, это скорее арифметика подраздел от всей математики
avatar
nbvehrfr, Дайте ваше определение математики.
avatar
пока ты изучаешь программирование, «вундеркинды» давно его изучат и уже воплотят в жизнь. То есть, уйдут вперед. Имхо, гениальные люди гениальны во всем.
Андрей Макарыч, а вы когда-нибудь думали почему дерево НЕ растет прямолинейным стержнем? одним массивным, как игла…? тогда почему вы НЕ думаете, что любой вундеркинд — это ветка_1 ведущая в совсем иное пространство нежели то, в которое ведете как ветка_2 — вы сами и разные ветви  никогда не пересекаются даже если соприкасаются с собой в некой точке? о_О Вы заложник иллюзии тотального господства «первых»… пространство идей и форм бесконечно — можете не беспокоится… любой может стать ПЕРВЫМ просто из-за существования «инерции» и «узости взглядов»...  — все резко не побегут за вами даже если вы придумаете и начнете воплощать что-то ГЕНИАЛЬНОЕ и не смогут пробиться в то мировоззрение в котором прибываете вы, а мировоззрение  и есть «пространственный объем и доступные для каждого уникальные координаты» — они почти всегда разнятся. «В одну реку не войти дважды», так же как и «две пары рук не создадут один и тот же эталон»
А почему этот пост в алготрейдинге?
avatar
Программист не явился на работу. В конторе переполошились, решили его
проведать. Звонили в дверь, звонили — никто не открывает. Из-за двери
только плеск воды слышен. Решили взломать дверь. Заходят и наблюдают
такую картину: сидит программист в ванне, волос на голове почти не
осталось, но он судорожно намыливает голову шампунем. Читают инструкцию
к шампуню:
1 выдавить небольшое количество шампуня на руку.
2 намыливать 2-5 минуты.
3 смыть водой.
3 повторить
avatar
Ставишь себе задачу в виде алго и/или инфраструктурного элемента и начинаешь писать. По ходу гуглишь текущие задачи. Гуглишь на английском. Реализуешь готовое решение с некоторыми модификациями под себя. Так и учишься. Со временем начинаешь гуглить все более точно) Ну и что-то откладывается в голове. 
avatar
Alex Hurko,… со временем понимаешь, что Гугл херово гуглит в силу твоей «тонкой чувствительности и сверх эффективной методологии поиска»… херишь гугл — пишешь свой МАРТУГЛ… получаешь мего профит — становишься падаваном информации и покоряешь своим знанием мир устанавливая свой сверх эффективный новый порядок… (кстати это не шутка а вполне себе задачка для «мего прогера»)
 читать голую литературу — бесполезно. учиться проще на прикладных задачах. чтобы научиться писать — нужно писать. 
avatar
Блин, когда ты семье время уделяешь, восторг да и только)
avatar
Наверное Тимофей это прочитал:
www.bloomberg.com/graphics/2015-paul-ford-what-is-code/


;)
avatar
Тимофей, я тебе советую прочесть книжку CLR via C#.
Сейчас может еще рано, но если ты собираешься осваивать шарп, это одна из лучших книг. 
avatar
если хочется задействовать абстрактное мышление, то вот то, что нужно — произведение банды четырех и еще
программирование — ремесло. нет там ничего сверхъестественного
кодер сидит и тупо пишет код для того, что нарисовал архитектор
языки меняются, технологии меняются
avatar
и если очень хочется все систематизировать (а хочется, я знаю), то можно изучить такую вещь как UML, которая позволяет описать любую систему в разных аспектах. те же бизнес-процессы можно описывать с помощью UML или ряда подобных языков.
avatar
как вы любите все усложнить — образ мышления, состояние души и т.д. 
это всего лишь инструмент для работы. ничего сверхъестественного в нем нет. любой обладающий iq чуть выше среднего может это дело мало мальски освоить. уж для написания роботов точно хватит. просто нужно старание и терпение.  
В роботостроении даже ООП особо знать не нужно, присвоил переменной одно значение, вычел другое, написал пару функций и т.д. 
avatar
Сам язык учится достаточно быстро, только вот что бы написать что-нибудь стоящее с парой месяцев изучения не получится.
avatar
Подход вцелом разумный, но есть один нюанс. Чтоб продуктивно заниматься каким то делом и прогрессировать в нем, нужно регулярно получать плоды своей работы, доход, иначе процесс превратится в моральную пытку рано или поздно. Такой проблемы лишены, скажем, студенты или школьники, от которых не требуется результат априори, кроме учебного. Для взрослого чяеловека именно поэтому обучение и обучаемость зачастую проблема номер один, поскольку этот процесс совершенно не рентабельный. А для того чтоб зарабатывать программированием как правило знание языка слишком мало, нужно владеть целым веером технологий, опытом и интуицией, быть «в теме». Оптимальный вариант изучения/обучения, это самостоятельно решать свои утилитарные комерческие задачи, которые связанны с программированием. У меня так двое знакомых с нуля стали профессиональными технарями, просто экономили на покупке программистов, или устали объяснять каждый раз ТЗ и сами стали кодить. Наличие устойчивой мотивации, которую не трудно поддерживать решает в этом деле.
avatar
о чем этот пост? да ни о чем.
ООП всегда сложно.
начинать надо с малого. сам же в институте учился-и рядом с тобой ребята сидели, умели программировать и начинали они не с С# а с Perl, Pascal, VB....
Пойми, Тима. Если тебе за 30 -мозг работает немного по-иному чем в 15 или 20 лет...
Начни реально с маленьких шажков — это PHP, Pathon, Perl, HTML, CSS, JS… ВСе это относиться к...Web!
Эта тема тебе знакома. Ты эе занят сайтами, ну долби то с чем ты сталкиваешься каждый день… Представь, что в один день твой программист не вышел на связь, а доверить другому вообще никак сайт встанет?
тут на СЛ тысящу раз постили тезисы, что если ты не знаком досконально с предметом то можешь упустить идеи продвижения своего бизнеса.
твой бизнес роботостроение или сайт? что тебе ближе тем и занимайся...
=========
Все это пишу тебе смотря в зеркало)
Сам начинал как-то изучать C#… Тяжело. Очень тяжело- перешел на PHP-стало легче, а все почему? да все потому, что я на  PHP  каждый день практикуюсь решая свои вопросы, задачи....
вот так и учимся программировать-каждый день по несколько асов пока не сложаться пресловутые 10.000 часов)))
avatar
Тимофей, я бы на твоем месте начал с Питона! Довольно просто, поддерживает все парадигмы и имеет перспективы. С# — это как изучать микроскоп, не имея знаний школьных =)))
avatar
 Еще codeacademy хороший сервис для изучения, лучше нежели по книгам.
avatar

Читайте на SMART-LAB:
Фото
Набираем трейдеров в команду!
Ты уже знаком с трейдингом, но пока нет стабильности и уверенности в сделках? Приглашаем тебя на бесплатную офлайн-практику в нашем дилинге....
Фото
Крупнейший выпуск ипотечных облигаций Банка ДОМ.PФ
Секьюритизировали ипотечные кредиты Банка ДОМ.PФ на 60 млрд рублей. Это рекордный для банка объём размещения ипотечных ценных бумаг (ИЦБ)....
Фото
Совет директоров «Норникеля» рекомендовал акционерам отказаться от выплаты дивидендов за 2025 год
Такое решение основано на положении о дивидендной политике, которая предписывает принимать во внимание «циклический характер рынков металлов ,...
Фото
Т-Технологии 1 кв. 2026 г. - так близко к Сберу еще никогда не было
Т-технологии опубликовала финансовые результаты за 1 кв. 2026 г. Чистая прибыль составила 35 млрд руб. (+4%) к прошлому году, без учета...

теги блога Тимофей Мартынов

....все тэги



UPDONW
Новый дизайн