1. C++ / Говнокод #12664

    +8

    1. 1
    2. 2
    #define I_HATE_MACRO2(BEGIN__, END__) BEGIN__##END__
    #define CONCAT_MACRO(BEGIN__, END__) I_HATE_MACRO2(BEGIN__,END__)

    LispGovno, 28 Февраля 2013

    Комментарии (4)
  2. Java / Говнокод #12663

    +113

    1. 1
    2. 2
    3. 3
    public static void assertAlmostEquals(final double actual, final double expected) {
    	Assert.assertTrue(Math.abs(actual - expected) < 0.000001);
    }

    someone, 28 Февраля 2013

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

    +119

    1. 1
    Dummy commit for the sake of documentation (previous commit was made without a message)

    someone, 28 Февраля 2013

    Комментарии (16)
  4. SQL / Говнокод #12661

    −169

    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
    DECLARE @IsPerson BIT  
     ,@ContactTypeID INT  
    
     SET @ContactTypeID = CASE WHEN @IsPerson = 0 THEN 3 ELSE 4 END  
    
     IF (LEN(ISNULL(@FirstName,'')) <= 0 AND LEN(ISNULL(@LastName,'')) <= 0 AND (LEN(@EntityName) > 0 OR LEN(@TradingAs) > 0))  
     BEGIN  
      SET @IsPerson = 0  
     END   
     ELSE  
     BEGIN  
      SET @IsPerson = 1  
     END

    Такая себе Stored Procedure...
    Magic numbers - это всё фигня. Меня всегда интересовало, почему тип контакта всегда 4?
    И, да, строки идут именно в такой очерёдности.

    kore_sar, 28 Февраля 2013

    Комментарии (1)
  5. JavaScript / Говнокод #12660

    +155

    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
    //...
                    else if (data.indexOf('none') == -1)
                    {
                        // Экспорт в работе
                        // Повторять запрос раз в nSec секунд.
                        nSec = 3;
                        document.getElementById("export_loading").show();
                        setTimeout("loadFile({{subject_id}}, '')", nSec*1000);
                    }
    //...
    <div class='loader' id="export_loading" style="visibility: hidden; display: inline-block; text-align: center; margin-right: 13px;"><img src='/app/images/loading.gif'/> идёт формирование списка авторов</div>
    <div id="messages_container" style="visibility: hidden; padding: 0px 30px 0 35px;">
    </div>

    Чувак вообще прикалывается)

    greevex, 27 Февраля 2013

    Комментарии (1)
  6. PHP / Говнокод #12659

    +146

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    class Step {
      public function xxx($arg1, $arg2 = NULL) {
    
      };
    }
    
    class FirstStep extends Step {
      public function xxx($arg3, $arg1 = NULL, $arg2 = NULL) {
    
      };
    }

    В очередной раз подтверждает что пхп - гамно!
    А автору кода вообще линейкой по пальцам, куда, как, зачем менять сигнатуру да и еще не правильно!!!
    И это в проэкте каторый стоит 15000Евро

    v_anonym, 27 Февраля 2013

    Комментарии (12)
  7. 1C / Говнокод #12655

    −160

    1. 1
    2. 2
    3. 3
    Процедура ЗАЕБАШИТЬЧТОБВСЕРАБОТАЛО ()
    	СООБЩИТЬ("Так не бывает!");
    КонецПроцедуры

    Из реального проекта крупного торгового дома.

    infolex, 27 Февраля 2013

    Комментарии (5)
  8. ActionScript / Говнокод #12654

    −116

    1. 1
    2. 2
    for (var i:int = 0; i < _dropCount;_dropCount--)
       // todo

    Cpp, 26 Февраля 2013

    Комментарии (12)
  9. Си / Говнокод #12653

    +135

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    // где-то в коде нашлось
    PRIVATE IdxArray* idx_array_append_val_dyn(IdxArray* arr, PlmIndex idx)
    
    // private.h
    #ifdef PLM_TEST
    #define PRIVATE extern
    #else
    #define PRIVATE static
    #endif

    внезапно...

    Try, 26 Февраля 2013

    Комментарии (34)
  10. C# / Говнокод #12650

    +125

    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
    class OneAtATimePlease
      {
        private static object lok = new object();
    
        static void Main()
        {
          Dictionary<int, string> d = new Dictionary<int, string>();
          Thread t = new Thread(new ParameterizedThreadStart(Fill));
          Thread t2 = new Thread(new ParameterizedThreadStart(Fill));
          t.Start(d);
          t2.Start(d);
          t.Join();
          t2.Join();
          foreach (var i in d)
          {
            Console.WriteLine(i.Key + " " + i.Value);
          }
        }
    
        public static void Fill(object lo)
        {
          Dictionary<int, string> d = (Dictionary<int, string>)lo;
    
          for (int i = 0; i < 10; i++)
          {
            Random r = new Random(i*4);
            int v = r.Next(0, 10);
            if (!d.ContainsKey(v))
            {
              lock (lok)
              {
                d.Add(v, "Hello from thread: " + Thread.CurrentThread.ManagedThreadId);
              }
            }
          }
        }
      }

    taburetka, 25 Февраля 2013

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