The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,839 other subscribers

The .NET garbage collector sort-of documented: coreclr/garbage-collection.md at master · dotnet/coreclr

Posted by jpluimers on 2018/05/31

Very interesting read: “Garbage Collection Design” by Maoni Stephens at [WayBackcoreclr/garbage-collection.md at master · dotnet/coreclr.

It’s part of this series of documents:

The Book of the Runtime

Welcome to the Book of the Runtime (BOTR) for the .NET Runtime. This contains a collection of articles about the non-trivial internals of the .NET Runtime. Its intended audience are people actually modifying the code or simply wishing to have a deep understanding of the runtime. Below is a table of contents.

at [WayBackcoreclr/Documentation/botr at master · dotnet/coreclr

I got there via these links:

–jeroen

Posted in .NET, Development, Software Development | Leave a Comment »

CVE-2017-11509: Firebird fbudf Module Authenticated Remote Code Execution – Firebird News

Posted by jpluimers on 2018/05/31

Ouch (despite one needs authenticated access): [WayBack] Firebird fbudf Module Authenticated Remote Code Execution – Firebird News

Here is the description for CVE-2017-11509

An authenticated remote attacker can execute arbitrary code in Firebird SQL
Server versions 2.5.7 and 3.0.2 by executing a malformed SQL statement. The
only known solution is to disable external UDF libraries from being loaded. In
order to achieve this, the default configuration has changed to UdfAccess=None.

This will prevent the fbudf module from being loaded, but may also break other
functionality relying on modules.

Here is the Debian security page with the issue : CVE-2017-11509

The thing I am really not happy about is that the 90 day limit has been overdrawn by about 180 days (see https://www.tenable.com/security/research/tra-2017-36)

Related:

Via:

–jeroen

Posted in Database Development, Development, Security, Software Development | Leave a Comment »

Coding is not “fun,” it’s technically and ethically complex — Quartz

Posted by jpluimers on 2018/05/31

Interesting read: [Archive.is/WayBackCoding is not “fun,” it’s technically and ethically complex — Quartz

via: [WayBack] Coding is not for everyone – Kevin Powick – Google+

–jeroen

Posted in Development, Software Development | Leave a Comment »

Some useful Visual Studio Keyboard bindings – via my comment at “Allow for floating windows · Issue #10121 · Microsoft/vscode · GitHub”

Posted by jpluimers on 2018/05/30

The thread at [WayBack]: Allow for floating windows · Issue #10121 · Microsoft/vscode · GitHub made me discover a few things, which I have commented there.

Reminder to self: find the Windows keyboard shortcuts as well.

Thanks @steinhh for the CmdK O keyboard combination. I was not aware of that yet and I am going to use this next week on a multi-monitor system to see how well that works.

Your tip made me found the PDFs below and made me make the lists/screenshots below as well.

Terrific! Thank you, thank you!

The bindings (on Mac) I found with their screenshots:

  • CmdShiftP: show all commands
    screenshot 2018-05-20 15 27 30
  • CmdK O: open current file in new Window
  • CmdShiftN: open a new window
    screenshot 2018-05-20 15 27 00
  • CmdK CmdR: open keyboard shortcuts reference PDF for current OS in the default web-browser
  • CmdK CmdS: open keyboard shortcuts editor
    screenshot 2018-05-20 15 24 07

The keyboard shortcuts editor has a search which can find bindings on the keybinding name itself or the command name:

  • screenshot 2018-05-20 15 31 58
  • screenshot 2018-05-20 15 33 19

–jeroen

Posted in Development, Software Development, Visual Studio and tools, vscode Visual Studio Code | Leave a Comment »

Akismet GDPR notification: enabled

Posted by jpluimers on 2018/05/30

I saw the below notification recently, but it was already enabled.

Akismet & Privacy.

To help your site be compliant with GDPR and other laws requiring notification of tracking, Akismet can display a notice to your users under your comment forms. This feature is disabled by default, however, if you or your audience is located in Europe, you need to turn it on.

Please enable or disable this feature. More information.

–jeroen

Read the rest of this entry »

Posted in Development, GDPR/DS-GVO/AVG, Power User, Privacy, SocialMedia, Software Development, Web Development, WordPress, WordPress | Leave a Comment »

Class Constructors/Destructors are special initialization/finalization sections – via Popping the hood. – Community Blogs – Embarcadero Community

Posted by jpluimers on 2018/05/30

I wasn’t sure what the order of class constructors/destructors was with respect to initialization/finalization sections. [WayBackClass Constructors. Popping the hood. – Community Blogs – Embarcadero Community explains that there is more to it than below summary, but it is a good start:

If a given class constructor is eligible to be invoked (ie. it was linked into your application), it will run immediately before the initialization section for the unit in which the class is implemented. The class destructors will be invoked immediately after the finalization section for the unit in which the class is implemented.

–jeroen

Posted in Delphi, Development, Software Development | Leave a Comment »

Via G+: I’m having some trouble with high DPI support and popup menus…

Posted by jpluimers on 2018/05/29

Hopefully Uwe Raabe will publish his VCL patches soon: [WayBack] I’m having some trouble with high DPI support and popup menus (using Delphi 10.2.3). Everything scales correctly except for the popup menus which still … – Dominic De Chasteigner Dumée – Google+

HiDPI with VCL still needs quite a bit of work, even on running one monitor (mixing regular DPI and HiDPI monitors will likely always be a pain for any pixel based environment)…

Note figuring out errors is not always easy, as Delphi 2009 introduced the System.TMonitor record for thread synchronisation, next to the existing Forms.TMonitor class that had monitor settings.

Related:

–jeroen

Posted in Delphi, Development, Software Development | Leave a Comment »

Use DelphiAST – via TPersistent.com » Blog Archive » The Parsing Problem

Posted by jpluimers on 2018/05/29

Stefan Glienke Says:

FWIW DelphiAST is the most up to date parser for Delphi (at least that is open source) because Roman Yankovsky is fixing bugs in a timely manner and is using it for his own plugin (FixInsight) that needs to parse all kinds of source code. It is also derived from the Castalia parser but many fixes and changes have been applied since.

In addition, TestInsight (by Stefan Glienke) also uses DelphiAST and Stefan is quite well at bugging people fixing bugs in open source projects.

DelphiAST works from Delphi XE and up (parts might work in Delphi 2010 and 2009), so ancient Delphi is out.

--jeroen

via: [WayBackTPersistent.com » Blog Archive » The Parsing Problem

Posted in Castalia, Delphi, Development, Software Development | Leave a Comment »

Indy Sockets and getting a description on the connection depends on the direction

Posted by jpluimers on 2018/05/29

From my Indy gitter archive:

@jpluimers
From a TIdIOHandlerSocket or TIdSocketHandle: is it possible to see who has initiated the connection? i.e. if it’s Binding.Peer that initiated to Binding.IP or the other way around?

@rlebeau
A socket is bidirectional, it doesn’t know or care which direction the connection was initially established. You will have to keep track of that yourself based on whether the socket is coming from a client component or a server component.

@jpluimers
I was afraid so. No problem: thanks for confirming.

So I made a helper class for TIdSocketHandle that gets you a SummaryString based on a direction enumeration: TIdSocketHandleHelper.

Notes:

–jeroen

Read the rest of this entry »

Posted in Delphi, Development, Indy, Software Development | Leave a Comment »

Google verlaagt prijzen opslagdienst Drive en komt met familieabonnement – Computer – Nieuws – Tweakers

Posted by jpluimers on 2018/05/28

Google heeft de prijzen voor veel abonnementen op de betaalde opslagdienst Drive verlaagd. Ook komt er een optie om verschillende betaalde abonnementen onder te brengen op een rekening. De gratis optie om 15GB op te slaan blijft bestaan.

[WayBack] Google verlaagt prijzen opslagdienst Drive en komt met familieabonnement – Computer – Nieuws – Tweakers

Quotes:

Daarboven komt nog de onzekerheid dat als je “per ongeluk” de voorwaarden van google schendt in één van hun diensten, ze je gehele account kunnen blokkeren zonder wederwoord. Je zou niet de eerste zijn die zich in de haren krabt en zich afvraagt waarom je in godsnaam van de ene op de andere dag geblokkeerd bent zonder dat je iemand kan contacteren om te vragen waarom.
Om deze reden doe ik regelmatig een sync met een andere clouddienst. Je betaalt dan wel wat meer maar dan heb je tenminste de zekerheid beschermt te zijn tegen zulke willekeur

 

Niemand hier die G Suite van Google gebruikt? Ik heb daar het business abonnement en betaal iets van 8 euro in de maand voor onbeperkte opslag. Er zit dan wel een 1TB limiet aan als je minder dan 5 accounts op je domeinnaam hebt staan, maar dat hanteren ze niet en ik denk na deze verandering bij Drive al helemaal niet.

Ik zet werkelijk alles op dat G Suite account, gewoon omdat het kan. Echter ben ik wel huiverig over het feit dat Google zomaar je account zou kunnen aflsuiten als je een bestand op je Drive hebt staan met copyright en macht met een hash die bij hun bekend is. Ik sla hele belangrijke bestanden dan ook altijd nog op, op mijn lokale NAS, thuis.

 

Ik gebruik hetzelfde al sinds oktober 2017 en heb er ondertussen 20TB op staan. Kan ook bevestigen dat ze de 5 gebruiker regel niet toepassen in de praktijk.

Persoonlijk raad ik wel aan om alles lokaal te encrypten/decrypten en dan naar drive uploaden. Dit kan makkelijk met de crypt module van rclone https://rclone.org/crypt/

Heb al screenshots van mensen gezien die er 200TB hebben op staan.

Zeker als hoge upload snelheid (zelf heb ik 1gbit) hebt is dit een goede oplossing voor offsite replicatie / cold storage voor je lokale backups.

Overigens is er wel een 10TB download en 750GB upload limiet per dag. Ben zelf al een paar keer tegen het upload limiet aangelopen maar denk dat dit voor de meeste gebruikers geen probleem is.

Als backup tool gebruik ik op dit moment https://duplicacy.com/

 

Zoiets heb ik inderdaad ook al eens gehoord, tevens heb ik een meerdere chats van Google vernomen dat er niets mee aan de hand is als je dat doet, de medewerker zelf had ook meerdere bestanden met copyright op zijn Drive staan.

De key lijkt dus dat je het gewoon niet deelt, want dan is het natuurlijk mogelijk dat de link op internet verschijnt en je in feite materiaal met copyright verspreid en dan wordt het natuurlijk een ander verhaal.

Heb ook nog met de woordvoerder op Twitter een chat gehad (Rachid Finge) en die heeft aangegeven ook G Suite te gebruiken voor persoonlijk gebruik. Screenshot

Ik denk dat we dus redelijk veilig zitten met het gebruik van G Suite voor persoonlijk gebruik, ik kan het dus iedereen aanraden, zeker als je meer dan 2TB denk te gaan gebruiken!

 

 

Posted in Google, GoogleDrive, LifeHacker, Power User | Leave a Comment »