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

    −105

    1. 1
    2. 2
    Это ATGC в заповеднике
    https://pbs.twimg.com/media/DofuZTmWsAEWfxw.jpg

    Я считаю, что после всех катастроф, которые обрушились на Россию в двадцатом веке, начиная с первой мировой и заканчивая перестройкой, тот факт, что Россия еще сохранилась и развивается, говорит, что у нашего народа имеется одна лишняя хромосома

    Dpyrou_Pycoqpo6_CEMA, 08 Октября 2019

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

    0

    1. 1
    2. 2
    3. 3
    4. 4
    // One workaround is to approximate a namespace by using with a singleton object class.
    object FooActions {
        fun foo() {...}
    }

    Им дали возможность описывать функции на уровне пакета, без надобности совать их в MyOhuennyeUtils, а они жалуются что нету неймспейсов и пихают функци в класы. Долбоебы ¯\_(ツ)_/¯
    https://medium.com/keepsafe-engineering/kotlin-the-good-the-bad-and-the-ugly-bf5f09b87e6f#3a98

    Lorip1971, 08 Октября 2019

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

    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
    public class Main {
        public static void main(String[] args) {
            Runtime r = Runtime.getRuntime();
            Process p = null;
            long s = System.currentTimeMillis();
            try {
                p = r.exec("find /");
            } catch(Exception e) {
                System.out.println("Ой!");
            }
            while(p != null ? p.isAlive() : true) {
                //$_$//
            }
            System.out.println(p.exitValue()+(System.currentTimeMillis()-s));
        }
    }

    Это написал победитель уральского програмсофта
    Рашан программерс!

    codershitter, 07 Октября 2019

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

    −99

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    Сижу я, короче, на работе сейчас, кофе пью из термоса и программирую на «Python».
     Вдруг через минуту начинаю чувствовать непереносимый запах говна.
     Ну, думаю, Россия че, оглядываюсь по сторонам на сидящих рядом программистов. 
    Вроде никаких людей маргинального вида нет. 
    У меня у самого тоже никаких сюрпризов не ощущается.
     Ну думаю, все, глючит меня. 
    Уже практически тянусь за экстренной таблеткой оланзапина в рюкзак, как вдруг с кресла прямо за мной встает коллега и идет к туалету. 
    Запах испражнений усиливается многократно, на лицах сидящих рядом людей возникают недовольные гримасы.
     Смотрю на его компьютер, а там открыт код на «PHP». 
    Он ушел, а запах некоторый остался до сих пор. 
    Я замечательно попил кофе.

    CkpunmoBbIu_nemyx, 07 Октября 2019

    Комментарии (38)
  5. C++ / Говнокод #25911

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    #include <stdio.h>
    
    struct Gost {
       int x = 42;    
    };
    
    
    int main () {
        Gost gst;
        printf("%d\n", gst); // 42
    }

    http://ideone.com/fB26cs

    Уб ли это?

    OCETuHCKuu_nemyx, 06 Октября 2019

    Комментарии (71)
  6. Си / Говнокод #25910

    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
    #include <stdio.h>
     
    #define BIG_ENDIAN 0
    #define LITTLE_ENDIAN 1
     
    int TestByteOrder() {
            short int word = 0x0001;
            char *b = (char *)&word;
            return (b[0] ? LITTLE_ENDIAN : BIG_ENDIAN);
    }
     
    int main() {
            int r = TestByteOrder();
            printf("%s\n", r == LITTLE_ENDIAN ? "Little Endian" : "Big Endian");
            return r;
    }

    Игрушечная программа, проверяет порядковость байтов процессора ("endianness"); хотя изначально понятно что WinNT всегда "от младшего к старшему".
    Она безупречно правильная, но меня не устраивает ее размер. Ведь всё можно было бы уместить в две строки. (А еще лучше перевести на АСМ). Прошу знатоков поупражняться.

    tmayh, 06 Октября 2019

    Комментарии (41)
  7. Python / Говнокод #25909

    −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
    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
    with open("test.bmp","w+b") as f:
        f.write(b'BM')#ID field (42h, 4Dh)
        f.write((154).to_bytes(4,byteorder="little"))#154 bytes (122+32) Size of the BMP file
        f.write((0).to_bytes(2,byteorder="little"))#Unused
        f.write((0).to_bytes(2,byteorder="little"))#Unused
        f.write((122).to_bytes(4,byteorder="little"))#122 bytes (14+108) Offset where the pixel array (bitmap data) can be found
        f.write((108).to_bytes(4,byteorder="little"))#108 bytes Number of bytes in the DIB header (from this point)
        f.write((4).to_bytes(4,byteorder="little"))#4 pixels (left to right order) Width of the bitmap in pixels
        f.write((2).to_bytes(4,byteorder="little"))#2 pixels (bottom to top order) Height of the bitmap in pixels
        f.write((1).to_bytes(2,byteorder="little"))#1 plane Number of color planes being used
        f.write((32).to_bytes(2,byteorder="little"))#32 bits Number of bits per pixel
        f.write((3).to_bytes(4,byteorder="little"))#3 BI_BITFIELDS, no pixel array compression used
        f.write((32).to_bytes(4,byteorder="little"))#32 bytes Size of the raw bitmap data (including padding)
        f.write((2835).to_bytes(4,byteorder="little"))#2835 pixels/metre horizontal Print resolution of the image,
        f.write((2835).to_bytes(4,byteorder="little"))#2835 pixels/metre vertical   72 DPI × 39.3701 inches per metre yields 2834.6472
        f.write((0).to_bytes(4,byteorder="little"))#0 colors Number of colors in the palette
        f.write((0).to_bytes(4,byteorder="little"))#0 important colors 0 means all colors are important
        f.write(b'\x00\x00\xFF\x00')#00FF0000 in big-endian Red channel bit mask (valid because BI_BITFIELDS is specified)
        f.write(b'\x00\xFF\x00\x00')#0000FF00 in big-endian Green channel bit mask (valid because BI_BITFIELDS is specified)
        f.write(b'\xFF\x00\x00\x00')#000000FF in big-endian Blue channel bit mask (valid because BI_BITFIELDS is specified)
        f.write(b'\x00\x00\x00\xFF')#FF000000 in big-endian Alpha channel bit mask
        f.write(b' niW')#little-endian "Win " LCS_WINDOWS_COLOR_SPACE
        f.write((0).to_bytes(36,byteorder="little"))#CIEXYZTRIPLE Color Space endpoints	Unused for LCS "Win " or "sRGB"
        f.write((0).to_bytes(4,byteorder="little"))#0 Red Gamma Unused for LCS "Win " or "sRGB"
        f.write((0).to_bytes(4,byteorder="little"))#0 Green Gamma Unused for LCS "Win " or "sRGB"
        f.write((0).to_bytes(4,byteorder="little"))#0 Blue Gamma Unused for LCS "Win " or "sRGB"
        f.write(b'\xFF\x00\x00\x7F')#255 0 0 127 Blue (Alpha: 127), Pixel (1,0)
        f.write(b'\x00\xFF\x00\x7F')#0 255 0 127 Green (Alpha: 127), Pixel (1,1)
        f.write(b'\x00\x00\xFF\x7F')#0 0 255 127 Red (Alpha: 127), Pixel (1,2)
        f.write(b'\xFF\xFF\xFF\x7F')#255 255 255 127 White (Alpha: 127), Pixel (1,3)
        f.write(b'\xFF\x00\x00\xFF')#255 0 0 255 Blue (Alpha: 255), Pixel (0,0)
        f.write(b'\x00\xFF\x00\xFF')#0 255 0 255 Green (Alpha: 255), Pixel (0,1)
        f.write(b'\x00\x00\xFF\xFF')#0 0 255 255 Red (Alpha: 255), Pixel (0,2)
        f.write(b'\xFF\xFF\xFF\xFF')#255 255 255 255 White (Alpha: 255), Pixel (0,3)
        f.close()

    https://habr.com/ru/sandbox/125382/

    OCETuHCKuu_nemyx, 06 Октября 2019

    Комментарии (22)
  8. PHP / Говнокод #25908

    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
    public function store($variable){
    		$insert = "INSERT INTO `".$variable['table']."`(";
    		foreach ($variable as $key => $value) {
    			if(trim($key) != 'table'){				
    					$insert = $insert.''.$key.',';
    			}
    		}
    		$insert = substr($insert,0,-1);
    		$insert = $insert.") VALUES(";
    		foreach ($variable as $key => $value) {
    			if(trim($key) != 'table'){	
    				if(trim(gettype($value)) == 'string'){
    						$insert = $insert.'\''.$value.'\',';
    					}else{
    						$insert = $insert.''.$value.',';
    					}
    				}
    		}
    		$insert = substr($insert,0,-1);
    		$insert = $insert.')';
    		foreach ($variable as $key => $value) {
    			if(trim($key) != 'table'){
    				if(trim(gettype($value)) == 'string'&&strlen($value) < 512){
    					$variable[$key] = $key.' TEXT(512),
    ';
    				}elseif(trim(gettype($value)) == 'string'&&strlen($value) > 512&&strlen($value) <= 1024){
    					$variable[$key] = $key.' TEXT(1024),
    ';
    				}elseif(trim(gettype($value)) == 'string'&&strlen($value) > 1024&&strlen($value) <= 2048){
    					$variable[$key] = $key.' TEXT(2048),
    ';
    				}elseif(trim(gettype($value)) == 'string'&&strlen($value) > 2048&&strlen($value) <= 4096){
    					$variable[$key] = $key.' TEXT(4096),
    ';
    				}elseif(trim(gettype($value)) == 'string'&&strlen($value) > 4096){
    					$variable[$key] = $key.' TEXT(65535),
    ';
    				}
    				if(gettype($value) == 'integer'){
    					$variable[$key] = $key.' INT(128),
    ';
    				}
    				if(gettype($value) == 'double'||gettype($value) == 'float'){
    					$variable[$key] = $key.' FLOAT(53),
    ';
    				}
    			}
    
    		};
    				$table = "
    CREATE TABLE ".$variable['table']."(
    id INT(20) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    ";
    				foreach ($variable as $key => $value) {
    					if(trim($key) != 'table'){
    							$table = $table.''.$value;
    						
    					}
    
    				};
    				$table = substr($table,0,-3);
    				$table = $table.'
    )';
    }

    https://habr.com/ru/sandbox/125898/

    OCETuHCKuu_nemyx, 06 Октября 2019

    Комментарии (0)
  9. JavaScript / Говнокод #25907

    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
    function toUrl(url, key, value) {
      if(url=='') url=window.location.href; 
      if(url.indexOf('//')<0) url='//'+url;
    
      // protocol
      var u=url.split(/\/?\//); 
      url={}; url.protocol=u.shift()+'//';
    
      // hostname
      url.hostname=u.shift().split(':'); 
      if(url.hostname.length>1) url.port=':'+url.hostname.pop()
      url.hostname=url.hostname.pop().split('@').pop();
    
      // сохраним порядок для последующей свертки
      url.pathname='/'; url.pagename=''; 
    
      try { 
        // hash
        url.search=u.pop().split(/#/); 
        if(url.search.length==2) url.sh='#'+url.search.pop();
        url.search=url.search.shift().split(/\?/);
        
        // pagename
        url.pagename=url.search.shift(); url.search=url.search[0]
      
        // pathname
        url.pathname+=u.join('/')+(u.length?'/':'');
      
        // разбор search, (c) Steven Benner, 2010
        try {
          var u = {};
          url.search.replace(
            new RegExp('([^?=&]+)(=([^&]*))?', 'g'),
            function($0, $1, $2, $3) { 
               u[$1] = decodeURIComponent($3); 
            }
          );
          url.search=u;
        } catch(e) { 
          delete url.search; 
        }
      } catch(e) { };
    
      // вернем URL как объект, где search так же
      // представлен объектом {key:value}
      if(!key && !value) return(url);
    
      // возвращаем значение ключа
      if(key && !value) return(url.search[key]);
    
      // roll up url
      var roll = function(url,search){
        var out='';
        for(var key in url) {
          out+=(search?'&'+key+'=':'')+(key=='search'?'?'+roll(url[key],1).substr(1):url[key]);
        };
        return out;
      };
      
      // устанавливаем значение ключа
      if(value) url.search[key]=value.toString(); 
      
      // сворачиваемся, с учетом порядка следования свойств
      return(roll(url));    
    }
    
    // применение
    console.log(toUrl('http://site.my:81/home/path/page.htm?a=1&b=2#hash','a',5));

    https://habr.com/ru/sandbox/126206/

    OCETuHCKuu_nemyx, 06 Октября 2019

    Комментарии (4)
  10. PHP / Говнокод #25906

    −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
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    /*redir.php*/
    <?php
     /* Принимаем данные из формы */
      $connect=mysqli_connect('localhost','login','password') or die(mysqli_error());
    mysqli_select_db('myDB') or die ("Не могу выбрать базу данных");
    if(isset($_POST['enter'])){/*если нажата кнопка, то заносим в бд данные*/
    	 if (empty($_POST['name']) or empty($_POST['phone'])) {
            echo '<script>alert("Заполните все поля формы");</script>';
    	 } else {
      $name = $_POST["name"];
      $phone = $_POST["phone"];
      $datetime= date("l dS of F Y h:i:s A");
    $mysqly=mysqli_query($connect,"INSERT INTO contacts VALUES ('','$name','$phone','$datetime','')") OR DIE (MYSQLI_ERROR());}}
      ?>
    <script type="text/javascript">
      document.location.replace("index.php");/*делаем редирект на главную страницу сайта*/
    </script>

    https://habr.com/ru/sandbox/127860/

    OCETuHCKuu_nemyx, 06 Октября 2019

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