• Задачи с собеседований. Три адекватные задачки на «подумать»
    +2
    Нет никакой проблемы, что в первой задачке программист не заметил простого решения ибо обычно таких халявных условий в жизни не бывает. А если так и случается, то программист находится в контексте и знает куда копать. Или заказчик ставит условия объясняет это нюанс. В любом случае, это не повод чтобы отсеять претендента если он просто не заметил подвоха.
  • Запуск Bare-metal приложения на Cyclone V SoC
    +2
    Ардуино — попсовый вариант реализации микроконтроллера и имеет много недостатков в плане возможностей и производительности, поэтому нет смысла сравнивать с ПЛИС. По своему опыту: несколько лет назад меня пригласили в проект покодить MSP-430, так я с нуля изучал его неделю. На ПЛИС же я потратил гораздо меньше времени.

    Ну, и в который раз — ПЛИС и микроконтроллеры имеют зачастую совершенно разные назначения, поэтому их сравнивать равносильно сравнению электропилы и перфоратора
  • Программисты не могут написать алгоритмы без помощи: ещё раз про интервью
    0
    Я собеседовался в Яндекс тоже с листиком и ручкой. При этом никто не обращал внимание на ошибки, которые в бою будут подсвечиваться ИДЕ, например. Смотрели на «ход моих мыслей». Была даже относительно сложная задача, на которую я сказал так: честно говоря, у меня пока нет идей в плане алгоритма, боюсь что это займет много времени и вы будете долго ждать пока я буду пытаться что-то придумать. Они отвечают: мы знаем что эта задача сложная, мы будем подсказывать, нам важно понять как ты мыслишь) В общем, меня приняли и даже сказали, что им понравилось как я себя показал
  • FPGA для программиста, простые рецепты
    0
    У вас простой пример. Для сложных случаев, когда все таки хочется разбить на блоки большой кусок кода, наверное есть смысл вводить промежуточные сигналы и их в одном отдельном месте разгребать через приоритеты. Правильно мыслю?
  • Релиз Python 3.6 — да, теперь он с нами
    +2
    ха-ха, впервые заплюсованный камент про перл
  • Оптимизация кода для платформы Эльбрус на простых примерах
    +3
    Это демагогия уровня «раньше компьютеров не было и жить было лучше» (с) моя бабушка
  • «Эхо прошлых лет»: Как решается вопрос недостатка адресов IPv4
    0
    Честно говоря, я подумал, что вы меня тролите в том, что я не могу создать сокет с заданным src портом и я просто на нем забиндил адрес. А на счет того, что на выходе нат-а будет иной порт — признаю, я почему-то подумал, что речь идет не о симметричном нате и порт не будет подменен. В случае симметричного нат-а, конечно смысла в фиксации порта на клиенте нет смысла. Просто иначе организовать соединения через 2 ната — это уже хакерские фишки со спуфингом ip — видимо из-за этого подумал, что у человека проще условия
  • «Эхо прошлых лет»: Как решается вопрос недостатка адресов IPv4
    0
    P.S. Я увидел, что вы имеете ввиду фиксацию порта на нате, я как раз об этом и не говорил
  • «Эхо прошлых лет»: Как решается вопрос недостатка адресов IPv4
    –1
    Знаете, перл может кем-то и считается некрасивым языком, но говорить, что он чего-то не может — это опасно:

    use IO::Socket::INET;
    $| = 1;
    $socket = new IO::Socket::INET (
    PeerHost => '127.0.0.1',
    PeerPort => '5000',
    LocalPort => '5000',
    Proto => 'udp',
    );
    print $socket "test\n";
    


    Тисипидамплю:

    sudo tcpdump -ilo0 -p -n udp
    Password:
    tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
    listening on lo0, link-type NULL (BSD loopback), capture size 262144 bytes
    01:41:10.327757 IP 127.0.0.1.5000 > 127.0.0.1.5000: UDP, length 5
  • «Эхо прошлых лет»: Как решается вопрос недостатка адресов IPv4
    0
    Когда система создает соединение, она в качестве src-port выбирает рандомный не занятый в данный момент порт. Ответ приходит именно на этот порт. Допустим вы создаете 2 соединения (что не совсем корректно звучит в рамках udp, но все же) на один и тот же хост. Как удаленный хост будет различать пакеты с вашего ip? Правильно, по src-port. Это так, для понимания процесса рассказал. Залочить порт — это сделать чтоб src-port был фиксированным. Я не знаю есть ли либы для питона, которые могут такое делать. Хотя сам в основном программирую на питоне, но для таких вещей использую перл)
  • «Эхо прошлых лет»: Как решается вопрос недостатка адресов IPv4
    0
    Безопасность сети вполне волнует админов ибо, скажем, из-за мусорного трафика некоторые сервисы в нете спокойно могут забанить ip провайдера. Да и изоляция компов абонентов между собой вполне реальный кейс — ну… например, чтобы минимизировать риск перепродажи трафика. Сейчас это не так актуально, а всего несколько лет назад еще было. Изоляция может быть на физическом уровне (виланами) или программном (пппое). В целом это немного улучшает безопасность сети. Немного, да, но я и не говорил, что полностью.
  • «Эхо прошлых лет»: Как решается вопрос недостатка адресов IPv4
    0
    Попробуйте залочить номер исходящего порта так чтоб он был таким же как и входящий. Когда udp-пакет проходит через нат, последний запоминает связку «src-ip, dst-ip, src-port, dst-port» и временно разрешает «обратные» пакеты. По идее вы можете даже обойтись без 3й стороны. Я такой эффект наблюдал, когда был админом сети — валил (вероятно вирусный) udp трафик на клиента, при этом клиент довольно долго запросы не делал
  • «Эхо прошлых лет»: Как решается вопрос недостатка адресов IPv4
    +3
    Т.е извне можно через достучаться до открытых портов компа? Если в большинстве случаев нельзя, то, что это не как частичное выполнение функций фаервола?
  • «Эхо прошлых лет»: Как решается вопрос недостатка адресов IPv4
    +3
    Это бонус. Я не говорю, что он должен заменять фаервол, я говорю по факту, что есть и польза от ната — скажем, домашний комп не смотрит в мир «голой задницей»
  • «Эхо прошлых лет»: Как решается вопрос недостатка адресов IPv4
    0
    Зато нат частично выполняет функции фаервола — клиент не смотрит в мир всеми своими открытыми портами
  • Реализация PCI Express v3.0 x16 на ПЛИС Virtex 7
    0
    Наверное имелись ввиду приставки «киби» и «миби». Кстати, если позанудствовать окончательно, то в случае «в 1кб 1024 байта» приставку «к» надо писать с заглавной буквы
  • Релиз PyCharm 2016.3: Полная поддержка Python 3.6, улучшения в Python консоли, обозревателе переменных, и многое другое
    0
    Если так, то прекрасно. Хотя, зная как маркетологи из-за сиюминутной выгоды убивают бизнес, предположил, что здесь может быть такая же ситуация
  • Релиз PyCharm 2016.3: Полная поддержка Python 3.6, улучшения в Python консоли, обозревателе переменных, и многое другое
    0
    Каждый месяц покупать подписку будет дешевле?
  • Релиз PyCharm 2016.3: Полная поддержка Python 3.6, улучшения в Python консоли, обозревателе переменных, и многое другое
    –1
    В момент написания был уверен, что будут минусы. Хабравчане не склонны к диалогу, жаль
  • Релиз PyCharm 2016.3: Полная поддержка Python 3.6, улучшения в Python консоли, обозревателе переменных, и многое другое
    –5
    Продукт, конечно, прекрасный, но уверен, если бы вы установили меньшую цену, то покупок было бы на порядок больше. Знаю много людей, которые не могут психологически принять такую цену, но готовы в принципе платить. Я сам разработчик и почти 10 лет продаю биллинг, так вот крупные компании просто не понимаю за что они должны платить такие деньги (на самом деле небольшие, меньше одной зп специалиста) и фиг им объяснишь, что твой продукт окупится в тысячу раз. Пришлось снизить цены, покупают. Тоже с pycharm — возможно он стоит таких денег, ну не могут пока психологически наши прогеры принять такие цены.
  • River Raid на FPGA
    0
    Ну, т/е конструкция сама по себе ок, только зависит от интеграции с другими частями системы, мне это важно знать ибо я испугался «может чего-то не понимаю». А так да, про метастабильное состояние я читал и сразу понял, что пример будет с ним)
  • River Raid на FPGA
    0
    always @(posedge CLK1)
    reg1 <= A
    always @(posedge CLK2)
    reg2 <= A
    

    А что тут не так, объясните пожалуйста
  • River Raid на FPGA
    +1
    У меня та же история, в 80-х я в глаза ни разу не видел компьютер, но умел что-то примитивное создавать на логических элементах. Помню даже случай, когда на триггер не хватало несколько копеек и я впервые в жизни у прохожего попросил их, тот чтобы убедиться, что я не попрошайка, пошел со мной в магазин и я при нем купил микросхему) Потом в приложении к Юному Технику появилась схема компьютера и в месте с ней у меня мечта его собрать. Ну в принципе, будет время — осуществлю мечту в FPGA)
  • River Raid на FPGA
    0
    Не вкурсе, я видел шилды на картинках, например https://ae01.alicdn.com/kf/HTB1ZzDNKFXXXXX1XFXXq6xXFXXX5/FPGA-development-board-ALTERA-Cyclone-IV-EP4CE-four-generations-SOPC-NIOSII-send-send-remote-control-to.jpg
    Но инфу по ним не нашел еще
  • River Raid на FPGA
    0
    У китайцев есть отдельный VGA-шилд для этой платы. Так что я думаю они специально так сделали чтобы максимально удешевить, платка стоит 39 баксов
  • River Raid на FPGA
    0
    Так шим предусматривает, что на выходе импульсы будут сглажены. Если предположить, что это сделает сам монитор, то в принципе можно на обратном фронте синхроимпульса убирать сигнал, получится примитивный шим на 3 значения, т.е. получу 27 цветов вместо 8. В принципе, попробовать можно. Более продвинутый шим программно получить только увеличением частоты — хз как китайская железяка к этому отнесется. Сейчас итак там 108Мгц
  • River Raid на FPGA
    +1
  • River Raid на FPGA
    0
    Я использовал systemverilog из-за возможности использовать структуры и logic. Кстати, был еще один момент, когда я сумел в разных модулях изменить значения одних регистров, причем я не понял как это прокатило. Разбор этой ситуации отложил на потом
  • River Raid на FPGA
    0
    Есть же переходники. На фото монитор справа как раз через переходник подключен
  • Первый проект на FPGA Altera и подключение USB-Blaster в Linux
    0
    Поскольку я тут пошумел на китайцев, хочу сказать, что не все так плохо как я думал. У меня получилось среди тысячи иероглифов найти файлы для квартуса, где прописаны номера ног для VGA в частности. Сегодня я сделал свой первый проект «пин-понг» — нарисовал рамку и в ней шарик отскакивает от краев. На удивление, это оказалось не так уж трудно, в основном были косяки, связанные с тем, что для модулей необходимы регистры в качестве входного параметра и wire для выходного. В общем, спасибо за совет, но решил к китайцу не обращаться, сам разберусь
  • Первый проект на FPGA Altera и подключение USB-Blaster в Linux
    0
    Вот например отзыв с российским флажком: «Его работы удивительным». Может так русскоязычный написать? Думаю, отзывы проплачены.

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

    Вообще, ругаться с продавцом пока охоты нет, устройство по сборке очень качественное, буду пытаться заняться реверс-инженерингом как посоветовали выше
  • Первый проект на FPGA Altera и подключение USB-Blaster в Linux
    0
    Похоже я облажался. Заказал с Китая такую платку: https://ru.aliexpress.com/item/FPGA-development-board-ALTERA-IV-EP4CE-four-generations-NIOSII-send-send-remote-control-to-send-video/32657715247.html

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

    Никакой инфы какие ноги чипа куда распаяны, кроме этих четырех светодиодов у меня нет.

    Никогда не имел опыт работы с ПЛИС и хотел начать с этой платы, но сейчас она для меня как кирпич. Может посоветуете куда капнуть? Визуально смотреть что куда распаяно?
  • Первый проект на FPGA Altera и подключение USB-Blaster в Linux
    0
    Спасибо
  • Первый проект на FPGA Altera и подключение USB-Blaster в Linux
    0
    можете сделать картинки кликабельными?
  • Библиотека f для функционального программирования в Питоне
    +2
    Если есть желание быть понятным большинству и, самое главное, избежать в комментариях уже которых по счету споров на эту тему, лучше писать латиницей. Не понимаю твоего упрямства)
  • 6 «вредных» советов разработчику
    0
    Бывает в режиме «eat, sleep, code, repeat» делаешь 90% задачи. Главное выделить под это дело адекватное количество времени. Пишу это, потому что как раз в пятницу вечером решил изучить андроид и написать приложение с ассинхронными запросами по API. Включился в работу вечером и завершил в 5 утра, через 5 часов проснулся, несколько часов на кодинг, пару часов сна, doom4 и до 4 часов утра кодить. Устал жутко, зато сделал задел на будущее и в спокойном режиме смогу продумать все части проекта, что успел сделал в таком режиме нонстоп
  • Как я программирую на Python
    +1
    Я не планирую делать какие-нибудь уроки после этого «курса» — делал их больше для души. Задача сама по себе интересная оказалась, поэтому я из нее сделал видео. Больше у меня в этом направлении достойных идей нет)
  • Опыт перехода с Sublime на Vim
    0
    Вы машинисткой работате? В 3 раза! А думаете о коде вы когда?
  • Эксперименты с Arduino 101
    +1
    «А что так тоже можно было»? Если бы знал, наклепал бы стопицот статей про ардуино — пока делал сегвей, с сотню задач решил посложнее хеллоуворда. Но, видимо, все дело в запасах фуа-гра, которых у меня нет
  • Как я программирую на Python
    0
    Спасибо, буду продолжать