• Всё, кроме Kotlin: Андрей Бреслав о гендерном балансе в IT, эмоциях и не только
    +1
    Вам это коммунизм напоминает не просто так. В англоязычном интернете уже и термин есть для происходящего — «cultural marxism». Только 100 лет назад марксисты делили всех на угнетателей и угнетенных по экономическому признаку, а сейчас — по полу, расе, ориентации и т.д. И если вы, к примеру, белый гетеросексуальный мужчина, то про вас уже все известно. Вы новый «буржуй» и вас надо «раскулачить». Вы оцениваетесь не как индивидуум, а как член класса. До России это еще почти не дошло, есть только жалкие потуги навроде описанных в обсуждаемой статье, но всем здесь присутствующим работникам международных компаний я бы советовал самообразоваться на эту тему, пока не поздно. Репрессивная машина уже давно заведена и прогрета.
  • Всё, кроме Kotlin: Андрей Бреслав о гендерном балансе в IT, эмоциях и не только
    +2
    Упомянутые psycological traits (https://en.wikipedia.org/wiki/Big_Five_personality_traits) напрямую влияют на профессиональные предпочтения. Очень грубо говоря — интерес к вещам vs интерес к людям, и т.д. Примерно наполовину они зависят от генов и наполовину от воспитания и окружающей среды. Когда окружающая среда «не давит» биологические предпочтения, они раскрываются наиболее полно и приводят к тому, что женщин в АйТи мало (именно из-за того, что распределение этих пяти черт в популяции мужчин и женщин разное). Разумеется, если окружающая среда говорит, что «ты ходишь в хиджабе, не имеешь водительских прав, иначе умрешь», то биологические предпочтения легко задавить на корню, а сопротивление почти бесполезно.

    Кстати, если кто-то считает, что в России мало женщин в Айти, то из всего вышесказанного следует, что это хороший признак )
  • Всё, кроме Kotlin: Андрей Бреслав о гендерном балансе в IT, эмоциях и не только
    +2
    По-моему, картина довольно ясна. Если вам повезло родиться в благополучной стране, то можете заниматься тем, чем душа велит. В Норвегии учителя неплохо зарабатывают, например. Или можете пойти в gender stuides и изучать, почему же так мало женщин-технарей. Ну а если вы из тех самых 10% женщин-технарей, идите в STEM. Если же вам «повезло» родится в индиях или китаях или россиях, то с дипломом по «gender studies» вы помрете с голоду, да и на учительскую ставку тоже, пожалуй. Так что придется вам засунуть свои хотелки куда подальше и пойти туда, где хорошо платят. В конце концов, мало ли людей занимаются нелюбимым делом? На этой дорожке вас могут поджидать побочные эффекты недоразвитых обществ с их «твое место у плиты», но это далеко не единственная проблема в таких местах, так что нет особых причин выделять ее среди прочих. Вот и причина, почему женщин в АйТи больше в развивающихся странах.
    Что бесит, так это когда американская VP of HR, у которой в штате 99% женщин, начинает мне рассказывать, что отныне при найме на инженерные позиции мы при прочих равных берем женщин, а за рекомендацию женщины-кандидата бонус в два раза больше, чем за мужчину. Для начала иди и пофикси гендерный баланс в своем чертовом HR отделе, если сможешь!
  • Всё, кроме Kotlin: Андрей Бреслав о гендерном балансе в IT, эмоциях и не только
    +4
    А первую ссылку вы читали? Разговор вот про эту статью в Таймс: www.thetimes.co.uk/article/patriarchy-paradox-how-equality-reinforces-stereotypes-96cx2bsrp (она платная).
    Чем МЕНЬШЕ влияние «внешних обстоятельств в обществе», тем больше влияние «личных предпочтений» человека — надеюсь, это не вызызвает возражений? В странах, где у женщин максимальное количество прав и свобод и минимальное влияние всяких общественных стереотипов (Скандинавия, Голландия, ...), разница в профессиональных предпочтениях между женщинами и мужчинами МАКСИМАЛЬНА. Например, женщин-айтишников в Швеции где-то 20%. И женщины в Швеции не идут в АйТи просто потому, что не хотят, а не потому, что кровавый патриархат их угнетает. И эта цифра не вырастет никогда до тех пор, пока не появятся репрессивные законы, гендерные квоты и прочее угнетение мужчин ради мифического гендерного равенства. Таковы единогласные, хоть и контр-интуитивные, результаты многочисленных исследований, сделанных разными людьми в разных странах, о чем в статье и говорится. Могу сказать, что мой личный опыт это полностью подтверждает. Зайдите в офис АйТи-компании в Голландии, и там будет одна-две женщины, и те эмигрантки. Зайдите в офис той же компании в Китае — женщин минимум треть.
  • Всё, кроме Kotlin: Андрей Бреслав о гендерном балансе в IT, эмоциях и не только
  • Всё, кроме Kotlin: Андрей Бреслав о гендерном балансе в IT, эмоциях и не только
    +2
    Вовсе не так. Зависит от того, кого именно включать в «Computer Science». У меня мать в восьмидесятых работала оператором ЕС ЭВМ (те самые огромные шкафы, магнитные ленты, куча лампочек...). При этом она до сих пор с компьютером не дружит.
  • Всё, кроме Kotlin: Андрей Бреслав о гендерном балансе в IT, эмоциях и не только
    +2
    j4mb.org.uk/2018/09/15/patriarchy-paradox-how-equality-reinforces-stereotypes

    “It seems that as gender equality increases, as countries become more progressive, men and women gravitate towards traditional gender norms,” Dr Mac Giolla said. “Why is this happening? I really don’t know.”
  • Как мы разработали устройство для контроля внимания водителей. Опыт Яндекс.Такси
    +5
    тем, что если я сижу спереди (пристегнутый), то при боковом ударе туша водителя меня убьет.
  • Обзор примитивов синхронизации — спинлоки и тайны ядра процессора
    0
    Все очень просто. С точки зрения процессора LL — это обычная команда load, а SC — обычная команда store. Они могут быть кэшированные (то есть лезут в кэш проца) и некэшированные (когда в обход кэша лезут прямо на внешнюю шину и дальше в память — DDR или что там у вас).

    1. Кэшированные:
    Кэшированные LL/SC требуют наличия аппаратной когерентности кэшей (именно поэтому внизу написали, что в TMS320C66xx они пропали). Предположим, что кэш пуст. Когда несколько ядер выполнят LL на ячейку памяти с каким-то одинаковым адресом, то это вызовет промах кэша во всех из них, и кэш-линия, содержащая этот адрес, будет прочитана в кэши всех ядер и во всех из них будет отмечена как «Shared» (гуглите MOESI — «Shared» это и есть «S» в этой аббревиатуре). Каждое ядро заодно запомнит внутри себя этот адрес и будет проверять по нему все последующие записи в память. Теперь, если все эти ядра выполнят SC по этому адресу абсолютно одновременно, то контроллер кэша каждого из ядер запросит перевод строки в состояние «Modified» (поскольку с точки зрения ядра это обычная запись, а запись в «Shared»-строку запрещена). Протокол MOESI регламентирует, что только одно из них получит разрешение перевести строку в «Modified», запросы от остальных будут забуферизированы и на это время они будут обязаны перевести свои строки в состояние «Invalid». Все ядра, в которых строка кэша стала «Invalid», поймут, что кто-то другой записал по этому адресу. Как только первое ядро закончит запись, начнет выполняться забуферизированный запрос от другого ядра: строка, отмеченная как «Modified», станет «Invalid», и наоборот — одна из тех, что были «Invalid», станет «Modified», и т.д. То есть контроллер кэшей будет гонять строку, содержащую наш адрес, туда-сюда между ядрами, и в каждый конкретный момент времени только у одного ядра будет разрешение на запись, но это уже к делу не отностится.
    Интересный побочный эффект: поскольку протоколы когерентности кэшей работают со строками, то доступ к любому слову в этой строке будет воспринят как доступ конкретно к нашей ячейке.
    2. Некэшированные:
    Некэшированные LL/SC вызывают особый тип трансфера на внешней шине: «Exclusive» (в протоколе AXI, например, такой есть). И слэйв на шине (например, контроллер памяти) должен эту функциональность реализовать сам (то есть следить, какой мастер записал по какому адресу и записал ли туда другой мастер что-либо). Если он ее не реализует как положено, то LL/SC защищать ничего не будут. Зачем вообще это надо? Ну, предположим, у вас в системе два четырехядерных проца, и внутри своих четырех ядер они когерентность кэшей обеспечивают, а между собой — нет. Придется вам использовать некэшируемые LL/SC.
  • Пишем под FPGA без HDL. Сравнение высокоуровневых средств разработки
    0
    С наглядностью того же Verilog при соблюдении минимальной культуры написания кода вообще мало какой из современных языков может сравниться


    Штоа? В языке без пользовательских типов данных, структур, многомерных массивов в портах, параметризации наличия/отсутствия портов, с бесконечными строками инлайн-вэйверов типа «spyglass disable_block» для затыкания линтеров? Где нельзя понять ни строчки, если ты не сам их вчера написал?
  • Опытное производство электроники за минимальный прайс
    0
    Любой человек, который хоть что-либо паял в жизни, понимает, что тетка должна была левой рукой держать плату, чтоб по столу не скользила. Она бы это сделала просто инстинктивно. Так что на лицо паршивенькая постановка на тему «даешь больше женщин в STEM».
  • Как поколение Y превратилось в поколение выгоревших?
    +1
    #learntocode
  • JavaScript как воплощение зла
    +7
    Это еще что. Тут недавно попалось #define volatile
  • Заказные блоки в микросхемах (Silicon IP): как это работает
    0
    Интел только недавно открыл доступ для сторонних разработчиков к своему 14 нм процессу. Так что скоро появятся в списке.
  • Заказные блоки в микросхемах (Silicon IP): как это работает
    +2
    Не забываем также MBIST, LBIST и прочий DFT, написание прошивок в ROM, всякую сертификацию по ISO-26262 и подобным стандартам, power-domain management и DVFS (самый простой способ выстрелить себе в ногу на сегодняшний день), разработку структуры ECC на всю микросхему (end-to-end или по частям, которые никогда, почему-то, между собой не совместимы), отловку багов в купленных Soft- и Hard-IP (которых там немеряно), ну и еще кучу всего. Именно поэтому куче контор, занимаюшихся исключительно интеграцией IP, хватает на хлеб с икрой.
  • Мифы о кэше процессора, в которые верят программисты
    +7
    Миф только один — что кэш «прозрачен» для программиста. Все остальное — детали.
  • Генерация и тестирование ядра RISC-V
    –1
    О том и речь. Только в варианте с Верилогом у вас есть выбор, что моделировать — RTL или нетлист. А в варианте с Chisel'ом выбора нет. Хотя есть шанс, что баги в Chisel'е наложатся на баги в трансляторе и на выходе получится работающий Верилог (по крайней мере, до выхода следующей версии транслятора).
  • Генерация и тестирование ядра RISC-V
    +1
    Для Chisel это все не нужно. Эквивалентность между RTL и нетлистом нужна, потому что верифицируете вы одно, а в кремний идет другое. А в случае с Chisel вы верифицируете Verilog, который из него получен, т.к. фреймворка по типу UVM, чтобы верифицировать нативный Chisel, наверняка нету. Если бы верифицировали Chisel, то тогда да.
  • Генерация и тестирование ядра RISC-V
    0
    А дебажить-то как? То же самое, что писать RTL-код, но симулировать и верифицировать только нетлист, а потом каким-то образом пытаться понять, что пофиксить в RTL, чтобы бага в нетлисте ушла? Спасибо, не надо.
  • Генерация и тестирование ядра RISC-V
    0
    «Talk is cheap. Show me the code» (с) Торвальдс.
    Сколько строк на Chisel написали лично вы?
  • Генерация и тестирование ядра RISC-V
    0
    1. Chisel — полная ерунда, никому не советую тратить время. Берите опенсорный RISC-V на верилоге или системверилоге, типа SCR1, и будет вам щастье.
    2. Работающего LLVM под RISC-V тоже нету, ну что ж, будем ждать.
    3. Самая интересная, по крайней мере для меня, часть ISA — векторное расширение, тоже не готова. Видимо, будет на основе берклевского же Hwacha, но когда — не понятно.

    Вывод: побаловаться студентам сгодится.
  • Иммиграция в Чили: поиск работы и получение вида на жительство
    0
    Сантьяго не понравился, сплошные автобусы везде. Моря нет. Но в целом Чили, по южноамериканским меркам — просто Сингапур какой-то. И с английским у населения гораздо лучше, чем в какой-нибудь Аргентине.
  • Первый шаг к аппаратным ускорителям нейронных сетей для программистов лежит через изучение основ HDL, RTL и лаб на FPGA
    0
    F1 для «поиграться» не очень-то подходит
  • Мои замечания о книге Л.П. Плеханова «Основы самосинхронных электронных схем»
    0
    я, конечно, не Сергей, но почитаю.
  • Рассуждение на тему, какую базу данных выбирать
    0
    Можно еще было добавить вариант «когда вам на самом деле не нужна СУБД».
  • Материалы открытого курса OpenDataScience и Mail.Ru Group по машинному обучению и новый запуск
    +1
    Не стоит свое отношение к людям проецировать на других. К товарищу Ng я отношусь с большим уважением.
  • Материалы открытого курса OpenDataScience и Mail.Ru Group по машинному обучению и новый запуск
    +1
    В этой статье написано, что курс — не для новичков. Тем не менее, никакого базового курса по машинному обучению по типу Ыновского в требованиях нет, есть только математика и питон. После чего не удивительно, почему авторы уверены, что больше половины студентов отвалится на третьей-четвертой неделях! Это именно то, что со мной случилось в Яндексо-МФТИшном курсе, на который я подписался одновременно с Ыновским.

    Кроме того, сдается мне, что отсутствие математики в курсе Ына сильно преувеличено. Математика там есть, просто он говорит, что если вы не поняли, как именно выведена там или иная формула или посчитана производная, то не стоит чувствовать себя недочеловеком (но эти фразы рассчитаны на индусов, это не значит, что вы не должны разобраться, как они выведены).

    Так что мой совет будущим студентам этого курса — пока он не начался, сходите на Курсеру и запишитесь на бесплатный стэнфордский Machine Learning от Andrew Ng (если, конечно, вы сможете с его акцентом примириться). Может быть, это поможет вам и здесь не отвалиться после третьей недели :)
  • Материалы открытого курса OpenDataScience и Mail.Ru Group по машинному обучению и новый запуск
    0
    По моему личному мнению подход товарища Andrew Ng — правильный. Плотность формул на квадратный миллиметр слайдов — это еще не показатель продвинутости курса. И на пальцах объяснить сложные вещи гораздо сложнее, чем накопипастить формул из советских учебников. Разлекламированный курс Яндекса и МФТИ на Курсере — отличный пример. Я посмотрел две-три лекции, ничего не понял, и забил. Наукообразность — это известная фишка отечественного образования.

    Касаемо понимания backprop-a — согласен с Карпатым. Другое дело, может ли преподаватель объяснить его так, чтобы студенты действительно поняли. В стенфордском курсе Machine Learning на Курсере доказательства в видеоуроках нет, но оно есть в приложении. Тоже не очень понятно. Лучшее, что я видел — вот эта MIT'овская лекция на Ютубе: www.youtube.com/watch?v=q0pm3BrIUFo. У меня именно после нее все встало на свои места. Хотелось бы пожелать отечественным волонтерам брать пример с MIT.
  • Капсульные сети от Хинтона
    +1
    Ничего не понял. Подожду, пока товарищ Ng запишет видеолекцию для тупых.
  • За пять дней я прошел собеседования в пяти компаниях Силиконовой долины и получил пять предложений о работе
    +1
    Поржал с «дериваций популярных моделей». Имелись в виду производные?
  • Вред маленьких функций
    +1
    посчитав, сколько тактов мои функции тратят на сохранение регистров на стек и последующее их восстановление, прослезился и всё заинлайнил.
  • Краткий курс компьютерной графики: пишем упрощённый OpenGL своими руками, статья 4в из 6
    0
    ааа, так это модель двух глаз сразу?
  • Краткий курс компьютерной графики: пишем упрощённый OpenGL своими руками, статья 4в из 6
    0
    Кстати, было бы неплохо получить адд-он (здесь или на гитхабе) про то, как негру добавить глаза!
  • История предсказания переходов с 1 500 000 года до н.э. по 1995 год
    0
    это никак не отменяет того, что я сказал
  • История предсказания переходов с 1 500 000 года до н.э. по 1995 год
    0
    В DSP активно используются. Вот, например, свежий 8-way VLIW для 5G модемов: www.ceva-dsp.com/product/ceva-xc12
  • История предсказания переходов с 1 500 000 года до н.э. по 1995 год
    0
    Можно-то можно, но есть один нюанс. Дешифрация команды не происходит мгновенно, и сколько тактов пройдет, прежде чем процессор поймет, что он испольняет команду ветвления — одному Аллаху ведомо. А знать это процессору необходимо сразу, ибо следующую команду надо выбирать уже на следующем такте.
  • История предсказания переходов с 1 500 000 года до н.э. по 1995 год
    0
    обычно есть способ заинвалидировать таблицу переходов, чтобы избежать ложных срабатываний. Ядро операционки должно это делать при переключении контекста
  • Следущие шаги в черной магии процессоростроения после того, как вы освоили Харрис & Харрис
    0
    Интерпретатор Верилога писать не нужно. Верилог преобразуется в нетлист, их соответствие проверяется при помощи формальной верификации (используя Formality или LEC — они берут Верилог и нетлист и говорят, совпадает ли их функциональность или нет. Это нужно, потому что в синтезаторе могут быть баги и он может сделать неправильный нетлист из правильного Верилога). Потом нетлист преобразуется в геометрию, и их эквивалентность, в свою очередь, проверяется при помощи LVS (layout versus schematics). После этого геометрия едет в степпер, грубо говоря. Для тестирования микросхемы используются эмпирические методы, основанные на «купил-включил-не работает»: внешний тестер, тестовые последовательности для которого готовит ATPG (automatic test pattern generator), и BIST (built-in self-test, он обычно бывает отдельно на память и отдельно на логику). Оба способа как раз и проверяют отсутсвие дефектов производства, например, обрывов дорожек или коротких замыканий. Ибо засунуть микросхему под микроскоп довольно накладно, особенно если в ней сто миллиардов транзисторов. Есть еще всякие извращения, например самопочиняющаяся память (memory with self-repair), но это я уже отклонился от темы.
  • Следущие шаги в черной магии процессоростроения после того, как вы освоили Харрис & Харрис
    –1
    IC Compiler II вполне симпатичный. К тому же, он еще и работу делать умеет, для которой народ по 250 гигабайт оперативки ставит, а не только рюшечки рисует, как Xcode.
  • Следущие шаги в черной магии процессоростроения после того, как вы освоили Харрис & Харрис
    +6
    Граждане, когда будете пилить свой процессор, не забудьте, что главное в нем — экосистема: компилятор (желательно несколько, но хотя бы gcc), отладчик, портированные RTOS, и т.д. Без всего этого ваш процессор никому не нужен.