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,565 other followers

Archive for April 18th, 2019

Where do you place your unit uses?

Posted by jpluimers on 2019/04/18

Over the years, I have had the question of where to put uses list entries a lot.

Last year, there was one again from a very experienced developer: [WayBack] Where do you place your unit uses? Over the years, I’ve come to preferring to place my uses in the Interface section only, even if its types, constants… – Lars Fosdal – Google+

The answer is really simple, and comes down to this:

  • use only the units you need (Law of Demeter)
  • use the units as close as possible to where you need them (this helps Minimizing Scope which is related to Information Hiding and the Proximity Principle)

Besides these Clean Code and Code Complete arguments, there is another very important argument:

The larger the scope of a unit, the more resources it takes to compile your project.

This gets worse when you have cycles in your unit dependencies.

I think it gets more than progressively worse; I have seen ~5 million line projects use close to 2 gigabytes of RAM during compilation when they had deep/long cyclic dependencies, forcing a full project build with DDevExtensions configured correctly in order to avoid out-of-memory at all.

For the above question, the poll seems to indicate the public at large gets it right:

References

A few tips from the thread:

Read the rest of this entry »

Posted in Conference Topics, Conferences, Delphi, Development, Event, Software Development | Leave a Comment »

When +Google Nederland maps only fills one or part of the map tiles…

Posted by jpluimers on 2019/04/18

I still have to do this every few weeks on all my desktop machines: [WayBack] When +Google Nederland maps only fills none or part of the map tiles… – Jeroen Wiert Pluimers – Google+

When +Google Nederland maps only fills none or part of the map tiles at https://maps.google.nl, but https://maps.google.com works fine, then remove any gsScrollPos cookies from www.google.nl.

I need to do this every couple of days to keep maps.google.nl working.

Later I also found it can happen for YouTube, then did more digging for gsScrollPos and found a better workaround: [WayBackAwesome Cookie Manager where you can just delete the gsScrollPos cookies from all sites in one go.

Even later I found out that this can be one of the causes for the WayBack machine giving an error 400 when archiving. A more common reason however is that many archived web-pages try to create cookies in the web.archive.com subdomain resulting in the same problem.

The cause seems to be the Great Suspender plugin which should be fixed by now, but might not automatically update to the latest version. See:

Pending a new Great Suspender release, below is a quick way to manually remove them if you are into SQL scripting for sqlite. It basically comes down to executing the below statement when Chrome is closed:

delete from cookies where name like 'gsScrollPos-%'

–jeroen

Posted in Chrome, Google, GoogleMaps, Internet, InternetArchive, Power User, WayBack machine | Leave a Comment »

The Fallacy of DRY – Entropy Wins

Posted by jpluimers on 2019/04/18

A must read post on why “Do Repeat Yourself” can be a good thing [WayBack/Archive.isThe Fallacy of DRY – Entropy Wins by Jeroen de Dauw (of WikiMedia Germany fame).

Ultimately, you want code to be easy to understand. This that when you apply the “Don’t Repeat Yourself” principle you need to ask yourself if the resulting code is still easy to understand.

He did some great talks too, for instance bit.ly/econ-cleancode, aan almost half our talk with open source slides which he [WayBackpresented during Source Code Berlin 2016

–jeroen

Read the rest of this entry »

Posted in Design Patterns, Development, DRY - Don't Repeat Yourself, Software Development | Leave a Comment »

 
%d bloggers like this: