Обновить
15.49

Говнокод

Код, за который должно быть стыдно

Сначала показывать
Порог рейтинга
Уровень сложности

Причины и следствия

Время на прочтение3 мин
Охват и читатели1.2K
Здесь я хочу поделиться с вами тремя примерами неадекватного кода. И в то же время постараюсь разобрать и классифицировать каждый случай. Тем самым расскажу не только «что такое плохо?», но и «почему?»

Читать дальше →

Rss grabber для DLE жжот

Время на прочтение1 мин
Охват и читатели3.7K
Вот такой интересный код можно встретить в HttpClient'e Rss Grabber'а для DLE

while (true)
{
$this->errormsg = 'Connection failed (' . $errno . ')';
$this->errormsg .= ' ' . $errstr;
$this->debug ($this->errormsg);
if (true)
{
return false;
}
}


мне так и не удалось разгадать тайный смысл этого инопланетного послания .))

Индусские програмисты

Время на прочтение1 мин
Охват и читатели22K
Говорят что программистам из Индии деньги платят за количество строчек кода которые они написали(редко обращая внимание на качество).
Вот пример одной из конструкций:
if ($x == 0) {
// Do 1....
}
elseif ($x!=0) {
// Do 2.....
}
else {
//
// А вот здесь чистые деньги :)
//
}



P.S. В каждой шутке есть дуля шутки.

Введите код, изображенный на картинке

Время на прочтение1 мин
Охват и читатели4.9K
Наткнулся на интересную реализацию капчи.
По привычке стал дергать картинку курсором в опере, каково же было удивление когда изображение оказалось текстом.


Ссылка попала в руки по наводке Alert.

Заглянем в CMS NetCat?

Время на прочтение1 мин
Охват и читатели16K
Вам нравится NetCat? Нам с NickMitin тоже — его реализация достойна призовых мест в шитпараде.

Посмотрим что внутри?
if ($f_Checked && $admin_mode)
{
$IsChecked = $f_Checked + 0;
}

WTF?!..

Хочу еще бреда!

Валидный код

Время на прочтение1 мин
Охват и читатели1.2K
1.
string[] strs = new List<string>().ToArray();* This source code was highlighted with Source Code Highlighter.


2.
class MyClass
{
   int a;
   public MyClass(int a)
   {
      try
      {
         this.a = a;
      }
      catch (Exception ex)
      {
         logger.Error(ex);
      }
   }
}
* This source code was highlighted with Source Code Highlighter.

Форматируем дату

Время на прочтение1 мин
Охват и читатели998
Правильная подстановка нуля перед месяцами:

//dt — инициализированный объект Date()
$('declinedate').value = dt.getDate() + '.' + («00»+(dt.getMonth()+1)).substring((«00»+(dt.getMonth()+1)).length-2) + '.' + dt.getYear();

Счетчик количества, скажем новостей.

Время на прочтение1 мин
Охват и читатели799
вот таким способом я считаю количество новостей на сайте:

<?
$previev_amount=mysql_query("SELECT * FROM news;");
while ($previev_amount_inquiry=mysql_fetch_array($previev_amount)){
$amount+=$previev_amount_inquiry['amount'];
}
?>
Общее количество новостей размещенных на сайте: <?echo "$amount";?>

где в столбце amount для каждой записи стоит 1

Вопрос: можно ли это сделать к.л. другим способом или этот способ единственный?

P.S. Это цитата с форума, я всегда поражался изворотливости человеческого ума, но радует что человек понял что что-то не так...

Интересный отрывок скрипта регистрации

Время на прочтение1 мин
Охват и читатели1.2K
Просматривал исходники одного проекта, зарубежный портал с возможностью публикации аудио-видео и т.д., не суть важно. И вот так там реализована регистрация пользователей, вернее — получение id пользователя при его регистрации.
Читать дальше →

Ближайшие события

Железная логика

Время на прочтение1 мин
Охват и читатели820
if VerifyStructure(avDetails) == TRUE
	bStructure = TRUE
else
	bStructure = FALSE

if VerifyStatement(avDetails) == TRUE
	bStatement = TRUE
else
	bStatement = FALSE


Обе функции по спецификации возвращают строго boolean
12 ...
10