[alg] Slechtste programmeervoorbeelden deel 4 Vorige deel Overzicht Laatste deel

Dit topic is onderdeel van een reeks. Ga naar het meest recente topic in deze reeks.

Pagina: 1 ... 59 ... 103 Laatste
Acties:
  • 993.641 views

Acties:
  • 0 Henk 'm!

  • Hillie
  • Registratie: Januari 2000
  • Laatst online: 01:19

Hillie

Poepen = ultieme ontspanning

code:
1
var identifier : uint(bits:5) = %{upper.read_data[7:0],lower.read_data};


En ik me maar afvragen waarom het niet werkte. Tja, als je 8 & 32 bits aan elkaar plakt (40 bits, oftewel 5 bytes). :+

Liefhebber van schieten en schijten. Ouwehoer en niet-evangelisch atheist.

Daniel36: Dat zeg ik(?) Nee, dat zeg ik niet, je hebt gelijk.


Acties:
  • 0 Henk 'm!

  • Michali
  • Registratie: Juli 2002
  • Laatst online: 29-05 22:54
@ die safely_divideByZero(), daar had gister een letterlijke facepalm bij, gevolgd door een letterlijke LOL :P Echt tenenkrommend slecht idd.

Noushka's Magnificent Dream | Unity


Acties:
  • 0 Henk 'm!

  • YopY
  • Registratie: September 2003
  • Laatst online: 16:55
Michali schreef op vrijdag 10 juni 2011 @ 13:12:
@ die safely_divideByZero(), daar had gister een letterlijke facepalm bij, gevolgd door een letterlijke LOL :P Echt tenenkrommend slecht idd.
Ja maar... Jij begrijpt hem gewoon niet! Heb je het niet gelezen? Hij is geschreven door een Php God. Daar moet je respect voor hebben!

Acties:
  • 0 Henk 'm!

  • PiepPiep
  • Registratie: Maart 2002
  • Laatst online: 18-01-2023
Gods wegen zijn ondoorgrondelijk enzo... toch ben ik blij dat ik niet met hem samen hoef te programmeren :P

486DX2-50 16MB ECC RAM 4x 500MB Drive array 1.44MB FDD MS-Dos 6.22


Acties:
  • 0 Henk 'm!

  • Rutix
  • Registratie: Augustus 2009
  • Laatst online: 05-09-2024
YopY schreef op vrijdag 10 juni 2011 @ 13:26:
[...]


Ja maar... Jij begrijpt hem gewoon niet! Heb je het niet gelezen? Hij is geschreven door een Php God. Daar moet je respect voor hebben!
Ik heb zowiezo geen respect voor php dus al helemaal niet voor php god! :D

Nothing to see here!


Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Pff... is er geen plugin voor courante IDE's waarmee Ctrl+C wordt uitgeschakeld?

:(

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


Acties:
  • 0 Henk 'm!

  • Otherside1982
  • Registratie: Februari 2009
  • Laatst online: 16:20
CodeCaster schreef op vrijdag 10 juni 2011 @ 15:19:
Pff... is er geen plugin voor courante IDE's waarmee Ctrl+C wordt uitgeschakeld?

:(
Misschien beter is om een tooltje te maken dat een header toevoegt aan tekst op het clipboard. Zodat je bij het pasten iets krijgt als:
Delphi:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
procedure testje;
begin
  //begin van het gekopieerde blok:
  if a > b then
  begin
    DoIets();
  end;
  //Einde van het gekopieerde blok

  //Hieronder werd de code gepaste:
  !! BELANGRIJK:  Aanpassen waar nodig !!
  if a > b then
  begin
    DoIets();
  end;
end;


Als je niets aanpast krijg je mooi een dikke compiler error :)

Acties:
  • 0 Henk 'm!

  • YopY
  • Registratie: September 2003
  • Laatst online: 16:55
Rutix schreef op vrijdag 10 juni 2011 @ 14:11:
[...]

Ik heb zowiezo geen respect voor php dus al helemaal niet voor php god! :D
* God, hoofdletter G. En niet dissen anders moet je met zijn code werken, zonder dat je het weg mag gooien :p.

Acties:
  • 0 Henk 'm!

  • Haan
  • Registratie: Februari 2004
  • Laatst online: 19:43

Haan

dotnetter

Bezig met een bugmelding in een stuk maatwerk dat we door een externe programmeur hebben laten bouwen. Man, ik heb zelden zulke ranzige code gezien :r Eigenlijk álles dat je fout kan doen, heeft deze persoon voor elkaar gekregen om fout te doen ;(

Het is een ASP.NET applicatie die uit 1 pagina bestaat, maar waar wel heel veel complexe logica achter hangt. Alle code zit in 2 classes, default.aspx.cs (~1500 regels met voornamelijk business logica :X ) en de rest in een andere class (ruim 2000 regels ellende).

Ik kom overal identieke stukken code op minstens vijf plekken tegen, alle methods zijn public, er wordt de ene gecheckt of value types null zijn, de andere keer wordt er zomaar gecast zonder te checken of dat kan, variabelen heten d, L, iBedrag enz., overal onnodige ToString() aanroepen en zo kan ik nog wel even doorgaan.

* Haan is een beetje van slag

Kater? Eerst water, de rest komt later


Acties:
  • 0 Henk 'm!

  • Amras
  • Registratie: Januari 2003
  • Laatst online: 01-10 12:59
Het wordt pas echt leuk als je gaat bedenken wat het gekost heeft om die crap te produceren. >:)

Acties:
  • 0 Henk 'm!

  • YopY
  • Registratie: September 2003
  • Laatst online: 16:55
En daarom moet je programmeurs nooit alleen laten werken, :+.

Acties:
  • 0 Henk 'm!

  • Niemand_Anders
  • Registratie: Juli 2006
  • Laatst online: 09-07-2024

Niemand_Anders

Dat was ik niet..

Als wij werk uitbesteden doen wij dit altijd fixed price met een complete waslijst aan voorwaarden waaronder een uitgebreid document met coding standaarden voor verschillende programmeer- en opmaak talen.

Als het echter terug komt zoals jij hebt beschreven dan roepen wij dat het opnieuw mag of dat wij niet betalen omdat niet aan de voorwaarden van de overeenkomst is voldaan. Uiteraard blijft de deadline staan.

Als je heel veel complexe logica in slechts twee classes plaatst, lijkt me ook dat hetgeen wat is opgeleverd niet is voorzien van unit tests. Dus kun je dan aantonen wat is opgeleverd ook daadwerkelijk werkt?

If it isn't broken, fix it until it is..


Acties:
  • 0 Henk 'm!

  • Haan
  • Registratie: Februari 2004
  • Laatst online: 19:43

Haan

dotnetter

Niemand_Anders schreef op donderdag 16 juni 2011 @ 12:53:
Als wij werk uitbesteden doen wij dit altijd fixed price met een complete waslijst aan voorwaarden waaronder een uitgebreid document met coding standaarden voor verschillende programmeer- en opmaak talen.

Als het echter terug komt zoals jij hebt beschreven dan roepen wij dat het opnieuw mag of dat wij niet betalen omdat niet aan de voorwaarden van de overeenkomst is voldaan. Uiteraard blijft de deadline staan.

Als je heel veel complexe logica in slechts twee classes plaatst, lijkt me ook dat hetgeen wat is opgeleverd niet is voorzien van unit tests. Dus kun je dan aantonen wat is opgeleverd ook daadwerkelijk werkt?
Dit is het resultaat van een 'spoedklusje' waarbij deze persoon aan het werk is gezet zonder eerst met mij te overleggen (ik hou normaal gesproken toezicht op externe programmeurs), daar was geen tijd voor, haast, bla bla, je kent het wel. Daarom heb ik mij er verder ook niet meer mee bemoeit, want ik kan dan niet garanderen dat er op de juiste manier, of in ieder geval volgens onze standaarden, wordt gewerkt. Tot nu toe heb ik al het onderhoud ook door de maker zelf laten doen, alleen is deze nu met vakantie waardoor het bij mij is terecht gekomen.
Ik blijf me intussen nog steeds verbazen over de dingen die ik tegenkomen in de code :P

Kater? Eerst water, de rest komt later


Acties:
  • 0 Henk 'm!

  • Gamebuster
  • Registratie: Juli 2007
  • Laatst online: 27-09 22:01
Afbeeldingslocatie: http://i.imgur.com/Yr9Ok.png

Adminpaneel voor een webshop die ik in 8 uur gemaakt heb afgelopen nacht voor een maat die zijn klant was vergeten ivm zieke familie.

240 EU voor moi

Wat zal de klant toch blij zijn :P

Let op: Mijn post bevat meningen, aannames of onwaarheden


Acties:
  • 0 Henk 'm!

  • Ruben314
  • Registratie: Juli 2001
  • Laatst online: 22-09 15:09
Vond laatst een matlab script dat begon met de volgende regels:

Matlab:
1
2
3
4
5
% toch andersom
true = 0;
false = 1;

.... rest van het script

Acties:
  • 0 Henk 'm!

  • YopY
  • Registratie: September 2003
  • Laatst online: 16:55
Gamebuster schreef op donderdag 16 juni 2011 @ 15:36:
[afbeelding]

Adminpaneel voor een webshop die ik in 8 uur gemaakt heb afgelopen nacht voor een maat die zijn klant was vergeten ivm zieke familie.

240 EU voor moi

Wat zal de klant toch blij zijn :P
Voor datzelfde geld kon je een off-the-shelf webshop geinstalleerd hebben, in minder tijd dus met een hogere winstmarge. En natuurlijk stukken veiliger, als je alles zelf gebouwd hebt zal het circa 10 minuten duren voordat iemand het eerste beveiligingslek gevonden heeft.

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01-10 23:36

.oisyn

Moderator Devschuur®

Demotivational Speaker

Ruben314 schreef op donderdag 16 juni 2011 @ 16:25:
Vond laatst een matlab script dat begon met de volgende regels:

Matlab:
1
2
3
4
5
% toch andersom
true = 0;
false = 1;

.... rest van het script
Vroegâh, toen ik Nibbles.bas aan het lezen was en ik nog geen weet had van de werking van de NOT operator, zag ik:
code:
1
2
False = 0
True = Not False

WTF, kan dat?!

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • Gamebuster
  • Registratie: Juli 2007
  • Laatst online: 27-09 22:01
YopY schreef op donderdag 16 juni 2011 @ 16:40:
[...]
En natuurlijk stukken veiliger, als je alles zelf gebouwd hebt zal het circa 10 minuten duren voordat iemand het eerste beveiligingslek gevonden heeft.
http://93.157.0.136/~mareck/

Succes. :P

Ik heb beveiliging over 't algemeen wel prima in orde met mijn nieuwere scripts. Ondanks dat ik het in 8 uur in elkaar gesmeten heb, heb ik niet bespaard op beveiliging of performance. Het adminpaneel ziet er gewoon niet uit en tijdens het scripten keek ik niet weg voor het mengen van queries en HTML in 1 functie.

[ Voor 37% gewijzigd door Gamebuster op 16-06-2011 18:19 ]

Let op: Mijn post bevat meningen, aannames of onwaarheden


Acties:
  • 0 Henk 'm!

  • Mercatres
  • Registratie: September 2009
  • Laatst online: 23:03
Ik zou toch nog even je send-formuliertje laten controleren of alles wel netjes ingevuld is :p
(En je kan negatieve orders plaatsen, met als gevolg dat je bestaande orders van 'tzelfde artikel verandert.

Acties:
  • 0 Henk 'm!

  • Gamebuster
  • Registratie: Juli 2007
  • Laatst online: 27-09 22:01
Mercatres schreef op donderdag 16 juni 2011 @ 18:24:
Ik zou toch nog even je send-formuliertje laten controleren of alles wel netjes ingevuld is :p
(En je kan negatieve orders plaatsen, met als gevolg dat je bestaande orders van 'tzelfde artikel verandert.
Dat mag hij allemaal zelf regelen, ik heb het werkend gemaakt en dat is precies wat mijn opdracht was :P

Negatieve toevoeging van bestelling zie ik niet echt als een probleem. Waarom zou je dat voorkomen? Zodra het aantal onder 0 komt, wordt-ie uit de lijst gehaald. Het is niet dat je een negatief aantal kan bestellen.

Als je er 100 hebt en je voegt er -20 toe, houd je er 80 over. Ongewoon, maar ik zie het niet als een probleem.

[ Voor 28% gewijzigd door Gamebuster op 16-06-2011 18:29 ]

Let op: Mijn post bevat meningen, aannames of onwaarheden


Acties:
  • 0 Henk 'm!

  • Mercatres
  • Registratie: September 2009
  • Laatst online: 23:03
Ik stelde 't maar vast :)

Acties:
  • 0 Henk 'm!

  • TweakBoy
  • Registratie: Augustus 2001
  • Laatst online: 14-09 22:16

TweakBoy

---

Afbeeldingslocatie: http://a.yfrog.com/img615/9695/f1jy.png

dit klopt ook niet ;) ik hoop dat je na de checkout nog even goed je orders checked...

daarnaast, over je designkeuze, verwacht je echt dat je een bigint (signed) nodig hebt? ik zou eerder naar een smallint gaan

[ Voor 30% gewijzigd door TweakBoy op 16-06-2011 23:50 . Reden: iets toegevoegd over bigint... ]

---


Acties:
  • 0 Henk 'm!

  • Gamebuster
  • Registratie: Juli 2007
  • Laatst online: 27-09 22:01
winkelwagentje staat niet in DB, wordt gewoon in session opgeslagen.

[ Voor 52% gewijzigd door Gamebuster op 17-06-2011 01:08 ]

Let op: Mijn post bevat meningen, aannames of onwaarheden


Acties:
  • 0 Henk 'm!

  • YopY
  • Registratie: September 2003
  • Laatst online: 16:55
https://github.com/MrMEEE.../a047be85247755cdbe0acce6

:+

http://memegenerator.net/instance/8258138

Meest becommentarieerde Github commit ooit, _O-

[ Voor 40% gewijzigd door YopY op 17-06-2011 09:56 ]


Acties:
  • 0 Henk 'm!

  • mindcrash
  • Registratie: April 2002
  • Laatst online: 22-11-2019

mindcrash

Rebellious Monkey

'assumption is the mother of all fuckups' comes to mind...

comments zijn inderdaad vrij hilarisch though ;)

[ Voor 9% gewijzigd door mindcrash op 17-06-2011 11:15 ]

"The people who are crazy enough to think they could change the world, are the ones who do." -- Steve Jobs (1955-2011) , Aaron Swartz (1986-2013)


Acties:
  • 0 Henk 'm!

  • Haan
  • Registratie: Februari 2004
  • Laatst online: 19:43

Haan

dotnetter

Even kijken of ik het goed begrijp, iemand heeft een script o.i.d. op github geplaatst, waarin hij per ongeluk de regel rm -rf /usr had staan, waardoor de hele user directory wordt gewist?

Kater? Eerst water, de rest komt later


Acties:
  • 0 Henk 'm!

  • BertS
  • Registratie: September 2004
  • Laatst online: 14-04 17:14
de spatie achter /usr hoorde er volgens mij niet. that's all.

Acties:
  • 0 Henk 'm!

  • kenneth
  • Registratie: September 2001
  • Niet online

kenneth

achter de duinen

Nou, eerder:
/usr /lib/nvidia-current/xorg/xorg


terwijl het had moeten zijn:
/usr/lib/nvidia-current/xorg/xorg

Wat BertS zegt dus.

Hilarische reacties!

[ Voor 9% gewijzigd door kenneth op 17-06-2011 11:18 ]

Look, runners deal in discomfort. After you get past a certain point, that’s all there really is. There is no finesse here.


Acties:
  • 0 Henk 'm!

  • Jaap-Jan
  • Registratie: Februari 2001
  • Laatst online: 01:06
Nu zou dat normaal niet zo'n groot probleem zijn (gewone gebruikers hebben geen rechten om /usr te verwijderen) maar installatiescripts worden uitgevoerd als root en dan is het een potentiële ramp, de meeste programma's voor gebruikers zijn daar te vinden.

| Last.fm | "Mr Bent liked counting. You could trust numbers, except perhaps for pi, but he was working on that in his spare time and it was bound to give in sooner or later." -Terry Pratchett


Acties:
  • 0 Henk 'm!

  • .Gertjan.
  • Registratie: September 2006
  • Laatst online: 17-02 21:20

.Gertjan.

Owl!

De plaatjes die sommige posten zijn ook wel erg geinig. Heb er een aantal gedownload, komen hier op kantoor vast wel van pas :P

The #1 programmer excuse for legitimately slacking off: "My code's compiling"
Firesphere: Sommige mensen verdienen gewoon een High Five. In the Face. With a chair.


Acties:
  • 0 Henk 'm!

  • kvdd
  • Registratie: Oktober 2004
  • Laatst online: 30-01 09:37
Momenteel een website om aan het zetten van ASP naar PHP (Wordpress module).

Ik weet dat ik niet mag lachen om andermans code (we maken allemaal fouten), maar zelf met mijn weinige ASP kennis vond ik dit wel een leuke:

ASP.NET Visual Basic:
1
2
3
4
<td class="Text">
      <%If 
               GetContentDescription(SITE_LANGUAGEID,ContentId) = "" And 1 = 0 Then 
                      Response.Write "(..knip tekst..)"


>:)

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01-10 23:36

.oisyn

Moderator Devschuur®

Demotivational Speaker

Klinkt als een met opzet gedisablede if.

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • Aloys
  • Registratie: Juni 2005
  • Niet online
Comments 'em dan gewoon weg, dit is natuurlijk gewoon lelijk.

Acties:
  • 0 Henk 'm!

  • biomass
  • Registratie: Augustus 2004
  • Laatst online: 18:51
De onderstaande code kostte mij een paar tientjes:

C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
namespace HashFiles
{
    class Program
    {
        
        static void Main(string[] args)
        {            
            string h = null;
            
            List<DriveInfo> drives = new List<DriveInfo>();
            char[] letter = new char[1];
            for (int i = 0; i < 26; i++)
            {
                try
                {
                    letter[0] = (char)(65 + i);
                    DriveInfo di = new DriveInfo(new string(letter ));
                    
                    if (di.DriveType == DriveType.Fixed)
                        drives.Add(di);
                }
                catch
                {
                    ;
                }
            }
            foreach (DriveInfo d in drives)
            {
                new Thread(new ParameterizedThreadStart(WalkDrive)).Start((object)d);
            }


       }
        static bool GetHash(FileInfo file, out byte[] hash)
        {
            byte[] md5 = null;

            try
            {
                Stream s = file.OpenRead();
                MD5CryptoServiceProvider m = new MD5CryptoServiceProvider();
                md5 = m.ComputeHash(s);
                s.Close();
            }
            catch
            {
                hash = null;
                return false;
            }
            hash = md5;
            return true;
        }

...met drie volumes op een fysieke disk werd het wel wat veel voor de oudste schijf in m'n RAID1 ;)

Acties:
  • 0 Henk 'm!

  • FragFrog
  • Registratie: September 2001
  • Laatst online: 00:48
_/-\o_ hilarisch!

Zo heb ik ooit toen ik nog kleine FragFrog was 3000 comments overschreven met "Dit is een test" door een WHERE clause te vergeten :X Testomgeving, wat is dat? O-)

[ Site ] [ twitch ] [ jijbuis ]


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01-10 23:36

.oisyn

Moderator Devschuur®

Demotivational Speaker

Dat is met de t.net database ook weleens gebeurd ;)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • Rickets
  • Registratie: Augustus 2001
  • Niet online

Rickets

Finger and a shift

.oisyn schreef op vrijdag 17 juni 16:43
Dat is met de t.net database ook weleens gebeurd ;)
<chem|work> OEPS
* chem|work fucked up
<chem|work> owh kut kut kut
<chem|work> mysql> update F_Topics set Messagecount=312;
<chem|work> anders vergeet ik de where clause ff :X
(…)

If some cunt can fuck something up, that cunt will pick the worst possible time to fucking fuck it up, because that cunt’s a cunt.


Acties:
  • 0 Henk 'm!

  • Styxxy
  • Registratie: Augustus 2009
  • Laatst online: 16:14
Mijn code van mijn laatste project voor mijn studie in Finland is ook geen pareltje. Het model is wel goed, enkel de GUI uitwerking is hier en daar niet super. Sommige Forms handelen iets te veel zaken, ik had beter nog wat meer zaken gescheiden in Components (had ik al deels gedaan, maar door tijdsdruk niet verder opgedeeld). Ach ja, het werkt en ik hoop er vanaf te zijn.

Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Dat is dan gelukkig nog een veld dat je achteraf weer kunt corrigeren. Het zou een stuk lulliger zijn als je de Title o.i.d. voor alle topics zou zetten :+

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • 0 Henk 'm!

Verwijderd

Dat is wel zuur idd :)

En een backup terugzetten is ook niet echt fijn :P

Acties:
  • 0 Henk 'm!

  • Michali
  • Registratie: Juli 2002
  • Laatst online: 29-05 22:54
Haha heerlijk van dat Bumblebee, kreeg net de slappe lach niet te filmen :P

Noushka's Magnificent Dream | Unity


Acties:
  • 0 Henk 'm!

Verwijderd

Het had nog erger gekund!

code:
1
rm -rf / usr/lib/nvidia-current/xorg/xorg


Zou ook een leuke typo zijn.

Acties:
  • 0 Henk 'm!

  • Freeaqingme
  • Registratie: April 2006
  • Laatst online: 15:13
Verwijderd schreef op vrijdag 17 juni 2011 @ 18:09:
Het had nog erger gekund!

code:
1
rm -rf / usr/lib/nvidia-current/xorg/xorg


Zou ook een leuke typo zijn.
Nee, dat valt wel mee tegenwoordig...
dolf@dolf-laptop:~$ sudo rm -rf /
rm: it is dangerous to operate recursively on `/'
rm: use --no-preserve-root to override this failsafe
dolf@dolf-laptop:~$

No trees were harmed in creating this message. However, a large number of electrons were terribly inconvenienced.


Acties:
  • 0 Henk 'm!

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 23:55
FragFrog schreef op vrijdag 17 juni 2011 @ 16:36:
Zo heb ik ooit toen ik nog kleine FragFrog was 3000 comments overschreven met "Dit is een test" door een WHERE clause te vergeten :X
De MySQL client heeft daar de --i-am-a-dummy optie voor. ;)

Acties:
  • 0 Henk 'm!

  • Caelorum
  • Registratie: April 2005
  • Laatst online: 00:20
Freeaqingme schreef op vrijdag 17 juni 2011 @ 18:11:
[...]

Nee, dat valt wel mee tegenwoordig...
[...]
ook als root?

Acties:
  • 0 Henk 'm!

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 23:55
Duh, juist als root.

Acties:
  • 0 Henk 'm!

  • MBV
  • Registratie: Februari 2002
  • Laatst online: 01-10 21:27
Op debian valt dat wel mee ja, maar Mac OS/X doet het nog vrolijk (3x checken of -i echt eerst iets gaat vragen... :+)

Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Logitech Harmony Software

:') Update or die()! Zet dan ook niet "Het is raadzaam", maar gewoon "Het is verplicht" neer.

[ Voor 23% gewijzigd door CodeCaster op 17-06-2011 20:26 ]

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


Acties:
  • 0 Henk 'm!

  • Caelorum
  • Registratie: April 2005
  • Laatst online: 00:20
|:( las over 'sudo' heen..

Acties:
  • 0 Henk 'm!

  • whoami
  • Registratie: December 2000
  • Laatst online: 00:06
Woy schreef op vrijdag 17 juni 2011 @ 17:11:
[...]

Dat is dan gelukkig nog een veld dat je achteraf weer kunt corrigeren. Het zou een stuk lulliger zijn als je de Title o.i.d. voor alle topics zou zetten :+
Daarom zijn transactions natuurlijk goed hé .... Maarja, in die tijd kende MySQL dat nog niet.

https://fgheysels.github.io/


Acties:
  • 0 Henk 'm!

Verwijderd

Een paar tips om in scripts e.d. paden veiliger te behandelen:

Gebruikt quotes! De bumblebee spatie bug had hiermee geen schadelijke gevolgen gehad.

Uitkijken met variables. Je wordt niet blij als je een rm -rf "/folder/$blaat" doet terwijl $blaat ongedefinieerd is. Meestal doe ik nog ff een if-statement ervoor o.i.d.

En gebruik rmdir voor de gevallen waarin je verwacht dat een map leeg is.

[ Voor 11% gewijzigd door Verwijderd op 30-07-2011 17:05 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Nou bedankt hè? Misschien kun je meteen alle 60.000 andere tips noemen, dan hoeft het topic niet meer verder te groeien.

Acties:
  • 0 Henk 'm!

  • .Gertjan.
  • Registratie: September 2006
  • Laatst online: 17-02 21:20

.Gertjan.

Owl!

whoami schreef op vrijdag 17 juni 2011 @ 21:05:
[...]

Daarom zijn transactions natuurlijk goed hé .... Maarja, in die tijd kende MySQL dat nog niet.
Hehe, transacties. Die werken ook alleen als je netjes een rollback doet na je test of nooit je commit uitvoert. Het is mij ooit gelukt om wel aan transacties te denken, ze ook op te nemen, maar even te vergeten dat ik dus niet had moeten committen ;w

Of iets weggooien en overtuigd zijn dat je op de testomgeving zit, maar per ongeluk ook nog live open hebt staan en het dus in het verkeerde venster gooit :X Vooral leuk als je testruns op klantdata aan het doen bent, heeft een klant ineens 100 extra bestellingen met bijbehorende facturen of schop je per ongeluk een klant in de groep dubieuze debiteuren :X :*)

Sinds ik, maar ook andere collega's, dat geregeld voor elkaar heb kregen hebben we besloten iedere omgeving maar een unieke kleur te geven :P

The #1 programmer excuse for legitimately slacking off: "My code's compiling"
Firesphere: Sommige mensen verdienen gewoon een High Five. In the Face. With a chair.


Acties:
  • 0 Henk 'm!

  • Freeaqingme
  • Registratie: April 2006
  • Laatst online: 15:13
Of iets weggooien en overtuigd zijn dat je op de testomgeving zit, maar per ongeluk ook nog live open hebt staan en het dus in het verkeerde venster gooi
En /daarom/ mogen developers dus nooit toegang hebben tot productiesystemen...

No trees were harmed in creating this message. However, a large number of electrons were terribly inconvenienced.


Acties:
  • 0 Henk 'm!

  • Styxxy
  • Registratie: Augustus 2009
  • Laatst online: 16:14
Ach, verkeerde projecten weggooien ben ik een held in, zeker tijdens examen. Ik heb een hekel aan van die tijdelijke projects (om iets te testen), ook tijdens het examen. Dit jaar heb ik 3 keer een deel van mijn examen gedelete.

Als het nu in Visual Studio was, die plaatst het verwijderde mooi in de prullenbak. Echter, het examen was Java en daarmee moesten we dus in Eclipse werken. Die verwijdert bestanden dus permanent en verplaatst bestanden niet naar de prullenbak. Leuk hoor -.-. (Bestanden verwijdert hij sowieso permanent, projects verwijdert hij óf enkel uit workspace (en staan dus nog gewoon in je workspace folder) óf permanent.) Dat vind ik zo ongeveer de meest irritante "feature" van Eclipse.

Acties:
  • 0 Henk 'm!

  • MBV
  • Registratie: Februari 2002
  • Laatst online: 01-10 21:27
@Freeaqingme: daarom moeten kleine bedrijven met 3 man IT dus expertise inkopen in zowel systeembeheer als in development. Meestal komt het erop neer dat iedereen alles moet kunnen, want er is een keer een server gecrashed toen de beheerder er niet was ;)

Acties:
  • 0 Henk 'm!

  • Freeaqingme
  • Registratie: April 2006
  • Laatst online: 15:13
Styxxy schreef op vrijdag 17 juni 2011 @ 23:40:
Echter, het examen was Java en daarmee moesten we dus in Eclipse werken. Die verwijdert bestanden dus permanent en verplaatst bestanden niet naar de prullenbak. Leuk hoor -.-. (Bestanden verwijdert hij sowieso permanent, projects verwijdert hij óf enkel uit workspace (en staan dus nog gewoon in je workspace folder) óf permanent.) Dat vind ik zo ongeveer de meest irritante "feature" van Eclipse.
Als jij een bestand verwijdert in Eclipse vraagt 'ie om een bevestiging. De IDE zou je niet serieus nemen als 'ie na het vragen van een bevestiging nog steeds de bestanden niet daadwerkelijk zou verwijderen. Sterker nog, ik wordt er helemaal gek van dat mijn hdd altijd volloopt door bestanden die 'verwijderd' zijn (maar dat dus toch niet zijn, want prullenbak...).

Daarnaast, als je een project verwijdert in Eclipse krijg je gewoon de vraag of je ook de contents wil verwijderen van je HDD. Al met al moet je een volgende keer maar gewoon wat beter opletten op wat je nou wel (of niet) doet? ;)

No trees were harmed in creating this message. However, a large number of electrons were terribly inconvenienced.


Acties:
  • 0 Henk 'm!

  • Styxxy
  • Registratie: Augustus 2009
  • Laatst online: 16:14
Freeaqingme schreef op vrijdag 17 juni 2011 @ 23:57:
Als jij een bestand verwijdert in Eclipse vraagt 'ie om een bevestiging. De IDE zou je niet serieus nemen als 'ie na het vragen van een bevestiging nog steeds de bestanden niet daadwerkelijk zou verwijderen.
Dat klopt, maar die "wil je zeker verwijderen" meldingen doe ik altijd insta weg met enter. Macht der gewoonte omdat mocht ik het verkeerde bestand verwijderen, dat die dan nog mooi in mijn prullenbak staat. En project verwijderen, ja dat vinkje moet je aanzetten, maar dat doe ik altijd. Ik moet geen onnodige maps in mijn workspace-dir hebben (het leuke is als je een project met die naam probeert te hermaken en die map staat er nog.....).
Freeaqingme schreef op vrijdag 17 juni 2011 @ 23:57:
Daarnaast, als je een project verwijdert in Eclipse krijg je gewoon de vraag of je ook de contents wil verwijderen van je HDD. Al met al moet je een volgende keer maar gewoon wat beter opletten op wat je nou wel (of niet) doet? ;)
"Je moet maar opletten" kan je altijd zeggen. Maar ik ga niet elke keer opnieuw seconden verliezen door altijd mooi alles na te kijken. Ik heb wel wat anders te doen in mijn tijd. En af en toe dat je iets verkeerds verwijderd... daar heb je normaal een prullenbak voor dus. Ik blijf het een slechte feature van Eclipse vinden (wat is er nou zo moeilijk om op Windows die naar prullenbak te laten verplaatsen).

Permanent verwijderen zou een applicatie gewoon niet mogen doen. Zeg tegen het OS "verwijder dit", wat inhoudt naar prullenbak verplaatsen.
Freeaqingme schreef op vrijdag 17 juni 2011 @ 23:57:
Sterker nog, ik wordt er helemaal gek van dat mijn hdd altijd volloopt door bestanden die 'verwijderd' zijn (maar dat dus toch niet zijn, want prullenbak...).
Je kan makkelijk limiet op prullenbak zetten of die zelfs geheel verwijderen. Daarnaast staat er standaard een icoontje op je bureaublad dus is het niet moeilijk om regelmatig die eens na te kijken en geheel te verwijderen.

Acties:
  • 0 Henk 'm!

  • ctrlaltdelbe
  • Registratie: Juli 2005
  • Laatst online: 01-10 22:24
Ruben314 schreef op donderdag 16 juni 2011 @ 16:25:
Vond laatst een matlab script dat begon met de volgende regels:

Matlab:
1
2
3
4
5
% toch andersom
true = 0;
false = 1;

.... rest van het script
Ik ben niet zeker, maar ik dacht dat het in Maple wel 0/true, 1/false was...kan me vergissen, though.
Verwijderd schreef op vrijdag 17 juni 2011 @ 21:33:
Nou bedankt hè? Misschien kun je meteen alle 60.000 andere tips noemen, dan hoeft het topic niet meer verder te groeien.
Tijd van de maand? :+

[ Voor 25% gewijzigd door ctrlaltdelbe op 18-06-2011 11:23 ]


Acties:
  • 0 Henk 'm!

  • Jegorex
  • Registratie: April 2004
  • Laatst online: 03-09 23:24
Als je in Eclipse direct na het verwijderen van een bestand doorhebt dat je het verkeerde bestand hebt weggegooid dan kun je hem altijd terug halen met Ctrl+Z.

Acties:
  • 0 Henk 'm!

  • .Gertjan.
  • Registratie: September 2006
  • Laatst online: 17-02 21:20

.Gertjan.

Owl!

Freeaqingme schreef op vrijdag 17 juni 2011 @ 23:20:
[...]


En /daarom/ mogen developers dus nooit toegang hebben tot productiesystemen...
Helaas werkt dat niet altijd op die manier. In kleine omgevingen moet je als ontwikkelaar/consultant toch wel bij live kunnen. Je moet daar quickfixes kunnen doen, maar ook problemen die gebruikers zeggen te hebben kunnen checken, eventueel met de gebruiker zelf erbij (als bijvoorbeeld iets niet lukt). Als ontwikkelaar (in Axapta) heb je net iets meer tools tot je beschikking en kun je dus data analyseren of door je code stappen. Ook is data op live wat representatiever dan de test set (soms is dat maar een subset, niet iedereen zit op een test omgeving te wachten met een db van 300 ~ 400 GB :P).

De situatie op test/ontwikkeling is namelijk nooit exact gelijk aan de live omgeving. Dus helaas kom je daar niet onderuit. En dus gaat het helaas soms mis.

The #1 programmer excuse for legitimately slacking off: "My code's compiling"
Firesphere: Sommige mensen verdienen gewoon een High Five. In the Face. With a chair.


Acties:
  • 0 Henk 'm!

  • Herko_ter_Horst
  • Registratie: November 2002
  • Niet online
Styxxy schreef op vrijdag 17 juni 2011 @ 23:40:
Ach, verkeerde projecten weggooien ben ik een held in, zeker tijdens examen. Ik heb een hekel aan van die tijdelijke projects (om iets te testen), ook tijdens het examen. Dit jaar heb ik 3 keer een deel van mijn examen gedelete.

Als het nu in Visual Studio was, die plaatst het verwijderde mooi in de prullenbak. Echter, het examen was Java en daarmee moesten we dus in Eclipse werken. Die verwijdert bestanden dus permanent en verplaatst bestanden niet naar de prullenbak. Leuk hoor -.-. (Bestanden verwijdert hij sowieso permanent, projects verwijdert hij óf enkel uit workspace (en staan dus nog gewoon in je workspace folder) óf permanent.) Dat vind ik zo ongeveer de meest irritante "feature" van Eclipse.
Bestanden kan je altijd terughalen met "Restore from local history". Ook vergissingen kun je herstellen met "Replace with..." -> "Local history...". Ingebouwd lokaal (beperkt) versiebeheer dus: beter dan de prullenbak.

Een project dat permanent verwijderd is, is inderdaad weg. Maar dan heb je wel duidelijk bevestigd/zelf aangeklikt dat je dat echt wilt. Dus ja, wat wil je dan? Dat Eclipse zegt: ja, die gebruiker zegt nou wel dat hij het project permanent wil verwijderen, maar ik doe het lekker niet?

[ Voor 5% gewijzigd door Herko_ter_Horst op 18-06-2011 14:10 ]

"Any sufficiently advanced technology is indistinguishable from magic."


Acties:
  • 0 Henk 'm!

Verwijderd

De Prullenbak is sowieso een beetje een onzinnig concept, dus waarom zou je erop vertrouwen? Als je verwijderen ongedaan wil kunnen maken, neem dan (distributed) revision control software.

Acties:
  • 0 Henk 'm!

  • hostname
  • Registratie: April 2009
  • Laatst online: 23:29
Waren versiebeheer systemen niet uitgevonden om o.a. het perongeluk verwijderen van code te voorkomen?

Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Verwijderd schreef op zaterdag 18 juni 2011 @ 14:12:
De Prullenbak is sowieso een beetje een onzinnig concept, dus waarom zou je erop vertrouwen? Als je verwijderen ongedaan wil kunnen maken, neem dan (distributed) revision control software.
Precies, xampp for Windows en SVN (waar Eclipse goede integratie mee heeft dankzij subclipse) heb je in een vloek en een zucht op je laptop geïnstalleerd. En die repository laat je bij thuiskomst automatisch backuppen.

[ Voor 5% gewijzigd door CodeCaster op 18-06-2011 14:16 ]

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


Acties:
  • 0 Henk 'm!

  • FragFrog
  • Registratie: September 2001
  • Laatst online: 00:48
hostname schreef op zaterdag 18 juni 2011 @ 14:12:
Waren versiebeheer systemen niet uitgevonden om o.a. het perongeluk verwijderen van code te voorkomen?
Helpt niet als je code nog niet in je repository staat natuurlijk. Heb wel collega's gehad die gemiddeld eens in de twee, drie dagen comitten, dan ben je al snel aardig wat werk kwijt als je een bestand verwijdert. Dat is trouwens ookal een aardig voorbeeld van slechte programmeervoorbeelden, maar dat terzijde

Al kan ik me niet herinneren ooit een stuk code permanent weggegooid te hebben, verwijder sowieso niet zo gek snel iets, of het moet testcode zijn en dan maakt het weinig uit. Een hele enkele keer dat er bij refactoren nog wel eens wat weg gaat, maar dan staat de code toch al in versiebeheer.

* FragFrog ziet het probleem dan ook niet zo

Maargoed ik gebruik Eclipse ook alleen voor JAVA en werk doorgaans meer met PHP (in UltraEdit), that might be it :)

[ Voor 15% gewijzigd door FragFrog op 18-06-2011 14:37 ]

[ Site ] [ twitch ] [ jijbuis ]


Acties:
  • 0 Henk 'm!

  • YopY
  • Registratie: September 2003
  • Laatst online: 16:55
Ach, je moet maar zo denken, de menschen moeten maar keihard drie dagen werk kwijtraken, dan voelen ze het wel.

Acties:
  • 0 Henk 'm!

  • Styxxy
  • Registratie: Augustus 2009
  • Laatst online: 16:14
Natuurlijk heb ik de tijd om tijdens een examen dat 1.5u max mag duren, even per projectje SVN op te zetten en te integreren...

Waarom doen andere IDE's het dan wel terwijl Eclipse dat niet doet?

Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Je maakt van tevoren toch één "examen"-repository? :P

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


Acties:
  • 0 Henk 'm!

  • Freeaqingme
  • Registratie: April 2006
  • Laatst online: 15:13
Je typt op je systeem 'git init', en je hebt een lokale repository waar je in kan committen wat je wil...

No trees were harmed in creating this message. However, a large number of electrons were terribly inconvenienced.


Acties:
  • 0 Henk 'm!

  • Jegorex
  • Registratie: April 2004
  • Laatst online: 03-09 23:24
Styxxy schreef op zaterdag 18 juni 2011 @ 15:01:
Natuurlijk heb ik de tijd om tijdens een examen dat 1.5u max mag duren, even per projectje SVN op te zetten en te integreren...

Waarom doen andere IDE's het dan wel terwijl Eclipse dat niet doet?
In Eclipse is het wel degelijk mogelijk om verwijderde bestanden terug te halen:
Herko_ter_Horst in "[alg] Slechtste programmeervoorbeelden d..."

Ik wist dit ook nog niet, maar heb het net geprobeerd en het lijkt prima te werken.

Acties:
  • 0 Henk 'm!

  • Styxxy
  • Registratie: Augustus 2009
  • Laatst online: 16:14
Dat van die bestanden wist ik nog niet en werkt inderdaad. Het probleem blijft wel bestaan bij projecten verwijderen...

Acties:
  • 0 Henk 'm!

  • Davio
  • Registratie: November 2007
  • Laatst online: 06-01 16:46
Styxxy schreef op vrijdag 17 juni 2011 @ 23:40:
Ach, verkeerde projecten weggooien ben ik een held in, zeker tijdens examen. Ik heb een hekel aan van die tijdelijke projects (om iets te testen), ook tijdens het examen. Dit jaar heb ik 3 keer een deel van mijn examen gedelete.

Als het nu in Visual Studio was, die plaatst het verwijderde mooi in de prullenbak. Echter, het examen was Java en daarmee moesten we dus in Eclipse werken. Die verwijdert bestanden dus permanent en verplaatst bestanden niet naar de prullenbak. Leuk hoor -.-. (Bestanden verwijdert hij sowieso permanent, projects verwijdert hij óf enkel uit workspace (en staan dus nog gewoon in je workspace folder) óf permanent.) Dat vind ik zo ongeveer de meest irritante "feature" van Eclipse.
Ik had het pas ook op de zaak, project in Eclipse aangemaakt wat een mapje te hoog stond, wilde het project verwijderen en ergens anders opnieuw aanmaken, vinkte snel "Delete Contents" aan en weg was de hele map. Gelukkig was het nog wel een submap met non-kritische tools en konden we snel een backup terugzetten. Zat hem toch wel ff te knijpen. Sindsdien ben ik een stuk voorzichtiger en plaats ik projecten (ook als het gedeelde tools zijn) nog alleen in mijn eigen ontwikkel-map.

Acties:
  • 0 Henk 'm!

  • Trokken
  • Registratie: September 2010
  • Laatst online: 19:07
Ik moet een zelfaanroepend php bestand maken voor informatica op school (niet voor een cijfer)

Modbreak:Dan open je daarvoor een nieuw topic met daarbij De Quickstart in het achterhoofd. Je code dumpen in een totaal ongerelateerd topic is niet de bedoeling.

[ Voor 84% gewijzigd door NMe op 18-06-2011 19:39 ]

☀️ 2220Wp | 🚗 Hyundai Ioniq Electric 28kWh | 🌬️ Ventilatie WTW | 🤖 Home Assistant


Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Mooi slecht programmeervoorbeeld inderdaad. ;)

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


Acties:
  • 0 Henk 'm!

Verwijderd

PHP:
1
if($product=="rommel");

Als je nou even uitlegt wat die puntkomma daar doet...

Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Dat lijkt me toch wel behoorlijk obvious en ook gewoon door hem zelf te zien, aangezien hij zeven keer "De prijs is €<bedrag>" te zien krijgt... En gelukkig zijn er ook geen slimmere manieren om tekst te vergelijken. Wat als ik "roMmeL" intik, gewoon omdat ik dat wil?

Edit @hieronder: ok, duidelijk. :P

[ Voor 36% gewijzigd door CodeCaster op 18-06-2011 19:00 ]

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


Acties:
  • 0 Henk 'm!

Verwijderd

Het was geen opmerking richting jou hoor :)

Maar ja... syntax, how does it work?

En het is wel Daily WTF waardig ja...

[ Voor 25% gewijzigd door Verwijderd op 18-06-2011 19:00 ]


Acties:
  • 0 Henk 'm!

  • Trokken
  • Registratie: September 2010
  • Laatst online: 19:07
Die man die mij informatica geeft die zegt van zoek het zelf maar uit dus vandaar dat ik overal alles dubbel heb staan. (1x met en 1x zonder hoofdletter). Meer kan ik niet bedenken. :P

Maar er moet dus geen puntkomma volgens jou?

☀️ 2220Wp | 🚗 Hyundai Ioniq Electric 28kWh | 🌬️ Ventilatie WTW | 🤖 Home Assistant


Acties:
  • 0 Henk 'm!

  • Caelorum
  • Registratie: April 2005
  • Laatst online: 00:20
Trokken schreef op zaterdag 18 juni 2011 @ 23:09:
Die man die mij informatica geeft die zegt van zoek het zelf maar uit dus vandaar dat ik overal alles dubbel heb staan. (1x met en 1x zonder hoofdletter). Meer kan ik niet bedenken. :P

Maar er moet dus geen puntkomma volgens jou?
pak de php manual er is bij en zoek de if statement op?

Acties:
  • 0 Henk 'm!

  • Spockz
  • Registratie: Augustus 2003
  • Laatst online: 21-09 10:08

Spockz

Live and Let Live

Trokken schreef op zaterdag 18 juni 2011 @ 23:09:
Die man die mij informatica geeft die zegt van zoek het zelf maar uit dus vandaar dat ik overal alles dubbel heb staan. (1x met en 1x zonder hoofdletter). Meer kan ik niet bedenken. :P

Maar er moet dus geen puntkomma volgens jou?
Misschien ben hier naar op zoek? Oftewel case-insensitive comparison. Anders kan je ook nog iets doen met eerst naar lowercase vertalen enzo.

C'est le ton qui fait la musique. | Blog | @linkedin
R8 | 18-55 IS | 50mm 1.8 2 | 70-200 2.8 APO EX HSM | 85 1.8


Acties:
  • 0 Henk 'm!

  • ZpAz
  • Registratie: September 2005
  • Laatst online: 23:59
Verwijderd schreef op zaterdag 18 juni 2011 @ 18:54:
PHP:
1
if($product=="rommel");

Als je nou even uitlegt wat die puntkomma daar doet...
Had het niet een : moeten zijn?

In php kan je zowel:

PHP:
1
2
3
4
if($product=="rommel") 
{

}


als:

PHP:
1
2
3
4
if($product=="rommel"):


endif;


en volgens mij geeft hij bij een ; geen error, maar voert hij gewoon niets uit. Immers kan je ook één commando achter een if statement gooien zonder brackets ala

PHP:
1
2
3
if($product=="rommel") 
    echo "ik ben rommel";
echo "ik wordt altijd uitgevoert"; //Jep, met een t denk ik nu.


Staat er alleen een ; ipv een command ervoor, dan wordt er niets uitgevoerd, maar het is niet fout. En het is niet nuttig ;)

Tweakers Time Machine Browser Extension | Chrome : Firefox


Acties:
  • 0 Henk 'm!

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 23:55
Heuh? Ik heb die alternatieve syntax nog nooit eerder gezien! Wat is daar precies het nut van?

Acties:
  • 0 Henk 'm!

  • WeeJeWel
  • Registratie: April 2007
  • Laatst online: 18:34
Soultaker schreef op zondag 19 juni 2011 @ 13:04:
Heuh? Ik heb die alternatieve syntax nog nooit eerder gezien! Wat is daar precies het nut van?
Je ziet wat je afsluit, ipv alleen een accolade. Werkt ook met foreach en while.

Homey — Critics are those without skills to create.


Acties:
  • 0 Henk 'm!

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 23:55
Ah zo. Tja, om daar nu een hele aparte syntax voor in het leven te roepen...

Acties:
  • 0 Henk 'm!

  • mithras
  • Registratie: Maart 2003
  • Niet online
Soultaker schreef op zondag 19 juni 2011 @ 13:04:
Heuh? Ik heb die alternatieve syntax nog nooit eerder gezien! Wat is daar precies het nut van?
Gebruiken wij altijd in templates. In business logic is het dit:

PHP:
1
2
3
if (false === $model) {
  throw NotFoundException('Could not find blablabla');
}


Voor templates echter dit:
PHP:
1
2
3
4
5
6
7
8
9
<? if (count($items)):?>
  <table>
    <? foreach($items as $item:?>
      <tr>
        <td><?= $item->prop1?></td><td><?= $item->prop2?></td>
      </tr>
    <? endforeach?>
  <table>
<? endif?>
Het is daarbij voor ons nuttiger, omdat je in templates af en toe nogal grote blokken tussen if/else, foreach, while etc. hebt zitten. Met slechts een afsluitende accolade is het lastig terug te halen wat je nu precies afsluit, met endif, endforeach etc. is dit wel een stuk gemakkelijker :)

[ Voor 19% gewijzigd door mithras op 19-06-2011 13:17 ]


Acties:
  • 0 Henk 'm!

  • FragFrog
  • Registratie: September 2001
  • Laatst online: 00:48
mithras schreef op zondag 19 juni 2011 @ 13:16:
Met slechts een afsluitende accolade is het lastig terug te halen wat je nu precies afsluit, met endif, endforeach etc. is dit wel een stuk gemakkelijker :)
Dan kun je toch net zo goed Smarty gebruiken? O-)

* FragFrog starts running.. :+

[ Site ] [ twitch ] [ jijbuis ]


Acties:
  • 0 Henk 'm!

  • ZpAz
  • Registratie: September 2005
  • Laatst online: 23:59
mithras schreef op zondag 19 juni 2011 @ 13:16:
[...]
Gebruiken wij altijd in templates. In business logic is het dit:
Idd, gebruik het zelf altijd op éénzelfde wijze in templates.

Tweakers Time Machine Browser Extension | Chrome : Firefox


Acties:
  • 0 Henk 'm!

  • mithras
  • Registratie: Maart 2003
  • Niet online
FragFrog schreef op zondag 19 juni 2011 @ 13:48:
[...]

Dan kun je toch net zo goed Smarty gebruiken? O-)

* FragFrog starts running.. :+
}:|

Nog een leuk slecht programmeervoorbeeld trouwens: er zit een goede flaw in onze eerste versie-webshop. Het proces is:
[..] > winkelmandje > betalen > terug naar site > facuur aanmaken + email sturen
Dat is met name leuk voor klanten die iDeal afbreken en nooit meer terugkomen op de site :X

Acties:
  • 0 Henk 'm!

  • .Gertjan.
  • Registratie: September 2006
  • Laatst online: 17-02 21:20

.Gertjan.

Owl!

mithras schreef op zondag 19 juni 2011 @ 13:16:
[...]
Het is daarbij voor ons nuttiger, omdat je in templates af en toe nogal grote blokken tussen if/else, foreach, while etc. hebt zitten. Met slechts een afsluitende accolade is het lastig terug te halen wat je nu precies afsluit, met endif, endforeach etc. is dit wel een stuk gemakkelijker :)
En als je meerdere if's in elkaar hebt? :+ Dan zegt een endif nog steeds niet veel over het stuk dat je afsluit.

Daar heb ik al creatieve oplossingen voor gezien:
C#:
1
2
3
4
if([mooistatement]) {
    if([mooistatement2]) {
    } //if([mooistatement2])
} //if([mooistatement])

In sommige gevallen is het handig om het zo te hebben, maar vaak is het overbodig en zelfs verwarrend, dan wordt een van de if's aangepast, maar past men de comment lijn niet aan waardoor je nog niets weet.

Beetje fatsoenlijke uitlijning doet wonderen. Daarnaast kun je in Visual Studio met (ik geloof) control + [ / control + ] tussen de brackets springen zodat je weet waar de closing/opening staat staat.

The #1 programmer excuse for legitimately slacking off: "My code's compiling"
Firesphere: Sommige mensen verdienen gewoon een High Five. In the Face. With a chair.


Acties:
  • 0 Henk 'm!

  • MBV
  • Registratie: Februari 2002
  • Laatst online: 01-10 21:27
In goede programma's hoort de logica per functie zo compact te zijn dat je dat soort commentaar niet nodig hebt. Stel je dan nu een programma voor met functies van 1000 regels, 6 lagen diep geneste if-statements, en nesting die overhoop is gegaan met mergen...

Acties:
  • 0 Henk 'm!

  • ZpAz
  • Registratie: September 2005
  • Laatst online: 23:59
link0007 schreef op donderdag 02 oktober 2008 @ 09:09:
[...]


Nee, veel beter is een class te geven voor optionele parameters.
HTML:
1
<input type="text" name="name" class="optionalFormField">


Daarna javascript gebruiken om de class uit te lezen.
Custom attributes is imho veel netter dan de class attribuut vol te gooien imho. Volgens mij is het zelfs perfect valid in HTML5.

Tweakers Time Machine Browser Extension | Chrome : Firefox


Acties:
  • 0 Henk 'm!

  • Avalaxy
  • Registratie: Juni 2006
  • Laatst online: 14:49
ZpAz schreef op zondag 19 juni 2011 @ 11:32:

PHP:
1
echo "ik wordt altijd uitgevoerd";
:?

Acties:
  • 0 Henk 'm!

  • .Gertjan.
  • Registratie: September 2006
  • Laatst online: 17-02 21:20

.Gertjan.

Owl!

MBV schreef op zondag 19 juni 2011 @ 14:53:
In goede programma's hoort de logica per functie zo compact te zijn dat je dat soort commentaar niet nodig hebt. Stel je dan nu een programma voor met functies van 1000 regels, 6 lagen diep geneste if-statements, en nesting die overhoop is gegaan met mergen...
Goede programma's, nee sorry die ben ik nog nooit tegengekomen :+
Maar ik ben het met je eens dat je niet al te veel nesting moet gebruiken, maar geloof me dat zal sommige ontwikkelaars aan hun reet roesten hoor. Zelfde als code duplication, zou je niet mogen doen, maar het is blijkbaar makkelijker de handel te copy-pasten dan een fatsoenlijke functie te schrijven. :(
ZpAz schreef op zondag 19 juni 2011 @ 14:54:
[...]


Custom attributes is imho veel netter dan de class attribuut vol te gooien imho. Volgens mij is het zelfs perfect valid in HTML5.
In HTML5 misschien wel, maar in 4 gaat het niet altijd even lekker in de browsers :P
Heb al best wat scripts gezien die op basis van de classnames actie ondernemen, je kunt namelijk vrij makkelijk elementen ophalen op basis van de classname. Op basis van custom attributes is dat lastiger.

Ik gebruik het zelf ook, ik zet bepaalde waardes in de class tag, en er loopt een onload script welke die objecten eruit pikt en gedrag koppelt. Zaken als settings op een bepaald element gaan dan wel weer in custom attributen.

The #1 programmer excuse for legitimately slacking off: "My code's compiling"
Firesphere: Sommige mensen verdienen gewoon een High Five. In the Face. With a chair.


Acties:
  • 0 Henk 'm!

  • mithras
  • Registratie: Maart 2003
  • Niet online
.Gertjan. schreef op zondag 19 juni 2011 @ 14:51:
[...]

En als je meerdere if's in elkaar hebt? :+ Dan zegt een endif nog steeds niet veel over het stuk dat je afsluit.
Uiteraard. Maar ik merk dat wanneer meerdere geneste if statements nodig zijn in een template, je vaak meer logic in je templates stopt dan nodig is. Uiteraard is een uitzondering te vinden, maar in ons geval komt het eigenlijk nooit voor (als we überhaupt al if/else gebruiken in templates :p).
Daar heb ik al creatieve oplossingen voor gezien:
C#:
1
2
3
4
if([mooistatement]) {
    if([mooistatement2]) {
    } //if([mooistatement2])
} //if([mooistatement])

In sommige gevallen is het handig om het zo te hebben, maar vaak is het overbodig en zelfs verwarrend, dan wordt een van de if's aangepast, maar past men de comment lijn niet aan waardoor je nog niets weet.
Je geeft zelf meteen al het grootste nadeel aan ;) Verder is (subjectief!) mijn idee dat het gegeven voorbeeld door mij er op deze manier minder overzichtelijk uitziet:

PHP:
1
2
3
4
5
6
7
8
9
<? if (count($items)){?> 
  <table> 
    <? foreach($items as $item){?> 
      <tr> 
        <td><?= $item->prop1?></td><td><?= $item->prop2?></td> 
      </tr> 
    <? }?> 
  <table> 
<? }?>
Denk erom dat deze discussie over php-templating styles ging, niet over modellen of controllers etc. ;)
Beetje fatsoenlijke uitlijning doet wonderen. Daarnaast kun je in Visual Studio met (ik geloof) control + [ / control + ] tussen de brackets springen zodat je weet waar de closing/opening staat staat.
Werkt dat nog steeds als je php afsluit? De meeste IDE's kunnen overweg met de brackets (matching brackets highlighting etc), maar weinig die ik ken kunnen ook de sprong "buiten" php maken (zoals in dit bovenstaande code voorbeeldje).
ZpAz schreef op zondag 19 juni 2011 @ 14:54:
[...]

Custom attributes is imho veel netter dan de class attribuut vol te gooien imho. Volgens mij is het zelfs perfect valid in HTML5.
Klopt. Het is zelfs geen custom attribute, gewoon onderdeel van de nieuwe html5 specs. Met Modenizr en een stukje jQuery kan je dan ook makkelijk oude browsers afvangen.

Acties:
  • 0 Henk 'm!

  • .Gertjan.
  • Registratie: September 2006
  • Laatst online: 17-02 21:20

.Gertjan.

Owl!

mithras schreef op zondag 19 juni 2011 @ 15:06:
[...]
Uiteraard. Maar ik merk dat wanneer meerdere geneste if statements nodig zijn in een template, je vaak meer logic in je templates stopt dan nodig is. Uiteraard is een uitzondering te vinden, maar in ons geval komt het eigenlijk nooit voor (als we überhaupt al if/else gebruiken in templates :p).
Ah, het ging over templates :) Dan kan ik me er wel iets bij voorstellen. In ASP.NET zie ik het ook geregeld dat men ze rommelig maakt, maar dan ligt mijn voorkeur toch bij controls/classes die de output genereren, maar sommige developers bouwen liever dubieuze templates :P
[...]
Je geeft zelf meteen al het grootste nadeel aan ;) Verder is (subjectief!) mijn idee dat het gegeven voorbeeld door mij er op deze manier minder overzichtelijk uitziet:
PHP:
1
2
3
4
5
6
7
8
9
<? if (count($items)){?> 
  <table> 
    <? foreach($items as $item){?> 
      <tr> 
        <td><?= $item->prop1?></td><td><?= $item->prop2?></td> 
      </tr> 
    <? }?> 
  <table> 
<? }?>
Denk erom dat deze discussie over php-templating styles ging, niet over modellen of controllers etc. ;)
Meh, een eindif zou het ook niet veel duidelijker maken denk ik, vooral je spacing is erg belangrijk. Daarbij heb ik zelf een hekel aan het comment voorbeeld dat ik gaf, sommige developers zweren erbij, maar ik vind het een crappy oplossing, als je zo moet commenten bouw dan je code fatsoenlijk :P
[...]
Werkt dat nog steeds als je php afsluit? De meeste IDE's kunnen overweg met de brackets (matching brackets highlighting etc), maar weinig die ik ken kunnen ook de sprong "buiten" php maken (zoals in dit bovenstaande code voorbeeldje).
Mijn verhaaltje was specifiek Visual Studio (.net dus), maar ik vraag me af of in ASP.NET (template) pagina's de open/close bracket functionaliteit ook nog zou werken, sowieso konden de oude versies in de ASP.NET weergave sowieso nogal eens wat buggen.

Anyway, ik heb me bemoeid in een discussie waar ik niet diep genoeg in zat :P Ik had het over .NET en code in het algemeen en jullie over PHP en dan specifiek templates :) Dus mijn verhaal is niet echt van toepassing :)

The #1 programmer excuse for legitimately slacking off: "My code's compiling"
Firesphere: Sommige mensen verdienen gewoon een High Five. In the Face. With a chair.


Acties:
  • 0 Henk 'm!

  • windwarrior
  • Registratie: Januari 2009
  • Laatst online: 12-07-2024

windwarrior

ʍıupʍɐɹɹıoɹ

Ik had laatst zoiets verschrikkelijk stoms, ik was vrolijk aan het transformeren in OpenGl tot ik erachter kwam dat ik terug moest naar linksboven.

Dus ik helemaal uitrekenen hoeveel ik naar links en naar beneden enzo gegaan was, en vervolgens met glTranslatef weer terug naar linksboven. Totdat internet mij introduceerde aan glPushMatrix en glPopMatrix. Doh.

Acties:
  • 0 Henk 'm!

  • Trokken
  • Registratie: September 2010
  • Laatst online: 19:07
Trokken schreef op zaterdag 18 juni 2011 @ 18:44:
Ik moet een zelfaanroepend php bestand maken voor informatica op school (niet voor een cijfer)

Modbreak:Dan open je daarvoor een nieuw topic met daarbij De Quickstart in het achterhoofd. Je code dumpen in een totaal ongerelateerd topic is niet de bedoeling.
Modbreak:Commentaar op het modbeleid kan in: Feedback op moderatie binnen de Devschuur


@zpaz

Thanx 8)
Zonder ";" werkt het idd wel.

[ Voor 19% gewijzigd door Woy op 20-06-2011 08:55 ]

☀️ 2220Wp | 🚗 Hyundai Ioniq Electric 28kWh | 🌬️ Ventilatie WTW | 🤖 Home Assistant


Acties:
  • 0 Henk 'm!

  • Jegorex
  • Registratie: April 2004
  • Laatst online: 03-09 23:24
Trokken schreef op zondag 19 juni 2011 @ 21:54:
[...]
*weg*
@zpaz

Thanx 8)
Zonder ";" werkt het idd wel.
Als je wist wat er fout aan was dan zou het best mogen denk ik.
Maar dit topic is niet bedoelt om te helpen met problemen, daarvoor kun je beter een nieuw topic aanmaken.

[ Voor 13% gewijzigd door Woy op 20-06-2011 12:08 ]


Acties:
  • 0 Henk 'm!

  • Tsunami
  • Registratie: Juni 2002
  • Niet online
mithras schreef op zondag 19 juni 2011 @ 15:06:
Werkt dat nog steeds als je php afsluit? De meeste IDE's kunnen overweg met de brackets (matching brackets highlighting etc), maar weinig die ik ken kunnen ook de sprong "buiten" php maken (zoals in dit bovenstaande code voorbeeldje).
Bedoel je zoiets?:
PHP:
1
2
3
<?php if (true) { ?>
}
<?php } ?>

Bovenstaande lijkt me lastig op te vangen, maar in elk ander geval worden PHP-tags toch gewoon genegeerd? Zelfs Notepad2 doet het prima met:
PHP:
1
2
3
<?php if (true) { ?>
<html></html>
<?php } ?>
Pagina: 1 ... 59 ... 103 Laatste

Dit topic is gesloten.

Let op:
Uiteraard is het in dit topic niet de bedoeling dat andere users en/of topics aangehaald worden om ze voor gek te zetten. Lachen om je eigen code, of over dingen die je "wel eens tegengekomen bent" is prima, maar hou het onderling netjes. :)