Я не понимаю, как на это реагировать. Некий товарищ полгода спрашивает у меня советы как начать с Verilog/FPGA/ASIC, но при этом ничего не начинает, хотя его вопросы становятся все более экзотическими. Чтобы было понятнее, опишу как бы это выглядело для программирования. Предположим к вам пришел молодой человек и спрашивает как научиться программировать. Вы ему говорите что-нибудь типа:

"Сесть за компьютер, написать и запустить программу Hello, world. Одновременно купить книжку с описанием языка и базовых приемов и читать ее в общественном транспорте, перед сном и в приемной у зубного врача. Периодически садиться за компьютер, написать и отладить программы: сортировки массива, игры Жизнь, ханойских башень итд. С выводом на текстовый терминал, окно в GUI или веб-страницу - по вкусу. Далее вы поймете в какую сторону копать или не идти в это дело вообще."

Молодой человек вас горячо благодарит и уверяет как он сильно хочет стать настоящим программистом. Потом он Hello, world не пишет и никакой книжки читать не начинает, но последовательно спрашивает у вас:

1. "Как вы думаете, что лучше - объектно-ориентированное программирование на Rust или функциональное программирование на хаскеле? А может попробовать Smalltalk как самый чистый объектно-ориентированный? Или Simula-67, с которой объектно-ориентированность начиналась?"

2. "Мне посоветовали изучать компиляторы. Как вы думаете, правильно ли было бы для меня взять в качестве учебного проекта выделение регистров с помощью окраски графа? И стоит ли делать это на Лиспе? И какой лисп выбрать - с CLOS или Schema? Мне говорили Schema изучают студенты в Беркли. И может перед написанием алгоритма выделения регистров выучить ассемблер? Но какой? Intel 8051 годится? С ним до сих пор Сименс чипы выпускает."

3. "Я пока не купил компьютер, чтобы начать учиться программировать. Как вы думаете, что лучше покупать если я после C/C++ захочу учить CUDA - компьютер Apple с процессором M2 или китайский ноутбук с процессором RISC-V и линуксом? Стоит ли к нему докупать плату с транспьютерами? Или лучше учить не CUDA, а OpenCL? Или может перед ним выучить OpenGL или Vulkan? Может я пойду в игровое программирование и мне нужен специальный игровой компьютер?"

Итд - шесть месяцев. И Hello, world еще не написан. Как вы думаете, с какого вопроса вы перестанете терпеливо объяснять? Как вы будете реагировать потом? Что это вообще такое? Какое-то психическое нарушение или троллинг?

UPD: В комментах несколько человек спросили, какие были реально его вопросы по Verilog/ASIC/FPGA. Я их сразу не описал, потому что подумал что софтверные аналоги для многих людей ближе. Ну хорошо, опишу:

Hello, world на верилоге выглядит например так:

module my_and(input a,input b,output c);
    assign c = a & b;
endmodule

Далее это можно симулировать в симуляторе или синтезировать в схему, по которой конфигурировать FPGA (матрицу логических элементов с изменяемой логической функцией). Но он ни первого ни второго шага не сделал за полгода, а также не сделал даже моего первого упражнения которое я ему дал, где нужно написать две строчки чтобы тест выдал PASS:

https://github.com/yuri-panchul/systemverilog-homework/blob/main/01_combinational_logic/01_01_mux_question.sv

Реально его вопросы звучали так:

  1. "Я хочу производить цифровые схемы с помощью генетических алгоритмов. Что вы мне посоветуете изучить, чтобы я написал об этом исследование?"

    Мой ответ: у вас в текущий момент нет понимания работы последовательностной логики (элементов состояния, функции D-триггера). Какаие бы схемы вы не генерили генетическими алгоритмами, без этого понимания вы ничего полезного генерить не сможете. Это шаг через который перескочить принципиально невозможно, поэтому вам нужно ликвидировать этот пробел в первую очередь, прежде чем делать что-либо еще.

  2. "Мне сказали, что хорошая тема - это сделать reverse-engineering ячейки UltraScale. А что вы про это думаете?"

    См. ответ про генетические алгоритмы. Какой смысл разбирать ячейку UltraScale если он не знает что такое D-триггер, LUT, propagation delay?

  3. "Я хочу заняться частичной реконфигурацией FPGA, когда меняется во время работы алгоритма. Я читал что это возможно с Xilinx 62000. Это хорошая тема для исследования?"

    Моя реакция: В чем прикол разгребать partial reconfigurability feature заведомо устаревшего устройства XC6200 середины 1990-х?

Плюс куча вопросов про сравнение плат, курсов и учебников. Ни одну плату он так и не купил.

Комментарии (231)


  1. Ukrainskiy
    20.05.2024 16:41
    +105

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


    1. jimmy_moore
      20.05.2024 16:41
      +6

      В точку. Только так и можно это решить.


      1. Ratenti
        20.05.2024 16:41
        +5

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


        1. Intothebeck
          20.05.2024 16:41

          Боже закрой свой рот и не пиши своё мнение нигде больше


          1. pes_loxmaty
            20.05.2024 16:41
            +9

            После обращения ставится запятая )


        1. YuriPanchul Автор
          20.05.2024 16:41
          +2

          В вузах тоже не все идеально (я интервьирую студентов на работу, поэтому хорошо знаю), но это тема отдельного поста


    1. YuriPanchul Автор
      20.05.2024 16:41
      +8

      Я ему уже дал ссылку на простейший пример с указанием скачать из интернета симулятор Icarus Verilog и написать две строчки ответа - https://github.com/yuri-panchul/systemverilog-homework/blob/main/01_combinational_logic/01_01_mux_question.sv

      Могу это повторять раз за разом пока не напишет. Перескочить через это все равно нельзя.
      Я не понимаю, как он не видит, чем он занимается.


      1. NeoNN
        20.05.2024 16:41
        +13

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


      1. MinimumLaw
        20.05.2024 16:41

        К слову о задаче. Что-то с трудом представляется ответ в виде двух строчек (если, конечно, хаки в стиле https://www.ioccc.org/, а придерживаться показанного coding-style). Да и использование тернарного оператора здесь... Провоцирует сложно читаемое и некрасивое решение. Впрочем, это учебная задача - почему нет... Автору виднее.

        assign y = sel1 ? (sel2 ? d3 : d2) : (sel2 ? d1 : d0);

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

        Вообще как мне кажется, при изучении программирования вообще и языыков описания аппаратуры в частности уделяется недостаточное внимание coding-style. И отчасти это порождает довольно много ошибок.

        А курс, судя по заданиям, весьма не плох. Правда, довольно сильно "подточен" под вашу специфику. Как по мне, так категорически не хватает I2C master/slave или хотя бы одного из вариантов SPI. А может даже и UART'а.


        1. YuriPanchul Автор
          20.05.2024 16:41
          +1

          Начальные примеры идут на разные варианты синтаксиса - сделать мультиплексор пятью способами, освоить generate итд.

          Примеры с SPI, UART и I2S (но не I2C) есть в другой репозитории примеров. Но я согласен, что у меня фокус другой - я ориентируюсь на обучение всяким микроархитектурным комбинациями конвейеров, арбитров и FIFO, так как это частые вопросы на интервью в компании которые проектируют высокопроизводительные ASIC-и, и этого мало в учебниках (многие учебники, особенно старые, останавливаются на FSM и не учат всяким skid buffers, credit counters итд).


      1. DrGluck07
        20.05.2024 16:41
        +6

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


      1. Hevard
        20.05.2024 16:41
        +1

        Дык... а смысл ему от этой ссылки, если он "ещё не купил компутер"?


        1. YuriPanchul Автор
          20.05.2024 16:41

          Ну реально он не купил FPGA плату (исходно речь шла о дурацких вопросах про Verilog и FPGA, я просто перевел это на аналогичные вопросы по программированию)


          1. Hevard
            20.05.2024 16:41
            +2

            Я не пойму, или Вы осёл, или он... Ваши слова "не купил компутер" - так к чему вообще весь спич?

            В далёком 88-м мне нужен был МС0511 и стрёмная книга на 150 страниц, на развороте которой - был пример на Бейсике.


            1. YuriPanchul Автор
              20.05.2024 16:41

              Ну я же написал в начале текста:

              Некий товарищ полгода спрашивает у меня советы как начать с Verilog/FPGA/ASIC, но при этом ничего не начинает, хотя его вопросы становятся все более экзотическими. Чтобы было понятнее, опишу как бы это выглядело для программирования.

              Написал UPD к посту:

              UPD: В комментах несколько человек спросили, какие были реально его вопросы по Verilog/ASIC/FPGA. Я их сразу не описал, потому что подумал что софтверные аналоги для многих людей ближе. Ну хорошо, опишу:

              Hello, world на верилоге выглядит например так:

              module my_and(input a,input b,output c);
                  assign c = a & b;
              endmodule

              Далее это можно симулировать в симуляторе или синтезировать в схему, по которой конфигурировать FPGA (матрицу логических элементов с изменяемой логической функцией). Но он ни первого ни второго шага не сделал за полгода, а также не сделал даже моего первого упражнения которое я ему дал, где нужно написать две строчки чтобы тест выдал PASS:

              https://github.com/yuri-panchul/systemverilog-homework/blob/main/01_combinational_logic/01_01_mux_question.sv

              Реально его вопросы звучали так:

              1. "Я хочу производить цифровые схемы с помощью генетических алгоритмов. Что вы мне посоветуете изучить, чтобы я написал об этом исследование?"

                Мой ответ: у вас в текущий момент нет понимания работы последовательностной логики (элементов состояния, функции D-триггера). Какаие бы схемы вы не генерили генетическими алгоритмами, без этого понимания вы ничего полезного генерить не сможете. Это шаг через который перескочить принципиально невозможно, поэтому вам нужно ликвидировать этот пробел в первую очередь, прежде чем делать что-либо еще.

              2. "Мне сказали, что хорошая тема - это сделать reverse-engineering ячейки UltraScale. А что вы про это думаете?"

                См. ответ про генетические алгоритмы. Какой смысл разбирать ячейку UltraScale если он не знает что такое D-триггер, LUT, propagation delay?

              3. "Я хочу заняться частичной реконфигурацией FPGA, когда меняется во время работы алгоритма. Я читал что это возможно с Xilinx 62000. Это хорошая тема для исследования?"

                Моя реакция: В чем прикол разгребать partial reconfigurability feature заведомо устаревшего устройства XC6200 середины 1990-х?

              Плюс куча вопросов про сравнение плат, курсов и учебников. Ни одну плату он так и не купил.




              1. Flammmable
                20.05.2024 16:41
                +1

                Из трёх вопросов вы более-менее по сути ответили лишь на третий. Самую капельку на первый и вообще ничего по сути - на второй.

                Он за 6 месяцев задал вам 3 вопроса?


                1. YuriPanchul Автор
                  20.05.2024 16:41

                  Нет, он задал штук 20 вопросов, в основном типа "а что вы думаете про ... некий редкий тул или курс ...". Я ему отвечал "на вашем бы месте я бы не пытался заставить работать редкий тул из-за глюков в поддержке языка, сonstrains и прочего, что требует опыт в том, как это обойти, а брал бы стандартный квартус, вивадо или gowin на худой конец с банальным икарусом и следовал моим инструкциям". Почему он не хочет следовать моим инструкциям, а ищет что-то другое? Он что хочет потом, чтобы я для него это эвалюировал, отлаживал и занимался траблшутингом?


                  1. Flammmable
                    20.05.2024 16:41

                    Ну вот опять же.

                    Он же вас не спрашивал "подойдёт ли мне, новичку, который не знает A, B и C для стартапа тул X?"

                    Он вас спрашивал "что вы думаете про тул X?" Понимаете разницу?

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


                    1. YuriPanchul Автор
                      20.05.2024 16:41

                      Зачем ему эта информация, если он никогда не пробовал и квартуса тоже, то есть он не знает с чем я сравниваю? Зачем мне переводить байты интернета и печатать мнение, которое не будет использовано? Это как >/dev/null делать.

                      Более того, про большинство этих тулов я и сам имею недостаточно информации, то есть для нормального ответа мне его нужно установить, запустить на нем что-то, сравнить. Зачем мне это делать если это уйдет в /dev/null?

                      Я ему в таких случаях отвечал: "Займитесь исследованием нового тула сами. Эвалюация новых тулов - это отличное упражнение для молодого инженера. Такие компании как Fujitsu и NASA ставят практикантов на то, чтобы те попробовали тулы стартапов и написали об этом отчет."

                      Он этого никогда не делал. Чистой воды whataboutism.


                      1. Flammmable
                        20.05.2024 16:41
                        +2

                        Зачем ему эта информация?

                        Чтобы знать, к чему стремиться.

                         Зачем мне печатать мнение, которое не будет использовано?

                        Ваше мнение: "реверс ячейки UltraScale не слишком осмысленен, это не то, к чему нужно стремиться".
                        Ваше мнение вполне будет использовано: неофит перестанет мечтать о том, как бы ему отревёрсить UltraScale.

                        Зачем мне переводить байты интернета?

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

                        Более того, про большинство этих тулов я и сам имею недостаточно информации

                        Так это же ещё проще:
                        - Что скажете насчёт тула N?
                        - Не знаю, не пользовался.
                        - А насчёт тула M?
                        - Без понятия.
                        - А насчёт тула K?
                        - Это ещё что за зверь?

                        Как видно, байты интернета экономятся великолепно. При этом вы отвечаете:
                        а) ...правду
                        б) ...по существу вопроса

                        Вообще по схожей тематике (вопросов и ответов в электротехнических сообществах) я написал отдельную статью.


                      1. YuriPanchul Автор
                        20.05.2024 16:41
                        +2

                        Я ему уже несколько раз повторил один и тот же совет. Воспроизведу его ниже. Он его молча игнорирует и через неделю присылает еще один вопрос "а что вы думаете про курс такой-то? А что вы думаете про тул такой-то? А что вы думаете про плату такую-то?" А также раз в месяц "я хочу с вами серьезно поговорить, обсудить план". Я ему уже дал план, почему я ему должен давать другой план? Или говорить об альтернативных планах? Чем плох мой план, что он его игнорирует и спрашивает про другой план? Плюс про неактуальный мусор типа XC6200.

                        Итак мой совет:

                        The steps:

                        1. get a cheap FPGA board,

                        2. read a textbook like https://www.amazon.com/Digital-Design-Computer-Architecture-RISC-V/dp/0128200642 ,

                        3. In parallel start from the first example https://github.com/yuri-panchul/basics-graphics-music/tree/main/labs/01_and_or_not_xor_de_morgan

                        4. then go to the second.

                        5. After https://github.com/yuri-panchul/basics-graphics-music/tree/main/labs/10_hex_counter start look to the homework exercises https://github.com/yuri-panchul/systemverilog-homework

                        6. Eventually get another textbook https://www.amazon.com/Digital-Design-Systems-Approach-2012-09-17/dp/B01FIWOYVU/ and start doing exercises with pipelines and fifos.

                        7. Extend to the simplest CPU cores https://github.com/zhelnio/schoolRISCV then to more complicated cores.

                        Do everything in small steps, but in a systematic way. After several months you will know what to do better.


                      1. Flammmable
                        20.05.2024 16:41

                        В таком контексте его поведение выглядит действительно весьма странно.

                        Я, бывает, задаю расплывчатые вопросы общего характера (а какие ещё вопросы можно задать, если не владеть конкретной темой) - в сообществах и личными сообщениями.
                        И бывает получаю какие-нибудь неумные ответы в духе "прочитайте Хоровица и Хилла" или "а зачем вам это нужно?". Но в таком случае я обычно выстёбываю данного комментатора (если это публичная дискуссия) либо прекращаю общение, если это личная переписка.

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

                        Но пол года ходить вокруг да около - похоже на отклонение.


                1. YuriPanchul Автор
                  20.05.2024 16:41

                  По-моему я исчерпывающе ответил ему на второй вопрос. Ячейка UltraScale содержит LUT, mux, D-тригеры и интерконнект. Он значения этих слов не знает, в частности потому что не следовал моим рекомендациям по литературе и упражнениям. Что мне делать? Объяснить ему каждый элемент? Я это сделал на митапах, которые он смотрел по зуму 5 раз. Но это просто так в мозги не входит, потому что мозг такую информацию отвергает как нерелевантную. Чтобы оно вошло, человек должен с помощью упражнений понять как работает например D-триггер и как он используется в дизайнах. Отчего ему станет ясно что D-триггер делает в ячейке UltraScale. Что-то объяснять человеку, который вообще не делает упражнения - это как проповедовать птицам. Таким занимался Святой Франциск, вы меня с нем не путайте.


                  1. Flammmable
                    20.05.2024 16:41
                    +1

                    1. Он вас спрашивал, из чего состоит ячейка UltraScale? Нет.

                    2. Он вас спрашивал, что ему следует изучить, прежде чем реверснуть ячейку UltraScale? Нет.

                    Он вас спросил "хорошая ли тема реверснуть ячейку UltraScale?" И как дополнение к ответу "да, хорошая/нет, не хорошая" (с описанием причин) ваш "ответ" был бы уместен. Но так, я вот лично до сих пор не могу понять, считаете ли вы реверс ячейки UltraScale хорошей темой.


                    1. YuriPanchul Автор
                      20.05.2024 16:41

                      Хорошая для кого, зачем? Для китайцев, которые хотят клонировать UltraScale для своих санкционных нужд? Может быть, откуда я знаю.

                      Для студента 23 лет, который 1) не знает что такое LUT и 2) не может купить платы с UltraScale потому что она стоит $3000, а ему жалко $50 на плату с Cyclone IV?

                      Я ему написал "структура UltraScale хорошо документирована". Это достаточно?

                      Все это похоже на странное развлечение: гуглить всякий мусор, а потом спрашивать слишком терпеливых людей "что вы думаете про XYZ?"


                      1. Flammmable
                        20.05.2024 16:41
                        +3

                        Вариант №1:
                        - Хорошая ли тема реверснуть ячейку UltraScale?
                        - Я бы сказал, что нет. На уровне логических элементов она и так хорошо документирована. На уровне транзисторов придётся обложиться ультрадорогим исследовательским оборудованием и возможно испортить несколько ПЛИС ценой в тысячи долларов каждая.
                        - Ясно, спасибо.

                        Вариант №2:
                        - Хорошая ли тема реверснуть ячейку UltraScale?
                        - Вам для этого надо изучить, что такое LUT, mux, D-тригеры и интерконнект.
                        - Так а идея-то хорошая?
                        - Нет. Потому, что <объяснения>
                        - Эээ. А зачем вы в контексте цели, смысла достигать которую нет, советовали что-то изучать, если сама цель - так себе?


          1. Ratenti
            20.05.2024 16:41

            А зачем ее покупать? Есть эмуляторы


            1. Hevard
              20.05.2024 16:41

              Я так понимаю, явно не на листе формата А4.


            1. YuriPanchul Автор
              20.05.2024 16:41

              В смысле симуляторы? На верилоге можно написать кучу кода, который будет работать в симуляторе на уровне регистровых передач, например Icarus Verilog, но не будет работать на плате. Потому что 1) не все конструкции языка синтезируемы в хардвер и 2) даже синтезируемые конструкции могут не проходит статический анализ задержек => логика не вписывается в период такта => дизайн в железе будет глючить. Упражнения с платой нужно именно чтобы это понять и научиться преодолевать. Впрочем товарищ не делал и упражнения с симулятором тоже.


      1. lakroft
        20.05.2024 16:41

        Icarus поддерживает system verilog? Не знал.

        Не так давно узнал про дешёвые ФПГАшки TangNano и заинтересовался. При поддержке чатГПТ написал и прошил простенькие штуки вроде этого: https://gitlab.com/lakroft/my-verilog-playing/-/blob/main/Blink/led.v

        Ваш проект выглядит сложно, я не смог без описания понять что он делает


        1. YuriPanchul Автор
          20.05.2024 16:41

          Icarus поддерживает часть SystemVerilog


    1. Rorg
      20.05.2024 16:41
      +46

      Мне кажется, он просто боится принять решение. Боится, что его решение будет неправильным и повлечет за собой последствия. И чем большо он ищет информации, которая по идее должна помочь принять решение, тем больше он запутывается и еще больше начинает сомневаться и решении и, в конечном итоге, в себе. И тут наступает петля и все повторяется по новой.


      1. Earthsea
        20.05.2024 16:41
        +7

        У начинающих электрогитаристов такая фигня. А что если я захочу играть блюз, а у меня гитара для тяжелого металла. А что если я захочу играть тяжелый металл, а у меня гитара для легкой музыки. А что если я буду играть на концерте и меня не будет слышно. А что если... И вот они ищут ответы на вопросы, какие лучше датчики, какое дерево, какие усилители, какие педали и т.д., вместо того чтобы плюнуть на все это, купить что-то самое простое и стандартное, и наработать больше часов практики на том что есть. А еще, когда-то какой-то умный человек сказал, что нужен инструмент минимум за 1000 долларов б/у. Но нет, мы его слушать не будем, будем упорно искать новый за 300 и чтобы все гипотетические будущие потребности перекрыл. А если руки и доходят до инструмента, то вместо того чтобы на нем играть он 10 раз разбирается, паяется, собирается обратно. Потом еще полчаса-час надо покопаться в настройках на каком-то цифровом звуковом процессоре, вместо того чтобы купить на 500 долларов дороже нормальный усилитель, на котором всего три ручки - включил и играй. И все это без преподавателя, все самостоятельно. До одного из тысячи дошло что надо делать, остальные что-то непонятное постоянно ковыряют, ковыряют и ковыряют без результата.


        1. piton_nsk
          20.05.2024 16:41
          +1

          У начинающих электрогитаристов такая фигня. 

          Не только у гитаристов) Это норма. Непонятно вот что, автор уже далеко не школьник, с людьми вроде бы работает, неужели такие простейшие вещи непонятны? Или это байт какой-то? Да вроде ему не надо. Странно как-то.


          1. YuriPanchul Автор
            20.05.2024 16:41
            +3

            Электрогитарист, который за полгода ни разу не потрогал струну, но задает вопросы о деталях соло Ингви Мальмстина? Ну для слушателя это понятно, а вот какую цель преследует такой программист или харверный инженер?


            1. piton_nsk
              20.05.2024 16:41
              +3

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

              Множество людей точно также занимаются "спортом", "строят" дачу, "учат" иностранные языки и все такое прочее. Человеку реально учиться лень, это ведь тяжело, вот он "изучает" - моральное удовлетворение есть, а труда никакого не вложено в отличии от настоящей учебы. Неужели вам такие люди не попадались ни разу?


        1. lakroft
          20.05.2024 16:41
          +2

          нужен инструмент минимум за 1000 долларов б/у

          Как хорошо, что я этого не знал и просто купил 2 бу гитары за сотку. И усилок за 20. Иначе бы так и не начал


          1. shiru8bit
            20.05.2024 16:41

            Тоже покоробило. Б/у (японец) за тысячу был актуален во времена интернета по карточкам. Уже в начале 2000-х в магазинах было полно как раз новых гитар за 300 (корейских), максимально универсальных, способных покрыть любые потребности новичка на годы вперёд. И три ламповых ручки за 500 против универсального процессора за 100 в наше время тоже такое ещё «правильное» решение.


    1. rundle
      20.05.2024 16:41
      +24

      Скорее перфекционист-теоретик. Он может достаточно глубоко изучать информацию, но бесконечно оттягивать переход к практике. Будет собирать разные мнения, коллекционировать слухи. Но как только он сделает выбор, ему уже будет неинтересно это делать на практике т.к. в своей голове он делал это уже 100 раз.

      Ничего не нужно делать, время расставит всё по своем местам. Тут проблемы то нет :)


      1. Alex_ryb
        20.05.2024 16:41
        +2

        Честно скажу, это копия моей ситуации. На 3-м курсе университета, много чего хочется попробовать, но не могу принять решение, с чего начать. Вроде бы изучал системный анализ, но в месте, куда я хочу устроиться, все равно предварительно обучают навыкам СА, равно как и разработчиков.


        1. Fell-x27
          20.05.2024 16:41
          +7

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

          А потом уже идет специализация - на конкретном стэке/технологии/направлении. Отсюда берем язык, на котором лучше работать. И идём дальше.

          Некоторые воспринимают это как изучение натуральных языков, типа "на какой из них мне лучше потратить следующие 10-15 лет? Какой пригодится больше?" В программировании это не так. Вам не нужно выбирать, какой язык учить раз и навсегда. Учитесь программировать. А языков в процессе перепользуете кучу. Язык - вообще не проблема, если у вас есть сильная база. Вы тогда в любой язык вкатитесь в кратчайшие сроки на начальный уровень, достаточный, чтобы уверенно двигаться дальше.


          1. Prakk
            20.05.2024 16:41

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


            1. Hevard
              20.05.2024 16:41

              начните с алгоритмов... Отличная "база".


            1. Fell-x27
              20.05.2024 16:41
              +1

              Начните с выбора стартового языка, настройки окружения, установки IDE, и запуска вашего первого "Hello World!". Попробуйте поменять текст. Если почувствуете восторг, значит можно продолжать дальше - гуглите учебники по конкретному языку.

              Ниже советуют алгоритмы, но прежде чем дойти до них, нужно научиться программировать хотя бы чуть чуть.

              Изучая язык, ставьте себе собственные микрозадачи. Пытайтесь делать что-то интересное для себя. И учитесь дальше.

              Учиться вы будете потом нонстоп всю жизнь, так что лучше привыкать к этому сразу и получать удовольствие от процесса.


    1. Artem_Makeev
      20.05.2024 16:41
      +2

      уже выражение появилось, что образование - новая прокрастинация


      1. K0styan
        20.05.2024 16:41
        +3

        Социально приемлемая притом, да. Просто болт пинать несолидно, а тут - вроде как учишься.

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


    1. tigreavecdesailes
      20.05.2024 16:41
      +7

      прокрастинатор-перфекционист

      Наконец-то я нашёл точную фразу для самоидентификации!


      1. Guestishe
        20.05.2024 16:41
        +1

        Будем создавать сообщество для борьбы за свои права? Или поспрашиваем вначале что к чему?


        1. tigreavecdesailes
          20.05.2024 16:41
          +2

          Спрашивать ни к чему, и так всё понятно. А вот насчёт сообщества надо всё тщательно сначала продумать, все нюансы. Но не прямо вот сейчас...


    1. tutitututu
      20.05.2024 16:41

      инфантизим, у человека нет определённости/целей/интереса развития в какую-то область. Сейчас встречаются молодые ребята, которые про работу говорят "я не знаю куда пойти, может тудаааа, может сюдаааа, а может вообще с курьером продукты развозить". И на вопрос "а что тебе интересно?" ответить не могут. Один из племянников разговоры о "куда пойти" начал на последнем курсе технаря. Ему все сказали "хоть куда устройся чтобы обтесаться, сменишь пару работ, хлебнёшь лиха, поймёшь чего хочешь хотябы в отношении работодателя". Но "хоть куда" он не хотел и продолжил думать. Думал он года полтора. Успел закончить технарь и ещё прошло где-то месяцев восемь(!!!), прежде чем он преодолел муки выбора и куда-то устроился.


      1. zwara
        20.05.2024 16:41

        В такой ситуации мне кажется на вопрос "куда пойти" давать ответ "хоть куда" все равно что не давать вовсе. Ожидать вытекающих изменений из этого "мудрого ответа" в этом случае тоже ну такое.


  1. TerraV
    20.05.2024 16:41
    +30

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

    Вводные:

    • Нравится говорить умные слова

    • Не нравится делать

    Возможные предпосылки:

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

    Я считаю что человек уже достиг своих целей и попытка заставить его делать что-то практически - это носить воду решетом. Не будьте кормом.


    1. YuriPanchul Автор
      20.05.2024 16:41
      +1

      Я не понимаю что он хочет в конечном итоге. Набраться слов чтобы получить работу в каком-то месте где не проверяют кодинг на интервью?


      1. TerraV
        20.05.2024 16:41
        +29

        Вы пытаетесь свои ценности, мотивацию и рациональность вложить в его голову и ловите рассинхрон. Я очень много времени потратил на такие ложные предпосылки, пока не осознал что мое понимание "лучшего" это только мое и только для меня (и то на текущий момент). Попробуйте решить обратную задачу, вы же лучше знаете ситуацию, чем описали в статье. Попробуйте исходить из того, что то что он делает это "лучшая" дорога к его целям. Это по факту очень сложно, т.к. мы постоянно проецируем наше внутреннее "Я" на окружающих. Но если получится, это будет "чит" в понимании окружающих.


      1. propell-ant
        20.05.2024 16:41
        +12

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

        Вы действительно хотите заниматься поиском смысла в этой бесконечности?


      1. saboteur_kiev
        20.05.2024 16:41
        +1

        Он ничего не хочет делать. Читает статейки, думает что он круто анализирует. Но при этом ВООБЩЕ не занимается практикой. А без практики в голове не создается структура и понимание базовых технологий.
        Он считает что они слишком простые, поэтому теоретизирует сложными понятиями, которые он не может осознать (а не может, потому что нет базы).

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


      1. dimaaannn
        20.05.2024 16:41
        +2

        Мне кажется, вы просто пытаетесь анализировать иррациональные вещи.

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


    1. Rorg
      20.05.2024 16:41
      +2

      • Нравится говорить умные слова

      Простите, а чего вы так решили?


      1. TerraV
        20.05.2024 16:41
        +6

        Я так прочитал статью. На истину не претендую, но счел возможным высказаться.


    1. pfemidi
      20.05.2024 16:41
      +61

      Нравится говорить умные слова

      Приходит мужик к сексопатологу:
      -- Скажите, а вот если эрекция, но без эякуляции?
      -- Ну, это, в принципе, нормально.
      -- А вот если эякуляция, но без эрекции?
      -- А вот это странно как-то.
      -- А, к примеру, и эрекция, и эякуляция?
      -- Это идеально.
      -- А вот когда ни эрекции, ни эякуляции...
      -- Молодой человек, так какие у вас конкретно проблемы?
      -- Да у меня никаких, слова просто красивые -- эрекция, эякуляция...


    1. SanSeich_78
      20.05.2024 16:41
      +21

      Не будьте кормом.
      Пять баллов!
      В прошлом преподавал в кружке. Был один веселый цыган лет 14. Очень хотел собрать Айфон. Но учиться паять не хотел ))
      Я был рад, когда он ушёл, потеряв интерес ))


      1. YuriPanchul Автор
        20.05.2024 16:41
        +1

        Да, это похожая ситуация, но ему на глаз 22-23


        1. NeoNN
          20.05.2024 16:41
          +2

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


          1. alexxisr
            20.05.2024 16:41
            +2

            дак может ему не для заработка, а для души. Я вот тоже люблю покопаться в теории, лежащей далеко от того, что мне нужно на практике.


          1. pes_loxmaty
            20.05.2024 16:41
            +1

            Да каких только фриков не бывает...

            Недавно история была с первокурсником. Родители оплачивали инстик, он ходил учился, всё хорошо. А потом хоба, родителей извещают об отчислении. Все в шоке. Оказалось что он записал себе только половину расписания, и посещал только половину предметов. Пацан там немного с приветом, с одногруппниками не общался, но с успеваемостью был порядок. Только по окончании сессии выяснилось, что часть предметов прошли мимо )))

            Может конечно он так издевался над родителями, но вроде как он и сам был немало удивлен, когда узнал.


      1. NutsUnderline
        20.05.2024 16:41
        +1

        тут все проще - он хотел айфон. а денег не было.


  1. AlexunKo
    20.05.2024 16:41
    +4

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


    1. YuriPanchul Автор
      20.05.2024 16:41

      Ну каждая по отдельности фраза имеет смысл, но все вместе - нет. Например зачем извлекать из середины 1990-х заведомо устаревшую архитектуру Xilinx 6200 и предлагать использовать ее фичу частичной реконфигурации - при том что он не понимает базы этой технологи и вообще. Я бы вообще думал, что это чатгпт бот, он однажды я говорил с ним час по зуму обсуждая разные учебники верилога итд.

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


      1. Rorg
        20.05.2024 16:41
        +5

        Тут главный вопрос, кто он вам (какая категория отношений)? Вы обошли это в посте. Он родственник, друг, коллега, случайный прохожий?


        1. kompilainenn2
          20.05.2024 16:41

          Нейросеть?


          1. BjLomax
            20.05.2024 16:41
            +28

            хуже, внутренний собеседник.


            1. kompilainenn2
              20.05.2024 16:41

              об этом я как-то не подумал.


          1. YuriPanchul Автор
            20.05.2024 16:41
            +2

            К сожалению нет, потому что я однажды говорил с ним минут 40 в зуме, сравнивая разные учебники


            1. karon
              20.05.2024 16:41
              +5

              А какая у вас стоимость часа, при менторстве? Такое ощущение, что ее нет


              1. YuriPanchul Автор
                20.05.2024 16:41

                У меня другая модель. Вообще я высокооплачиваемый проектировщик ASIC-ов и на менторстве мне зарабатывать бессмысленно (столько сколько мне платят в час на основной работе, мне практически никакой новичок платить не будет). Все эти вещи - это часть моей побочной деятельности по образовательным программам. Их я описал в другой ветке:

                https://habr.com/en/articles/815759/#comment_26843651

                Я провожу всякие семинары и митапы, на которых готовлю материалы (примеры кода) для других семинаров (как в России так и в других странах). По этому поводу иногда меня контактируют люди в интернете, которые хотят участвовать в разработке примеров. Для них это возможность делать открытые проекты и научиться. Я им говорю - хорошо, давайте вы пройдете вот такую домашку, и когда дойдете до работоспособной кондиции, можно вас как-нибудь применить (список пунктов как готовиться в этом посте). Большинство людей довольно быстро отваливает, но часть проходит упражнения и делает что-нибудь полезное - скажем портирует примеры на платы с Gowin FPGA, или пишет дополнительные примеры для процессоров. Но вот бывает и такое как я описал (я просто не понимаю зачем это ему, если он не написал ни строчки за погода).


                1. karon
                  20.05.2024 16:41

                  Я видел. Я очень уважаю вашу деятельность. Но, такие созвоны все же есть - менторство. И возможно оплата как раз бы позволила отсечь такие контакты.


                1. Guestishe
                  20.05.2024 16:41

                  Можно предположить что кто-то его "пинает".


                  1. YuriPanchul Автор
                    20.05.2024 16:41

                    Например? Кто-то хочет, чтобы он задавал мне дурацкие вопросы? Типа у него научный руководитель в институте сам неадекват и хочет от него чего-то странного, типа исследовать FPGA XC6200 1995-го года?


        1. YuriPanchul Автор
          20.05.2024 16:41
          +2

          Я провожу всякие семинары и митапы, на которых готовлю материалы (примеры кода) для других семинаров (как в России так и в других странах). По этому поводу иногда меня контактируют люди в интернете, которые хотят участвовать в разработке примеров. Для них это возможность делать открытые проекты и научиться. Я им говорю - хорошо, давайте вы пройдете вот такую домашку, и когда дойдете до работоспособной кондиции, можно вас как-нибудь применить (список пунктов как готовиться в этом посте). Большинство людей довольно быстро отваливает, но часть проходит упражнения и делает что-нибудь полезное - скажем портирует примеры на платы с Gowin FPGA, или пишет дополнительные примеры для процессоров. Но вот бывает и такое как я описал (я просто не понимаю зачем это ему, если он не написал ни строчки за погода).


          1. id_50217075
            20.05.2024 16:41
            +6

            Со всеми соглашусь тут.

            Так и скажите: не понимаю, зачем обсуждать эти темы, если нет практики. Давай вернёмся к вопросу, когда ты начнешь писать код. Либо вы его столкнете с реальностью и он что-то начнет, либо перестанет Вас мучать.

            Важный момент: нужно помнить, что каким бы классным методистом / автором курсов / экспертом / преподавателем Вы не были, у Вас не задачи всех привести к успеху (вот этим я сама страдаю)


          1. eee94
            20.05.2024 16:41
            +1

            Как по мне - просто пора брать с него деньги. Не большие, но и не маленькие - так, что бы было чувствительно для него и оправдывало потерянное время для вас. Т.к. время действительно теряется (причем для обоих) - обучение идет, а результата нет. Оплата обучения решит вопрос результата хотя бы для одного из участников процесса :)


      1. AlexunKo
        20.05.2024 16:41
        +2

        Но какую роль в этом играю я?

        Психологическую. Вы - объект привязанности, а интеллект - средство наладить связь с вами. Как вариант. Но их может быть сколько угодно, а угадать что у человека за индивидуальная обусловленность мы точно не сможем. Наша задача воспринимать мир в том число целостно (интуитивно), а не тупо по отдельным признакам, технически/аналитически. Я хочу сказать что рационализация не нужна если вы чувствуете что вступили в чужое г.


      1. EvilSpirits
        20.05.2024 16:41
        +6

        Кнопку "block/spam" нажмите и забудьте как страшный сон.


        1. YuriPanchul Автор
          20.05.2024 16:41

          Ну я к этому близок, возможно еще раза три попрошу сделать первое упражнение на две строчки


      1. calculator212
        20.05.2024 16:41

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

        На счет работы и гипотез хз, я тоже знаю такого человека, который всё же начал писать код, но не смог остановиться на конкретном языке, в последний раз когда я ним общался он испробовал 5 или 6 языков и на всех дошел только до использования циклов и файлов, т.е. базовые программы какие-то мог написать, но что-то сложнее уже нет. Мотивацию я так и не понял его, но и вопросов по архитектуре процессоров 90-х годов он не задавал. Так что мб человек просто поверхностно интересуется и всё, без каких-то конкретных желаний. Некоторые кстати вопринимают работу программиста в романтическом ключе и думают, что будут сидеть в худи у набирать код со скоростью 600 знаков в секунду, а на практике мягко говоря это не так.

        Но какую роль в этом играю я?

        Думаю вы просто человек с практическим опытом, которому можно задавать любые вопросы с его точки зрения. Если вам это напрягает, то можно прямо ему об этом сказать или просто отвечать односложно по типу "не знаю или я не изучал этот вопрос глубоко", после этого обычно люди перестают задавать такие вопросы


    1. UranusExplorer
      20.05.2024 16:41
      +4

      пихология

      какая хорошая опечатка


      1. AlexunKo
        20.05.2024 16:41
        +2

        Точно, спасибо. Даже исправлят не хочется. Наука о навязчивости.


  1. Xeldos
    20.05.2024 16:41
    +8

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


    1. YuriPanchul Автор
      20.05.2024 16:41
      +4

      Ну он хоть две строчки на питоне написал?


  1. yokotoka
    20.05.2024 16:41
    +22

    У чела паралич выбора

    Хочется выбрать сразу и всё самое лучшее, и если нет уверенности, что выбор лучший (а её и не будет), то чел сидит и собирает информацию, с чего бы начать, чтобы 100% "не прогадать" (причём критерии "не прогадать" могут быть какими угодно и ещё постоянно меняться)

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

    Через неделю А, через месяц Б, через год В, и т.д.

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

    Писал программы для того чтобы рисовать себе деньги в сейвах Civilization и X-COM

    Программирование всегда было инструментом достижения цели, а не абстрактное в вакууме "сортирование массивов"

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

    Возможно поэтому никогда не возникало паралича выбора


    1. Rorg
      20.05.2024 16:41
      +19

      У чела паралич выбора

      Во во. Я прямо себя узнал.

      Я всегда хотел научится писать (прозу). И когда я начал изучать это, смотреть ролики, о там как писать, я понял, что я начинаю теряться. Есть разные жанры, разные стили, разные приемы подачи текста. Та блин есть даже разные походы: кто-то советует начать с составления портретов персонажей и детальной проработки плана сюжета, и только потом начинать писать; другие советуют просто набросать характеры персонажей и "отпустить их в свободное плаванье", а там уже куда сюжет выведет, то и будет. В итоге десяток разных техник и способов. И это еще не касаясь самого текста (языка) как такового. А еще штуки 4 разных PoV. И какой из них выбрать… У каждой свои ограничения и нюансы. А диалоги – это для меня сейчас вообще катастрофа.

      И в итоге я сижу перед пустым листом и блин не знаю как даже начать первую главу)) "Привет, я Рома и это история про мою первую работу…" или "Вечерело. Тяжелые свинцовые тучи медленно плыли по небу. Ветер играл с опавшими листья, то поднимая их в высь, то прибивая к земле. Молодой парень проводил взглядом пролетевший мимо листок и посильнее затянул ремень на грязно-сером пальто. Стряхнув с чемодана упавшие листья, он, вздохнув, пошел к покосившемуся крыльцу старого заброшенного дома…"

      А в итоге воз и ныне там, пустая страница и не понимание как это все начать.

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


      1. Wesha
        20.05.2024 16:41
        +9

        не знаю как даже начать первую главу))

        "Вечерело. Тяжелые свинцовые тучи медленно плыли по небу. Ветер играл с опавшими листья, то поднимая их в высь, то прибивая к земле. Молодой парень проводил взглядом пролетевший мимо листок и посильнее затянул ремень на грязно-сером пальто. Стряхнув с чемодана упавшие листья, он, вздохнув, пошел к покосившемуся крыльцу старого заброшенного дома…"

        Но ведь Вы это только что сделали!

        Как-то так


        1. Rorg
          20.05.2024 16:41
          +2

          Вот в том то и проблема. К середине главы, мне перестает нравится начало. Кажется каким-то банальным и шаблонным. Еще сильнее давя на самооценку. Знали бы вы сколько раз я начинал и сколько раз удалял. А заткнуть "внутреннего критика" не получается, и он продолжает капать на мозги.

          Вот сегодня снова "начну" и надеюсь в этот раз – оно проживет больше времени.

          Я уже думаю, может пойти на какой-то сайт типа ficbook и начать там выкладывать ориджинал…

          Может реально, а вдруг получится)


          1. SanSeich_78
            20.05.2024 16:41
            +2

            " К середине главы, мне перестает нравится начало "
            Как я Вас понимаю )) глава ладно, а когда два по 300 страниц написано и лежат уже лет 10? ))


            1. Rorg
              20.05.2024 16:41
              +1

              а когда два по 300 страниц написано и лежат уже лет 10

              Это уже следующий шаг, мне бы до него еще доползти)


            1. temporaryQWERTY
              20.05.2024 16:41

              Э-э... Давайте почитаем?


          1. Wesha
            20.05.2024 16:41
            +2

            К середине главы, мне перестает нравится начало

            Твой позорный недуг мы в подвиг определим: пишите романы-квесты с развилками, аки Гарри Гаррисон


          1. DaneSoul
            20.05.2024 16:41
            +4

            Я уже думаю, может пойти на какой-то сайт типа ficbook и начать там выкладывать ориджинал…

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

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

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


          1. Raspy
            20.05.2024 16:41
            +4

            Напишите прозу о начинающем писатели прозы. Все свои удалённые вступления/первые главы используйте в тексте и от своего имени рассуждайте что в них не так. Как только получится идеальное начало на этом и заканчивайте. Ну и какую нибудь драму на это наложите.


          1. 1755
            20.05.2024 16:41
            +2

            Нужно просто смириться с тем, что идеал недостижим. Думаю, даже самые признанные авторы недовллные своим произведением. Постарайтесь написать просто хорошо, как вам нравится, но дописать до конца. Пойти потом отдохнуть, развеяться. Вернитесь и подумайте как можно улучшить определенную часть, но без "полного рефакторинга" всего. Ну и можете повторять эти действия сколько душе угодно. Так, хотя бы, на каждой итерации будет что-то готовое)


          1. NeoNN
            20.05.2024 16:41
            +4

            Дарья Донцова вот не переживала и заработала миллиард)


          1. MountainGoat
            20.05.2024 16:41
            +1

            Ну это обычное. У буржуев на эту тему есть выражение: "Writing IS rewriting."


          1. anshdo
            20.05.2024 16:41

            Я уже думаю, может пойти на какой-то сайт типа ficbook и начать там выкладывать ориджинал…

            Всмысле, "я уже думаю ..."? По-моему сейчас это чуть ли не единственно верный способ вкатываться в писательство.


          1. IvArt123
            20.05.2024 16:41
            +1

            Используй правила Хайнлайна - пиши каждый день по 10 страниц и никогда ничего не переписывай.


          1. nronnie
            20.05.2024 16:41

            Гёте писал "Фауста" 60 лет :))


        1. checkpoint
          20.05.2024 16:41

          Гениальный мульт!


        1. Earthsea
          20.05.2024 16:41

          Но ведь Вы это только что сделали!

          Я бы не согласился, это ближе к графомании чем к началу написания книги. Идеи-то нет, есть какой-то набор шаблонных штампов. Что это за человек, что за дом, почему на пальто есть ремень и вообще почему оно грязно-серое, писатель совершенно не представляет. Он владеет техникой изложения описаний, но ему не о чем рассказать.

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

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


          1. Rorg
            20.05.2024 16:41

            Действительно интересно. Вот вы открываете книгу. Первая глава, первый абзац. Там действительно должна быть описана вся идея книги, рассказано

            Что это за человек, что за дом, почему на пальто есть ремень и вообще почему оно грязно-серое

            Я сейчас не про идею книги, а вот про конкретное начало первой главы, самые первые пару предложений, которые идут после "Глава 1".

            Если возможно, хотелось бы услышать ваше мнение специалиста (я без сарказма).


          1. Wesha
            20.05.2024 16:41

            Что это за человек, что за дом, почему на пальто есть ремень и вообще почему оно грязно-серое,

            А Вы ожидаете, что Вам во втором абзаце уже расскажут, что убийца — дворецкий?

            Наоборот, если в последнем абзаце книги окажется, что если бы бы пальто было коричневым, а ремня не было, то всё вышло бы сооооовсем по-другому, то я бы сказал, что произведение очень удалось.

            Ну или вот так.


            1. Earthsea
              20.05.2024 16:41
              +2

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

              У того же Джорджа Мартина среди черновиков были и таблицы с персонажами, и графики с сюжетными линиями, он сначала разрабатывал мир, потом описывал для себя события в нем, и потом только писал саму книгу.


      1. yokotoka
        20.05.2024 16:41
        +2

        Вечерело. Тяжелые свинцовые тучи медленно

        Кстати, у вас очень хорошо получается

        Меня заинтриговало и захотелось узнать историю этого парня


        1. Wesha
          20.05.2024 16:41
          +1

          "Будь осторожен в своих желаниях: иногда они сбываются..."


      1. tenzink
        20.05.2024 16:41
        +1

        Напомнило вот это

        -- Видите ли, доктор, чего я хочу -- я хочу, чтобы в тот день, когда моя рукопись попадет в руки издателя, издатель, прочитав ее, поднялся бы с места и сказал своим сотрудникам: "Господа, шапки долой!"

        ...

        -- Целые вечера, целые недели бьешься над одним каким-нибудь словом... а то и просто над согласованием. Тут Гран остановился и схватил доктора за пуговицу пальто. Из его почти беззубого рта слова вырывались с трудом. -- Поймите меня, доктор. На худой конец, не так уж сложно сделать выбор между "и" и "но". Уже много труднее отдать предпочтение "и" или "потом". Трудности возрастают, когда речь идет о "потом" и "затем". Но, конечно, самое трудное определить, надо ли вообще ставить "и" или не надо.

        Альбер Камю. Чума


        1. bogolt
          20.05.2024 16:41

          Вы же не написали самого главного:

          человек годами обманывал себя будто работает над романом, но все это время полировал ровно одну фразу!


      1. Femistoklov
        20.05.2024 16:41
        +8

        Есть разные жанры, разные стили, разные приемы подачи текста.

        "Когда искусствоведы собираются вместе, они говорят о форме, структуре и смысле. Когда художники собираются вместе, они говорят о том, где можно купить дешёвый растворитель."


        1. Alohahwi
          20.05.2024 16:41
          +5

          Точно, автор статьи столкнулся с представителем новой профессии, программоведом.


      1. kozlov_de
        20.05.2024 16:41
        +1

        "Вечерело. Тяжелые свинцовые тучи медленно плыли по небу. Ветер играл с опавшими листья, то поднимая их в высь, то прибивая к земле. Молодой парень проводил взглядом пролетевший мимо листок и посильнее затянул ремень на грязно-сером пальто. Стряхнув с чемодана упавшие листья, он, вздохнув, пошел к покосившемуся крыльцу старого заброшенного дома…"

        Я лет в 14 написал такое.

        Только гораздо красивее. Сжёг вместе со вторым томом мертвых душ. Теперь жалею.


      1. GeorgeOvechkin
        20.05.2024 16:41
        +1

        Я тоже хотел, а потом наткнулся на цитату Толстого - "если можешь не писать, не пиши". Всё просто :)


    1. YuriPanchul Автор
      20.05.2024 16:41
      +1

      Рисованием анимации тоже можно учить - я собственно при преподавании Verilog и FPGA предлагаю участникам нарисовать что-то графическое на экране реконфигурируемым хардвером сразу на первом занятии. Просто человек говорит что хочет написать статью про генетические алгоритмы на FPGA (+ML + другое) но не делает даже примитивный модуль двумя кнопочками, лампочкой и "assign a = b & c;" что является эквивалентом программы на бейсике "10 input a, b 20 print a+b".


    1. diafour
      20.05.2024 16:41
      +1

      паралич выбора

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

      Ещё во всём этом сквозит боязнь ошибиться, боязнь «растратить драгоценное время на ерунду», разбираясь с системой сборки джаваскрипта, вместо изучения платы с транспьютерами. Но выходит скорее наоборот, на самом деле больше времени потратишь на теоретизирование и на поиски статей со сравнениями, чем на практические эксперименты.

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


  1. Grigory_Otrepyev
    20.05.2024 16:41
    +5

    Итд - шесть месяцев. И Hello, world еще не написана. Как вы думаете, с какого вопроса вы перестанете терпеливо объяснять? Как вы будете реагировать потом? Что это вообще такое? Какое-то психическое нарушение или троллинг?

    У меня та же проблема с рядом знакомых и детей знакомых.
    Вопрос из STC: хочу знать А
    Ответ такой же - открой и прочитай книгу номер 1, книгу номер 2, сделай задачи 1,2,3 отсюда.
    Проходит полгода. Не сделано ничего.
    Новый вопрос: вот, цыгане говорят что они учать А за неделю.
    Открываю учебный план цыган, там русским языком:
    Плохой пересказ книги 1, книги 2, плохой перевод задач 1,2,3.
    Сообщаю.
    Опять перерыв на полгода.

    Как реагировать? В закрепленные сообщения мой текст поставил, чтобы по переписке не искать


    1. TerraV
      20.05.2024 16:41
      +7

      У меня за 15 лет нет ни одного случая когда бы ко мне кто-то обращался за помощью "начать программировать" и чтоб этот человек реально "вкатился в айти". Для себя сделал вывод - если уж учить, то джунов. Которые уже добились минимальной цели своими усилиями. С ними правда проблема обратная - они не хотят слушать, так как знают лучше :)

      Насчет что делать - я бы посоветовал брать залог. Т.е. говоришь, давай 50к, после того как напишешь игру "Жизнь" (ну или любую другую цель на ваш выбор), я тебе его возвращаю. Если за 6 месяцев не напишешь, то залог не возвращается.


      1. Grigory_Otrepyev
        20.05.2024 16:41
        +2

        С ними правда проблема обратная - они не хотят слушать, так как знают лучше :)

        именно так. Правда, потом на хабр стекает жир про знание числа лопастей вентиляторов
        жир тут - https://habr.com/ru/articles/815263/


    1. Wesha
      20.05.2024 16:41
      +4

      "Легко отвести лошадь к воде, но гораздо сложнеее заставить её пить" (c)


    1. DarthVictor
      20.05.2024 16:41
      +1

      Проходит полгода. Не сделано ничего.

      Так не нужно было давать полгода. Нужно было дать главу и полдня и если не хватит, то ещё полдня. Если не хватило и их, то застыдить перед классом.

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

      Как вариант - брать учеников по два-три человека одновременно, чтобы они хотя бы, стараясь выпендриваться, немного учились.


      1. anshdo
        20.05.2024 16:41
        +1

        Вот да, я в школьном возрасте гораздо больше способен был к самостоятельному обучению, нем нынче, в 40+.


  1. mib
    20.05.2024 16:41
    +5

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

    Цель может быть любая: автоматизация какойто ежедневной надоедливой рутины,
    Или например чтобы в игре автоматически кушалось зелье здоровья, если мало HP ?
    Или какая-то формочка в MS Access куда заносить ежедневные траты и потом вывести графики?
    Я хочу сказать, что просто читать книгу по языку и вбивать/запускать куски кода может быстро надоесть, если нет ни какой цели кроме вкатиться в айти


  1. jonic
    20.05.2024 16:41

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


    1. UranusExplorer
      20.05.2024 16:41
      +4

      то тут то там слышу о каких то проблемах языка

      Не ругают только те языки, которыми никто не пользуется


      1. jonic
        20.05.2024 16:41
        +2

        да, мне как пыхарю это знакомо))


  1. checkpoint
    20.05.2024 16:41
    +5

    Помоем всё просто. Если это человек "со стороны", то шлите его лесом, он просто морочит Вам мозги. Если это близкий родственник, друг, приятель или коллега с которым Вам приходится часто иметь дело и Вы готовы потратить на него немного своего времени, то следующий сценарий должен сработать:

    1. Заставьте его купить отладочную плату. Только не "какую нибудь", а вполне конкретную, дайте ему ссылку на интернет-магазин. Иначе он опять замучает вопросами. Не предоставляйте ему свободы выбора.

    2. Заставьете его установить тулчейн. Опять же какой-то конкретный, по Вашей рекомендации.

    3. Заставьте его развернуть basics-graphics-music, собрать первую, вторую, третью лабы и протестить их на отладочной плате.

    4. Заставье выполнить задание к лабам.

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

    Был у меня подобный случай - человек хотел изучать С и C++ и никак не мог определиться, что вперед. Я склонил его изучать ассемблер, он потыкался и понял, что вся эта кухня вообще не для него. :)


  1. Kuch
    20.05.2024 16:41

    Скажите ему просто чтобы JavaScript выучил


    1. YuryZakharov
      20.05.2024 16:41
      +17

      Есть шанс, что тогда он в проституцию уйдёт...


  1. Vedga
    20.05.2024 16:41

    Ну если человек спрашивает про verilog, может в его голове просто не укладывается, как все строчки "кода" могут выполняться одновременно и параллельно?

    Хотя написанное жесть, конечно. Можно хотя бы один вопрос для примера?


    1. YuriPanchul Автор
      20.05.2024 16:41

      1. "Я хочу производить цифровые схемы с помощью генетических алгоритмов. Что вы мне посоветуете изучить, чтобы я написал об этом исследование?"

      2. "Мне сказали, что хорошая тема - это сделать reverse-engineering ячейки UltraScale. А что вы про это думаете?"

      3. "Я хочу заняться частичной реконфигурацией FPGA, когда меняется во время работы алгоритма. Я читал что это возможно с Xilinx 62000. Это хорошая тема для исследования?"

      Ну и куча более банальных вещей "как вам курс XXX? Книга YYY? Плата ZZZ?" "Можно я с вами серьезно поговорю, чтобы выбрать план своего изучения цифровой микроэлектроники?"


      1. Brak0del
        20.05.2024 16:41
        +3

        Что вы мне посоветуете изучить, чтобы я написал об этом исследование?

        Возможно, ответ есть в формулировке. Выглядит, как будто это студент старших курсов, выбирающий тему диплома или магистерской, но не совсем из своей области. Кажется, что человек пытается оценить трудозатраты, реализуемость и т.д. пока есть время и нет обязательств.
        Место, где не надо сдавать кодинг-интервью -- это запросто может быть кафедра или исследовательская лаборатория универа. Причины могут быть разные: откос от армии, тёплое место и т.д. и т.п.


      1. Flammmable
        20.05.2024 16:41
        +2

        Проскролил пол-обсуждения в поисках этого очевидного вопроса.
        Хотелось бы задать следующий очевидный вопрос: что же вы ему ответили?


        1. YuriPanchul Автор
          20.05.2024 16:41

          1. "Я хочу производить цифровые схемы с помощью генетических алгоритмов. Что вы мне посоветуете изучить, чтобы я написал об этом исследование?"

            Мой ответ: у вас в текущий момент нет понимания работы последовательностной логики (элементов состояния, функции D-триггера). Какаие бы схемы вы не генерили генетическими алгоритмами, без этого понимания вы ничего полезного генерить не сможете. Это шаг через который перескочить принципиально невозможно, поэтому вам нужно ликвидировать этот пробел в первую очередь, прежде чем делать что-либо еще.

          2. "Мне сказали, что хорошая тема - это сделать reverse-engineering ячейки UltraScale. А что вы про это думаете?"

            См. ответ про генетические алгоритмы. Какой смысл разбирать ячейку UltraScale если он не знает что такое D-триггер, LUT, propagation delay?

          3. "Я хочу заняться частичной реконфигурацией FPGA, когда меняется во время работы алгоритма. Я читал что это возможно с Xilinx 62000. Это хорошая тема для исследования?"

            Моя реакция: В чем прикол разгребать partial reconfigurability feature заведомо устаревшего устройства XC6200 середины 1990-х?


          1. Flammmable
            20.05.2024 16:41

            Он вам за 6 месяцев написал 3 вопроса (на два из которых вы, в общем-то, не ответили) и вы об этом запилили статью на Хабр?


      1. pmikhalovsky
        20.05.2024 16:41

        А зачем ему писать исследование?


  1. GAG
    20.05.2024 16:41
    +3

    Юрий, судя по вашей квалификации, час вашего времени в формате консультации стоит не менее сотни долларов, поэтому стоит задать ещё один вопрос:
    «А зачем мне тратить своё время на того, кто вообще следует моим советам?»

    Но если по какой-то причине всё равно хочется отвечать на вопросы бездельника неофита, то имеет смысл хотя бы оградить себя финансовым барьером, и при следующем обращении "пытливого ума", предложить ему абонемент на таких условиях:
    Первый вопрос стоит 1024 рубля, следующий стоит 2048 рублей, следующий — 4096 рублей, и так далее. Каждый следующий вопрос будет стоить в 2 раза дороже предыдущего.

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


    1. YuriPanchul Автор
      20.05.2024 16:41
      +2

      Да, я согласен, надо похоже вводить принцип: если неофит не последовал моему совету (сделать такой-то набор упражнений), то после это брать деньги. Прогрессия - это интересная идея.


    1. Flammmable
      20.05.2024 16:41

      По моему опыту (3-4 случая), мудрецы, рассуждающие про квалификацию и офигенную стоимость времени моментально сливаются после предложения денег "ой, ну я не знаю, у меня очень много дел". Вопрос, а зачем же вы тратите своё драгоценное время на рассуждения о квалификации и стоимости времени, а не идёте Делать Дела, обычно остаётся без ответа. )))))


  1. eimrine
    20.05.2024 16:41

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

    1. Слепая печать на Двораке, я так понимаю у вас старший школьный возраст или 1 курс - ещё не тот случай когда опыт с дефолтной раскладкой будет мешать. Младшие осваивают меньше чем за 10 часов, дальше костность мозга будет давать о себе знать. Поэтому я отношусь к этому как переболеть ветрянкой - или в детстве, или никогда.

      1.5 Английский, желательно не теория, а в формате "а следующих часа 2 я понимаю русский язык только рид онли". Если можете, разумеется. Какой там самый важный язык для программиста? (с)

    2. Математика, для старших наверное будет достаточно короткого курса из "Удовольствие от X", и хоть что-то о теории информации; младшеньких пробую прогонять по Петерсон 1-6кл. Тоже самый важный язык для программиста, но некоторые виды программирования её не требуют.

      2.5 Долгие разговоры о: типах данных, открытом и свободном программном обеспечении, о всяких-разных компьютерных интерфейсах начиная с USB и заканчивая да хоть JSON, об императивном и функциональном обеспечении, об ЯП высокого и низкого уровня, о Тьюринг-полных языках и домен-специфических... Да вы и сами написали не одну тему на которую стоило бы поговорить. Должна же быть польза из полтора десятилетия чтения Хабра?

    3. C, SQL, Lisp, Javascript, Python, Java - вот по моему мнению основные направления прокачки расположенные примерно в моём порядке веры в необходимость каждого из них. Главное - настроить ему среду исполнения для каждого, остальное пусть сам.

      3.5 Любые тулинги которые считаете важными - Linux, Git, Vim, всё что умеете.


    1. UranusExplorer
      20.05.2024 16:41
      +7

      Так и запишем, все кто не используют Dvorak-раскладку - ненастоящие программисты ;)


      1. eimrine
        20.05.2024 16:41

        Не настоящий англичанин тогда уж, если обратить внимание на пункт 1.5. Например, я вижу как люди с Двораком осваивают английский быстрее людей с Qwerty, а люди с любой слепой печатью осваивают работу с текстом быстрее чем без оной. Грязный секрет индустрии в том, что вас возьмут программистом и без навыка печати, о таком навыке даже в резюме не похвастаешься, это надо не для работодателя же. Это как когда готовят чемпиона в велоспорте, то обращают внимание даже на то что улучшит эффективность на 0.01% вроде вес краски вела или сопротивление воздуха о волосы на ногах - потому что в длинном маршруте эти проценты будут складываться в нечто большое, много таких примеров есть в книге "Атомные привычки". Дело не в том сколько текста юный программист введёт за X времени, дело в том сколько раз он отвлечётся от дела на поиск буквы "А" ...

        Я почти готовый сражаться за холм (возможно, в виде статьи про модальные редакторы текста) что программисты без слепой печати на латинской раскладке - программисты которым мешает гандикап. Разница между раскладкой Дворака или раскладкой сгенерированной нейросетью заключается только в кривой обучения освоения - лишь бы ваши пальцы побыстрее впитали нужные рефлексы. Например, без слепой печати никто не берёт Vi(m) так как в зависимости от наличия таковой он будет казаться или самым сложным редактором на свете или самым простым.


        1. Alohahwi
          20.05.2024 16:41
          +8

          Если бы программирование состояло только из набирания текста, нас бы давно уже заменили бы секретаршами.


          1. eimrine
            20.05.2024 16:41

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

            Дело же не в том что ученик со слепопечатанием введёт больше символов за час в процессе решения тестовых задач, дело в том что он будет меньше уставать от работы за клавиатурой что выльется в больше часов. Рассказать что от него хотят в задаче я могу хоть от и до, но когда ученик говорит что устал печатать то это значит что занятие закончено.

            Элементарный пример: позволяете ли вы копипастить своим ученикам примеры из е-бука в компилятор? Я - нет, мне заведомо надо чтобы он наделал ошибок при перепечатывании чтобы потом он видел код не как кашу из символов, а пооператорно. Без навыка печати мой ученик будет считать меня монстром за это, с навыком печати на раскладке которая предназначена для печати на программерском это почти удовольствие.


            1. Alohahwi
              20.05.2024 16:41
              +6

              Хороший пример со Стивом Хоккингом. Он уж точно двораком не владел, и 100% людей владеющих двораком даже на 5% не смогут повторить то, что он сделал без дворака.

              Вы понимаете, я когда начинал программировать, каюсь, без дворака, да, скорость печати имела какое то значение. Но это было так давно. Сейчас я могу неделю не печатать ни символа, а потом за 5 минут убрать килобайты неработающего кода дворакопечатальщиков, и заменить их парой работающих строчек. И после этого код снова уходит к мастерам скоростного набора, пока они опять не зайдут в тупик, из которого выводить их придётся опять мне.


            1. Tsimur_S
              20.05.2024 16:41

              Хотя бы от одного коллеги или просто мимопроходила, да хотя бы даже на любом онлайн-форуме от программистов слышали жалобу что он не успевает делать работу потому что медленно печатает? Я лично нет.


              1. eimrine
                20.05.2024 16:41

                Я не работаю с программистами, я работаю с детьми. Про медленно печатать не мой тезис, мой тезис что они устают от клавиатуры и хотят к смартфону с развлечениями. Моя контрмера против смартфона №1 чтобы заставить детей программировать, а не заниматься эрзац-программированием в приложениях - предотвращать усталость от клавиатуры с использованием доступных достижений науки. Слишком много скрытых преимуществ у этого решения, а Хабр со мной в этой ветке общается как будто я говорю только про скорость.


            1. olku
              20.05.2024 16:41
              +1

              БОльшую часть времени современный программист читает, а не пишет. И чем выше квалификации, тем больше читает. Пропорция 1:10 это норма.


  1. pae174
    20.05.2024 16:41
    +13

    У меня какая-то соседка по подъезду примерно раз в полгода просит нарисовать ей на карте района кольцевой маршрут для утренних пробежек на дистанцию 3_000 метров. Ответы типа "вот так по квадрату вокруг блока будет 3 километра примерно" не принимаются. Ей когда-то доктор сказал, что что бы ей сбросить вес, надо бегать по утрам 3_000. Так что это очень важно, что бы не больше и не меньше. Не 2_900, не 3_100, а именно 3_000.

    Просит она этот маршрут для бега уже лет 10 наверное. Ну и не бегает, конечно, кто бы сомневался, а только с каждым годом еще толще становится.


    1. shiru8bit
      20.05.2024 16:41
      +3

      А можно было десять лет назад просто нарисовать какой-нибудь маршрут около 2-5 км и заявить, что здесь ровно 3000 метров.


      1. pae174
        20.05.2024 16:41

        В начале так и сделали. Получили ответ, что не похоже, чтобы здесь было ровно 3_000, вы всё врете.


  1. sibirier
    20.05.2024 16:41
    +4

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

    Похоже на "быстрый дофамин" - ничего особо не делая получить как можно больше эмоционального подкрепления за счёт своих мыслей. Троллинг той же природы активность.
    С его стороны он сам для себя выглядит как молодец. С остальных сторон это паразитизм. А с паразитами что надо делать?..

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

    В бесплатном общедоступном формате лечится баном, увы, "всем понравиться невозможно". Называется "дезинсекция".


  1. aabzel
    20.05.2024 16:41
    +1

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

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

    Будь-то понимание глубоких принципов РЛС, GNSS навигации, инерциальные навигационные системы (INS), беспроводные радио интерфейсы, АФАР(ы), радио электронная борьба (РЭБ), гидроакустика, пластиковые карты с чипом, SIM карты, контрольно-кассовые терминалы, сетевые протоколы, аудиотехника, управление электродвигателями (BLDS/SеpperMotors и т.п.), управление инжекторным ДВС, Battery Management System (BMS), DC->AC инверторы, баллистические вычислители, головки само наведения ракет (ГСНы), электро-кардиография, дозиметрия, астрономические спутниковые вычислители, теория автоматического управления (ТАУ, LQR), криптография, ядерный магнитный резонанс (ЯМР), формальные грамматики и тому подобное. Да всё что угодно, где так или иначе работают программы.

    Программист без экспертизы в какой-либо предметной области это однозначно Juniour.


    1. UranusExplorer
      20.05.2024 16:41
      +1

      Программист без экспертизы в какой-либо предметной области это однозначно Juniour

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

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

      И это не то чтобы какие-то исключительные случаи. Достаточно открыть тот же HH или LinkedIn и посмотреть вакансии для разработчиков, в большинстве случаев (кроме какие-нибудь очень специфических сфер типа эмбеддеда, где обычно требуют чтобы сотрудник умел и делал работу трёх разных человек за зарплату одного) заголовок позиции будет типа "Senior Java разработчик", а предметная область будет упомянута в лучшем случае где-то глубоко внутри описания вакансии, причем скорее всего не среди обязательных требований, а в разделе "nice to have". И на собеседовании у кандидата будут спрашивать алгоритмы, фичи языка, СУБД и паттерны, а не глубины предметной области - именно потому, что найти программиста знающего условный Python гораздо проще, чем найти программиста знающего условный Python и при этом глубоко разбирающегося например в логистике. А для знаний предметной области и постановки задач разработчикам в любой более-менее приличной компании есть аналитики или кто-то исполняющие их обязанности (технологи, менеджеры продукта, и т.д.)


  1. ia_alpatov
    20.05.2024 16:41
    +3

    По моим ощущениям - это похоже на что-то из области психиатрии. Из серии хочется-мечтается, но не можется из-за дефекта воли.

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

    Как кто-то выше рассказал про желающего стать генетиком и проживающего без работы.

    Понять. Сделать выводы. Принять как есть.


  1. cranium256
    20.05.2024 16:41

    Надо было послать "некого товарища" с его вопросами... нет, не туда, куда все подумали, а к ChatGPT. Или к аналогичной системе. Достаточная осведомлённость в различных областях и безграничное терпение сделают нейронку для него идеальным собеседником.


    1. Alohahwi
      20.05.2024 16:41

      Так смысл его самоудовлетворения в том, что профессионал общается с ним на равных и уделяет ему время. С чатгпт так не интересно.


  1. Breathe_the_pressure
    20.05.2024 16:41
    +2

    А почему бы его просто словами не спросить, вот дескать чел, ходишь ко мне полгода, я тебе дал задание, написать Hello World, ты не написал. Какая цель-то всех этих вопросов? Иногда столкновение с реальностью помогает решить внутренний конфликт.


  1. KillRussia
    20.05.2024 16:41
    +6

    А он, случайно, не индус? Они такое любят. Нам как-то прислали индуса из Германии, чтобы мы его учили embedded. За 3 месяца он не написал самостоятельно ни одной строчки, хотя знал все умные слова. После "обучения" мы его вернули работать на завод в Дании, откуда он через небольшое время уволился в связи с женитьбой и уехал в Индию. (Уже странно - да?) Вёл он себя как обычный индус (я бывал в Индии много раз - т.е. индусов видел много), жаловался на неонацистов в Дрездене, радовался снегу, как ребёнок... И тут то и выяснилось, что после женитьбы ему переходит семейный бизнес, о чём он никогда не говорил. Что он из совсем небедной семьи и зачем ему было учиться на программиста - ещё одна загадка.

    Так что и ваш товарищщ может оказаться совсем не тем, кем кажется)))


    1. YuriPanchul Автор
      20.05.2024 16:41
      +1

      Да, вы угадали. Хм, я индусов знаю сотни, но конкретно такой тип не встречал. То есть ему нужно прикинуться кем-то для кого-то в Индии и он меня таким образом пользует?


      1. KillRussia
        20.05.2024 16:41
        +1

        Ой! Я не это имел ввиду. "Наш" индус - то 2 тяжелых случая в одном. 1-й - они боятся принимать самостоятельные решения. 2-й - он из богатой индусской семьи с непонятными мне традициями.

        А "ваш" индус - это только тяжелый случай №1. Выглядит это так, что если у них есть возможность переложить ответственность на начальника, то они это сделают. Это правило доходит до абсурда - пусть начальник решит, как лучше написать: "if (flag == true)" или "if (flag != false)".

        Это не значит, что индусы бесполезные. Во-первых, далеко не все такие. Во-вторых - он наверняка умеет что-то, что не умеем мы, белые обезьянки. Был у нас случай, в другой компании, когда никак не могли заставить индуса работать. Парнь хороший, а толку от него ноль. А потом попросили его писать документацию и о чудо! Он блестяще справился с работой! (Которую никто из нас, белых, не любит.)

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


        1. northrop
          20.05.2024 16:41
          +1

          Дело в том, что мы, белые, не входим ни в какую касту. Другими словами, мы ниже самой низшей касты

          "Общество без цветовой дифференциации штанов лишено смысла" (с)


      1. KillRussia
        20.05.2024 16:41

        Хотя, может вы и правы. Вы столкнулись с человеком непонятного менталитета. Нужно или выяснить его мотивацию путём задушевных бесед на отвлечённые темы или определить, на что он годен, методом научного тыка, ставя перед ним разные задачи.


  1. radioxoma
    20.05.2024 16:41

    Не нужно помогать тем, кто не в состоянии Вашу помощь принять. Есть такой типаж.

    Hidden text
    Самоуверенный Шариков
    Самоуверенный Шариков


  1. gybson_63
    20.05.2024 16:41
    +1

    Извините, но Ваши цели, предполагаемые результаты и сроки тоже непонятны.


    1. YuriPanchul Автор
      20.05.2024 16:41

      Я описал в комменте выше:

      https://habr.com/en/articles/815759/#comment_26843651

      Я провожу всякие семинары и митапы, на которых готовлю материалы (примеры кода) для других семинаров (как в России так и в других странах). По этому поводу иногда меня контактируют люди в интернете, которые хотят участвовать в разработке примеров. Для них это возможность делать открытые проекты и научиться. Я им говорю - хорошо, давайте вы пройдете вот такую домашку, и когда дойдете до работоспособной кондиции, можно вас как-нибудь применить (список пунктов как готовиться в этом посте). Большинство людей довольно быстро отваливает, но часть проходит упражнения и делает что-нибудь полезное - скажем портирует примеры на платы с Gowin FPGA, или пишет дополнительные примеры для процессоров. Но вот бывает и такое как я описал (я просто не понимаю зачем это ему, если он не написал ни строчки за погода).


  1. Serg7777
    20.05.2024 16:41
    +4

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


    1. YuriPanchul Автор
      20.05.2024 16:41
      +1

      Ну у меня вообще нет цели кому-то искать цель жизни. Я работаю с людьми, которые активно захотели освоить базовые навыки проектирования цифровых схем на уровне регистровых передач, для того чтобы использовать это либо для получения работы (проектировщик ASIC, FPGA, верификатор, проектировщик гетерогенных систем из софтвера и хардвера, разработчик тулов для автоматизации проектирования) либо для углубления понимания смежных дисциплин, либо для побочной разработки open-source проектов. Я не увлекатель, не социальный работник, не ентертейнер и не научно-популярный лектор. Этим занимаются другие.

      Я не понимаю, что ему отвечать, кроме "дальнейшие обсуждения бессмысленны, пока вы не сделаете первое упражнение на верилоге - либо на симуляторе, либо на FPGA плате". Потому что это так же бесполезно, как человеку, который не играет гаммы и этюды на флейте или скрипке, на словах объяснять как делать вибрато.


  1. Javian
    20.05.2024 16:41

    По-моему советы рассчитаны на подготовленного человека "в теме". Отсутствует первая ступенька, в которой давалось бы базовое понятие - что-то рассчитанное на объем знаний старшеклассника.


  1. MagisterAlexandr
    20.05.2024 16:41
    +2

    Некий товарищ полгода спрашивает у меня советы как начать с Verilog/FPGA/ASIC, но при этом ничего не начинает, хотя его вопросы становятся все более экзотическими. Чтобы было понятнее, опишу как бы это выглядело для программирования.

    Написал целую статью с художественной аналогией, но при этом ничего не написал о тех самых экзотических вопросах про Verilog/FPGA/ASIC. Я не понимаю, как на это реагировать.

    Вы действительно хотите, чтобы помогли разобраться? В контексте восприятия, который Вы хотите передать в статье, уже и так есть кому рассматривать (автору статьи). Позвольте также рассмотреть проблему вне контекста, с других точек зрения. Дайте факты.


    1. YuriPanchul Автор
      20.05.2024 16:41

      Я выше привел вопросы:

      1. "Я хочу производить цифровые схемы с помощью генетических алгоритмов. Что вы мне посоветуете изучить, чтобы я написал об этом исследование?"

      2. "Мне сказали, что хорошая тема - это сделать reverse-engineering ячейки UltraScale. А что вы про это думаете?"

      3. "Я хочу заняться частичной реконфигурацией FPGA, когда меняется во время работы алгоритма. Я читал что это возможно с Xilinx 6200. Это хорошая тема для исследования?"

      Ну и куча более банальных вещей "как вам курс XXX? Книга YYY? Плата ZZZ?" Ну и про ML конечно. "Можно я с вами серьезно поговорю, чтобы выбрать план своего изучения цифровой микроэлектроники?"

      Какой смысл разбирать ячейку UltraScale если он не знает что такое D-триггер, LUT, propagation delay?

      В чем прикол разгребать partial reconfigurability feature заведомо устаревшего устройства XC6200 середины 1990-х?

      Итд.


      1. Flammmable
        20.05.2024 16:41

        "Мне сказали, что хорошая тема - это сделать reverse-engineering ячейки UltraScale. А что вы про это думаете?"

        И что же вы по этому поводу думаете? :)


        1. YuriPanchul Автор
          20.05.2024 16:41

          Ну я же написал: Какой смысл разбирать ячейку UltraScale если он не знает что такое D-триггер, LUT, propagation delay?


          1. Flammmable
            20.05.2024 16:41

            И это - то, что вы ответили вашему собеседнику? Вы же понимаете, что ваш ответ, тот ответ, который вы сейчас привели, не подходит к его вопросу (в той формулировке, которую вы привели)? То есть вы ответили на какой-то свой вопрос.

            Я на самом деле несколтко удивлён, что человек обращался к вам в течение полугода.


            1. vvzvlad
              20.05.2024 16:41
              +1

              Почему не подходит? Я читаю этот ответ как “идея плохая, у тебя недостаточно знаний, чтобы от этого был толк, займись основами”.


      1. MagisterAlexandr
        20.05.2024 16:41

        Вопросы у товарища в основном неконкретные:

        "Мне сказали, что хорошая тема - это ... А что вы про это думаете?"

        "Я хочу заняться частичной реконфигурацией FPGA, когда меняется во время работы алгоритма... Это хорошая тема для исследования?"

        "как вам курс XXX? Книга YYY? Плата ZZZ?"

        "... поговорю, чтобы выбрать план ..."

        Хорошая ли та или иная тема, зависит от целей интересующегося. В общем случае, откуда Вам знать, насколько оно подходит применительно к его целям, которые он не озвучивает?

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

        "Я хочу производить цифровые схемы с помощью генетических алгоритмов. Что вы мне посоветуете изучить, чтобы я написал об этом исследование?"

        Вот этот один вопрос выглядит по делу.

        В чем прикол разгребать partial reconfigurability feature заведомо устаревшего устройства XC6200 середины 1990-х?

        Не знаю, иногда бывает проще понять какие-то принципы на технологиях старой эпохи, без новшеств.


        1. MagisterAlexandr
          20.05.2024 16:41

          проще понять какие-то принципы на технологиях старой эпохи

          Например, как Basic vs Python, лишние сущности не давят. А уже потом, поняв принципы, всегда можно освоить актуальный синтаксис и новые методики.


  1. kbnrjlvfrfrf
    20.05.2024 16:41

    А вот вам зачем вот всё это? Если вам нужен будущий разработчик FPGA/ASIC/etc, готов поучаствовать. Есть опыт коммерческого приложения с числодробилкой на OpenCL. Знаком с CUDA тоже. Лишне говорить про C++ и всё такое. Единственный ньюанс: готов осваивать новую область только с серьёзными намерениями трудоустройства. Оговариваем цели и набор компетенций как критерий найма. А что-то там на коленке ваять с вилами по воде "вот точно работу найду" уже неинтересно. Такой подход не работает.


    1. TsarS
      20.05.2024 16:41

      Почитайте поподробней про автора, пожалуйста.


    1. YuriPanchul Автор
      20.05.2024 16:41

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


      1. kbnrjlvfrfrf
        20.05.2024 16:41

        Совсем не разбираюсь в симфонических оркестрах, поэтому эта аллегория вряд ли что мне скажет. Любые инвестиции должны быть хорошо просчитаны. Про гарантии никто ничего не говорит конечно. Но и предложение "ты вложи кучу денег/времени/сил, и может быть тебе повезёт и инвестиции окупятся"... Это несерьёзный, неделовой подход взрослых людей. Ну а коль так, не удивляйтесь когда вокруг вас упомянутая вами публика крутится. Наверно в первую очередь в вашей консерватории надо что-то поправить.


        1. YuriPanchul Автор
          20.05.2024 16:41

          Крутится не только такая публика. Есть сотни студентов которые учатся по программе Школы Синтеза, которые потом идут в компании типа Syntacore / Ядро. Да и здесь в Долине по моему референсу три человека устроились в группу GPU в Самсунге (с одним я проводил время в таком натаскивании), а это высокооплачиваемые работы.


  1. Darth_Anjan
    20.05.2024 16:41
    +2

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

    А вам можно только посочувствовать. Вы, в отличие от нейросети, не можете выключить себе чувства...


  1. ruslan-smirnov
    20.05.2024 16:41
    +1

    Ресерч нового стека занимает несколько месяцев по вечерам после работы, при том имея какой-никакой опыт. А от новичка что хотеть? Тем более программирование сейчас это не уметь hello world писать и тебя сразу на работу потом берут. А если еще навыки поиска информации и обучаемости отсутствуют...


  1. lexxkrt
    20.05.2024 16:41
    +1

    посоветовать ему устроиться грузчиком в пятерочку ибо для него это потолок


    1. Renat01
      20.05.2024 16:41

      Простите, но это мой потолок, не отдам


  1. akakoychenko
    20.05.2024 16:41
    +1

    Как вы думаете, с какого вопроса вы перестанете терпеливо объяснять?

    Как будто, я знаю одного идеального собеседника для этого парня. Он терпелив, доступен 24х7, имеет невероятно широкий кругозор, и, при этом, примерно такую же глубину погружения...

    К слову, у меня есть знакомый, который ну очень похож на описанного персонажа. И да, когда вышел Chatgpt, то он ему зашёл сразу. Кажется, человек реально нашёл в нем недостающее звено для полноты своей жизни


  1. northmule
    20.05.2024 16:41

    С него выйдет журналист по специфики IT. Не отказывайте ему в ответах.


    1. kbnrjlvfrfrf
      20.05.2024 16:41
      +2

      С него выйдет журналист по специфики IT. Не отказывайте ему в ответах.

      Может он копирайтер, статьи на заказ клепает. А ТС бесплатно использует как эксперта.


      1. anshdo
        20.05.2024 16:41

        А разве их всех ChatGPT не убил?


  1. AlexanderS
    20.05.2024 16:41
    +5

    Исходя из списка вопросов не очень понятно при чём тут вообще FPGA ;)

    FPGA, кто бы что ни говорил - до сих пор это всё же больше инженерия, нежели "чистое" программирование. Если человека с Си взять и посадить на "параллельный" язык, да ещё подкинуть ему переходы между тактовыми доменами или требование уложиться в немалую тактовую частоту - он будет писать сущую дичь поначалу. Начинать с "Hello world" - это больше к софту на ПК, на худой конец для МК, а ПЛИС - это лампочками помигать для начала, бегущий огонь там сделать, а потом когда SPI освоить можно и на экранчик что-то выводить в зависимости от нажатия на кнопочку...


    1. YuriPanchul Автор
      20.05.2024 16:41

      Я просто сделал аналог его вопросов, если бы речь шла о программировании. Я согласен, что Hello, world на верилоге выглядит например так:

      module my_and(input a,input b,output c);
          assign c = a & b;
      endmodule


      Далее это можно симулировать в симуляторе или синтезировать в схему, по которой конфигурировать FPGA (матрицу логических элементов с изменяемой логической функцией), но он ни первого ни второго шага за полгода не сделал, а также не сделал даже моего первого упражнения которое я ему дал, где нужно написать две строчки чтобы тест выдал PASS:

      https://github.com/yuri-panchul/systemverilog-homework/blob/main/01_combinational_logic/01_01_mux_question.sv

      Реально его вопросы звучали так:

      1. "Я хочу производить цифровые схемы с помощью генетических алгоритмов. Что вы мне посоветуете изучить, чтобы я написал об этом исследование?"

      Мой ответ: у вас в текущий момент нет понимания работы последовательностной логики (элементов состояния, функции D-триггера). Какаие бы схемы вы не генерили генетическими алгоритмами, без этого понимания вы ничего полезного генерить не сможете. Это шаг через который перескочить принципиально невозможно, поэтому вам нужно ликвидировать этот пробел в первую очередь, прежде чем делать что-либо еще.

      1. "Мне сказали, что хорошая тема - это сделать reverse-engineering ячейки UltraScale. А что вы про это думаете?"

        См. ответ про генетические алгоритмы. Какой смысл разбирать ячейку UltraScale если он не знает что такое D-триггер, LUT, propagation delay?

      2. "Я хочу заняться частичной реконфигурацией FPGA, когда меняется во время работы алгоритма. Я читал что это возможно с Xilinx 62000. Это хорошая тема для исследования?"

        Моя реакция: В чем прикол разгребать partial reconfigurability feature заведомо устаревшего устройства XC6200 середины 1990-х?

      Плюс куча вопросов про сравнение плат, курсов и учебников. Ни одну плату он так и не купил.


      1. AlexanderS
        20.05.2024 16:41
        +1

        Вот эти вопросы - это уже ПЛИСоведение! Правда реверсить UltraScale или заниматься частичной реконфигурацией не умея нормально на HDL кодить... это несколько доставляет конечно)

        Если человек при таком желании за полгода умудрился не купить и не попробовать что-то типа Tang Nano 9K за 1,5 рубля... ну посоветуйте ему исследование джиттера внутреннего PLL ;)


    1. IlyasA74
      20.05.2024 16:41

      FPGA, насколько можно понять из этих "генетических алгоритмов", нужны, чтобы отбор желаемых цифровых схем шел сразу в "железе". Это, на мой дилетантский взгляд, задача из разряда научной фантастики. Может быть, имеет смысл предложить ему реализовать минимальный генетический алгоритм для начала на симуляторе - что-нибудь типа "сделать my_xor из my_and и my_not". Было бы интересно посмотреть.

      Вообще, по-своему опыту могу сказать, что порог вхождения в эту область очень высокий по сравнению с программировании. В программировании все просто - взял букварь по русту (или что там) и сразу пошел пилить ядро. А тут так не получится. Лет 6 назад купил себе плату зайлинкс 605 для хобби-проекта. Потом, при ближайшем расмотрении, оказалось, что нужно подучить архитектуру шины PCIex, архитектуру x86, написание драйверов и т.п. Это уже после собственно выучивания VHDL и подпиливания встроенного пиколинукса. Так и лежит теперь плата.

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


      1. YuriPanchul Автор
        20.05.2024 16:41

        Потом, при ближайшем расмотрении, оказалось, что нужно подучить архитектуру шины PCIex, архитектуру x86, написание драйверов и т.п. Это уже после собственно выучивания VHDL и подпиливания встроенного пиколинукса. 

        Это вы явно каким-то кривым маршрутом шли. Вы что, взяли реализацию x86 ядра на VHDL и начали его оживлять? Таким образом вы до уровня чтобы проходить интервью в электронную компанию не доучитесь. Потому что на интервью в Apple, NVidia, AMD, Samsung, Juniper итд итп спрашивают вопросы про конвейерные блоки, очереди, статический анализ тайминга, немного FSM и (для более продвинутых позиций) пересечение тактового домена, кодирования для экономии динамического энергопотребления итд. А не как мастерить на VHDL и Xilinx старую неконвейерную IBM PC XT и играть на ней в Leisure Suit Larry in the Land of the Lounge Lizards.

        FPGA, насколько можно понять из этих "генетических алгоритмов", нужны, чтобы отбор желаемых цифровых схем шел сразу в "железе". Это, на мой дилетантский взгляд, задача из разряда научной фантастики. 

        Это можно делать на разном уровне - на уровне абстрактного нетлиста (графа логических элементов и D-триггеров), на уровне RTL в HDL описаниях - или даже просто паттернов в памяти конфигурации. Но каким бы образом не пойти, у него не получится проскочить изучение основ - комбинационной и последовательностной логики с упражнениями на fpga плате, с симулятором и анализом тайминга.

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

        Вводный роадмап довольно понятен - читать Харрис & Харрис или Цифровой Синтез и параллельно делать примеры на FPGA плате и домашнюю работу из вот этих двух репозиторий, которые мы сделали с сотоварищами. В общем все ссылки:

        https://dmkpress.com/catalog/electronics/circuit_design/978-5-97060-961-3/

        https://dmkpress.com/catalog/electronics/circuit_design/978-5-93700-282-2/

        Репозитории

        https://github.com/yuri-panchul/basics-graphics-music

        https://github.com/yuri-panchul/systemverilog-homework

        Еще пара полезных книжек:

        https://dmkpress.com/catalog/electronics/cad/978-5-97060-619-3/

        https://www.amazon.com/Digital-Design-Approach-William-Dally/dp/0521199506

        Курс

        https://engineer.yadro.com/chip-design-school/


  1. kalombo
    20.05.2024 16:41
    +1

    Ну это довольно популярное поведение у людей в целом, когда люди учатся и учатся, могут получать по 2-3 высших образования, иностранные языки годами по роликам на ютубе "учить", каких-нибудь бизнес коучей смотреть и при этом практики вообще 0. Просто это удобная комфортная позиция, если приступать к практике, то будут ошибки, нужно рефлексировать, не сдаваться, работать, брать на себя ответственность. А тут сам себе объясняешь, я вон какой молодец, учусь, ошибок нет, все хорошо. Мне понравилась одна фраза на эту тему: "Меньше думай, больше делай". Буквально её, конечно, не нужно воспринимать, но она хорошо описывает данную ситуацию.


  1. fedorez
    20.05.2024 16:41
    +1

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

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


  1. NutsUnderline
    20.05.2024 16:41
    +1

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

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

    Ну и с медицинской точки зрения, пассивность и мнительность - одни из признаков депресии, а это требует специалиста и таблеточек.

    Поэтому родилась такая занятная мысль: выдавайте падавану такое задание (скажем поступила заявка), не оч. сложное и очень коварное, пусть реализует тест Бека, тест HADS и тест Люшера- на любом языке програмирования, хоть на basic хоть на java. Заодно сам пройдет ;)


  1. Newbilius
    20.05.2024 16:41
    +2

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


    1. YuriPanchul Автор
      20.05.2024 16:41

      Ну я с ним один раз поговорил по зуму в районе Нового Года, а потом только кратко отвечал на сообщения, то есть это меня не особо напрягало, но мне было интересно, когда он сделает первое упражнение. Но теперь количество вопросов увеличилось, а упражнения нет. У меня вообще последователелй в написании примеров на верилоге много, но такой обостренный случай я не встречал (комбинацию псевдо-умных вопросов и ненаписание ни одной строчки кода, при этом запросы еще раз "серьезно" поговорить)


  1. sergey_privacy
    20.05.2024 16:41

    Что это вообще такое? Какое-то психическое нарушение или троллинг?

    Психическое нарушение. Те, кто хочет, садятся и по 12-16 часов в день поглощают гигантские объемы информации, параллельно накидывая сотни строк кода, экспериментируя и наращивая скиллы. Нет за неделю подвижек - посылайте такого "программиста" лесом. Только зря время потратите


  1. tbl
    20.05.2024 16:41
    +2

    На форуме x-plane нашел аналогичного персонажа: донимал в личке тем, что купил игру, месяца 3 занимался тем, что допиливал ее под себя путем установки модов, советовался, как конфиги настраивать, чеклисты примерял. Пересмотрел кучу видосов-учебников, как управлять PMDG737, B738-zibo. Купил всевозможные сторонние scenery (а потому как вдруг придется пролетать над Сен-Тропе), подписку на navigraph. Но так ни разу не полетал кроме стартовых учебников. Наверно, до сих пор выбирает под себя штурвал, квадрант и педали, т.к. без них не хочет портить впечатление от флайтсима. Думаю, это болезнь какая-то.


  1. Nyaunix
    20.05.2024 16:41

    c какого вопроса вы перестанете терпеливо объяснять?

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

    Если не понимаешь его - спроси, вопросы - главный инструмент в поиске ответа.

    Что посоветовать этому человеку: спроси у него, чем он хочет заниматься.
    Если не знает, то посоветуй универсальный язык(здесь уже моё субъективное мнение) С++
    С ним он полезный опыт получит, и много где может использовать.

    Теперь пару слов про этого человека, его хорошо описывает фраза которую я 5 минут назад вычитал на хабре
    "Неважно насколько далеко ты пошёл неправильным путём, возвращайся назад"
    Вероятно, он имеет очень большую перспективу в сфере программирования, и прежде чем сделать шаг, он планирует свой путь на года вперёд, и ошибка на старте - будет ударом в печень.
    Лучше потратить больше времени на планирование, чем года на снос кривой постройки.

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

    Добавляйте критики, осознание ошибок - первый шаг к росту, а это мой первый комментарий на хабуре :>


    1. YuriPanchul Автор
      20.05.2024 16:41
      +1

      Меня вообще не интересует помощь человеку с нуля. Меня интересует взаимовыгодная работа над окрытыми проектами с людьми, которые выбор уже сделали и готовы слушать рекомендации. Я ему несколько раз повторил, что ему нужно сделать первое упражнение такое-то, а пока он его не сделает, дискуссии бессмысленны. А он продолжает спрашивать и хочет "еще раз серьезно поговорить".


    1. vvzvlad
      20.05.2024 16:41
      +1

      Вероятно, он имеет очень большую перспективу в сфере программирования, и прежде чем сделать шаг, он планирует свой путь на года вперёд, и ошибка на старте - будет ударом в печень.Лучше потратить больше времени на планирование, чем года на снос кривой постройки.

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


  1. Tattik
    20.05.2024 16:41
    +2

    Никакой он ни прокрастинатор, просто зануда и цель у него одна (бессознательная) - вынуть из вас душу. И да, таких много, отличаются лишь сказками на пластинках.


  1. Synthman
    20.05.2024 16:41

    Вот везет же людям иметь друзей из области IT и пользоваться этим настолько не эффективно и бестолково.

    Тут сам пока допрешь как работают: массивы, циклы, callback функции, перебор объектов, ООП в React, Redux в React можно кукухой поехать. Пока другие люди так бестолково используют такую возможность. Хорошо, что хоть Chat GPT придумали, совместно с курсами на YT это позволяет (не всегда) хотя бы самому себе вопрос сформулировать для дальнейших промтов.


    1. 0x9d8e
      20.05.2024 16:41

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


  1. ps1961
    20.05.2024 16:41
    +4

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


  1. EvgenyVB
    20.05.2024 16:41

    Хотел посоветовать почитать книгу, где есть как раз пошаговое освоение плис из серии max10 на базе макетки Terasic DELite-10. А потом смотрю, кто автор статьи)

    Я ещё удивился, ну надо же, как хорошо, когда написано правильно: "последовательской" вместо "последовательной")


    1. YuriPanchul Автор
      20.05.2024 16:41
      +1

      Последовательностной. Логика последовательностей - просто меня на этом термине не послушали :-)


  1. Asker1987
    20.05.2024 16:41
    +1

    Прикольно. У нас была специальность САПР микроэлектроники. Проектировали платы, схемы с помощью генетических алгоритмов. Но это дипломная работа, как минимум. Начинали, конечно, с hello world) Где он только копал свои вопросы?!

    Как вариант, Вы просто приятный и интересный для него человек, и он просто хотел быть на одной волне с Вами, чтобы ценили его общество тоже))


  1. Hasan81
    20.05.2024 16:41

    Может подкатывает так? Учитывая ваш пол и его пол, рекомендую мыло в душевой не ронять рядом с ним :)


  1. eugenk
    20.05.2024 16:41

    На верилоге тяжело написать "hello world". Симулятор оно конечно неплохо, но всё-таки такой мотивации не даёт. Нужна какая-то железка. Причем не самая простая, а хотя бы с семисегментным индикатором. Посоветуйте ему купить что-то подобное. Тогда и мотивация появится.


    1. YuriPanchul Автор
      20.05.2024 16:41

      Ну дык и советовал, и показывал платы, но он только продолжает присылать вопросы - а может такую плату выбрать? А может другую? (Я согласен что нужно начинать с платы, а не симулятора)


      1. eugenk
        20.05.2024 16:41
        +1

        Нда... Тяжелый случай... У него похоже совсем не эти проблемы... Что же касается плат, моя любимая, которую я всем рекомендую для начала, это lattice ice40-hx8k breakout board. Шьется по тому же кабелю от которого запитана. На тот же кабель выведен ещё протокол UART c бортовой FTDI. Так что один кабель и на питание и на прошивку и на связь. Прекрасно дружит со свободным SDK iceStorm, весом мегабайт в 150. Единственный недостаток - нет семисегментника. Для начинающих это серьёзно подогревает интерес к обучению... Впрочем сейчас хочу свою плату. Что-то вроде вот этого https://github.com/mist-devel , но "на стероидах", со всеми моими хотелками :)))


  1. Ilirium
    20.05.2024 16:41

    Я бы попробовал следующее, плавно свести ваш разговор к тому, чтобы он/она начал платить вам за консультации. Либо, уже забавы ради, начать общаться с ним через ChatGPT, скидывать в нейронку его/ее вопросы и затем пересылать ему. И посмотреть, что будет через полгодика, еще раз написать пост :)


    1. YuriPanchul Автор
      20.05.2024 16:41

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


      1. Ilirium
        20.05.2024 16:41

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

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


  1. eugenk
    20.05.2024 16:41

    Ну и добавлю немного от себя. Всех кого я начинаю учить, первым делом я заставляю написать UART. Самый простейший. Без настроек скорости, только на 115200, без FIFO и т.п. Во-первых это мотивирует. Согласитесь, что увидать на компьютере отклик от железки это воспринимается как небольшое чудо. Особенно теми, кто программированием железа ещё не занимался. Во-вторых UART это Ваши глаза и руки в проекте. Именно через него Вы будете общаться с железкой и тестировать. Так что штука безусловно и интересная и полезнейшая. Может и этому молодому человеку начать именно с UART-а ???


    1. YuriPanchul Автор
      20.05.2024 16:41

      UART это прекрасное упражнение, но для человека который не знает простейшего синтаксиса (порты, always-блоки, семантику блокирующих, неблокирующих и continous assignments) - это явно не первое упражнение. До UART ему нужно поделать всякие мигания кнопочками и упражнения по последовательностной логике на симуляторе типа https://github.com/yuri-panchul/systemverilog-homework/blob/main/02_sequential_basics/02_04_serial_adder_with_vld.sv


      1. NutsUnderline
        20.05.2024 16:41
        +1

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

        Для меня, если честно, большим сюром уже является то как Вы к этому серьезно подходите


        1. YuriPanchul Автор
          20.05.2024 16:41

          Я не согласен. Логические операции и D-триггеры можно вводить параллельно с верилогом - у меня в такого рода семинарах опыт. Конечно, если есть время, полезно для введения показать логические элементы, D-триггеры, сумматоры, мультиплексоры, приоритетные декодеры, счетчики и сдвиговые регистры на микросхемах малой степени интеграции (7400 или cmos 4000), но для этого достаточно три дня занятий, а потом точно нужно переходить на ПЛИС и показывать остальное там. А если времени мало, можно сразу на ПЛИС.


      1. eugenk
        20.05.2024 16:41

        Ну в принципе мне кажется это даже неплохо. Изучать что-то новое по-моему нужно с крупной задачи, чуть за пределами собственных сил. Тогда автоматически изучишь всё остальное что для этого нужно. Я вот например сейчас в качестве хобби осваиваю глубокое обучение. И не стал классифицировать разновидности ирисов и опознавать рукописные цифры. А начал с книги "Глубокое обучение и игра в го", и делаю сейчас игрового бота для игры flood-it по её идеям. Может напишу здесь об этом... Что же касается UART-а, пришел я к этому когда сам был зеленым новичком не просто так. А как к средству быстро и дешево связаться с проектом, сделать нужные себе нужные инструменты отладки и т.п. Но с Вашим молодым человеком похоже проблемы совсем иного толка... Ему бы с девушкой симпатичной познакомиться... :)))


        1. YuriPanchul Автор
          20.05.2024 16:41

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


          1. eugenk
            20.05.2024 16:41

            В том-то и дело... Проблемы у него похоже совсем не с этим... Я бы порекомендовал знакомства с девушками (кстати Ире из Новосиба привет !!! :)))), боевые искусства и экстремальный туризм. Если он в России, идеально бросить всё и уехать в совершенно глухую деревню у черта на рогах, где-то на месяц как минимум. Сам только со вторника в Москве. Ничего тут не читал, ибо был вообще без интернета и следовательно без чтения и новостей. Зато сколько дел переделал ! :)))


  1. Aykeye
    20.05.2024 16:41

    Блин, я себя LARP'ером бывает чувствую когда что-то пишу. Но здесь вообще какая то жесть .
    Для верилога можно послать на
    https://hdlbits.01xz.net/wiki/Step_one и пока прогресс не будет показывать, прогонять. Про программирование - advent of code. Пусть учится или хоть что-то решать или не тратить чужое время