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

    Moskus
    @Moskus
    Очень велики шансы, что для решения практических задач потребуются: дискретная математика, операции с матрицами и векторами. Если будете работать с железом типа контроллеров двигателей, понадобится дифференциальное счисление. Графика и работа с геометрией любого рода - матрицы, векторы, тригонометрия.
    Ответ написан
    Комментировать
  • Какой язык программирования учить для работы с железом?

    Moskus
    @Moskus
    Ваш вопрос очень общий, попробую его разделить на разумные части.
    Во-первых, есть железо, где действительно есть операционная система и нечто, что под ней работает. Например - smart TV с Android. В теории, разработка под такое - не сложнее разработки под Android вообще. До тех пор, пока вы не пытаетесь работать, например, с переключением каналов, которое заключено в драйвер, а драйвер не имеет документации. Тут начинается reverse engineering, (безуспешные) попытки расшифровать образ ОС, и так далее.
    Во-вторых, есть устройства без операционной системы, с "монолитной" управляющей программой, которая "зашита" в system on chip. Тут веселье начинается сразу.
    В-третьих, если вы прямо сейчас хотите за разумное время реализовать то, что хотите, то это так не делается - на одно изучение программирования у вас уйдет пара лет, вы что раз потеряете интерес. Даже если найдёте устройство, которое предназначено для открытой разработки.
    Ответ написан
    Комментировать
  • Как понять что программирование это твое?

    Moskus
    @Moskus
    Вопрос, строго говоря, не имеет никакого отношения к программированию.
    Чтобы эта проблема исчезла, вам нужно психологически повзрослеть. Потому что у вас имеется, по вашему описанию, совершенно детский набор реакций, который будет проявляться в любой области деятельности:
    - стремление к немедленной гратификации (вознаграждению за любое проделанное действие);
    - проблемы с концентрацией внимания на одной задаче длительное время;
    - излишняя эмоциональность и раздражительность.
    Любая работа - это не развлечение, это на 90% - нудная и часто - неприятна рутина. Потому удовлетворение нужно научиться находить в этих 10%. Нужно также понять, что все вокруг вас не существует ради вашего развлечения. И наоборот, если что-то вам не нравится, скучно, тяжело - это не "мир против вас", это естественная ситуация, с которой все должны уметь справляться, чтобы, в итоге, не жить в постоянном стрессе и не умереть в 40 лет от инфаркта.
    Ответ написан
    1 комментарий
  • Есть ли сайт, где собраны общепринятые практики программирования?

    Moskus
    @Moskus
    Естественно, нет, потому что всё, что вы описали - это не какое-то тайное знание, которое можно только запомнить, а логичные приёмы, которые следуют из знания фундаментальных принципов и анализа требований к продукту. Если попытаться заменить фундаментальные знания таким сборником прецедентов, он получится гигантским и совершенно непригодным для освоения - столько всего просто нельзя запомнить. Объем фундаментальных знаний - на порядки меньше объёма частностей, которые из них выводятся, но сложность этих знаний, при этом, выше. Кто фундаментальные знания не осилил, остаётся говнокодером, пока не осилит.
    Ответ написан
    Комментировать
  • Что является основной причиной говнокода?

    Moskus
    @Moskus
    Говнокод - код, который написан, исходя из сиюминутных критериев или критериев, которые основаны на какой-то задаче, противоречащей основной задаче проекта. Скажем, если программист получает деньги за объем кода, а не его качество, он будет писать говнокод. Или если ему важнее всего успеть (потратить минимум времени), а не соблюдать качество продукта. Это при важном условии, если программист способен вообще писать качественный код за разумное время. Если нет, то любой код, который он пишет, автоматически подчиняется только одному требованию - имитации деятельности, потому будет говнокод полностью или в большой степени.
    Ответ написан
    Комментировать
  • Нужно ли программисту, пищущему на языке высокого уровня, знать детали работы ЭВМ?

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

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

    Ничего личного против вас не имею - просто оно вот так почти всегда работает. Если с вами этого не случится - чудесно. Но вероятность, что отличный узкий специалист по Java выйдет из человека, который считает смежные предметы ненужными - стремится к нулю. Не потому что они вам понадобятся непосредственно (хотя я не очень представляю, как можно заниматься оптимизацией кода без понимания принципов работы ЭВМ), а из-за модели поведения.
    Ответ написан
    1 комментарий
  • Как сделать непрозрачные элементы в прозрачном блоке?

    Moskus
    @Moskus
    Убрать у .header свойство opacity, отредактировать bg.png так, чтобы само изображение было полупрозрачным, отредактировать свойства градиентов, чтобы они были полупрозрачными.
    Ответ написан
    Комментировать
  • Есть ли программа способная скачивать картинки из диапазона ссылок?

    Moskus
    @Moskus
    Скачать и установить wget, выполнить в командной строке вот такое:
    for %L in (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z) do for /L %D in (0,1,9) do wget http://site.ru/%L%D

    По вкусу добавить параметры wget для формирования имени локального файла (если, например, сайт отдает всегда какой-нибудь дикий get_image.php, как это делают многие CMS) и прочих фокусов.

    Если оформлять это в виде .bat-файла, то заменить одинарные проценты двойными.

    Приведенный выше код просто использует два вложенных цикла FOR. Информация по синтаксису FOR, например, вот тут: ss64.com/nt/for.html
    Ответ написан
  • Что собой представляет звук? Как его сгенерировать?

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

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

    Когда говорят, что на CD звук закодирован в формате "16 бит 44 кГц", это означает, что положение мембраны динамика кодируется 44 тысячи раз в секунду и между крайними положениями - 2^16, то есть 65535 положений.

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

    Тон - это действительно частота колебаний, но чистый тон, когда звук - чистые синусоидальные колебания - это большая редкость. На самом деле, синус - большая редкость. Откройте любую аудиозапись в каком-нибудь звуковом редакторе, посмотрите при максимальном увеличении на форму сигнала. Вот, в общем случае оно как-то так и выглядит.
    Ответ написан
    Комментировать
  • Что больше красит человека - сертификат coursera или репо на github(коммит в опенсорс)?

    Moskus
    @Moskus
    GitHub, только не факт наличия там репозитория или пары пулл-реквестов, а некий объем приличного кода, который вами написан, и по которому можно оценить вашу квалификацию.
    Ответ написан
  • Обучение в ВУЗе по IT специальности??

    Moskus
    @Moskus
    Одно название "инноватика" наводит на мысль о том, что это очередное мошенничество со стороны ВУЗа, чтобы привлечь дурачков.
    Ответ написан
  • Что такое машина Тьюринга и какое отношение она имеет к программированию?

    Moskus
    @Moskus
    Машина Тьюринга - простейшее устройство, которое реализует действия по алгоритму, учитывающему текущее состояние устройства и состояние текущей ячейки памяти (традиционно говорят о "ленте"). В случае так называемой детерминированной (то есть определенной) машины Тьюринга, каждой паре состояний устройства и текущей ячейки соответствует единственное элементарное действие (которое может включать перемещение по памяти и изменение состояния ячеек).
    Эта теория используется для изучения принципов построения формальных алгоритмов на простейшем абстрактном примере.
    Ответ написан
    Комментировать
  • Как стать разработчиком программного обеспечения для оружейных систем, военного транспорта и т.п?

    Moskus
    @Moskus
    Программирование для подобных систем не отличается от любого другого. Вопрос в устройстве на работу на соответствующее предприятие. В технических институтах существуют так называемые "базовые предприятия", в том числе из подобных. Половина из них занимается непонятно чем, но некоторые все же что-то делают. Например, в Москве одним из базовых предприятий МИРЭА раньше было НПО Агат, которое теперь - часть концерна Моринформсистема. В институте, правда, учили хреново, но на самой базе - доучивали, народ писал софт под QNX для чего-то плавучего.
    Аналогично, военный факультет МГТУ имени Баумана имел и, вероятно, имеет непосредственные связи в военно-промышленном комплексе.
    Только скользкое это место работы - все очень формально, медленно, оплата труда часто весьма низкая, а рост ограничен сверху наличием старых хренов, творческий подход не поощряется. Хорошо только любителям гос. льгот.
    Ответ написан
    Комментировать