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,860 other subscribers

Archive for March, 2020

MacOS: starting Visual Studio Code from the finder

Posted by jpluimers on 2020/03/26

On MacOS, a long standing wish from many developers has been to open a folder with Visual Studio Code: [WayBack] Mac OS X :: “Open Folder With” VS Code · Issue #1223 · Microsoft/vscode · GitHub.

There are many reasons for wanting this, and other tools can do this too (like Terminal, TextWrangler, Source Tree, Beyond Compare), so I was a bit surprised Visual Studio Code does not have it by default.

After initially being closed, the issue has been open for a while, so I started digging a bit for solutions that are easy to configure or install.

The last one is currently on the top of my list, so I copied and installation instructions, and added a few screenshots to explain the already included video below.

Read the rest of this entry »

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

Determine actual message size limit when you only get “552 5.3.4 Message size exceeds fixed limit”

Posted by jpluimers on 2020/03/26

Often when you send large emails the only  reply you get is a non-descriptive message like 552 5.3.4 Message size exceeds fixed limit from the SMTP server without an indication what the limit actually is.

Most SMTP servers however implement extensions in the EHLO greeting that returns a SIZE mail parameter. You can query it by hand using this:

telnet aspmx.l.google.com smtp
Trying 108.177.119.27...
Connected to aspmx.l.google.com.
Escape character is '^]'.
220 mx.google.com ESMTP 32si3005669edb.510 - gsmtp
EHLO example.org
250-mx.google.com at your service, [80.100.143.119]
250-SIZE 157286400
250-8BITMIME
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-CHUNKING
250 SMTPUTF8
QUIT
221 2.0.0 closing connection 32si3005669edb.510 - gsmtp
Connection closed by foreign host.

There you can see the maximum message size at the time of writing is 157286400 bytes which is about 150 megabytes.

There is a nice Python script showing how to obtain it at [WayBack] Getting Information from EHLO | Erle Robotics Python Networking Gitbook Free (note this one does send an email, so you might want to trim the example if you just want to see the size).

More background reading:

Trimming down the Python script so it queries message size for each mail server of a domain

This turns out to be a tad more complex, because DNS functionality isn’t part of core Python, and the rdata part of DNS records ends with a dot, which might not be usable with the SMTP library.

References for me when trimming down:

–jeroen

Posted in Communications Development, Conference Topics, Conferences, Development, Event, Internet protocol suite, Power User, SMTP | Leave a Comment »

GitHub – alexmojaki/birdseye: Quick, convenient, expression-centric, graphical Python debugger using the AST

Posted by jpluimers on 2020/03/26

This is soooo nice! [WayBackGitHub – alexmojaki/birdseye: Quick, convenient, expression-centric, graphical Python debugger using the AST

It runs on localhost:7777

Via: [WayBack] Birdseye ist eine interessante Lösung, um detailliert nachzuvollziehen, was beim Aufruf von Python-Funktionen und der Abarbeitung von Schleifen geschieh… – Martin Vogel – Google+

–jeroen

Read the rest of this entry »

Posted in Development, Python, Scripting, Software Development | Leave a Comment »

In case I need JSONPath functionality in Delphi: grijjy/GrijjyFoundation@4ce069a · GitHub

Posted by jpluimers on 2020/03/25

From a while back, but just in case I ever need JSONPath (for JSON, or BSON Path): [WayBack] Added JSONPath functionality · grijjy/GrijjyFoundation@4ce069a · GitHub.

Via: [WayBack] Search for and extract data from your JSON documents using an XPath-like query language. Now part of our JSON and BSON library. – Erik van Bilsen – Google+

It has a small glitch on non-USA systems, so I filed an issue and provided grijjy’s Erik van Bilsen with a pull request:

–jeroen

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

Workaround formulier inschrijven verhuizing naar Gemeente Leiden (@GemeenteLeiden en hun IT weten het al)

Posted by jpluimers on 2020/03/25

Het formulier https://www.e-inwoner.nl/prod/fr/Leiden/Verhuizing_doorgeven/new.digid is een klein beetje stuk, maar gelukkig is er een workaround.

Eerst het probleem

Alle knoppen “Volgende” verversen alleen de linkerkant van het formulier, maar niet de invoervelden.

Dit zie je al bij de eerste stap als je bij “Inleiding” gelikt hebt op “Volgende”: links kom je op “Contactgegevens”, maar de invoervelden laten dat niet zien.

Workaround

Read the rest of this entry »

Posted in About, LifeHacker, Personal, Power User | Leave a Comment »

python – How do I install pip on macOS or OS X? – Stack Overflow

Posted by jpluimers on 2020/03/25

On Mac OS X with stock Python:

All you need to do is

sudo easy_install pip

After this, you might want to upgrade pip:

sudo pip install --upgrade pip

Source: [WayBackpython – How do I install pip on macOS or OS X? – Stack Overflow

You could go the homebrew way, but that means your system will have two Python installations usually causing a nightmare of path dependency orders. In addition, homebrew puts you on the wrong foot, so:

DO NOT DO THIS!

# brew install pip
Error: No available formula with the name "pip" 
Homebrew provides pip via: `brew install python`. However you will then
have two Pythons installed on your Mac, so alternatively you can install
pip via the instructions at:
  https://pip.readthedocs.io/en/stable/installing/

–jeroen

Posted in Apple, Development, Mac OS X / OS X / MacOS, macOS 10.12 Sierra, macOS 10.13 High Sierra, Power User, Python, Scripting, Software Development | Leave a Comment »

Optimizing BitBlt by generating code on the fly – The Old New Thing

Posted by jpluimers on 2020/03/25

Blast from the past machine generated code by the various assembly versions of the  [WayBack] Windows BitBlt function [WayBackOptimizing BitBlt by generating code on the fly – The Old New Thing.

Via: [WayBack] Rodrigo Ruz on Twitter: “Optimizing BitBlt by generating code on the fly https://t.co/gWmKjex20i”

–jeroen

Posted in Development, History, Software Development, The Old New Thing, Windows Development | Leave a Comment »

kugelfish: Google+ Migration – Part II: Understanding the Takeout Archive

Posted by jpluimers on 2020/03/24

If you want to process the JSON form the Google Take Out, then below are some resources that will help you get started developing

Started developing you say?

Yes, of course the JSON does not match APIs any more, and of course Google has not provided and starting point or guidance.

A perfect execution of Sunset.

So you are on your own with:

All via [WayBack] Continuing the takeout data migration process with a first look at the data that is in the archive. – Edward Morbius – Google+

In the mean time, some people started hosting their HTML take out, for instance:

Here you have to note that the take out does not include media, and many hyperlinks still point to within Google Plus itself, for instance for circles and avatars.

Example:

–jeroen

Posted in Development, G+: GooglePlus, Google, Power User, SocialMedia, Software Development | Leave a Comment »

Root finding and linear programming in Delphi

Posted by jpluimers on 2020/03/24

For my link archive:

–jeroen

Posted in Uncategorized | 1 Comment »

User Experience topics like “Why does Explorer use the term KB instead of KiB”

Posted by jpluimers on 2020/03/24

Designing for a good user experience is hard, especially to programmers. So if you are a programmer, please read, let them sink in, rinse, repeat the below linked articles multiple times. Being ~15 years old, they are still so very relevant:

–jeroen

Posted in Development, Software Development, The Old New Thing, Usability, User Experience (ux), Windows Development | Leave a Comment »