Beye 2010, welcome 2011!

Normaal zou ik dit posten op nieuwjaarsdag maar aangezien ik me slaap zal nodig hebben die dag (feesten + erna een familiefeest). Hierbij enkele statistieken van het jaar 2010.

Aantal bezoekers: 5 584
Drukste maand: december (761 bezoekers)
Aantal blog berichten: 76
Aantal reacties: 92

En aan allen natuurlijk een goed eindejaar en laat ons beginnen met een nieuw vel papier in 2011!

Een .NET applicatie

Voor het vak .NET moesten wij een C#/ADO.NET applicatie maken. Het is een applicatie voor scholen die hun boeken moeten bestellen bij de zaak Plato. Ik post dit eventjes omdat wij (john en ik) er verdomd keihard aan gewerkt hebben en lang gezocht hebben aan de database fout. Anyway, genoeg woorden aan vuilgemaakt, hier zijn de screenshots.

Antwoord van Brooklynn

Vandaag had ik eens een mailtje gestuurd naar de mensen van Brooklynn omdat ik toch het fijne wou weten. Twee uurtjes later kreeg ik een vriendelijk antwoord terug.

Geachte,
bedankt dat u ons de kans geeft onze werkwijze toe te lichten.

Bij elke samenwerking omtrent voorverkoop bieden wij de organisatoren
aan om de kosten (fee) op zich te nemen.
Sommige doen dit, anderen niet. Dat is hun keuze.
Wij moeten deze fee aanrekenen omdat deze extra service die wij aan
organisatoren en aan feestvierders bieden voor ons vooral lasten met
zich brengen.
Mensen die tickets komen kopen doen dat heel bewust en koppelen daar
nooit nog een aankoop in de winkel aan. Integendeel zelfs want telkens
iemand voor een kaart opduikt aan onze kassa’s moeten wij de service aan
onze echte klanten staken om die kaartenverkoop af te handelen. Dat is
niet fijn voor die klant en past niet in onze service gerichte aanpak.
Bovendien moeten wij ons beveiligen en verzekeren voor de waardevolle
voorraad kaarten die bij ons afgegeven wordt.
Verder kruipt er ook een pak tijd in het beheren, berekenen en afrekenen
van de kaarten.
Dit zijn kosten die door de fee van 0.5 of 1 euro wordt gedragen.
Wij weten dat deze kosten in lijn liggen met wat andere grotere zaken
aanrekenen voor hun overhead-kosten en dat die ver onder de kosten
liggen die Fnac aanrekent.

Ik begrijp dat u vragen heeft bij het prijsverschil en hoop dat deze
uitleg u voldoende duidelijkheid heeft verschaft.
Wij wensen u een schitterend feest toe op oudejaar in Kortrijk!

Of ik het daarmee 100% goed vind is iets anders. Ik vind dat die service gratis zou moeten zijn omdat het juist klanten aanlokt. De naam Brooklynn is immers overal te vinden en mensen komen je winkel binnen. Misschien moet een goede uitbater maar aantrekkelijke artikels leggen aan de ingang. Bv als het gaat om oudejaar evenementen dat ze oudejaar kledij voor hun neus plaatsen.

Leuk stukje C code

Ik zit geregeld op de devschuur coffe corner van tweakers.net en daarin vond ik volgend stukje code. Niet zozeer om zijn doel maar op de manier hoe struct’s en pointers gebruikt worden om delegates van .NET na te bootsen.

http://aiids.pastebin.com/qb3P7XA6

Bron: http://gathering.tweakers.net/forum/list_message/35269708#35269708

Toekomst VBA…

Op kerstdag gaf ik een demo van mijn VBA aan de eigenaar van het bedrijf. Hij was tevreden van het werk maar we hebben nog wat nagepraat. Daaruit bleek dat het programma dat ik geschreven werd een tussen oplossing is voor het ene varkensbedrijf. Nu zijn ze bezig met uitbreidingen in het bedrijf (nieuwe stallen) en gaan ze dus een geavanceerder pakket aanschaffen. Dus uniek was mijn ding niet maar dient goed als tussen oplossing. Enfin, later zal mijn hulp nodig zijn voor de data migratie naar het nieuwe programma.

Nu de toekomst van VBA slop ligt (het kan nog altijd een product worden als ik dat wil), kwam de vraag om een ander programma te schrijven die niet op de markt te vinden is. Details heb ik niet maar het gaat om het ganse voederproces van het bedrijf. Nu draait er iets DOS achtigs maar dat is enkel om de voederen te verdelen en te vermengen binnen het bedrijf. Het moet uitgebreider komen. Begin februari begint het project.

Java vs .NET quote

Vandaag een leuke quote/verhaaltje/mopje gevonden over Java en .NET.

A group of 4 Microsoft .NET programmers and a group of 4 Java programmers are going on a train to an expo. The MS programmers buy a ticket each, and then watch the Java programmers proceed to buy one ticket between them.

The MS programmers are intrigued and when they get on the train, they watch the Java programmers to see what they do when the guard comes to check the tickets. It turns out that, before the guard comes, they all cram into the toilet. The guard knocks on the door, and asks for the ticket. The guard takes it from under the door, and slides it back.

The MS programmers are all impressed, so on the way back, they buy only one ticket. Only to watch the Java folks get on the train without buying a ticket at all.

When they get on the train, the MS people cram into the toilet, as they saw the Java folks on the earlier journey. The Java programmers then knock on the door, and say “Ticket please”. The MS programmers slide the ticket under the door, as they saw the Java programmers do earlier.

“Thank you”, they say. “You steal our methods, but you don’t understand them.”

C++, iets over pointers en parameters.

Laatst was ik een binaire zoekboom aan het maken in C++. Zoals iedere boom begint met een wortel, begint mijn boom ook met een wortel.

struct element<T> *root;

Een pointer dus naar het root element. Nu had ik een add(T value) functie die een nieuwe element gaat toevoegen aan de boom. In die functie staat één regel namelijk.

addNode(root, value);

Nu had ik als volgt de definitie gemaakt voor de addNode functie.

void addNode(struct element<T> *branch, T value)

In de functie ga ik recursief de boom doorzoeken naar een plekje voor het nieuwe element en in die functie wijzig ik branch. Nu gaat dit niet zomaar dat wijzigen omdat ik eigenlijk het adres van de pointer meegeef. Dus ik gaf de pointer by-value door terwijl ik eigenlijk de pointer by-reference moest doorgeven. De compiler begon er al over te zagen maar op IRC zei een C++ guru dat dit by-reference moet doorgegeven worden als je dat wilt wijzigen. Dit ziet er als volgt uit.

void addNode(struct element<T> *&branch, T value)

Een alternatief is gebruik maken van dubbele pointers (dat is iets wat Rob zekers zal bekoren)

void addNode(struct element<T> **branch, T value)

Pointers, het is me wat… ^^

2010: een einde aan alles…

Het is terug Kerstmis. Veel eten en vooral terug blokken tussendoor. Het einde van 2010 is meteen ook het einde van zoveel zaken. Ik heb de laatste opdrachten ingediend die moesten ingediend zijn (hoop ik want er waren er zoveel). Ook start voor de laatste keer mijn blok. In die blok moeten er nog twee opdrachten geprogrammeerd worden (.NET en EJB/JavaFX) en moet er nog één beveiliging opdracht gemaakt worden.

Nu genoeg over de studies want deze periode staat ook in het teken van het einde van 2010. Naast eten en blokken zal er ook wat gefeest worden. Eerst de verjaardag van me schat en vervolgens 2010 afsluiten met NYE te Kortrijk.

Ziezo, bij deze wens ik jullie een zalig Kerstmis en zak maar lekker door! ^^

SimpleMediaPlayer 1.0

Voor het vak .NET moeten we in een groepje van drie personen Silverlight voorstellen aan de groep. Naast de presentatie moet je ook je onderwerp illustreren met een demo. Ik had het idee om een simpele media speler te maken. Samen met John hebben we de Silverlight applicatie geprogrammeerd. Het koste uren en uren zoeken waarom MediaElement local files niet wilde afspelen. Blijkbaar werkt dat element enkel met streams en progressive download. Waarschijnlijk kan je een stream maken van de local file maar dat hebben we niet meer getest. Omdat MediaElement met HTTP overweg kan, hebben we gekozen voor iets te doen met Dropbox. In je Public map maak je een map silverlightSongs en daarin zet je je .mp3 bestanden. Daarnaast maak je je silverlightSongs.txt file aan met de liedjes die in je map staan. Een lijn in de txt file ziet er als volgt uit:

filename;artiest;titel

Wanneer je de Silverlight applicatie draait moet je je user id opgeven van je Dropbox account, standaard neemt hij mijn user id. Bij het herladen (de herladen knop klikken) geeft hij de beschikbare songs van de txt file en kan je die aan je speellijst toevoegen. En luisteren maar!

Ik heb de Release map gezipped, je moet die maar ergens uitpakken en op de HTML pagina klikken. Install knopje klikken en dan runned hij. Je kan hem dan altijd runnen via de snelkoppeling op je bureaublad.

SimpleMediaPlayer.zip (1 699 kB)

Brooklynn en geldgieren

De Brooklynn, allen gekend vanwege hun kledingwinkels, verkoopt af en toe voorverkoop kaarten van evenementen. Deze zomer kocht ik er naar alle gewoonte me tickets voor de beachparty. Toen vroeger ze €0.50 / ticket extra als fooi. Waarschijnlijk zien zij tickets uit een enveloppe halen als een zware taak. Daar had ik een klachtenbrief over geschreven naar de organisatie van het evenement dat het fooi-betalen-concept gedwongen wordt. Tot op vandaag nog geen antwoord, geen verontschuldigingen of what so ever. Dus dit evenement sla ik ook maar over volgende jaren!

Nu gaat mijn vriendin naar dezelfde keten Brooklynn en koopt er kaarten voor het oudejaar (NYE in de expo hallen van Kortrijk). Op de site staat vermeld €33 / ticket. In de Brooklynn werd terug het fooi-betalen-concept opgelegd en dit keer van €1 / ticket. Omdat de organisatoren geen mailadres hebben staan op hun website kan ik geen mail sturen met me klacht.

Helaas maar voor de mensen die shoppen in de Brooklynn, denk maar twee keer na voor je iets daar koopt. Het zijn geldgieren van de eerste tot de laatste. Je betaald er zowiezo teveel voor te weinig kwaliteit.