All streams
Search
Write a publication
Pull to refresh
20
0
Send message
1) Я уверен, что распределение по дисциплинам у нас не 100% идентичное.
Абстрактно: в стране А учат Discrete Structures (45%), Programming(45%), Algorithms(10%)
в стране Б учат Discrete Structures (33%), Programming(33%), Algorithms(33%)

Давая больше вопросы на Algorithms, можно подыгрывать стране Б.

2) Внутри дисциплины существует тоже самое распределение. И т.д.
Как кто-то выше сказал: дай тест ЕГЭ по математике всем школьникам мира — и выяснится, что русские самые гениальные математики. Нет, они просто натасканы на решение такого типа задач. Я неоднократно видел межнаров (победителей международных олимпиад по математике/физике), которые пытались вкурить что же имеется в виду на тесте GRE. Просто я видел много межнаров, которые в общаге МФТИ готовились к GRE, и которые обсуждали его. Так вот сложность была не в том, что решить задачку. А в том, чтобы понять, чего вообще от тебя хотят. А когда понял, то задачка-то тривиальная, для школьника.

3) Может быть просто плохой перевод.
Из ужасных примеров:
bus driver KB888111 HD – водитель автобуса KB888111 HD (тип микросхемы переводчик воспринял, вероятно, как номер автобуса)

Big-O notation может быть переведено как «Обозначение большого О», и пока до студента дойдет, что речь идет о сложности выполнения алгоритма (нотация О-большОе), может пройти несколько секунд, но это может повлиять.

Зайдите пожалуйста, на Similarweb Ссылка
И посчитайте в ТОП-20 количество российский сайтов.

После чего посчитайте количество немецких, французских, шведских, английских.

Для тех, кому лень идти считать:
Российских 4 из 20 (или 20%, что намного больше нашей доли в ВВП, населении и т.д)
Немецких, английских, шведских, французских — 0 в ТОП-20.

Еще я недавно зашел в категорию авто (Autos And Vehicles in the world)
Тоже очень интересно. Ссылка

Да) IT не ограничивается вебом. Но в вебе большая часть разработчиков. И веб достаточно легко измерим.

P.S. меня вымораживают фразы «кроме Котлина и 1С». Котлин и 1С это нереально круто!
Я не прочитал все комментарии, но прочитал статью и бегло прочитал исследование.

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

Если там 100 у русских вузов и 100,7 у американских элитных вузов — то ок
А если там количество верных ответов 0,2 и 0,9 — то это совсем другое.

Еще очень важно понимать, что в РФ 56% людей с ВО, а в США 46%.
Это значит, что в РФ должны откинуть 18% вузов снизу по качеству образования.
Потому что скорее всего они по уровню соответствуют колледжам.

Ну и конечно, действительно надо рассматривать национальную заточенность вопросов.
Если по честному, то представители каждой из стран должны были подготовить вопросы.
Например по 20 штук.
Каждый из 3-х других стран мог бы отклонить 3 вопроса.
Итого осталось бы 44 вопроса по 11 от каждой из стран.

Исходя из вышеперечисленного, данное исследование не кажется заслуживающим уважения, несмотря на то, что возможно оно и отражает реальность.
Ответ на этот вопрос заключается в правиле, которое я слышал у Robert C. Martin (Uncle Bob): количество разработчиков удваивается раз в 5 лет.

Согласно этому правила разработчиков с опытом 5+ лет должно быть где-то 50%
Но так как многие уходят (в руководителей, архитекторов, свой бизнес, вообще из отрасли) то доля тех, чей опыт меньше 5 превышает половину.
Я бы разделил две проблемы: проблему валидации и проблему типов.

Начну с валидации
Зачем мы разрешаем создавать объекты с невалидным состоянием?

1. Потому что это нам требуется для решения наших задач. Например при создании объекта и для возвращения ошибок валидации. Создается объект, проходит его валидация, если объект не валиден, то мы возвращаем невалидный объект с ошибками в контроллер и рендер формы.
Из данных объекта мы проставляем значения в полях, из объекта ошибок мы выводим ошибки.
Т.е. например если бы наш объект Order не мог бы находиться в невалидном состоянии, нам бы пришлось создать еще какой-то класс NonValidOrder и периодически мы рендерили бы форму/json из Order, а периодически из NonValidOrder, и пришлось бы еще делать какие-то механизмы превращения одного в другое. Зачем, если мы всегда можно вызывать метод valid? везде где оно требуется.
2. Часто мы создаем объект и потом до-обогащаем его данными. Применяем купоны, добавляем скидки, привязываем заказ к клиенту и т.д. До обогащения данными наш Order не валидный. Валидность мы проверяем уже перед сохранением в базу. Если бы мы не могли создать невалидный объект, то нам бы пришлось создавать объекты вроде MayBeValidOrder, со сходным функционалом нашего Order
3. Наш Order может быть валидным с заполненными client_id, manager_id, а может быть валидным и без них, поэтому проверять их наличие нам придется все равно.
4. Ну и последнее самое интересное: тот факт, что у нас в
order.client_id
записано
Types::Strict::Integer.constrained(gt: 0)
не дает нам никаких гарантий, что у заказа есть Client, потому что не факт, что у нас есть клиент с таким id. То есть типами мы все равно не избавимся от невалидных объектов.

А теперь что касается типов
Если хочется использовать типы, то IMHO лучше не писать на Ruby)
Для этого прекрасно подойдет тот же Rust, в добавок к типам еще будет очень умный компилятор (который поможет избежать много ошибок) и прирост в скорости на пару порядков.

Ну и на мой взгляд код на Rust с типами намного приятнее, кода на Ruby c типами.
В Ruby с псевдотипами приходится писать сильно больше кода, да еще и зависеть от гемов. Уж лучше тогда писать на Rust или Haskell))
// Код на Rust
extern crate uuid;
use uuid::Uuid;

const IOS: i32 = 1;
const ANDROID: i32 = 2;
const FIRE_OS: i32 = 3;

enum Platform {
    IOS,
    ANDROID,
    FIRE_OS,
}

struct DailyActiveUsersData {
    app_id: i32,
    country_id: i32,
    user_id: i32,
    platform_id: Platform,
    ad_id: Uuid,
    first_request_date: &'static str,
}

fn main() {
    let uuid = Uuid::parse_str("6a2f41a3-c54c-fce8-32d2-0324e1c32e22").unwrap();

    let data = DailyActiveUsersData {
        app_id: 1,
        country_id: 2,
        user_id: 3,
        platform_id: Platform::IOS,
        ad_id: uuid,
        first_request_date: "2018-12-16",
    };

    println!("Data {:?}", data);
}



# Код на Ruby (я обожаю Ruby и пишу на нем каждый день, и мне кажется Ruby не об этом)
require 'dry-types'
require 'dry-struct'

module Types
  include Dry::Types.module

  PLATFORMS = {
    'android' => 1,
    'fire_os' => 2,
    'ios'     => 3
  }.freeze

  UUID_REGEXP = /[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}/

  ENTITY_ID   = Types::Strict::Integer.constrained(gt: 0)
  PLATFORM_ID = Types::Strict::Integer.enum(PLATFORMS.invert)
  UUID        = Types::Strict::String.constrained(format: UUID_REGEXP)
  ZERO        = Types.Constant(0)
end

class DailyActiveUsersData < Dry::Struct
  attribute :app_id,              Types::ENTITY_ID
  attribute :country_id,          Types::ENTITY_ID
  attribute :user_id,             Types::ENTITY_ID
  attribute :platform_id,         Types::PLATFORM_ID
  attribute :ad_id,               Types::UUID
  attribute :first_request_date,  Types::Strict::Date
end

data = DailyActiveUsersData.new(
  app_id: 1,
  country_id: 2,
  user_id: 3,
  platform_id: 1,
  ad_id: '6a2f41a3-c54c-fce8-32d2-0324e1c32e22',
  first_request_date: Date.today
)

puts data
Был трекинг-пиксель социальных сетей
Работало это так: у одной популярной соцсети есть своя форма комментариев. Если вы залогинены, то показывается ваша аватарка. Даже если не планировали оставлять комментарий. Там была дыра/фича позволяющая получить доступ к этой аватарке.

А дальше дело техники, по аватарке получаем профиль, по профилю номер телефона.
За 3-4 тысячи деревянных можно было поставить себе такую штуку на сайт, и получать номера телефонов в админке.

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

Сейчас вроде как такой фичи/дыры нет.
Спасибо Antti
Смог cобрать TodoMVC с флагом `+nightly --target=wasm32-unknown-unknown`
395Kb

image
Я бы сказал верный вопрос:
С чистым WebAssembly или с emscripten

Сам пытаюсь ответить на этот вопрос)

TodoMVC Vue.js занимает порядка 100kB
image

TodoMVC Yew занимает в dev версии 13Mb, в release версии 1,1Mb
image

Собрать TodoMVC с флагами
`--target=wasm32-unknown-unknown`
и
`--target=wasm32-unknown-emscripten`

я не смог.

У кого получится — поделитесь рецептом.
IMHO просто США теряют позиции. После второй мировой войны ВВП США составлял почти 50% мирового!

Сейчас по номинальному ВВП в $ Китай догоняет, а по ППС уже перегнал и разница только растет. При этом надо понимать, что Китай главный кредитор США.

Вот и надо придумать какую-то другую шкалу, в которой ущемление прав человека в Китае можно сильно снизить показатели. Ведь ущемление прав человека в США очень просто не замечать. Пресса то об этом не пишет.
Для IDE это явно не проблема
в том же Ruby есть rvm, rbenv, папочка .bundle и со всеми вариантами IDE прекрасно работает
у rvm есть gemset, и IDE прекрасненько подтягивает нужный gemset и GOTO definition замечательно работает

Не вижу никаких проблем, почему IDE не справятся с таким же подходов в JS
А что такое content_id?
Если речь про support.google.com/youtube/answer/2797370?hl=ru
То что в ней плохого?

Уже ездят в Германии)

Просто самолет не надо рассматривать как два фюзеляжа и перемычка между ними)

На самом деле есть 1 крыло: и это та штука на которой будет висеть два фюзеляжа, 6 движков, и ракета(ы))

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

advertka спасибо!
Странно)
Я сейчас вижу продление за 89.50 и за 124 all products)
Где вы нашли $107?
Не могу продлить
image

Кликаю Buy, вижу

image

Вот тут пишут, что не у меня одного такая проблема
vk.com/jetbrains

advertka что я делаю не так?
в Rails проект cron управляет gem whenever, и вся систематизация заданий хранится в файле
schedule.rb, где они разбиты на группы, модули и содержат комментарии
Вебкамера не имеет частоту 80Гц.
Ниже приложил пару ссылок и где я это нашел.
Продублирую тут одну из них про «микровыражения».

ru.knowledgr.com/00353543/%D0%9C%D0%B8%D0%BA%D1%80%D0%BE%D0%B2%D1%8B%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5

P.S. перевод там так себе, но если захотите, то найти инфу на английском не составит проблем.

Речь идет о микроэмоциях длительностью 0.04 — 0.06c
По ссылке много отсылок к авторам исследований, названиями статей и т.д.

Information

Rating
6,248-th
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity