There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij
using gebruik je alleen voor objecten die IDisposable implementeren, maar soms is een extra scope sowieso wel handig, want als je meerdere objecten hebben die alleen in die scope leven ziet het er ook niet handig uit als je allemaal geneste using blokken gaat gebruiken..Gertjan. schreef op woensdag 22 december 2010 @ 12:09:
[...]
Is using dan niet logischer? Die is geloof ik daar speciaal voor gemaakt. Daarnaast wordt aan het einde van het using block de finalize / destructor aangeroepen waardoor het einde van de using tevens het einde van het object betekent.
Maar de vraag is IMHO sowieso of het niet beter is om een extra methode te introduceren als je in een case een grote scope nodig hebt.
“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.”
Zijn er hier meer mensen die Resharper in combinatie met VS2010 gebruiken?
Never attribute to malice that which can be adequately explained by stupidity. - Robert J. Hanlon
60% of the time, it works all the time. - Brian Fantana
Ach, hier vind ik het wel praktisch als ik meerdere keren 'key' als variabele wil gebruiken. Anders ga je weer variabelenamen gebruiken die het net niet zijn.Woy schreef op woensdag 22 december 2010 @ 12:18:
[...]
using gebruik je alleen voor objecten die IDisposable implementeren, maar soms is een extra scope sowieso wel handig, want als je meerdere objecten hebben die alleen in die scope leven ziet het er ook niet handig uit als je allemaal geneste using blokken gaat gebruiken.
Maar de vraag is IMHO sowieso of het niet beter is om een extra methode te introduceren als je in een case een grote scope nodig hebt.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| public IEnumerable<GeoGebied> StartsWith(string term) { switch(term.Length) { case 0: return new List<GeoGebied>(); case 1: { char key = term.ToUpper()[0]; return IxWordPartsOneChar.ContainsKey(key) ? IxWordPartsOneChar[key] : new List<GeoGebied>(); } case 2: return IxWordPartsTwoChar[term.Substring(0, 2).ToUpper()]; default: { string key = term.Substring(0, 2).ToUpper(); return IxWordPartsTwoChar[key].Where(k => k.Keys.Any(nk => nk.StartsWith(term, StringComparison.Ordinal))).ToList(); } } } |
Kijk weer wat geleerdRobIII schreef op woensdag 22 december 2010 @ 12:14:
[...]
Dan moet het object wel IDisposable implementeren
[ Voor 8% gewijzigd door .Gertjan. op 22-12-2010 13:01 ]
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.
Verwijderd
http://stackoverflow.com/...en-and-when-not-to-use-it
http://marcgravell.blogsp...11/dontdontuse-using.html
http://stackoverflow.com/...snt-the-garbage-collector
Oh ja, nog een die hier niets mee van doen heeft, maar toch een pareltje is: http://www.joelonsoftware.com/articles/fog0000000319.html
[ Voor 29% gewijzigd door Verwijderd op 22-12-2010 13:46 ]
Google maps is de weg kwijt (zie Tilburg)
[ Voor 4% gewijzigd door Gamebuster op 22-12-2010 13:30 ]
Let op: Mijn post bevat meningen, aannames of onwaarheden
Ipsa Scientia Potestas Est
NNID: ShinNoNoir
ja, zie 'm nu ook net tussen de nieuwsberichten staan
Let op: Mijn post bevat meningen, aannames of onwaarheden
Verwijderd
[ Voor 18% gewijzigd door Verwijderd op 22-12-2010 14:16 ]
Do you know who I am?
Hier het origineel trouwens: YouTube: Eddie Izzard Star Wars Cantina
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.
We are shaping the future
Als de aarde sneller draaide was de tijd die beschikbaar was om te werken ook korter. Onze 8 urige werkdag is volgens mij gebaseerd op het gemiddelde aantal werkbare uren waarbij de werkbare uren vielen tussen zonsopkomst en zonsondergang (uit de tijd dat we nog geen/weinig kunstlicht hadden).Davio schreef op woensdag 22 december 2010 @ 15:05:
Doordat de aarde steeds langzamer draait duren dagen ook steeds langer. Miljoenen jaren geleden hadden we nog dagen van 20 uur. Had je minder vrije tijd en minder tijd om te slapen als je als dinosaurus 8 uur moest werken.
Als de aarde sneller draait zijn die werkmomenten dus korter en heb je dus een kortere werkdag
[ Voor 8% gewijzigd door Woy op 23-12-2010 16:04 ]
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.
Verwijderd
http://www.ebaumsworld.com/user/uploads/mcintzac0/ pagina 3 even naar beneden scrollen.oisyn schreef op woensdag 22 december 2010 @ 14:32:
Die is cool ja
Do you know who I am?
Hier het origineel trouwens: YouTube: Eddie Izzard Star Wars Cantina
Hey, ik probeerde laatst een account aan te maken, maar heb het uiteindelijk toch maar niet gedaan omdat mijn WP7 live id ingesteld staat op UK, en ik niet zeker wist of de developer unlock van WP7 gekoppeld was aan je live id of niet. Hoe heb jij dat precies gedaan?Jan_V schreef op dinsdag 21 december 2010 @ 20:07:
Yay! M'n app is in de Marketplace geplaatst!
Motiveert wel om nog meer apps te maken. Creativiteit is iets waar ik nog wel aan moet werken. Nieuwe dingen bedenken is lastig.
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.
Using gebruik je niet als je alleen maar een scope nodig hebt..Gertjan. schreef op woensdag 22 december 2010 @ 12:09:
Is using dan niet logischer?
Ik heb geen grote scope nodig. Het voorbeeld van creator1988 is wel treffend wat dat betreft; m.i. vraagt dit niet om een aparte functie.Woy schreef op woensdag 22 december 2010 @ 12:18:
Maar de vraag is IMHO sowieso of het niet beter is om een extra methode te introduceren als je in een case een grote scope nodig hebt.
Actually, het heeft er erg veel mee van doen: using bestaat alleen maar omdat de high level 'garbage collect' aanpak niet altijd voldoet: op dat moment komen de 'bits en bytes' ( in het geval van using operating system resources, handles en what not) weer naar boven.Oh ja, nog een die hier niets mee van doen heeft, maar toch een pareltje is: http://www.joelonsoftware.com/articles/fog0000000319.html
Pis me bijna in m'n broek van het lachen .... Can you get me his autograph? ....oisyn schreef op woensdag 22 december 2010 @ 14:32:
Hier het origineel trouwens: YouTube: Eddie Izzard Star Wars Cantina
[edit]
Syntax error on line 24
[ Voor 42% gewijzigd door farlane op 23-12-2010 00:07 ]
Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.
Davio schreef op woensdag 22 december 2010 @ 22:47:
Ja, en daarom was het ook een grapje.
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.
lol, ik las even: op een "local devastation". Nouja, gezien waar je t over hebt klopt t nog wel n beetje. Sharepoint is ook local devastationHoogie2004 schreef op donderdag 23 december 2010 @ 08:00:
Waarom is Kerberos + SharePoint op een local devstation zo lastig en niet gewoon 1 vinkje ofzo....
Was bij mij geen probleem, aangezien ik geen wp7 device heb. Bestelling van het werk is geannuleerd, door gewijzigde requirements. Dus geen gratis toestel voor mij..oisyn schreef op woensdag 22 december 2010 @ 22:04:
[...]
Hey, ik probeerde laatst een account aan te maken, maar heb het uiteindelijk toch maar niet gedaan omdat mijn WP7 live id ingesteld staat op UK, en ik niet zeker wist of de developer unlock van WP7 gekoppeld was aan je live id of niet. Hoe heb jij dat precies gedaan?
Maar volgens mij zou het geen problemen op moeten leveren. Het is vanuit NL gewoon toegestaan om apps te maken en op te sturen. Je geeft dan aan waar je ze wilt verspreiden bij het opsturen van de app (Worldwide of een regio). Van wat ik gelezen heb maakt het volgens mij niets uit voor die developer unlock met welk live id je de telefoon hebt gekoppeld.
Wellicht dat er anderen op het AppHub forum al vragen over hebben gesteld. Dacht ook dat @mahoekst hier een blogpost over had gemaakt, maar kan het niet zo snel terug vinden.
Wel moet je voor Zune je systeem locatie op US hebben ingesteld, anders zie je geen apps, maar dat wist je vast al wel.
Battle.net - Jandev#2601 / XBOX: VriesDeJ
Sharepoint valt wel mee, het is de setup van de rest die me irriteert. Het lijkt nu iig te werken, dus we zullen zien.D-Raven schreef op donderdag 23 december 2010 @ 08:27:
[...]
lol, ik las even: op een "local devastation". Nouja, gezien waar je t over hebt klopt t nog wel n beetje. Sharepoint is ook local devastation
Ik moet nog een week.. maar werken is leuk!!
[ Voor 7% gewijzigd door Gamebuster op 23-12-2010 11:12 ]
Let op: Mijn post bevat meningen, aannames of onwaarheden
Wat je ook kunt doen is je vrije tijd ver van aarde (en andere zwaartekracht bronnen) besteden, dan heb je ook meer tijd tot je beschikking.Gertjan. schreef op woensdag 22 december 2010 @ 19:58:
Als de aarde sneller draaide was de tijd die beschikbaar was om te werken ook korter. Onze 8 urige werkdag is volgens mij gebaseerd op het gemiddelde aantal werkbare uren waarbij de werkbare uren vielen tussen zonsopkomst en zonsondergang (uit de tijd dat we nog geen/weinig kunstlicht hadden).
Als de aarde sneller draait zijn die werkmomenten dus korter en heb je dus een kortere werkdagDe verhouding tussen werk en "rust" blijven dan gelijk.
[ Voor 80% gewijzigd door .oisyn op 23-12-2010 16:07 ]
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.
Je moet toch je heel snel voortbewegen om de tijd langzamer te laten gaan, heeft volgens mij weinig met zwaartekracht te maken?.oisyn schreef op donderdag 23 december 2010 @ 11:27:
Wat je ook kunt doen is je vrije tijd ver van aarde (en andere zwaartekracht bronnen) besteden, dan heb je ook meer tijd tot je beschikking
Hoogie2004 schreef op donderdag 23 december 2010 @ 11:36:
[...]
Je moet toch je heel snel voortbewegen om de tijd langzamer te laten gaan, heeft volgens mij weinig met zwaartekracht te maken?
The faster you go, the shorter you are
(Einstein)
Zwaartekracht en tijd zijn stiekem behoorlijk aan elkaar gerelateerd.
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij
Maar dan zou je dus oneindig veel telefoons kunnen unlocken? Of kun je je apphub account koppelen aan 1 specifieke telefoon? Aan de andere kant, je wil als developer natuurlijk ook wel kunnen testen met meerdere telefoons, niet 1 specifieke.Jan_V schreef op donderdag 23 december 2010 @ 08:28:
Van wat ik gelezen heb maakt het volgens mij niets uit voor die developer unlock met welk live id je de telefoon hebt gekoppeld.
Mja, dan moet ik eerst een AppHub account aanmaken. Beetje kip-en-ei probleemWellicht dat er anderen op het AppHub forum al vragen over hebben gesteld. Dacht ook dat @mahoekst hier een blogpost over had gemaakt, maar kan het niet zo snel terug vinden.
[.edit: oh nee wacht ik kan met m'n bestaande live id op het forum posten]
UK schijnt beter te zijn voor Europeanen, al weet ik nu zo snel niet meer waarom precies. Was geloof ik iets met dat je dan makkelijker kan switchen als het in NL uit is. Ik heb trouwens ook een UK debit card van Neteller.Wel moet je voor Zune je systeem locatie op US hebben ingesteld, anders zie je geen apps, maar dat wist je vast al wel.
.edit2: ah even het AppHub forum doorgebladerd. Je kunt met je AppHub account tot 3 willekeurige telefoons unlocken. Het Live ID van je AppHub account hoeft dus niet overeen te komen met je WP7 Live ID. Binnenkort maar eens proberen dan
[ Voor 19% gewijzigd door .oisyn op 23-12-2010 11:47 ]
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.
Dat is de speciale relativiteitstheorie, de generale relativiteitstheorie beschrijft time dilation onder versnelling (en dus ook zwaartekracht). Bovendien moet je juist andersom denken - als jij meer tijd wil hebben dan de mensen op aarde, dan moet de tijd voor de mensen op aarde langzamer verlopen dan jou. En dus moeten óf de mensen op aarde heel snel bewegen (da's wat lastig voor elkaar te krijgen), of ze moeten dichter bij een zwaartekrachtbron zitten.Hoogie2004 schreef op donderdag 23 december 2010 @ 11:36:
[...]
Je moet toch je heel snel voortbewegen om de tijd langzamer te laten gaan, heeft volgens mij weinig met zwaartekracht te maken?
[ Voor 4% gewijzigd door .oisyn op 23-12-2010 11:54 ]
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.
"En nu allemaal!!!11.... 3...2...1...GO!".oisyn schreef op donderdag 23 december 2010 @ 11:53:
En dus moeten óf de mensen op aarde heel snel bewegen
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij
Ja, en als alle Chinezen tegelijk springen, schiet de aarde uit zijn baan.RobIII schreef op donderdag 23 december 2010 @ 12:09:
[...]
"En nu allemaal!!!11.... 3...2...1...GO!"
Maar is wel humor om gewoon met een ruimteschip een flinke reis te maken van 1 jaar (voor jezelf) en dan op aarde terugkomen waar ze 500 jaar verder zijn. Schiet lekker op, kan je tegen een familielid zeggen: "Hoi, ik ben je overoveroveroveroveroverovergrootvader!" En dan lekker een gemuteerd virus mee terugnemen en de hele populatie naar de knoppen helpen. Oops!
Volgens mij moest je dan al met de snelheid van het lichtreizen en dan nog was het verschil maar heel klein.Davio schreef op donderdag 23 december 2010 @ 14:55:
[...]
Ja, en als alle Chinezen tegelijk springen, schiet de aarde uit zijn baan.![]()
Maar is wel humor om gewoon met een ruimteschip een flinke reis te maken van 1 jaar (voor jezelf) en dan op aarde terugkomen waar ze 500 jaar verder zijn. Schiet lekker op, kan je tegen een familielid zeggen: "Hoi, ik ben je overoveroveroveroveroverovergrootvader!" En dan lekker een gemuteerd virus mee terugnemen en de hele populatie naar de knoppen helpen. Oops!
Maar goed dat heeft verder weinig met programmeren te maken
Volgende week wel vrij, lekker weekje in Duitsland in een luxe appartement zitten met z'n vieren
Kater? Eerst water, de rest komt later
Maar in dat voorbeeld heb je dus een Lorentz factor van 500 nodig, dus uit mijn hoofd:
1 / √(1 - b2) = 500
√(1 - b2) = 1/500
1 - b2 = (1/500)2
b2 = 1 - (1/500)2
b = √(1 - (1/500)2) = 0.999997999998
Dus, je moet met 0.999997999998c reizen
.edit: ter vergelijking, de Lorentz factor van de protonen in de LHC bij 14TeV botsingen is ongeveer 7500 (0.999999991c). Als je een seconde mee zou reizen dan zou er voor de rest op aarde dus meer dan 2 uur verstreken zijn
[ Voor 19% gewijzigd door .oisyn op 23-12-2010 16:16 ]
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.
Altijd thuiswerkenDavio schreef op donderdag 23 december 2010 @ 14:56:
Morgen verplicht thuiswerken, omdat er niemand op kantoor is en ik heb natuurlijk geen sleutel van de buitendeur noch de code van het alarm.
Vervelend.
ZZP'er
Eigen baas zijn: Leuk
Contract voor onbepaalde tijd met leuk salaris: Ook leuk
Keuzes he.
Oh, volgens mij niet hoor. Des te harder je gaat des te groter de massa, waardoor je de lichtsnelheid enkel kan benaderen (je kan niet oneindig grote massa hebben), daardoor zal een jaar (of welke tijdseenheid dan ook) niet oneindig lang kunnen duren..oisyn schreef op donderdag 23 december 2010 @ 16:02:
Als je met de snelheid met het licht reist dan duurt een jaar voor jou oneindig lang voor ons. Maar gelukkig kan dat niet.
No trees were harmed in creating this message. However, a large number of electrons were terribly inconvenienced.
[ Voor 35% gewijzigd door .oisyn op 23-12-2010 16:28 ]
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.
Je hebt helemaal gelijk, maar ik studeer nog dus dan kan hetDavio schreef op donderdag 23 december 2010 @ 16:23:
[...]
Eigen baas zijn: Leuk
Contract voor onbepaalde tijd met leuk salaris: Ook leuk
Keuzes he.
Verwijderd
Fatsoenlijke kleurtjes in mijn codeCloud schreef op woensdag 22 december 2010 @ 12:35:
Ik ben Resharper aan het testen in VS2010 Professional en vind het tot nu toe een leuke toevoeging. Zitten hier en daar wat leuke verbeteringen in! Op dit moment vind ik de extra code analysis en StyleCop-zaken wel erg praktisch en ook de extra localisation support (strings in code afsplitsen) vind ik interessant.
Zijn er hier meer mensen die Resharper in combinatie met VS2010 gebruiken?
1
2
3
4
5
6
7
8
9
10
11
12
| var foos = from obj in collection select new Foo(obj); foreach (var foo in foos) { //.. } foreach (var foo in foos) { //.. } |
[ Voor 16% gewijzigd door Woy op 23-12-2010 16:48 ]
“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.”
Maar waarom heb je dan 2 loops ipv 1? Kan het niet allemaal in 1 loop?
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.
Die is wel erg raar, ik had verwacht dat als hij hem een 2de keer zou uitvoeren hij met een nieuwe foos zou beginnen. Is het nog steeds niet erg handig, maar dat hij het foos object dubbel vult is wel erg vreemd....Woy schreef op donderdag 23 december 2010 @ 16:47:
Grrr, ik had net een wazige bug, want ik had niet door dat in het volgende stukje, de LINQ query 2 maal uitgevoerd word, en je dus meer Foo objecten hebt dan je verwacht. Heb nu maar een ToArray toegevoegd, want ik wil wel 2 maal over de collectie heen lopen, maar het moet wel 2 maal dezelfde collectie zijn
C#:
1 2 3 4 5 6 7 8 9 10 11 12 var foos = from obj in collection select new Foo(obj); foreach (var foo in foos) { //.. } foreach (var foo in foos) { //.. }
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.
foos is gewoon een IEnumerable en het aaroepen van GetEnumerator voert de query daadwerkelijk uit. Je krijgt dus 2 verschillende IEnumerator's met andere objecten.Gertjan. schreef op donderdag 23 december 2010 @ 17:49:
[...]
Die is wel erg raar, ik had verwacht dat als hij hem een 2de keer zou uitvoeren hij met een nieuwe foos zou beginnen. Is het nog steeds niet erg handig, maar dat hij het foos object dubbel vult is wel erg vreemd....
“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.”
Ah, ik dacht dat je bedoelde dat in de eerste run er 10 elementen waren en bij de tweede 20, maar je bedoelt dat je dus gewoon een "verse" dataset krijgt bij de 2de var. Nog steeds niet helemaal zoals je zou verwachten, maar minder verwarrend dan ik in eerste instantie had begrepenWoy schreef op donderdag 23 december 2010 @ 17:55:
[...]
foos is gewoon een IEnumerable en het aaroepen van GetEnumerator voert de query daadwerkelijk uit. Je krijgt dus 2 verschillende IEnumerator's met andere objecten
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.
Dat is helemaal niet raar. Eigen aan LINQ en z'n deferred execution..Gertjan. schreef op donderdag 23 december 2010 @ 17:49:
[...]
Die is wel erg raar, ik had verwacht dat als hij hem een 2de keer zou uitvoeren hij met een nieuwe foos zou beginnen. Is het nog steeds niet erg handig, maar dat hij het foos object dubbel vult is wel erg vreemd....
In volgend voorbeeld , is foos eigenlijk een expression tree. Foos bevat dus niet de resultaten van de query, maar de query zelf.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| var melp = new List<int> ();
var foos = melp.Where (i => ( i % 2 ) == 0);
melp.Add (1);
melp.Add (2);
melp.Add (3);
foreach( int i in foos )
{
Console.WriteLine (i);
}
melp.Add (4);
foreach( int i in foos )
{
Console.WriteLine (i);
}
Console.ReadLine (); |
(In het kader van self-documenting code zou je 'foos' eigenlijk moeten hernoemen naar 'query'
https://fgheysels.github.io/
Kan je wel een boze smiley d'r bij zetten, maar je wist dus eigenlijk gewoon niet hoe linq werktWoy schreef op donderdag 23 december 2010 @ 16:47:
Grrr, ik had net een wazige bug, want ik had niet door dat in het volgende stukje, de LINQ query 2 maal uitgevoerd word, en je dus meer Foo objecten hebt dan je verwacht. Heb nu maar een ToArray toegevoegd, want ik wil wel 2 maal over de collectie heen lopen, maar het moet wel 2 maal dezelfde collectie zijn
C#:
1 2 3 4 5 6 7 8 9 10 11 12 var foos = from obj in collection select new Foo(obj); foreach (var foo in foos) { //.. } foreach (var foo in foos) { //.. }
En dat allemaal uit je hoofd. Vet ...oisyn schreef op donderdag 23 december 2010 @ 16:02:
Als je met de snelheid met het licht reist dan duurt een jaar voor jou oneindig lang voor ons. Maar gelukkig kan dat niet.
Maar in dat voorbeeld heb je dus een Lorentz factor van 500 nodig, dus uit mijn hoofd:
1 / √(1 - b2) = 500
√(1 - b2) = 1/500
1 - b2 = (1/500)2
b2 = 1 - (1/500)2
b = √(1 - (1/500)2) = 0.999997999998
Dus, je moet met 0.999997999998c reizen
.edit: ter vergelijking, de Lorentz factor van de protonen in de LHC bij 14TeV botsingen is ongeveer 7500 (0.999999991c). Als je een seconde mee zou reizen dan zou er voor de rest op aarde dus meer dan 2 uur verstreken zijn
Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.
.edit: hier stond onzin
[ Voor 115% gewijzigd door .oisyn op 23-12-2010 23:27 ]
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.
Is dat ook niet een klein beetje het nadeel van frameworks? Veel mensen gebruiken frameworks zonder te weten hoe het exact werkt. Dat is aan de ene kant mooi, je kunt snel dingen maken zonder al te veel code te moeten maken, maar dit geval bewijst dat je toch enige inhoudelijke kennis moet hebben als je er goed mee wil werken. Maar wees eens eerlijk, ken jij alle frameworks die je gebruikt van buiten? Ik kan je in ieder geval verzekeren dat libraries/frameworks als JQuery door weinig gebruikers echt begrepen wordt (en dus weten wat er exact gebeurt).sig69 schreef op donderdag 23 december 2010 @ 21:28:
[...]
Kan je wel een boze smiley d'r bij zetten, maar je wist dus eigenlijk gewoon niet hoe linq werkt
Daarnaast zou je verwachten dat de var foos al gevuld wordt in in het eerste deel en dat je vervolgens door die collectie heen loopt. Op de meeste tutorials wordt voor zover ik weet niet gemeld dat hij de query pas gaat uitvoeren wanneer je er doorheen gaat lopen en dat bij de 2de run een nieuwe query wordt uitgevoerd (logischerwijs zou je iets van caching mogen verwachten, LINQ houdt namelijk ook bij wat er gewijzigd is, er is dus een bepaalde dataset aanwezig op de client).
Wat gebeurt er eigenlijk als je een query uit laat voeren door Linq terwijl er data is gewijzigd? Dus je past data in je context aan, maar commit deze nog niet (de wijziging bestaat dus alleen op de client) en vervolgens voer je een select uit, krijg je dan puur de DB versie van de data of is LINQ dan wel slim genoeg om lokale data te mixen met data uit de db.
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.
Ik weet best hoe LINQ werkt, maar het is een foutje die je snel over het hoofd ziet. De boze smiley was ook niet tegen LINQ bedoeld, maar dat ik een tijdje heb lopen zoeken naar zo'n stomme fout.sig69 schreef op donderdag 23 december 2010 @ 21:28:
[...]
Kan je wel een boze smiley d'r bij zetten, maar je wist dus eigenlijk gewoon niet hoe linq werkt
LINQ houd helemaal niks bij. LINQ is "gewoon" een stukje syntax. De context waar jij het over hebt is waarschijnlijk LINQ to SQL, maar dat is natuurlijk gewoon een LINQ provider..Gertjan. schreef op vrijdag 24 december 2010 @ 06:52:
LINQ houdt namelijk ook bij wat er gewijzigd is, er is dus een bepaalde dataset aanwezig op de client).
Dat is helemaal afhankelijk van wat de provider doet. En is dus niet LINQ afhankelijk.Wat gebeurt er eigenlijk als je een query uit laat voeren door Linq terwijl er data is gewijzigd? Dus je past data in je context aan, maar commit deze nog niet (de wijziging bestaat dus alleen op de client) en vervolgens voer je een select uit, krijg je dan puur de DB versie van de data of is LINQ dan wel slim genoeg om lokale data te mixen met data uit de db.
“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.”
LINQ houdt niets bij. Het is slechts een protocol/interface/hoe-je-het-ook-wilt-noemen..Gertjan. schreef op vrijdag 24 december 2010 @ 06:52:
Daarnaast zou je verwachten dat de var foos al gevuld wordt in in het eerste deel en dat je vervolgens door die collectie heen loopt. Op de meeste tutorials wordt voor zover ik weet niet gemeld dat hij de query pas gaat uitvoeren wanneer je er doorheen gaat lopen en dat bij de 2de run een nieuwe query wordt uitgevoerd (logischerwijs zou je iets van caching mogen verwachten, LINQ houdt namelijk ook bij wat er gewijzigd is, er is dus een bepaalde dataset aanwezig op de client).
Bovendien is caching niet triviaal en hoeft het niet altijd bijv. sneller te zijn. Soms is het beter om iets meerdere keren uit te rekenen dan het te cachen.
Ipsa Scientia Potestas Est
NNID: ShinNoNoir
Rustig dagje ook, beetje openstaande items afwerken om weer schoon het nieuwe jaar in te gaan.
Kater? Eerst water, de rest komt later
Verwijderd
Dit is wel stiekem een smerige die ook ontstond door hoe de foreach lus te werk gaat in combinatie met LINQsig69 schreef op donderdag 23 december 2010 @ 21:28:
[...]
Kan je wel een boze smiley d'r bij zetten, maar je wist dus eigenlijk gewoon niet hoe linq werkt
Voor mij wel hoor
Kater? Eerst water, de rest komt later
Verwijderd
Zit me toch af te vragen of de vodka voor straks al gehaalt is(A)
Baas betaalt, CAO compensatie oid
Vanaf 2011 ga ik om van VHDL naar software ontwikkelaar op embedded Linux (OpenSlug / OpenEmbedded).
Het gaat voornamelijk C worden en ik mag meteen me op cursus genaamd SaferC
* Matis zin an heeft
[ Voor 7% gewijzigd door Matis op 24-12-2010 10:54 ]
If money talks then I'm a mime
If time is money then I'm out of time
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.
If money talks then I'm a mime
If time is money then I'm out of time
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.
Maar ik loop maar wat recalcitrant te ranten hoor, voor embedded toepassingen met stricte geheugenrequirements is het natuurlijk uitermate geschikt
[ Voor 55% gewijzigd door .oisyn op 24-12-2010 12:12 ]
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.
PHP.oisyn schreef op vrijdag 24 december 2010 @ 12:11:
Argument van niets natuurlijk, dat gaat ook op voor COBOL en PHP
Dat neemt natuurlijk niet weg dat er (misschien/hoogstwaarschijnlijk) ook nog andere programmeertalen zijn die ook prima kunnen draaien op OpenSlug.Maar ik loop maar wat recalcitrant te ranten hoor, voor embedded toepassingen met stricte geheugenrequirements is het natuurlijk uitermate geschikt
Daarom mijn, oprecht geïtereerde, vraag
If money talks then I'm a mime
If time is money then I'm out of time
Als je een Linux bordje hebt met toch redelijk wat geheugen vind ik het fijner om C++ te gebruiken dan C.
Hetzelfde geldt voor PHP: het is een vreselijke taal, als taal, maar ik gebruik het zelf ook omdat het relatief efficient is (het draait prima op de meest aftandse hardware; dat moet je met een Java applicatieserver niet proberen -- en ja, ik heb het geprobeerd!) en je kunt er vrij snel simpele websites mee in elkaar kunt hacken. Half Tweakers.net draait nog op PHP (dacht ik?) dus je kunt er ook wel stabiele, uitgebreidere websites mee maken.
COBOL is een iets ander verhaal, aangezien het groot geworden is in een tijd waarin er niet zoveel te kiezen was, en de systemen die er nu nog op draaien doen dat alleen omdat er geen concrete aanleiding (of budget) is om ze grondig te herzien. Nieuwe projecten worden niet meer gestart op basis van COBOL, maar in C absoluut wel.
FortranMatis schreef op vrijdag 24 december 2010 @ 12:22:
Dat neemt natuurlijk niet weg dat er (misschien/hoogstwaarschijnlijk) ook nog andere programmeertalen zijn die ook prima kunnen draaien op OpenSlug.
Maar serieus: vziw is alle embedded development boven het niveau van VHDL/AHDL en dergelijke gewoon op C gebaseerd. En SlugOS is een volwaardig op ARM gebaseerd Linux platform (toch?) dus praktisch alle talen die een ARM port hebben draaien daar wel op. De keuze voor C is dan voornamelijk gemotiveerd door de wens om zo min mogelijk overhead te hebben, niet in de laaste plaats om geheugen te besparen.
GNU libc is ongeveer 1MB, libstdc++ ook zoiets, dus ook C++ is best een optie. Voor embedded development zijn MB's natuurlijk wel veel. uClibc is een stuk kleiner; als je daar je OS op baseert kan ik me voorstellen dat je C++ teveel overhead vindt.
[ Voor 10% gewijzigd door Soultaker op 24-12-2010 12:41 ]
leesvoerSoultaker schreef op vrijdag 24 december 2010 @ 12:29:
Over mooie talen kunnen we filosoferen (en dan valt C++ minstens zoveel te verwijten als C) maar als je het over "productief" hebt dan lijkt het simpele feit dat er veel goede software in C geschreven is me toch wel een argument.
Kater? Eerst water, de rest komt later
Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'
Verwijderd
Jaren geleden (eind jaren 80) nog 's een muis gestuurd menusysteem voor COBOL gemaakt..oisyn schreef op vrijdag 24 december 2010 @ 12:11:
Argument van niets natuurlijk, dat gaat ook op voor COBOL en PHP
/me Vond afgelopen maand met verhuizen ook nog de bijbel van Ebbinkhuijzen
Jup, al zijn we momenteel ook aan het orienteren op PPC's en Freescale-processoren.Soultaker schreef op vrijdag 24 december 2010 @ 12:37:
Maar serieus: vziw is alle embedded development boven het niveau van VHDL/AHDL en dergelijke gewoon op C gebaseerd. En SlugOS is een volwaardig op ARM gebaseerd Linux platform (toch?) dus praktisch alle talen die een ARM port hebben draaien daar wel op. De keuze voor C is dan voornamelijk gemotiveerd door de wens om zo min mogelijk overhead te hebben, niet in de laaste plaats om geheugen te besparen.
Op de nieuwe platformen gaat geheugen een steeds belangrijkere rol spelen, mede omdat de PCB's steeds voller zitten. Hierdoor zijn geheugenmodules steeds moeilijker te routen.GNU libc is ongeveer 1MB, libstdc++ ook zoiets, dus ook C++ is best een optie. Voor embedded development zijn MB's natuurlijk wel veel. uClibc is een stuk kleiner; als je daar je OS op baseert kan ik me voorstellen dat je C++ teveel overhead vindt.
Met OpenEmbedded krijgen we een rootfs met een zo klein mogelijke footprint. Het rootfs mag zelf niet groter zijn dan 5MB en de services in totaal draaien op 8MB aan SDRAM.
Less is moar
If money talks then I'm a mime
If time is money then I'm out of time
Je snapt mijn punt vast welJanoz schreef op vrijdag 24 december 2010 @ 12:47:
Soultaker vindt het een argument. Dat jij dat niet vindt maakt de bewering van Soultaker nog geen drogreden
Kater? Eerst water, de rest komt later
Dan citeer ik ondertussen even Bjarne Stroustrup:
There are only two kinds of languages: the ones people complain about and the ones nobody uses.
Het is wel een drogreden, gezien dat de ene stelling (C is niet productief) niet ontkracht wordt met de andere (er is veel software in C geschreven). Je kunt natuurlijk wel stellen dat mensen zich blijkbaar niet laten tegenhouden door de onproductiviteit van de taal, als die eerste stelling waar was.Janoz schreef op vrijdag 24 december 2010 @ 12:47:
Soultaker vindt het een argument. Dat jij dat niet vindt maakt de bewering van Soultaker nog geen drogreden
.edit: misschien moet ik ook op post drukken als ik mijn reactie heb getypt.
De mate van productiviteit is de tijd waarin je tot een bepaalde oplossing komt, waarbij een kortere tijd als productiever kan worden beschouwd.Soultaker schreef op vrijdag 24 december 2010 @ 13:16:
Geef jij dan een mooie definitie van productiviteit
[ Voor 27% gewijzigd door .oisyn op 24-12-2010 13:32 ]
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.
Ik dacht aan Non sequitur.Soultaker schreef op vrijdag 24 december 2010 @ 13:16:
Geef jij dan een mooie definitie van productiviteit en citeer je gelijk even het subkopje van het Wikipedia-artikel dat je aanhaalt om te laten zien waar ik precies de mist in ga?
Maar het zou kunnen dat we allebei iets anders verstaan onder 'productiviteit'. Ik beschouw productiviteit in een programmeertaal als de verhouding van inspanning die je in je project stopt, afgezet tegen het resultaat dat dat oplevert. Dus hoe minder je hoeft te doen om hetzelfde resultaat te verkrijgen, hoe hoger de productiviteit.
Maar het lijkt er op dat jij productiviteit ziet als de mate waarin een taal wordt gebruikt in toepassingen, dan klopt jouw uitspraak wel.
Kater? Eerst water, de rest komt later
Dus alle ideeën behalve iets ingames zijn welkom
EDIT: Zo beter ?
[ Voor 4% gewijzigd door Mavamaarten op 24-12-2010 13:42 ]
Android developer & dürüm-liefhebber
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.
VB.Net/VB6/Beginnend C# trouwens.
[ Voor 6% gewijzigd door Mavamaarten op 24-12-2010 13:44 ]
Android developer & dürüm-liefhebber
Zoek een leuke NES/SNES classic en maak een multiplayer versie
[ Voor 55% gewijzigd door Gamebuster op 24-12-2010 13:45 ]
Let op: Mijn post bevat meningen, aannames of onwaarheden
Dat tooltje heb je snel geschreven
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.
Lijkt me nou ook niet iets waar je mee moet beginnen als beginnend programmeur.Mavamaarten schreef op vrijdag 24 december 2010 @ 13:43:
Iets ingame krijgen = een simpel menu ingame werkend krijgen. Een menu dat bij voorkeur in Black Ops of in MW2 tevoorschijn komt, zoals Steam of Xfire ingame. Natuurlijk kan ik zoiets groots als een hele interface niet maken, maar zelfs een simpel menuutje lukt me niet
VB.Net/VB6/Beginnend C# trouwens.
Als er al geen native support voor XFire en of Steam in het spel ingebouwd zullen ze iets doen als dynamisch library calls overriden oid(denk ik). Niet iets waar je met VB aan wil/kan beginnen
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.
Accoord, met de kanttekening dat de kwaliteit van de oplossing ook meespeelt. Dat maakt "productiviteit" een nogal fuzzy begrip, want je kunt wel heel snel oplossingen in elkaar hacken, maar op de lange termijn is dat geen vruchtbare manier van software ontwikkelen..oisyn schreef op vrijdag 24 december 2010 @ 13:26:
De mate van productiviteit is de tijd waarin je tot een bepaalde oplossing komt, waarbij een kortere tijd als productiever kan worden beschouwd.
Ik noem het erbij omdat juist low-level talen beter geschikt zijn om aan secundaire kwaliteitscriteria als snelheid, geheugengebruik en betrouwbaarheid te werken. Op dezelfde manier zijn statisch getypeerde talen beter geschikt om uitbreidbare en onderhoudbare software te schrijven dan dynamisch getypeerde talen, hoewel dat vaak wel betekent dat je meer code moet schrijven.
Als je jouw definitie van productiviteit aanhoudt is het verleidelijk om alles in scripttalen in elkaar te hacken, maar dat is een nogal kortzichtige aanpak, die de voordelen van low-level talen tekort doet.
Puur feitelijk heb je gelijk, maar er zit een economisch argument achter: als een taal niet een zekere minimale potentie voor productiveit heeft, dan wordt die natuurlijk niet gebruikt. We mogen dus concluderen dat de productiviteit van C groter dan 0 is, en ik durf zelfs de stelling aan dat die niet veel achterligt op die van concurrerende talen, anders zouden commerciële bedrijven die C gebruiken (en dat zijn er nogal wat) weggeconcureerd worden door bedrijven die 20x zo "productieve" talen als Java en C++ gebruiken.Het is wel een drogreden, gezien dat de ene stelling (C is niet productief) niet ontkracht wordt met de andere (er is veel software in C geschreven).
Dat lijkt me empirisch bewijs dat het óf met de productiviteit van C wel meevalt, óf dat er grote andere voordelen aan het gebruik van C kleven, die het grote gebrek aan productiviteit op de een of andere manier compenseren. Er zijn zeker voordelen (denk aan portabiliteit en beschikbaarheid van goede programmeurs) maar die gelden ook voor de belangrijkste concurrenten, dus kom ik toch op de eerste conclusie uit.
[ Voor 72% gewijzigd door .oisyn op 24-12-2010 13:59 ]
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.
Ik programmeer al een stuk of 6-7 jaar in .Net, 3 jaar in vb6 en vanaf dit jaar C#...
Wat me trouwens wel gelukt is, is een web interface te maken die draait in de xfire ingame webbrowser, zodat ik een ingame menu kreeg
Android developer & dürüm-liefhebber
Excuses als je je beledigd voelde, ik dacht alleen maar te quoten wat in je bericht stond, maar dat sloeg waarschijnlijk alleen op je C# ervaringMavamaarten schreef op vrijdag 24 december 2010 @ 13:57:
@EddoH Beginnend programmeur...
Ik programmeer al een stuk of 6-7 jaar in .Net, 3 jaar in vb6 en vanaf dit jaar C#...
Wat me trouwens wel gelukt is, is een web interface te maken die draait in de xfire ingame webbrowser, zodat ik een ingame menu kreegEen eigen servermenu (servers van vrienden), en als je erop klikt dan connect de game dat je speelt naar die server. Simpel maar handig
Zoals .oisyn zegt. Je moet d3d**.dll hooken om het op een 'echte' manier voor elkaar te krijgen.
VB6 is geen .NET.Mavamaarten schreef op vrijdag 24 december 2010 @ 13:57:
@EddoH Beginnend programmeur...
Ik programmeer al een stuk of 6-7 jaar in .Net, 3 jaar in vb6 en vanaf dit jaar C#...
https://fgheysels.github.io/
@whoami Hoezo ? Ik programmeer al 6 jaar in .Net, al 3 jaar in VB6, en sinds kort in C#. En dat dit niet hetzelfde is... daar was ik ook al wel achtergekomen
[ Voor 30% gewijzigd door Mavamaarten op 24-12-2010 14:07 ]
Android developer & dürüm-liefhebber
Verwijderd
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."
Verwijderd schreef op vrijdag 24 december 2010 @ 14:39:
Toen ik deze zag, moest ik hem wel delen met jullie!
[...]
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij
Kater? Eerst water, de rest komt later
Geniaal!Verwijderd schreef op vrijdag 24 december 2010 @ 14:39:
Toen ik deze zag, moest ik hem wel delen met jullie!
[...]
Dit topic is gesloten.
![]()
Dit topic is niet de plaats om te lopen helpdesken. De Coffee Corner is primair bedoeld als uitlaatklep, niet als vraagbaak