Mistři v programování na #hovnokod

Narazili jste na zprasený kód? Nahrajte ho sem.


svatky
var datum = new Date(); // aktuální datum
var letos = new Date(2016,11,31); // Rozmezí novoročního přání    
var prvni = new Date(datum.getFullYear(), 0, 1); // prvního ledna v aktuálním roce
var mesic = new Array("Ledna","Února","Března","Dubna","Května","Června","Července","Srpna","Září","Října","Listopadu","Prosince");
var svatek = new Array(
'Nový rok',
'Karina',
... hromada jmen ...
'David',
'Silvestr',
'Nový rok',
'Karina',
'Radmila');
var poradi = Math.floor((((datum - prvni)/1000/60/60)+1)/24);
var mez =  Math.floor((datum - letos)/1000/60/60/24);
var poradizitra = poradi+1;
var poradipozitra = poradi+2;  
var denVTydnu = new Array("Neděle","Pondělí", "Úterý", "Středa", "Čtvrtek", "Pátek", "Sobota");
var vp = 104; // Velký pátek (14.4.2017 *104*) (30.3.2018 *89*)(19.4.2019 *109*)(10.4.2020 *99*)
   
 if(poradi==57&&datum.getFullYear()%4!=0) poradipozitra++;
 if(poradi==58&&datum.getFullYear()%4!=0) poradizitra++,poradipozitra++;
  if(poradi>58&&datum.getFullYear()%4!=0) poradi++,poradizitra++,poradipozitra++;  
        
var retezec ="";
          
 if (poradi==358||poradi==359||poradi==360) retezec +="☼ &nbsp;V Š E M &nbsp;&nbsp;DNES &nbsp;&nbsp;P Ř Í CH O Z Í M &nbsp;P Ř E J E M E &nbsp;V &nbsp;TYTO &nbsp;SVÁTEČNÍ &nbsp;DNY &nbsp;POHODU &nbsp;A &nbsp;SPOKOJENOST<br><br>";

if (poradi==vp||poradi==vp+1||poradi==vp+2||poradi==vp+3) retezec +="☼ &nbsp;V Š E M &nbsp;&nbsp;DNES &nbsp;&nbsp;P Ř Í CH O Z Í M &nbsp;P Ř E J E M E &nbsp;V &nbsp;TYTO &nbsp;SVÁTEČNÍ &nbsp;DNY &nbsp;POHODU &nbsp;A &nbsp;SPOKOJENOST<br><br>";
 
 if (mez>=1&&mez<=9)
  retezec +="<big>☼ V &nbsp;TYTO &nbsp;N O V É &nbsp;DNY &nbsp;2 0 1 7 <br><big>P Ř E J E M E &nbsp;SPRÁVNÉ NAKROČENÍ &nbsp; DO&nbsp; N O V É H O  &nbsp; &nbsp;R O K U&nbsp;! !</big></big><br>";

retezec += denVTydnu[datum.getDay()] + ", ", // Den v týdnu - číslován od nuly    
retezec += datum.getDate() + ". ", // Den v měsíci kupodivu od jedničky - prvního v měsíci☺
retezec += mesic[datum.getMonth()]+ " ", // Měsíce jsou číslovány od nuly
retezec += datum.getFullYear() + ". "; // Rok ve formátu 0000 
   
 if(poradi!=0&&poradi!=5&&poradi!=121&&poradi!=128&&poradi!=301&& poradi!=359&& poradi!=vp&& poradi!=vp+1&& poradi!=vp+2&& poradi!=vp+3) retezec +="Svátek má " + svatek[poradi];
else {
 if(poradi==0) retezec +=" - Nový rok - státní svátek";if(poradi==5) retezec +=" - Tři králové";if(poradi==121) retezec +=" - 1. Máj - svátek práce";
   if(poradi==128) retezec +=" - Den vítězství - státní svátek";if(poradi==301) retezec +=" - Den vzniku samostatného Československa - státní svátek";
   if(poradi==359) retezec +=" - 1.svátek vánoční";
if(poradi==vp) retezec +=" Velký pátek(st. volno) - svátek má "+ svatek[poradi];
if(poradi==vp+1) retezec +=" (Bílá sobota) svátek má "+ svatek[poradi];
if(poradi==vp+2) retezec +=" Velikonoce (svátek má "+ svatek[poradi]+")";
if(poradi==vp+3) retezec +=" Velikonoce (svátek má "+ svatek[poradi]+")";}
     
 if(datum.getDay()==3) retezec +=", zítra "+ svatek[poradizitra] +" a pozítří → už v pátek ☺ - "+ svatek[poradipozitra] +".";
  else {
if(datum.getDay()==4) retezec +=", zítra "+ svatek[poradizitra] +" → a v sobotu ☺ - "+ svatek[poradipozitra] +".";
  else
if(datum.getDay()==5) retezec +=" ► a o víkendu ☺ slaví "+ svatek[poradizitra] +" & "+ svatek[poradipozitra] +".";
  else
retezec +=", zítra "+ svatek[poradizitra] +", pozítří "+ svatek[poradipozitra] +".";}

if(poradi==365) retezec +="<big><big><big><big><br>P F &nbsp;2 0 1 7";
    
document.write( retezec ); // Výpis řetězce do dokumentu

Anonymous,


Někdo asi úplně nechápe potenciál optionalu. Mimochodem, ten insert taky není úplně třeba, o pár řádků níž se ukládá x (názvy proměnných mírně pozměněny). Vlastně by stačilo v jednom případě orElseThrow, v druhém orElseGet a je to na pět řádků vyřešeno včetně řešení, co v případě chybějícího typu.
	if (!StringUtils.isEmpty(request.getAccountId())) {
		Optional<ContextType> contextType = contextTypeDao.getByName("accountId");
		Optional<Context> foundContext = contextDao.getByAccountIdAndContextType(request.getAccountId(), contextType.get());

		if (foundContext.isPresent()) {
			x.setContext(foundContext.get());
		} else {
			Context context = new Context(request.getAccountId().toLowerCase(), contextType.get());
			contextDao.insert(context);
			x.setContext(context);
		}
	}

Anonymous,


        $return = array();
        if (!$parameter) {
            return $return;
        }
        $return[$parameter] = array();
        return $return;

Anonymous,


example k pwm
try:
    while 1:
        for dc in range(0, 101, 5):
            p.ChangeDutyCycle(dc)
            time.sleep(0.1)
        for dc in range(100, -1, -5):
            p.ChangeDutyCycle(dc)
            time.sleep(0.1)
except KeyboardInterrupt:
    pass
p.stop()
GPIO.cleanup()

Anonymous,


Krásně využité schopnosti xml, kdy je v tagu <ADRESA> naprasená celá adresa.
<?xml version="1.0" encoding="UTF-8"?>
-<zv xmlns="http://www.cpost.cz/schema/aict/zv" xsi:schemaLocation="http://www.cpost.cz/schema/aict/zv" xmlns:xsi="http://www.cpost.cz/schema/aict/zv">
<generated>2016-05-20T17:50:04</generated>
-<row>
<PSC>10000</PSC>
<NAZ_PROV>Praha 10</NAZ_PROV>
<OKRES>Hlavní město Praha</OKRES>
<ADRESA>Černokostelecká 2020/20, Strašnice, 10000, Praha</ADRESA>
<V_PROVOZU>N</V_PROVOZU>
<PRODL_DOBA>A</PRODL_DOBA>
<BANKOMAT>A</BANKOMAT>
<PARKOVISTE>N</PARKOVISTE>
<KOMPLET_SERVIS>A</KOMPLET_SERVIS>
<VIKEND>N</VIKEND>
<LOKALITY_PRODL>N</LOKALITY_PRODL>
<VYDEJ_NP_OD>12:00</VYDEJ_NP_OD>
<UKL_NP_LIMIT>A</UKL_NP_LIMIT>
<PSC_NP_NAHR/>
<NAZ_NP_NAHR/>
<ABC_BOX>N</ABC_BOX>

Anonymous,