1. Лучший говнокод

    В номинации:
    За время:
  2. VisualBasic / Говнокод #2694

    −130.4

    1. 1
    2. 2
    3. 3
    4. 4
    Private Sub Form_AfterInsert() ' событие после вставки новой записи в таблицу table
      runSQL ("UPDATE table set TYPE= 9 where ID = (select max(p.ID) from table p )")
      Me.Form.Requery
    End Sub

    Событие на форме в Access
    А достаточно было просто повесить на форму поле с источником данных TYPE и дефолтовым значением 9.

    vie, 01 Марта 2010

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

    +81.1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    public int random() {
            long info =  (long) (System.currentTimeMillis() + Runtime.getRuntime().freeMemory() + System.nanoTime());
            long info2 = (long) (System.currentTimeMillis() + Runtime.getRuntime().hashCode() + System.nanoTime());
    
            this.rnd1.setSeed(info);
            this.rnd2.setSeed(info2);
    
            int a = this.rnd1.nextInt();
            int b = this.rnd2.nextInt();
    
            return (int) (a <<= b);
    }

    функция для получения настоящего рандомного числа в какомто студенческом говнокоде

    danilissimus, 28 Февраля 2010

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

    +113.4

    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
    while (!e.Cancel) //цикл получения остальных страниц
    {
    	//прерывание получения данных (если заказали)
    	if (worker.CancellationPending)
    	{
    		e.Cancel = true;
    		break;
    	}
    	//получение очередной странцы
    	if (page == null)
    		page = _gateway.GetTrackPage(id, pageID);
    	if (page != null)
    	{
    		if (page.Type == PageType.NotReady) //если страница не готова - на следующий круг
    		{
    			page = null;
                                                     for (int i = 0; i < waitTimeout && !worker.CancellationPending; i++) //ожидание таймаута
    			Thread.Sleep(1000);
    			waitTimeout *= 2; //наращивание таймаута с каждым получением NotReady
    			if (waitTimeout > 10)
    			waitTimeout = 10;
    		}
    .........
    	}
    .........
    }

    Опрашиваем в цикле сервер вызовами _gateway.GetTrackPage. Если сервер отвечает что не готов page.Type == PageType.NotReady, то имеем креатив на тему увеличения интервала опроса...

    svist, 27 Февраля 2010

    Комментарии (2)
  5. Pascal / Говнокод #2627

    +108.7

    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
    Function GetFmtTime:String;
    var
      tmpD : string;
      crdate: TDateTime;
    begin
      crdate := Now;
      tmpD := IntToStr(YearOf(crdate))+'-';
    
      If MonthOf(crdate)<10 Then tmpD := tmpD + '0';
      tmpD := tmpD + IntToStr(MonthOf(crdate))+'-';
    
      If DayOf(crdate)<10 Then tmpD := tmpD + '0';
      tmpD := tmpD + IntToStr(DayOf(crdate))+'(';
    
      If HourOf(crdate)<10 Then tmpD := tmpD + '0';
      tmpD := tmpD + IntToStr(HourOf(crdate)) + '-';
    
      If MinuteOf(crdate)<10 Then tmpD := tmpD + '0';
      tmpD := tmpD + IntToStr(MinuteOf(crdate)) + '-';
    
      If SecondOf(crdate)<10 Then tmpD := tmpD + '0';
      tmpD := tmpD + IntToStr(SecondOf(crdate)) + ')';
    
      Result := tmpD;
    end;

    А почему бы не использовать обычную FormatDateTime?!
    До моего прихода на фирму все пользовались выше приведенным кодом! (и много еще чем!)

    Antonio_net, 17 Февраля 2010

    Комментарии (2)
  6. Ruby / Говнокод #2620

    −118.3

    1. 1
    2. 2
    3. 3
    from app/controllers/test_controller.rb:13:in `index'
    from (irb):4
    from ♥:0>>

    Сразу предупреждаю: не говнокод (и даже не код), можно минусовать.
    День Святого Валентина, Interactive Ruby выдал такое, типа с праздником :)
    PS: незнаю где здесь руби.

    hardcoder, 15 Февраля 2010

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

    +78.6

    1. 1
    2. 2
    if(data==null)
           throw new ServerException("L0050",data.number);

    Видимо невнимательность автора

    Loord, 01 Февраля 2010

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

    +81.7

    1. 1
    2. 2
    int page = ServletRequestUtils.getIntParameter(request, "page2", 0);
    int page2 = ServletRequestUtils.getIntParameter(request, "page", 0);

    striker, 01 Февраля 2010

    Комментарии (2)
  9. Pascal / Говнокод #2475

    +101.4

    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
    /////определяем зарплату по кол-ву учеников
      str := 'SELECT C.Salary, C.DateID'+
      ' FROM CriteriaOfSalaryTeachers C, TeacherStyleGroup TSG, CriteriaOfSalaryTeacherDate CD' +
      ' WHERE (CD.TeacherStyleGroupID = TSG.TeacherStyleGroupID)'+
      ' AND (TSG.TeacherStyleID =:tsid) AND (TSG.GroupID =:idg)'+
      ' AND (CD.DateID = C.DateID) AND (CD.DateTimeActivity <= :da) AND (CD.DateTimeClose > :datt)'+
      ' AND (C.MinPupils <= :mip) AND (C.MaxPupils > :mipi)';
      Salary := MainForm.Query(str, 3, 'float:'+TSID+
                                       '; integer:'+GroupID+
                                       '; datetime:'+DateToStr(MyDate)+' '+TimeToStr(MyTime)+
                                       '; datetime:'+DateToStr(MyDate)+' '+TimeToStr(MyTime)+
                                       '; integer:'+IntToStr(CountPupils)+
                                       '; integer:'+IntToStr(CountPupils));
    if Salary[0,0] = '__false__' then
        result := -1

    определяем зарплату по кол-ву учеников

    fekrado, 22 Января 2010

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

    +76.4

    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
    public String getServiceClient(final Service service) {
            SqlDao dao = (SqlDao) getBean("sqlDao");
            return (String) dao.getTemplate().query(SQL_GET_CLIENT, new Long[]{service.getClient().getId()}, new ResultSetExtractor() {
                public Object extractData(ResultSet rs) throws SQLException, DataAccessException {
                    String result;
                    SqlDao dao = (SqlDao) getBean("sqlDao");
                    rs.next();
                    if (rs.getInt("IS_ORG") == 1) {
                        result = (String) dao.getTemplate().query(SQL_GET_LEGAL_INFO, new Long[]{service.getClient().getId()}, new ResultSetExtractor() {
                            public Object extractData(ResultSet rsi) throws SQLException, DataAccessException {
                                if (rsi.next()) {
    			        return rsi.getString("C_INN") + ", " + rsi.getString("C_NAME");
                                } else {
                                    log.debug("====== No legal client found for service: " + service.getRegistrationNumber() + " (" + service.getId() + ")");
                                    return null;
                                }
                            }
                        });
                     } else {
                         result = (String) dao.getTemplate().query(SQL_GET_PERSONINFO, new Long[]{service.getClient().getId()}, new ResultSetExtractor() {
                             public Object extractData(ResultSet rsi) throws SQLException, DataAccessException {
                                 if (rsi.next()) {
                                     return rsi.getString("LASTNAME") + " " + rsi.getString("FIRSTNAME") + " " + rsi.getString("MIDDLENAME");
                                 } else {
                                     log.debug("====== No phisical client found for service: " + service.getRegistrationNumber() + " (" + service.getId() + ")");
                                     return null;
                                 }
                            }
                        });
                    }
                    return result;
                }
          });
    }

    Я конечно все понимаю, deadline, все эти вещи... Но return на 20 с чем-то строк это сильно.

    nagakhl, 19 Января 2010

    Комментарии (2)
  11. PHP / Говнокод #2404

    +144

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    switch($_GET['act'])
    {
    	default: break;
    	case 'manageusers':
    		{
    			///......
    		    break;
    		}
    		
    	default:
    	{
    		/// .......

    обнаружил щаз в своем коде 2 месячной давности.....

    nolka4, 14 Января 2010

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