Ответы пользователя по тегу Программирование
  • Какие программисты мне нужны?

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

    Поэтому советую ориентироваться на студентов 3-4 курсов, но не столичных вузов а глубинки.
    Есть области где очень много технических университетов, например у нас в Удмуртии, где делают всё от электро дивигателей до отечественных ПК Эльбрусов. Я за 10-20тр в месяц находил отличных рукастых на вырост. Один вообще целый год за 15тр обучался отладочным платам, управлению и немножко даже выдал результат под конец года. Кстати эту сумму он сам захотел - в обмен на свободное посещение, 5 минут от дома и возможность набраться опыта.
    (цены 2010-2014 года)

    Можно начать с малого - договориться с кафедрами и развесить рядом с расписанием объявление о подработке, можно провести бизнес тренинги или просто дать немного лекций. Мне помогли вообще личные беседы и знакомство с кафедрами где сам учился или преподавал. Приятным бонусом то что аренда офиса в кукуево существенно дешевле Москвы.
    Это работает, это помогает, но минус в том что результат будет через год-два, и очень сырой и глючный. А дальше могу я взять и переписать это нечто в нормальный вид ;)
    Ответ написан
    7 комментариев
  • Каковы перспективы программиста МК? Как обстоят дела на рынке Embedded?

    @Mirn
    перспективы есть,
    но есть три варианта:
    1. Совковые и гос предприятия. армия и тд, з/п до 40-60 тр в Мск СПБ. Отношение хуже некуда, привыкай сверхурочить до часу ночи по выходным. Тут может и пригодится асм.

    2. Частные предприятия ориентированные на наш рынок, в столицах их нет, в регионах есть, з/п средненькая, макс 1500 долларов за 10+ лет опыта работы и знание схемотехники и технологии. как там работается незнаю. Тут си и си++ под baremethal, редко FREERTOS. про именно написание на асме лучше не заикаться - красная тряпка для них, резюме сразу в корзину! - признак жуткого дилетантства.

    3. Аутсорс компании работающие в СПБ и МСК на запад, на старте з/п от 3т долларов если с опытом. тут всё шикарно, ДМС, доп выплаты, переработки правда есть, но не так много и дико как в п.1 но НУЖНО ЗНАТЬ АНГЛИЙСКИЙ ОЧЕНЬ ХОРОШО, а лучше БЕГЛО. А так же НАДО знать С++, DSP, асм полезен но только на чтение (спрашивают часто), Досконально знать gcc тулчейн, linux kernel и тд. Очень пригодится веб и джава и умения админить (не путать с эникейством). Заказчики тут мне попадались крупные, Интел, Аппл, Самсунг, Матсушита и Митсубиси, Тошиба. Да и очень рекомендуется иметь загран и отсутсвие косяков с визами.
    Ответ написан
    Комментировать
  • Фриланс, системное программирование и контроллеры?

    @Mirn
    в этом деле чертовски важен опыт инженера, а не ИТшника.
    т.е. знать что и как и что в реале работает и какие случаи бывают.
    поверь, ардуино это stickman, даже не каркас а один иероглиф будущей многотомника.

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

    Мой совет - иди в гос-шарагу, типа радиозавода местного. Но только туда где реально есть полноценное конструкторское КБ и разработки свои. Получишь там опыт и пару грошей на пиво не более. (студентов там за мусор считают).
    Параллельно можно пилить что нибудь своё. умный дом например, или для авто приблуду.
    Пытаться это пиарить, писать статьи в начале в радиокота, потом на изи, потом на хабр - будут критиковать и получишь практ опыт чужих людей. Ну и свой если дело дойдёт до прототипа и запуска его.
    Вполне реально научиться вести самому разработку, совершенствовать и продавать ни от кого не завися. примеров на хабре много DiHalt например.
    Ответ написан
    Комментировать
  • Изучение С для программирования микроконтроллеров?

    @Mirn
    Внимание: Всё что пишу, пишу про голое железо или простые RTOS (стм32 и тд)

    Это программирование делится на три части:
    1. Это железо! С железом проблем нет, читаем мануал, используем рекомендуемую производителем железа библиотеку по работе с железом получаем гарантированный результат. Трудно будет только по началу. Но это опыт наживной и относительно лёгкий.

    2. Реалтайм и инженерное мастерство и инженерный опыт: Часто проги под МК работать будут в реальном времени налету, ждать никто не будет. Дважды измеренная величина всегда будет отличаться, произойти может что угодно и в какой угодно последовательности. Клоки и тактовая плавает. Количество переданных и принятых данных всегда будет разное даже по одному и тому же уарту. Всё это должна учитывать ТВОЯ программа и не падать при любом раскладе. Как видишь программа будет иметь дело с гораздо большим количеством случайностей чем при программировании в вебе/ПК и повторяемости событий почти не будет. И надо быть чуточку инженером и знать что у всего с чем работаешь есть отклонения и шум в результатах, особенно аналоговых и АЦП.

    3. Это программирование на Си как обычном языке. Тут всё просто и понятно, мануалов море - выбирай по вкусу и цвету.

    4. ОБЩЕЕ АЛГОРИТМИЧЕСКОЕ ПРОГРАММИРОВАНИЕ. Неважно что это железо но алгоритм оптимально но не слишком перфекционистки. Ты должен реализовать и язык тебе тут не поможет, он не связан с алгоритмом и наборов удобных библиотек гораздо меньше чем под ПК и веб.

    5. НЕ УЧИ АССЕМБЛЕР. не углубляйся в схемотехнику, достаточно будет уровня уверенного ардуинщика. Ассемблер сейчас нужен не для написания программ а вылизывания отлично сделанной проги которая уже продаётся но нужно выжать ещё 5-10% быстродействия, ТОЛЬКО ТОГДА. Всё остальное делается либо конфигами либо LD файлом линкера. Дебри схемотехники тоже не нужны, главное понимание как и почему это работает, без всяких четырёх полюсников и глубоких анализов фазовых задержек.
    Ответ написан
    4 комментария
  • Arduino Как из получаемой веб страницы выделить основную часть?

    @Mirn
    искать две пустых строки друг за другом
    и после них уже полезная нагрузка
    dvwviWq.png
    Ответ написан
    Комментировать
  • Есть ли в области системного программирования такие задачи, для которых целесообразно только использование ассемблера?

    @Mirn
    в микроконтроллерах АРМ асм тоже не нужен: есть хорошие компиляторы и оптимизаторы типа gcc, keil, iar. Есть библиотеки с готовыми асм вставками от производителя проца - арм консорциума. Итог писать на асме не нужно никогда и ничего. Очень и очень иногда использовать спец либы ДСП может да, с стилем "псевдо-ассемблер на си" когда инлайн-функциями записаны асм команды обрабатывающие вектор. Но обычно уже все свёртки, фурье и тд очень быстрый уже есть. И оптимизировать там - всё равно что биться голой об стену и воевать с компилятором насколько близко ты его догонишь.

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

    Да раньше для арм МК писали на асме код запуска, куски RTOS, обработка исключений, но с освоением кортекса, формата LD и секций gcc даже это стало не нужно вообще.
    За свою практику (7 лет на арм) я ни разу на асме не писал. Нужно быстродействие - ставь FPGA.
    Ответ написан
    Комментировать