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 the ‘Event’ Category

Delphi class constructors and initialisation order

Posted by jpluimers on 2016/12/27

A long while ago, but still an interesting discussion: Is there a predictable order of execution for Class Constructors? leading to these links:

–jeroen

Posted in Conference Topics, Conferences, Delphi, Delphi 10 Seattle, Delphi 2010, Delphi x64, Delphi XE, Delphi XE2, Delphi XE3, Delphi XE4, Delphi XE5, Delphi XE6, Delphi XE7, Delphi XE8, Development, Event, Software Development | Leave a Comment »

Ken Thompson – quotes – Reflections on Trust

Posted by jpluimers on 2016/12/21

Some of the [WaybackKen Thompson – Wikiquote entries come from a great [Wayback1983 ACM Turing Award Acceptance Lecture [Wayback“Reflections on Trusting Trust”.

That lecture used to be on http://cm.bell-labs.com/who/ken/trust.html

But it isn’t, and was not in the WayBack machine and neither in the Google Cache [Archive.is] because of the [Wayback/Archive.is] robots.txt. Historic link rot galore!

Edit 20210728: by now it is in the Wayback machine again; the earliest archived copy is from 2001, it also shows that as of april 2015 it is gone from the bell labs server.

The lecture is about [Wayback] compiler viruses and viruses actually did this at least a few times: Wayback: Delphi in 2009 and to [WaybackXCode in 2015.

A few nice links from [WaybackACM Classic: Reflections on Trusting Trust – Google Groups though:

And archived versions of (I hope accurate) copies of the article:

Finally I found a PDF copy of the original ACM prints that Greg Ganger of Electrical and Computer Engineering at Carnegie Mellon University has online. It’s archived too.

–jeroen

Further reading:

Posted in *nix, Conference Topics, Conferences, Delphi, Delphi 4, Delphi 5, Delphi 6, Delphi 7, Development, Event, Fun, Internet, link rot, Power User, Quotes, Software Development, T-Shirt quotes, WWW - the World Wide Web of information, xCode/Mac/iPad/iPhone/iOS/cocoa | Leave a Comment »

Why does the Windows calculator generate tiny errors when calculating the square root of a perfect square? – The Old New Thing

Posted by jpluimers on 2016/12/07

In the continued “floating point code is hard for most software developers” series:

[WayBack] Why does the Windows calculator generate tiny errors when calculating the square root of a perfect square? – The Old New Thing

Because it doesn’t know that it’s a perfect square.

–jeroen

Posted in Algorithms, Conference Topics, Conferences, Development, Event, Floating point handling, Software Development, The Old New Thing, Windows Development | Leave a Comment »

One of the #EKON20 running gags: Raize condition

Posted by jpluimers on 2016/11/11

When Ray Konopka enters the room you have a Raize condition.

Via the EKON20 sessions, it made its way into the workshop If you thought you could do multi-threading, then play “The Deadlock Empire” games – Entwickler Konferenz

–jeroen

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

EKON 20 link archive – anniversary edition of the famous Delphi related conference with lots of English sessions

Posted by jpluimers on 2016/11/03

My EKON20 link archive so I can refer to it through web.archive.org:

–jeroen

via: EKON 20 – anniversary edition of the famous Delphi related conference with lots of English sessions « The Wiert Corner – irregular stream of stuff

 

 

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

EKON 20 – anniversary edition of the famous Delphi related conference with lots of English sessions

Posted by jpluimers on 2016/11/01

Next Monday-Wednesday (7th till 9th of November) will the the 20th edition of the famous Delphi related EKON conference and post-conference workshops at the Hotel Meliá Düsseldorf.

It will be a blast, not the least because it’s an anniversary.

There are still a few spots left, so drop me a note if you’ve not reserved yet as I can get you a discount code.

Below is the the speaker line up. It’s an awesome bunch of guys and there’s plenty coverage for English speaking attendees: English sessions are below the speaker list.

Speaker line up:

  • Andrea Magni – Freelancer
  • Arnaud Bouchez – Synopse
  • Arne Limburg – OPEN KNOWLEDGE
  • Bernd Ua – probucon Business Consulting
  • Daniel Wischnewski – OCTAX Microscience
  • Girish Patil – Gnostice
  • Jens Fudge – Archersoft Aps
  • Jeroen Pluimers – Wiert.me
  • Joachim Dürr – Joachim Dürr softwareengineering
  • Jörg Neumann – Acando
  • Marco Cantù – Embarcadero Technologies
  • Marco Frodl – Thinktecture
  • Matthias Eißing – Embarcadero Germany
  • Max Kleiner – kleiner kommunikation
  • Peter Schütt – TimoCom Soft- und Hardware
  • Ray Konopka – Raize Software
  • Rüdiger Kügler – Wibu-Systems
  • Sebastian Gingter – Thinktecture
  • Stefan Glienke – Aagon
  • Steffen Jahr – Thinktecture

English sessions and workshops:

Read the rest of this entry »

Posted in Conferences, Delphi, Development, EKON, Event, Software Development | 1 Comment »

InitialKeyboardIndicators registry setting to fix NumLock in a certain state.

Posted by jpluimers on 2016/09/30

There are odd things with the InitialKeyboardIndicators registry setting. Technet only documents bitflag value 2.

According to the docs it should be a bitflag, but sometimes you encounter InitialKeyboardIndicators value 2147483648 (0x80000000) especially as part of the .DEFAULT profile at HKEY_USERS\.DEFAULT\Control Panel\Keyboard.

The problem I had was having these symptoms:

  1. while logging in locally, I manually turned of the NumLock (as I have a 46W6740 UltraNav keyboard without a numeric keypad)
  2. after logging in locally, it magically turned itself on even with InitialKeyboardIndicators=0 in my local profile at HKEY_CURRENT_USER\Control Panel\Keyboard.
  3. after logging in locally and turning it off, future local logons would keep it off
  4. after logging in remotely, it would magically turn itself on while logged in
  5. after having logged in remotely, the local logon console would have it turned on again

After reading Num Lock problem: Strange number in InitialKeyboardIndicators in Registry, I set both values to 0.

Now that it is 0 in both at HKEY_USERS\.DEFAULT\Control Panel\Keyboard and HKEY_CURRENT_USER\Control Panel\Keyboard, symptoms 4-5 still hold. Strange.

It is not the same problem as Num Lock state not retained after resume from Hybrid Shutdown in Windows 8 and Windows Server 2012.

If it persist, I might just put a script in: [Partially Solved: re-wired keyboard lol] Registry key “InitialKeyboardIndicators” NEVER keeps NumLock ON + ScrollLock ON (6) at startup and reverts back to NumLock ON (2).

–jeroen

Read the rest of this entry »

Posted in Conference Topics, Conferences, Event, Keyboards and Keyboard Shortcuts, KVM keyboard/video/mouse, Power User, ThinkPad, UltraNav keyboards, Windows | Leave a Comment »

Happy “Day of the Programmer”

Posted by jpluimers on 2016/09/12

Happy debugging, suckers

Happy debugging, suckers

Or maybe not…

(yes, this year it’s not on the 13th of September, but the 12th, guess why…)

--jeroen

via: Day of the Programmer – Wikipedia, the free encyclopedia

PS: The oldest reference I could find for define true (rand() > 10) was this one from 20121014:

// Happy debugging, suckers
# define true (rand() > 10)

Source: codecrap.com – snippet #6

It reminds me of a 1990s prank I once put in central consts unit of a Turbo Pascal project somewhere way beyond the right margin in a search directory outside of version control:

                                                                                     const True = False; False = not True;

A lot more pranks are at Happy debugging, suckers : ProgrammerHumor – reddit

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

C#, XSD.exe, xsd2code and generating nullable fields+properties from an XSD with and without Specified fields/properties

Posted by jpluimers on 2016/07/27

It comes down to these cases for XML elements having maxOccurs="1" (which the default for maxOccurs):

  1. adding nillable="true" will convert from a regular type to a nullable type.
  2. adding minOccurs="0" will add boolean …Specified properties in the generated C# for each element.
  3. you can have both nillable="true" and minOccurs="0" in an element which gets you a nullable type and a …Specified property.

Note I’m not considering fixed or default here, nor attributes (that have use instead of minOccurs/maxOccurs, but do not allow for nillable) nor larger values of maxOccurs (which both xsd.exe and xsd2code regard as unbounded).

From the above, XML has a richer type system than C#, so in XML there are subtle a differences between:

  1. an explicit nil in the XML element
  2. the XML element being absent
  3. the XML element being empty.

Hopefully later more text and examples to show how to actually work with this.

Delphi related to minOccurs:

Note that xsd2code.codeplex.com (unlike XmlGen#) has at least two forks at github:

From the specs:

–jeroen

Posted in .NET, .NET 2.0, .NET 3.0, .NET 3.5, .NET 4.0, .NET 4.5, C#, C# 2.0, C# 3.0, C# 4.0, C# 5.0, C# 6 (Roslyn), Conference Topics, Conferences, Development, Event, Software Development, XML, XML/XSD, XSD | Leave a Comment »

Delphi packages I have disabled by prefixing their description with an underscore (and why)

Posted by jpluimers on 2016/07/19

There is a little trick to disable “Known IDE Packages”: you can stop Delphi from loading one by either making “Value data” of the registry blank, or prepending it with an underscore:

packages that might have been disabled, by checking any string entries where the data has been pre-pended with an underscore OR is blank

[WayBackAccess violation at address 00000000 read of address 00000000, when starting the IDE or opening a project after installing the updates

I’ve pre-pended underscores to some packages in the registry key [HKEY_CURRENT_USER\Software\Borland|Codegear|Embarcadero\BDS|Delphi\#.0\Known IDE Packages] and intend to keep the list below updated over time.

Note that you have to prepend the description with an underscore: it is not sufficient to add these to [HKEY_CURRENT_USER\Software\Borland|Codegear|Embarcadero\BDS\#.0\Disabled Packages].

Empirically, the Disabled Packages seem to work only for packages starting with dcl in their filename.

Read the rest of this entry »

Posted in Castalia, Conference Topics, Conferences, Delphi, Delphi XE8, Development, Event, Keyboards and Keyboard Shortcuts, Power User, Software Development | 5 Comments »