yoy.be "Why-o-Why"
2022 ...
januari (23)
februari (25)
maart (21)
april (22)
mei (21)
juni (21)
juli (5)
augustus
september
oktober
november
december
06-03 10:10
FC
Why are so many high-income Americans living paycheck to paycheck? # Zie, dat vroeg ik me ook al af. Done ze veel, zo niet alles, op krediet? Hier staat dat er een deel gewoon veel uitgeeft en daarom ongeveer uitkomt aan het eind van de maand. Wat er niet staat maar toch ook moet spelen is dat studeren dat uiteindelijk duur is (en je dus afstudeert diep in het rood) en hun vadertje staat veel minder gul is op latere leeftijd dan hier...
06-03 19:23
cringely
Apple’s Space Ambitions are Real # Ja, het kan kloppen. En dan zijn het weer de Amerikanen die het voor het zeggen hebben, dat gaan ze niet leuk vinden in de Europese Commissie...
06-08 17:06
HN
Sunsetting Atom Text Editor # Dit zat er aan te komen, dit had je moeten zien aankomen. Ikzelf heb ook even intens atom.io gaan gebruiken, tot ik — zoals waarschijnlijk velen — ben overgestapt naar
vscode. Dat en deze die aan
Sublime blijven plakken lijken nog heel moeilijk van iets anders te overtuigen, heb ik zo de indruk... Maar inderdaad
Electron leeft verder, de inspanning die naar Atom ging nu naar andere dingen gaat is misschien niet slecht.
06-10 16:29
phys
Nuclear energy is wildly uncompetitive without a high price on carbon dioxide emissions # Boeiend. Ja, een nuchtere discussie is nodig. Als je gegenereerde CO₂ wil zien meetellen in de markprijs, dan moet de prijs van de elektriciteit zoals we ze nu kennen flink omhoog, want maar een (klein?) deel wordt nucleair opgewekt. Dat gaan de mensen niet graag zien komen natuurlijk. En de voordelen van een sterke vermindering van de CO₂ uitstoot zijn niet zo tastbaar. Het gaat interessant zijn waar de opbrengst van de carbon-taks voor moet worden aagewend worden, neem ik aan. Uitbreiding van het elektriciteits-netwerk? Batterij-installaties? Vooruitbetalen van de nucleaire afbouw?
06-14 10:00
𝒟 ɴʟ
Microsoft stopt Internet Explorer support # Ik dacht ooit iets super vernuft te kunnen maken om met
OleDraw en een TWebBrowser instance relatief vlot HTML in een JPG te kunnen omzetten, en dit heeft jaren vlot gewerkt voor iets op het werk, maar dit heb ik dan toch maar recent met iets nieuw vervangen, in de veronderstelling dat dit mogelijk 'binnenkort' (of toch op volgende Windows versies) gewoon helemaal niet meer gaat werken. (Voor wie het interesseert: nee, ik heb het niet met een 'headless browser' vervangen, dat is veel te veel overkill voor wat het ding eigenlijk moest doen...)
06-16 06:34
Independent 🇬🇧
PG&E moves power underground in plan to bury 10,000 miles # Ik blijf mij afvragen of ondergrondse hoogspanning altijd met gelijkspanning moet. Het probleem daarbij is het verlies bij omzetting (x2) en de extra plaats en investering dat die omzettingsinstallaties nodig hebben... Ik beeld me een tunnel in met daarin een hoogspanningskabel, maar dat is misschien te simplistisch. En of dat dan nog altijd minder duur is dan alleen een kabel in de grond (met twee omzettingsinstallaties) weet ik ook niet natuurlijk.
06-17 10:57
TheCritic 🇬🇧
The American nightmare # Ik vraag me ook af wat er effectief zou zijn tegen de 'zwaai naar rechts' die zich blijkbaar blijft doorzetten. Plus ook moeten we waken dat er geen 'zwaai naar links' wordt ingezet. Als we ons nu inzetten tegen de pendelbeweging an sich? Vóór langetermijndenken en nuance?
06-17 16:50
jalopnik
Ferrari Says Never to Self-Driving # Ah kijk. Een tijd terug dacht ik dat er een gevaar bestaat de Jan-met-de-pet-in-de-straat die het allemaal maar moet zien te volgen hopeloos in de war zou raken tussen elektrische wagens en zelf-rijdende wagens, en de twee onterecht over een enkele kam zou scheren, maar nu maak ik me daar geen zorgen meer in. De prijs van elektrische wagens gaat genoegdoend omlaag zodat het er naar uit ziet dat ze langzaamaan voor heel veel mensen een betere optie worden, en met die zelf-rijdende auto's is er nog een hele hoop niet in orde...
06-18 15:00
Motley Fool
Can Bitcoin Reach $100,000? # Zou ik kunnen gelijk hebben met het idee dat vanwege de inflatie eerst de 'echte houders' wat verkopen — of moeten verkopen — en dat door die verkoop de 'speculatieve houders' zijn mee gaan verkopen? Is de daling van nu dus eigenlijk een 'correctie'? Waar zou de bodem dan zitten? Zou het terug ophoog gaan? Naar 100K$? Wel ben ik bijna zeker dat niet de finale interesse-val is zoals de ontwerper van Bitcoin had voorzien.
06-17 11:29
tweakers
TSMC produceert komende drie jaar 3nm-chips op vijf verschillende procedés # Dat is toch gek?! Straks gaan ze zo klein dat elektronen gewoon niet meer braaf van links naar rechts gaan springen! Meer nog, wat ik hier niet terugvind, als ze zo klein gaan, in massa-productie, dan als er iets fout is, dan gaat het goed fout en zijn er direct x units voor de vuilbak. Meer nog, het gevaar wordt toch groter nu dat in de post-productie tests er defecten niet worden ontdekt?
06-20 20:40
HN
I Fucking Hate Jira # Ik ben er vooralsnog ver uit de buurt van kunnen blijven (hoewel een ander team op het werk is gaan gebruiken...) Ik ben dus niet op de hoogte van de sterke en (blijkbaar veelvuldige) mindere punten. Wel ben ik verregaand geïnvesteerd in
mijn eigen oplossing en zal waarschijnlijk mijn eigen set inzichten en meningen aanbrengen mocht ik ook moeten een evaluatie aanbrengen.
06-20 14:00
vox
Why grain can’t get out of Ukraine # Zou er al in stilte worden gewerkt aan een internationaal politiek momentum om een internationale alliantie te maken die van buiten Ukraïne kan optreden om de Russen te verdrijven? Het is gemakkelijker dan gezegd, en gaat een heel stuk meer inhouden dan wat we nu in Ukraïne zien. Wat met een eventuele dreiging langs de Finse grens? Wat met Moldavië? Wat met Wit-Rusland? Wat met Noord-Ossetië, nu Georgie blijkbaar ook in de Europese Unie wil? Ik blijf een storm op Moskou zien op de horizon van het domein aan mogelijke militaire reacties op de huidige malaise...
06-21 18:10
NWS
Vier miljoen (!) mensen hebben dringend hulp nodig na overstromingen in India en Bangladesh # Het is nu natuurlijk gemakkelijker dan gezegd, — en dit mag zeker niet af doen aan het respect en medeleven dat ik heb voor de mensen die dit moeten ondergaan — maar zou het kunnen dat er misschien meer had kunnen worden geïnvesteerd in infrastructuur van de waterwegen en regenwaterbeheersing? Ik dacht even aan die 'droge kanalen' die je af en toe wel eens in Amerikaanse films zag, maar da's misschien een brug te ver. Er is niet alleen het juiste politieke klimaat voor nodig, maar ook de kennis en kunde en die komen niet zomaar vanzelf natuurlijk.
06-22 18:16
phys
Startup using microorganisms to make 'green' cement # Ik was vandaag nog aan het denken: woestijnzand willen ze niet in de bouw om beton te maken, dat is te fijn. Het moet heel specifiek rivierzand zijn dat net precies goed genoeg is in korreltjes gebroken zonder al te veel door watererosie te zijn afgevlakt. Zou je toch een procédé kunnen ontwikkelen om woestijnzand 'om te zetten' in geschikt zand voor beton? Stel dat je het smelt (ter plekke in de woestijn op zonne-energie) en dat dan manueel verbrijzeld tot in de juiste graad?
06-24 16:18
scripting
It shouldn't be 6-3 # Hij mist denk ik de hoofdzaak in deze. Waarom zijn de hoogste justitiefunctionarissen hoegenaamd partij-gealignieerd?! Hun scheiding der machten is dus eigenlijk in gevaar. Meer nog: waarschijnlijk al geruime tijd een travestie. Ik dacht eerst 'waar zou je zelfs twee gemodereerden moeten vinden,' maar dan dacht ik hoe het bij ons zou gaan, en ik kreeg even een knoop in de maag aan de gedachte dat onze procureurs des konings zouden aan een partij verbonden zijn. Maar misschien weet ik er gewoon te weinig van (en is dat zelfs zo, maar in de praktijk gewoon helemaal geen probleem). Ik vraag me toch langzaamaan af of hun State of the Union eigenlijk plots niet heel erg in gevaar zou komen door al die domme dingen...
My take on Free vs FreeAndNil
2022-06-25 00:52
FreeAndNil
[permalink]
→ Coding in Delphi and beyond: Delphi Debates: FreeAndNil
;TLDR: I agree.
I, for myself, have a pretty straight-forward rule to follow. In most cases 'lifetime management' of objects is pretty plain and normal: there's one single place in the code where an object comes into existence (the call to a constructor), and exactly one single place in the code where it is cleaned up. In that case there's no reason that I can think of to use anything else than the Free
method. Sometimes the constructor is called from another constructor, and you free from the partner destructor, in effect linking the lifetime of the object to this 'owner' object. Most other cases, you just need an instance of a class to do something with. It typically looks like this:
var
a:TThing;
begin
a:=TThing.Create;
try
//...
finally
a.Free;
end;
end;
Neat! One very (very) important thing to note here is that under no circumstance you're supposed to do anything with this object reference after that (other than assigning with a new constructor call etc.) Thanks to Delphi internals, you'll probably get an access violation, but you might just as well end up calling some code that has been put in the memory where the instance was, and has unintended consequences.
If, for any reason whatsoever, you need/want to write code that may or may not be assigned to a live instance of an object, you could and should use nil
. In the places in the code where it's not sure if there's an instance, be sure to check for a nil
value. Consider this snippet:
var
a:TThing;
begin
a:=nil;//counter warning
try
if //only in some cases
begin
a:=TThing.Create;
//...
end;
//...
if a<>nil then
begin
//use a for something
end;
//...
finally
if a<>nil then
begin
a.Free;
a:=nil;
end;
end;
end;
Seasoned Pascal-coders will have objections to this snippet, rightfully so, but the point I want to make that there's some extra steps taken here to 'keep it safe'. There's just this one thing that's not so easy to spot: a.Free;
could in theory throw an exception. If there's an except
clause below that, and it wants to get some data from a
, it won't work. a
isn't nil, but the constructor may have already taken down the object instance so far down it will no longer behave as expected. There's a way around that though, and you can see for yourself rightaway if you have a look for yourself at FreeAndNil
itself:
procedure FreeAndNil(var Obj);
var
Temp:TObject;
begin
Temp:=TObject(Obj);
Pointer(Obj):=nil;
Temp.Free;
end;
(There's some casting to/from pointer and TObject here, but that's to make sure it works in even the strangest cases. It basically sets the reference to nil
before calling Free
.) If you've seen that first without the context I described above, you might think 'what is going on here' or 'what is the fuss about'. So I hope I was able to bring some enlightenment. The best case would be if you've learnt nothing new here, and also agree with this rule:
If you have an abnormal object instance lifetime management situation and/or need to entertain instance references that may be nil
, use FreeAndNil
. In all other cases use plain Free
(and keep calls to constructors and destructors in perfect balance!)
06-24 23:43
c|net
The Mercedes-Benz Vision EQXX Looks at Home on the Race Track - CNET # Oh, ontstaat daar een nieuwe wedstrijdsklasse? 1200Km op een volle lading (en dan nog over hebben voor een paar rondjes)! Wie doet beter? De vraag is wel of je de deelnemers op gelijke basis kan vergelijken, want als ze de passagiers-plaatsen bijvoorbeeld laten vallen ten voordele van nog een hoop batterijen, kan je waarschijnlijk gek gaan in afstand op een 'enkele batterijlading'...
06-24 23:27
Foreign Policy
What in the World? # 8/10! Heb er 3 goed gegokt, en dat van G7 had ik eigenlijk wel moeten weten...
06-26 13:34
/.
Are Today's Programmers Leaving Too Much Code Bloat? # Ik krijg mijn kop nog altijd niet rond
isOdd. Hoe is dat zo ver kunnen komen! Kon er echt niet meer ingegrepen worden? Wie schopt er de losgeslagen horde een geweten? Nee we moeten bijna niet meer rebooten na een blauw scherm, maar dit is
omdat er net nog een paar goeie de juiste dingen hebben kunnen doen voor het te laat was.
06-28 10:18
Metro 🇧🇪
Overheid werkt aan alternatief voor Itsme # Als ze slim zijn maken ze het 'open' genoeg, en direct klaar om ook Europees aan te bieden, al was het om tegenwicht te bieden aan Estland die hun platform ook graag zou ingevoerd zien over geheel Europa...
06-30 08:14
BBC world
Hello Kitty firm strikes China deal after viral hit # Ik blijf het gek vinden dat om disputen bij ons te vermijden, dezelfde firma's instaan voor alles rond Nijntje. Zo kunnen ze er goed over waken dat de twee niet samen gepromoot worden, en er geen verwarring kan ontstaan...
06-30 08:38
Independent 🇬🇧
Elon Musk suddenly stops tweeting # Misschien heeft hij het super druk als tegelijkertijd schot in de zaak komt bij zowel Starship als Cybertruck... (En Tesla Semi?)
06-29 21:34
boing
Defunct blogging platforms. # Zou er iemand bezig zijn met een soort meeting om te zien wanneer het internet een punt bereikt wanneer de helft van de (interessante) inter-website links naar een website gaan die intussen niet meer bestaat?
06-29 19:53
newsmonkey
James Bond: Producer geeft update over zoektocht naar nieuwe 007 # Hmm, nog los van wie het gaat moeten spelen, waar moeten ze met het concept 'James Bond' naar toe? Met al die superheldenfilms van tegenwoordig is er wel al eens op los gereboot, maar als je deze reboot moet het van direct de moeite zijn. Als ze 'de jeugd' willen aanspreken, zou een jonge Bond een idee zijn? Zodat we als toeschouwer samen met rekruut Bond een fictieve MI6 van binnen uit leren kennen? Natuurlijk met veel kleurrijke personages elk met een uitgewerkte achtergrond... Maar wat ken ik er van natuurlijk.