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

Archive for 2019

Compression Decompressed | The website of Jack Preston, Computerer

Posted by jpluimers on 2019/06/13

The basics of data compression and how Youtube, Netflix and Spotify stream your stuff.

Step by step, you take a visual tour through the image compression process.

Source: [WayBackCompression Decompressed | The website of Jack Preston, Computerer

Image source: [Archive.isTwitter GIFs – Find & Share on GIPHY

Via:

[WayBack] Compression Decompressed or, Making Things Smaller. – ThisIsWhyICode – Google+

–jeroen

 

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

Using escape characters in GExperts Grep replace – twm’s blog

Posted by jpluimers on 2019/06/12

Reminder to self: check out the the support for proper escaping special characters (like \t, \r, \n or x20 for tab, carriage-return, line-feed or space) in GExperts [WayBackUsing escape characters in GExperts Grep replace – twm’s blog

Solves:

Via: [WayBack] If you enable regular expressions in the GExperts Grep search form, you can search for escape sequences like \t which is expanded to a tab character or … – Thomas Mueller (dummzeuch) – Google+

–jeroen

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

Firebird CASE construct

Posted by jpluimers on 2019/06/12

Reminder to self: sort out why a while ago I had trouble with a nested [WayBackCASE construct causing parsing anomalies in 2.5.8.

–jeroen

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

Cyclomatic Complexity of switch case statement – Stack Overflow

Posted by jpluimers on 2019/06/12

For my archive: [WayBack/Archive] Cyclomatic Complexity of switch case statement – Stack Overflow.

Ultimate reference: [WayBack/Archive] NIST Special Publication 500-235: Structured Testing: A Testing Methodology Using the Cyclomatic Complexity Metric

Via: [WayBack/Archive] I have a question regarding Cyclometric Complexity… IF versus CASE… – David Hoyle – Google+

–jeroen

Posted in .NET, C#, Conference Topics, Conferences, Delphi, Development, Event, Software Development | Leave a Comment »

JWT authentication with Delphi

Posted by jpluimers on 2019/06/11

Nice articles on OAuth2, JWT and other authentication mechanisms:

via [WayBack] Ondrej Kelle – Google+

–jeroen

Posted in Authentication, Delphi, Development, Power User, Security, Software Development | Leave a Comment »

Even perpetual Delphi licenses require an active maintenance support or contacting the Sales/Renewal team to allow re-install on a fresh machine

Posted by jpluimers on 2019/06/11

Edit 20190612

It seems all the fuzz sort of got restored: if you have an old product, not under maintenance support, then the registration count has been bumped and can be bumped further through the sales/renewal department.

This got posted a few hours after my blog post got live (the WayBack link does not archive all comments, sorry for that, that’s why I quoted toe comment):

[WayBack] From the GM: New Updates and Changes to the Registration “Bumps” Policy [UPDATED] – Blog – Developer Tools – IDERA Community

Policy Update: We still receive occasional comments on this and want to make sure we are clear on our Policy. Registration limits were introduced a long time ago with very valid use cases, but many of these are now outdated. We still do them, just now they get approved by Account Management (Sales/Renewals) vs. Support. Further, we have done several auto-bumps for everyone that should limit these issues altogether (and will do more as needed). As communicated, over the summer, we will work on a more automated way to increase registration limits through the self-service portal.

Original article 20190611

Last month, people found out that retroactively, Embarcadero has changed the terms of the license agreements on products sold with a perpetual license:

In order to re-install those products, often a bump in license count is needed. That bump now requires an active maintenance subscription which has a substantial yearly cost.

This is yet another sign that Embarcadero parent company Idera is on their way towards becoming like Oracle or Computer Associates: hiding information behind account walls, and by all means trying to squeeze out money of older products.

I think the move is illegal in several countries, especially with products sold to private persons. Uwe Raabe agrees with me on that:

I am not sure they would get away with that – at least here in Germany. As long as the customer actually paid for the perpetual license (this excludes the CE), the ability to use it legally cannot be prohibited just because there is no current support contract. At least a reasonable fee for the registration bump would perhaps be acceptable, but definitely not denying it completely.

If you still own Delphi licenses, and are on maintenance for them, a path you might take is to switch to a local installation (on a separate machine, preferably virtual machine) of the ELC (formerly Belise) licensing server together with a named license.

That requires your machines to be in touch with that ELC service (you can reach it over a network connection, even via a tunnel) every 30 days to stay active.

Another way is to :

  • always install in virtual machines, and keep a backup-history of those virtual machines at hand
  • use different user names for doing different Delphi work (but be aware that a lot of Delphi tools and component suites still insist on installing as Administrator, therefore putting all the settings in that administrative user)

Note that :

  • a Delphi license is bound to a Windows computer NAME, not a physical fingerprint of the machine
  • it is likely easier to keep backups of the ECL/Belise server than of a full development machine
  • ELC/Belise requires Java (JRE 1.5 or higher according to ELC Admin Guide.pdf ), which has it’s own licensing issues
  • Though ELC stands for “Enterprise License Server”, it works for one-man shops equally well as for enterprises (heck: for enterprises it is likely more work as they usually want multiple groups of licenses users)

So renaming a machine will already invalidate your license (but you can usually restore that).

Background reading:

Downloads (.bin files are for Linux x86 or x86_64; .exe files for Windows Win32 or Win64):

 

 

–jeroen

Read the rest of this entry »

Posted in Delphi, Development, Software Development | 3 Comments »

A (sad) security user story – The Isoblog.

Posted by jpluimers on 2019/06/11

The sad thing is that most security people do not like these kinds of user stories:

As any user, I never want to get a “denied” message, but a “in order to do what you want you are missing the X permission” message in order to be able to track down the root cause and request the appropriate permissions more easily.

Source: [WayBackA (sad) security user story – The Isoblog.

Related: [WayBackUser Stories and User Story Examples by Mike Cohn

–jeroen

Via: [WayBack] A (sad) security user story… – Kristian Köhntopp – Google+

Posted in Agile, Development, Scrum, Software Development | Leave a Comment »

Githunt – Chrome Web Store – discover new github projects in your technology area of interest

Posted by jpluimers on 2019/06/10

Archive.is Githunt – Chrome Web Store: Replace the new tab with a list of trending repositories on github belonging to any technology that you chose.

More information: [WayBack] How to get trending GitHub projects in your Chrome new tab screen with GitHunt

–jeroen

via: [WayBack] This is how I discover new and interesting open source Delphi/Pascal projects – install Githunt and it replaces my ‘new tab’ page, there I set the langu… – Edwin Yip – Google+

Posted in Development, DVCS - Distributed Version Control, git, GitHub, Software Development, Source Code Management | Leave a Comment »

“Nobody” Can Ping My Windows 10 Computer

Posted by jpluimers on 2019/06/10

A problem with ICMP can be that you if you allow File and Printer Sharing, that ICMPv4 and ICMPv6 for both Private and Public networks are only allowed for the Local subnet.

For Domain networks, however it is allowed for Any subnet.

You can see the difference in this picture:

The solution presented at [WayBack] Nobody Can Ping My Computer – Technet MSDN library is to add a less restrictive set of rules:

  1. In the Windows Firewall with Advanced Security snap-in, click Inbound Rules in the tree, and click New Rule in the Actions Pane.
  2. Click Custom and click Next.
  3. Click All programs and click Next.
  4. For Protocol type, select ICMPv4.
  5. Click Customize for Internet Control Message Protocol (ICMP) settings.
  6. Click Echo Request, click OK, and then click Next.
  7. Under Which local IP address does this rule match? and for Which remote IP address does this rule match click either Any IP address or These IP Addresses. If you click These IP addresses, specify the IP addresses and click Add, then click Next.
  8. Click Allow the connection, and then click Next.
  9. Under When does this rule apply?, click the active profile, any or all profiles (Domain, Private, Public) to which you want this rule to apply, and then click Next.
  10. For Name type a name for this rule and for Description an optional description. Click Finish.
  11. Repeat steps for ICMPv6, selecting ICMPv6 for Protocol Type instead of ICMPv4.

You can also add these rules using the netsh advfirewall command as shown at [WayBack] How to Allow Pings (ICMP Echo Requests) Through Your Windows Firewall

–jeroen

Posted in Power User, Windows, Windows 10 | Leave a Comment »

ms office – Keyboard shortcut to select all text in a cell in Excel – Ask Different

Posted by jpluimers on 2019/06/10

Via [WayBack] ms office – Keyboard shortcut to select all text in a cell in Excel – Ask Different a few keyboard tips.

Lets start with the shortest one:

  1. Put the focus on the cell (click, use arrow keys, etc)
  2. Press space
  3. Press CommandZ or ControlZ to undo the change

This probably is unintended, but works great: all text is now selected, so you can copy/cut with Command-C/CommandX.

Now the “official” way:

  1. Put the focus on the cell (click, use arrow keys, etc)
  2. Press ControlU or F2 to edit the cell (the cursor is now at the end)
  3. Press ShiftAltHome or ShiftControlHome (to select all text)
    note: Home can also be FnLeft.

Other selections you can make while the cell is in edit mode:

  • Press ShiftAltEnd or ShiftControlEnd (to select to the end of the cell)
    note: End can also be FnRight.
  • Press ShiftAltRight or ShiftControlRight (to select one word to the right)
  • Press ShiftAltLeft or ShiftControlLeft (to select one word to the left)
  • Press ShiftAltDown or ShiftControlDown (to select to the same position on the line below)
  • Press ShiftAltUp or ShiftControlUp (to select to the same position on the line up)

Keyboard symbols (more at [WayBackCommand, Option, & Shift Symbols in Unicode):

  • Shift
  • ^Control
  •  – Alt which is the same as Option
  •  – Command
  • Fn – Function

–jeroen

Posted in Apple, Excel, Mac, Mac OS X / OS X / MacOS, MacBook, MacBook Retina, MacBook-Air, MacBook-Pro, MacMini, macOS 10.12 Sierra, Office, Office 2011 for Mac, Power User | Leave a Comment »