• Как я заработал 30$ на ставках на спорт
    +2
    В личных сообщениях просили рассказать про специальные условия. Я отвечу публично, вдруг кому поможет:
    Я потому и закончил этим заниматься, что к нашим уловкам к концу 2019 приспособились и аккаунты начали жить не больше месяца. А резали ставки примерно через неделю.
    Но в целом, некоторые моменты:
    1. Время ставок — бот был активен в случайный промежуток времени с 06.00-08.00 — до 22.00-24.00. Каждый день — разный. Но это очень большой промежуток, сейчас я не рекомендую ставить больше 4 часов в сутки.
    2. Есть ValueBets, а есть SureBets — мы в основном ставили на SureBets против определенных букмекеров(Pinnacle и парочка еще). Суть в том, что завышенный коэффициент обычно был как раз у второго букмекера.
    3. После появления новой вилки — ставили не ранее, чем через 5-10 секунд. Она могла поменяться/быть ошибочной.
    4. Брали SureBets и ValueBets в диапазоне 1.5 — 6%.
    5. Ставили только целые ставки, кратные 1 или 5(1, 2, 5, 10, 20, 25).
    6. Не ставили максимумы, просто округляли до ближайшего кратного.
    7. Старались использовать реальные IP адреса вместо прокси.
    8. Не ставили на противоположные события — это красный флаг.
    9. Использовали C# + CefSharp + выполнение js. Старались сделать браузер максимально похожим на chrome снаружи.
  • Как я заработал 30$ на ставках на спорт
    +6
    В 2019 работал над ботом, который автоматически в режиме 24/7 ставил ставки, полученные от разных сервисов(например, BetBurger или BetOnValue).
    Средняя сумма ставок была около 5 миллионов $/месяц(300-400 активных ботов постоянно).
    Прибыль — около 6%.
    Бизнес модель приложения — мы продавали доступ к боту как сервису и брали процент от прибыли.
    Аккаунты банили примерно через полгода, при максимальных ставках он успевал принести до 6000 долларов прибыли(500-1000$ в месяц). Там были специальные условия, чтобы прожить максимально долго и не выделяться среди вилочников.
    Основной доход шел от Bet365. Они позволяли выводить деньги даже после полной блокировки аккаунта(чтобы не портить себе репутацию).
  • Async/await в Unity
    0
  • Functional FizzBuzz на Scala
    0
    Вспомнилось: habr.com/ru/post/301536
  • В двух словах: Лучшие практики Async/Await в .NET
    +2
    Спасибо. Хотел узнать что-нибудь новое с помощью этой статьи — узнал
  • В двух словах: Лучшие практики Async/Await в .NET
    +1
    Немного дополню:
    1. Отличный FAQ по ConfigureAwait — devblogs.microsoft.com/dotnet/configureawait-faq
    2. Если асинхронные вызовы внутри метода поддерживают CancellationToken — обязательно добавляйте
    , CancellationToken cancellationToken = default
    последним параметром метода и передавайте его внутрь этих методов.
    3. Для асинхронных методов интерфейсов всегда указывайте
    , CancellationToken cancellationToken = default
    как последний параметр.
    4. При отмене с помощью CancellationToken ловить исключение отмены нужно с помощью OperationCanceledException — это базовый класс для всех исключений после отмены.
    5. Если нужно добавить тайм-аут или отмену, используйте CancellationTokenSource в дополнение к уже переданному токену-аргументу с помощью такого кода:
    using var registration = cancellationToken.Register(() => cancellationTokenSource.Cancel());

    Этот код также отменит регистрацию после вызова Dispose()
    6. В сложных асинхронных классах имеет смысл добавлять реализацию
    IAsyncDisposable.DisposeAsync()
    , если нужно что-то ждать для очищения ресурсов.
    Использование возможно с помощью конструкции await using вместо обычного using.
    await using var registration = cancellationTokenSource.Token.Register(() => completionSource.TrySetCanceled());
  • Так Систему не обойти
    0
    Как еще можно обойти плагиат:
    1. Поискать книжки по нужной вам теме, текста которых нет в интернете. Обычно они распространяются в виде DjVu, и представляют из себя просто сканы книг. А можно просто пойти в библиотеку и пофотографировать.
    2. Скачать пробную версию FineReader
    3. Попробовать

    Не поддерживаю, но всякое бывает. Крайности с обоих сторон плохи. Иногда просто нужно «добрать» текста/оригинальности по разным причинам.
  • Что нового в C# 8?
    +1
    Эти результаты правильны согласно официальной документации:
    Для любого числа n индекс ^n совпадает с sequence.Length — n


    Возможно, в предыдущих Preview было иначе.
  • Что нового в C# 8?
    –1
    Есть статья на английском хабре, там сказано:
    There is no compatibility guarantee from one C# 8.0 preview to another.
    In short, if you use C# 8.0 preview in Visual Studio 2019, some features and behavior may change between now and when C# 8.0 fully releases.

    Источник: habr.com/ru/company/microsoft/blog/443000
  • Занимательный C#. Пять примеров для кофе-брейка
    –1
    Касательно примера 4 — объяснение внутренней работы хорошее, но правильный вариант все таки такой(вдруг кто-то из новичков будет читать данную статью):
    int[] dataArray = new int[] { 0, 1, 2, 3, 4, 5 };
    
    int summResult = dataArray.Sum();
    
    Console.WriteLine(summResult);
    

    Также расширение .Sum() позволяет задать селектор, если нужно(например .Sum(item => item.Value1)). Тип будет выведен из типа перечисления(в данном случае int[] — это
    IEnumerable<int>
    и будет выведен тип int) или типа, который получает селектор.
  • Хватит подозревать разрабов в самозванстве. Научитесь лучше собеседовать
    +4
    Темные очки как вариант) Пусть думают, что вы rockstar
  • Не уважаю инкапсуляцию, или использование таблицы методов другого типа для быстрого вызова приватных методов
    0
    Да, глупо получилось, посмотрел код под спойлером только после отправки комментария. А отменить было уже никак.
  • Не уважаю инкапсуляцию, или использование таблицы методов другого типа для быстрого вызова приватных методов
    0
    Еще, как вариант (Возможно, всем известно, но мало ли):

    Допустим есть метод
    Код string.CreateTrimmedString()
    [SecurityCritical]
    private string CreateTrimmedString(int start, int end)
    {
          int length = end - start + 1;
          if (length == this.Length)
            return this;
          if (length == 0)
            return string.Empty;
          return this.InternalSubString(start, length);
    }
    



    Чтобы вызвать этот метод, можно написать:
    var method = typeof(string).GetMethod("CreateTrimmedString", BindingFlags.Instance | BindingFlags.NonPublic);
    var text = "123";
    method.Invoke(text, new object[] { 1, 1 })
    // "2"
    


    Можно протестировать в С# Interactive
  • Структура и модель выполнения .NET Core приложений
    0
    Вероятно вы имеете ввиду это?
    Используя --additional-deps и --additionalprobepaths мы можем размещать runtime-компоненты в нужной нам файловой структуре.
  • Алиса. Как Яндекс учит искусственный интеллект разговаривать с людьми
    0
    Было бы круто, если бы вы добавили какой-нибудь простейший скриптовый язык для локального использования. Например, чтобы по запросу «Открой рабочую папку» Алиса открывала конкретную выбранную директорию. В виде скрипта:
    AddAnswerAction("Открой рабочую папку", Run("explorer D:\myloveworkdir"))
    Ну а вообще простор для применения огромный, по реализации я тоже проблем особых не вижу.
    Пользователь бы получил возможность расширения возможностей под себя, вы — новые данные для обучения.
  • Qt: Embedded World 2017 и roadmap
    +1
    Здравствуйте.
    Не уверен, что по адресу, но как дела относительно поддержки VS2017 у Qt Visual Studio Tools?
    Я создатель пакета, который долгое время служил заменой официальному(его выпускали более двух лет), и на данный момент мне пишет много людей с просьбой обновить пакет. Сейчас основная работа у меня проходит на C#, и у меня, к сожалению, не хватает времени для этого. В идеале, следовало бы совместить мои наработки с официальной версией, но проблема все та же.
    Если сроки, как и в прошлый раз, не известны, я все таки могу это сделать. Просто дайте знать.