abonnement Unibet Coolblue Bitvavo
pi_59619477
Webdevven en systeemontwikkelaren is hartstikke tof. Er is niks leuker dan 'volgens het boekje' vette Web 2.0 apps uit de grond schoppen die nog jarenlang mee gaan en waar je zo goed als geen onderhoud aan hebt. Nieuwbouw projectjes FTW dus.

Helaas krijg je ook wel eens bagger van collega's en/of andere softwareontwikkelaars. Het een nog slordiger dan het ander. Sowieso is het altijd effe zoeken waar alles staat want het is natuurlijk nooit geüniformeerd en ingedeeld zoals het ingedeeld moet zijn. Af en toe krijg je echter zo'n bagger toegestuurd onder het mom van "Doe jij eens effe fiksen!" waar je spontaan van gaat janken.

Zo kreeg ik en paar weken terug een programma voor m'n kiezen waar de oorspronkelijke ontwerpers mee 'gestopt' waren (uiteraard onder het mom van "financieën", terwijl ze eigenlijk gewoon niet meer uit de voeten kwamen met hun eigen bagger). Leuk, fijn, alweer een renovatie-projectje waar ik van tevoren al slechte vermoedens van had. Afijn, een groot probleem van het programma was dat het rapporten genereerde waar de hele server van over de rooie ging en dat 2 minuten duurde om eindelijk op het scherm toonbaar te worden.

Ik dat programma eens onder de loep nemen, en afgezien van het feit dat het ding constant meer dan 60% van m'n server CPU`tje vreet en verschrikkelijk veel geheugen in beslag neemt door in de broncode niks fatsoenlijk af te sluiten en te legen, kom ik de volgende dingen tegen:
- Een gigantische database zónder relaties, bulkend van Views en Stored Procedures die stikken van de sub-queries (en zelfs sub-sub-queries )
- Broncode met volledig gebrek aan logica en uniformering, en onlogische klassenindeling
- Alle JavaScript, CSS en HTML door elkaar geknald.
- Het hele ding werkt alleen in Internet Explorer en kornuiten, m'n Firefoxje moest het ontgelden.

Ga ik tot overmaat van ramp naar het betreffende rapport kijken dat 'altijd vastliep', zie ik dat het ding dit soort HTML output uitspuugt:


En maar liefst meer dan 8 MB (!) aan dit rotzooi per rapportje!


Klacht: (wan)systeem-ontwikkelaars die anno 2008 nog steeds onlogische en jaren 98`er HTML gebruiken, hun database amateuristisch, zonder relaties en bulkend van de sub-(sub-)queries opzetten en applicaties schrijven terwijl ze niet kunnen programmeren.
  maandag 23 juni 2008 @ 09:38:55 #2
116091 Heatseeker
ATTAMOTTAMOTTA
pi_59619510
Zoals zo vaak hier op fok ik snap er geen biet van. Maar ik vind je klacht terecht.
Beter 1 vogel in de hand, dan geen hand.
pi_59619536
Verkapt-kijk-mij-nerd-zijn
It was an encounter that lasted less than 45 seconds O+
  maandag 23 juni 2008 @ 09:42:30 #4
67478 Radjesh
Dire Straits!
pi_59619563
Lol
pi_59619565
Eens met de klacht, echter:
quote:
Sowieso is het altijd effe zoeken waar alles staat want het is natuurlijk nooit geüniformeerd en ingedeeld zoals het ingedeeld moet zijn.
Dit is natuurlijk subjectief, iedereen heeft zijn eigen werkwijze en gewenning voor bepaalde indelingen.
pi_59619570
quote:
Op maandag 23 juni 2008 09:42 schreef Radjesh het volgende:
Lol
Ben je nou al eens geslaagd voor je Java exam, lampie?
  maandag 23 juni 2008 @ 09:44:40 #7
26400 wijsneus
Radicaal Democraat
pi_59619594
Je snapt er ook niets van he? dat is nog eens baanzekerheid! Hoe ingewikkelder hoe beter!

Siamo Tutti Antifascisti!
  maandag 23 juni 2008 @ 09:44:59 #8
81894 godigita
Trollercoaster
pi_59619599
HTMLverkrachting. Mijn hart doet zeer
  maandag 23 juni 2008 @ 09:47:19 #9
15967 Frollo
You know I am a righteous man
pi_59619628
Heette dat programma toevallig 'Microsoft Word'?
pi_59619641
quote:
Op maandag 23 juni 2008 09:38 schreef Heatseeker het volgende:
Zoals zo vaak hier op fok ik snap er geen biet van. Maar ik vind je klacht terecht.
Dat is het erge. Ik programmeer al járen en als ik zulke bagger van anderen voor m'n kiezen krijg snap ik d'r vaak geen hol van. Als ze eens alles op hun plek zouden houden en niet alles door elkaar gooien dan maken ze het niet alleen makkelijker voor anderen die naderhand met hun bagger moeten werken, maar werkt het op den duur alleen maar in hun voordeel.
  maandag 23 juni 2008 @ 09:49:18 #11
160953 Ezechielk
Ezechiel 25:17
pi_59619651
Dat is ook precies waarom ik al me dingen liever zelf maak, dan de bende van iemand anders te gaan fatsoeneren. Meestal ben je nog eerder klaar ook als je het zelf doet
There is no better way of exercising the imagination than the study of law.
No poet ever interpreted nature as freely as a lawyer interprets truth.
Jean Giraudoux, "Tiger at the Gates"
pi_59619685
quote:
Op maandag 23 juni 2008 09:42 schreef Scorpie het volgende:
Eens met de klacht, echter:
[..]

Dit is natuurlijk subjectief, iedereen heeft zijn eigen werkwijze en gewenning voor bepaalde indelingen.
Is ook zo. Maar houdt op z'n MINST je CSS in een stylesheet, veelvoorkomende JavaScript functies in een Javascript bestand, database zaken in je database en veelvoorkomende functies netjes in een globaal bestand/klasse, en NIET alles herhaaldelijk en door elkaar in élk bestandje proppen.

Het betreffende programma heeft niet alleen in de heading elke keer een hele lap aan CSS declaraties staan, maar heeft ook nog eens 3 achterliggende CSS bestanden met elkaar overschrijdende declaraties.
  maandag 23 juni 2008 @ 09:51:28 #13
45180 Dennis_enzo
Geen usericon nee
pi_59619696
Iedereen vind altijd alle code van anderen een rommeltje
Ook geen sig dus
  maandag 23 juni 2008 @ 09:51:38 #14
67478 Radjesh
Dire Straits!
pi_59619697
quote:
Op maandag 23 juni 2008 09:43 schreef Scorpie het volgende:

[..]

Ben je nou al eens geslaagd voor je Java exam, lampie?
Uiteraard 2 jaar al man

Net een mooie applicatie opgeleverd aan een mooi bedrijf, dus nu nog 2 jaar hbo'en
  maandag 23 juni 2008 @ 09:52:34 #15
144213 Adidah
Het was wraak
pi_59619714
quote:
Op maandag 23 juni 2008 09:51 schreef Dennis_enzo het volgende:
Iedereen vind altijd alle code van anderen een rommeltje
Maar je hebt natuurlijk rommel en troep.
  maandag 23 juni 2008 @ 09:53:00 #16
91039 mstx
2x1/2 = 1/2 x 1/2
pi_59619725
Terechte klacht. Altijd leuk als je baas een ander bedrijf heeft overgenomen en je hun bagger moet opruimen.
Dit soort bagger bijvoorbeeld:

Op donderdag 2 juli 2009 22:41 schreef RTB het volgende:
als ik elk rap"liedje" een kans moest geven was ik aan het eind van dit millennium nog bezig met het tempo waarin die kotshoop uitgebraakt wordt.
👾
pi_59619733
quote:
Op maandag 23 juni 2008 09:50 schreef Tuvai.net het volgende:

[..]

Is ook zo. Maar houdt op z'n MINST je CSS in een stylesheet, veelvoorkomende JavaScript functies in een Javascript bestand, database zaken in je database en veelvoorkomende functies netjes in een globaal bestand/klasse, en NIET alles herhaaldelijk en door elkaar in élk bestandje proppen.

Het betreffende programma heeft niet alleen in de heading elke keer een hele lap aan CSS declaraties staan, maar heeft ook nog eens 3 achterliggende CSS bestanden met elkaar overschrijdende declaraties.
Tuurlijk, I hear you brotah!
  maandag 23 juni 2008 @ 09:53:57 #18
81894 godigita
Trollercoaster
pi_59619742
quote:
Op maandag 23 juni 2008 09:50 schreef Tuvai.net het volgende:

[..]

Is ook zo. Maar houdt op z'n MINST je CSS in een stylesheet, veelvoorkomende JavaScript functies in een Javascript bestand, database zaken in je database en veelvoorkomende functies netjes in een globaal bestand/klasse, en NIET alles herhaaldelijk en door elkaar in élk bestandje proppen.

Het betreffende programma heeft niet alleen in de heading elke keer een hele lap aan CSS declaraties staan, maar heeft ook nog eens 3 achterliggende CSS bestanden met elkaar overschrijdende declaraties.
Eensch. Slecht opgebouwde CSS moeten uitzoeken is echt een van de ergste dingen die er zijn. Dan kun je net zo goed helemaal opnieuw beginnen.
pi_59619746
quote:
Op maandag 23 juni 2008 09:53 schreef mstx het volgende:
Terechte klacht. Altijd leuk als je baas een ander bedrijf heeft overgenomen en je hun bagger moet opruimen.
Dit soort bagger bijvoorbeeld:
[ afbeelding ]
O.My.Fucking.God.
pi_59619749
quote:
Op maandag 23 juni 2008 09:53 schreef mstx het volgende:
Terechte klacht. Altijd leuk als je baas een ander bedrijf heeft overgenomen en je hun bagger moet opruimen.
Dit soort bagger bijvoorbeeld:
[ afbeelding ]
  maandag 23 juni 2008 @ 09:57:02 #21
81894 godigita
Trollercoaster
pi_59619793
quote:
Op maandag 23 juni 2008 09:53 schreef mstx het volgende:
Terechte klacht. Altijd leuk als je baas een ander bedrijf heeft overgenomen en je hun bagger moet opruimen.
Dit soort bagger bijvoorbeeld:
[ afbeelding ]

epic fail
pi_59619837
quote:
Op maandag 23 juni 2008 09:53 schreef mstx het volgende:
Terechte klacht. Altijd leuk als je baas een ander bedrijf heeft overgenomen en je hun bagger moet opruimen.
Dit soort bagger bijvoorbeeld:
[ afbeelding ]

Er zit zoveel regelmaat in dit script, schrijf gewoon even een scriptje om het te converten naar een goeie versie.
Gaat voor de BHFH-award 2005!
Humanitas est in bestias bonitas.
I am the hole I can't get out of.
pi_59619930
Ook de broncode die d'r achter ligt (C#) is om te janken. Constant onlogische loops vol met statements voor tabellen-(on)logica (die niet eens nodig zouden zijn als de ontwikkelaar gewoon netjes divjes gebruike voor z'n bedoelde naar links 'floatende' blokjes), en dubbelop gevulde DataSets. SQL Server Profiler spuugt bij de minst geringste functie van dit programma een hele waslijst aan database requests uit.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
tableLabel.Text = "<table cellspacing='0' cellpadding='3' style='width:100%;height:200;margin-left:100px 0 0 0;'><tr>";

for (int i = 0; i < itemCount; i++)
{
    itemRow = itemDataSet.Tables[2].Rows[i];
    tableLabel.Text += "<table cellspacing='0' cellpadding='3' style='width:50%;height:200;'><tr><td><B>Produkt<td><B>Klasse<td><B>Type<td>Datum wijziging<tr><table width='300'><tr><td>" + dr["productNaam"].ToString() + "<td>" + dr["klasseNaam"].ToString() + "<td>" + dr["typeNaam"].ToString() + "<td>" + dr["productEditDate"].ToString() + "</table></table>";

    if(isEvenGetal(aantalItemsGeweest)){
        tableLabel.Text += "</tr>";
    }else{
        tableLabel.Text += "<td>";
    }

    aantalItemsGeweest++;
}


Die functie isEvenGetal() ook elke keer. Een van de vele nutteloze functies die op tíg pagina's precies hetzelfde aangemaakt word.
pi_59619947
Die broncodes damn, wat een bagger!! Volgens mij kan je het nog beter opnieuw bouwen dan het bestaande aan te passen.
quote:
Op maandag 23 juni 2008 09:53 schreef mstx het volgende:
Terechte klacht. Altijd leuk als je baas een ander bedrijf heeft overgenomen en je hun bagger moet opruimen.
Dit soort bagger bijvoorbeeld:
[ afbeelding ]
WTF? Door welke randkneus is dat gemaakt joh? MyFirstPHP scriptje. Of werd die vent per regel betaald?
De laatste tijd zit ons dochtertje in de nee-fase. Ze wil niet meer hebben dat ik haar naar bed breng. Twintig jaar terug was dat nooit een probleem.
pi_59619984
quote:
Op maandag 23 juni 2008 09:59 schreef JohnDDD het volgende:

[..]

Er zit zoveel regelmaat in dit script, schrijf gewoon even een scriptje om het te converten naar een goeie versie.
Enige wat je moet veranderen is het stofnummer in de query, en daar die get var in zetten. De rest kun je gewoon wegknikkeren.
De laatste tijd zit ons dochtertje in de nee-fase. Ze wil niet meer hebben dat ik haar naar bed breng. Twintig jaar terug was dat nooit een probleem.
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')