1. Куча / Говнокод #25304

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    fn do_get_summary(req: &HttpRequest<AppState>) -> SummaryFuture {
        let token = req.token().expect("ISE: token not verified during AuthMiddleware stage");
    
        let datetime = req.match_info()
            .get("timestamp")
            .and_then(|s| i64::from_str(s).ok())
            .map(|ts| NaiveDateTime::from_timestamp(ts, 0));
    
        let datetime = match datetime {
            Some(dt) => dt,
            None => return Box::new(future::result(Err(ServiceError::InvalidSetting {
                key: "timestamp".into(),
                hint: "local time in seconds since Unix Epoch".into()
            }.into())))
        };
    
        let db = req.state().db.clone();
    
        let settings = req.state().db
            .send(db::GetSettings(token.clone()))
            .map_err(failure::Error::from)
            // flatten error
            .and_then(|res| match res {
                Ok(settings) => Ok(settings),
                Err(err) => Err(err)
            });
    
        let fitbit = req.state().db
            .send(db::GetSettingsFitbit(token))
            .map_err(failure::Error::from)
            // Check if there is token and flatten error
            .and_then(|res| match res {
                Ok(fitbit) => {
                    if fitbit.client_token.is_none() {
                        Err(ServiceError::TokenExpired.into())
                    } else {
                        Ok(fitbit)
                    }
                },
                Err(err) => Err(err)
            });
    
        let headmaster = req.state().headmaster.clone();
    
        let summary_and_token = settings.join(fitbit)
            .and_then(move |(settings, fitbit)| -> Box<dyn Future<Item = (Summary, FitbitToken), Error = failure::Error>> {
                // Deserialize token
                let token = fitbit.client_token.expect("ISE: token option is not cleared");
                let fitbit_token = match FitbitToken::from_json(&token) {
                    Ok(token) => token,
                    Err(err) => return Box::new(future::err(ServiceError::TokenExpired.into()))
                };
    
                let headmaster_config = master::HeadmasterConfig {
                    minimum_active_time: settings.hourly_activity_goal,
                    max_accounted_active_minutes: settings.hourly_activity_limit.unwrap_or(settings.hourly_activity_goal * 3),
                    debt_limit: settings.hourly_debt_limit.unwrap_or(settings.hourly_activity_goal * 3),
                    day_begins_at: settings.day_starts_at,
                    day_ends_at: settings.day_ends_at,
                    day_length: settings.day_length.unwrap_or((settings.day_ends_at.hour() - settings.day_starts_at.hour()) as i32),
                    user_date_time: datetime,
                };
    
                let auth_data = FitbitAuthData {
                    id: fitbit.client_id,
                    secret: fitbit.client_secret,
                    token: fitbit_token,
                };
    
                let future = headmaster.send(master::GetSummary::<FitbitActivityGrabber>::new(headmaster_config, auth_data))
                    .map_err(failure::Error::from)
                    // flatten error
                    .and_then(|res| res);
    
                Box::new(future)
            });
    
        let summary = summary_and_token
            .and_then(move |(summary, fitbit_token)| {
                db.send(db::UpdateSettingsFitbit::new(
                    token, db::models::UpdateFitbitCredentials {
                        client_token: Some(Some(fitbit_token.to_json())),
                        ..Default::default()
                    }))
                    .map_err(failure::Error::from)
                    .and_then(|_| Ok(summary))
            });
    
        Box::new(summary)
    }

    Фьючи в Rust до рефакторинга -- тот еще говнокод

    mersinvald, 12 Января 2019

    Комментарии (3)
  2. Куча / Говнокод #25303

    0

    1. 1
    https://github.com/NixOS/nixpkgs/blob/1137200d6b7fcf8fc401b54e8292f24f09bfc11d/pkgs/development/tools/build-managers/rebar3/hermetic-rebar3.patch#L56

    Давайте сломаем билд-систему своими говнопатчами и назовём пакет "rebar3", а не "rebar3-zver-edition". Пусть народ поебётся, пытаясь свой код собрать!

    CHayT, 12 Января 2019

    Комментарии (8)
  3. Куча / Говнокод #25295

    −1

    1. 1
    2. 2
    3. 3
    А давайте ругать Фрейда
    https://imgur.com/a/hH4QLKd
    https://imgur.com/a/07wciaX

    Skarn, 09 Января 2019

    Комментарии (27)
  4. Куча / Говнокод #25294

    0

    1. 1
    гитхаб говно. Давайте ругать его

    По этому я за SourceForge

    3oJIoTou_xyu, 08 Января 2019

    Комментарии (42)
  5. Куча / Говнокод #25291

    −108

    1. 1
    Я ебал ваши сиплюсные брейринги. Давайте размышлять о хуях и мужских жопахх.

    fuckyou, 07 Января 2019

    Комментарии (0)
  6. Куча / Говнокод #25290

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    Подключить (Написать/Вывести на экран)
    
    Точка старта
    выбор (любое)
    счётчик (только цыферка) равен 0
    написать выбор
    Если выбор (статус цыферка) то выбор (теперь буковка)
    Пока выбор не равен буковка(А или Б или В)
      Делать вот это
      Если счётчик больше 9 то Аварийное завершение
      написать выбор
      прибавить 1 к счётчик
      До сюда
    Вывести выбор и счётчик
    Удалить выбор и счётчик
    Точка завершения

    C/C++ подобный псевдокод на русском с dynamic/static типизацией

    BelCodeMonkey, 06 Января 2019

    Комментарии (7)
  7. Куча / Говнокод #25285

    −2

    1. 1
    Нам нужен бойцовый петух.

    Петухинхо

    bit0rez, 05 Января 2019

    Комментарии (7)
  8. Куча / Говнокод #25284

    +1

    1. 1
    2. 2
    3. 3
    Знаете ли Вы, что ReadPrivateProfileString игнорирует закрывающую квадратную скобку в названии секции?
    
    [ThereAreValidSectionName

    Куд-куд-кудат-куд-куд!

    3oJloTou_neTyx, 05 Января 2019

    Комментарии (4)
  9. Куча / Говнокод #25283

    −103

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    В школе я был влюблён в Серёженьку - парня из нашего класса. Он был отличником, пользовался вниманием девчонок и был самым лучшим физкультурником.
    Высокий, с кудрявыми, золотистыми волосами и томными голубыми глазами, он был просто великолепен в свои 16... Но меня он не признавал, предпочитая мне общество симпатичных, но ветреных восьмиклассниц.
    Возможно, он не верил, что с парнем ему может быть так же хорошо, как с девушкой, боялся разочарования. Лишь раз он взглянул на меня... 
    Как-то раз распахнув дверь школьного туалета, я увидел Сергея. Он стоял у окна с папироской. Увидев меня, он поначалу испугался, но потом продолжил курить с безмятежным видом. Я растерянно молчал.
    Он спрыгнул с окна и подошёл. Встал - и молчит. Я тоже молчу. Прошло какое-то время.
    -Че пялишься? Нравлюсь? Я молча кивнул. Вдруг он погладил меня по голове. Я совсем растерялся, а он всё улыбался, не сводя с меня взгляд.
    Вдруг он поцеловал меня. Прикосновение его губ было приятным, я едва не потерял сознание от наслаждения.
    Почувствовав свободудействий, я нащупал изрядный бугорок между его ног, и провел по нему ладонью. Сергей прервал поцелуй и строго посмотрел на меня.
    -Это что сейчас было?
    -Я хочу тебя, хочу быть твоей девушкой.
    -Допустим. Он замолчал, словно обдумывая план. Потом расстегнул штаны, взял мою руку и положил на поверх трусов.
    -Не стесняйся, потрогай. Он подошел вплотную, его член торчал из брюк, словно рычак токарного станка. Я взял член в руку. 
    Он застонал, обхватил мои ладони руками, и стал водить ими по члену. Потом мы опять слились в долгом поцелуе.
    
    Я отчаянно дрочил  ему, потом упав на колени взял член в рот.  Сергей, обезумев от наслаждения, сношал мой рот в бешенном темпе; скоро мне в горло потекла сперма.
    Застонав в последний раз, он прижал мое лицо к своему паху, вынул обмякший член и стал водить им мне по лицу, размазывая слюну и остатки спермы.
    
    Он взглянул на меня, поднял и жадно поцеловал.
    
    (а продолжение придумайте сами).

    3oJloTou_neTyx, 05 Января 2019

    Комментарии (30)
  10. Куча / Говнокод #25245

    +2

    1. 1
    Только не это! Нет! Пожалуйста, не надо!!!

    Ну ты питух...

    ne4eHb, 31 Декабря 2018

    Комментарии (0)