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

Archive for the ‘Development’ Category

Analyzing website performance with the Windows Performance Toolkit | Microsoft Edge Dev Blog

Posted by jpluimers on 2016/09/27

On my research list:

Slow pages lose users: research from Bing and Google indicates that delays as small as half a second can impact business metrics. To build fast sites, developers need powerful tools to analyze the …

Source: Analyzing website performance with the Windows Performance Toolkit | Microsoft Edge Dev Blog

via:

If you’re developing on Windows.. a must read article on analyzing webperf with Windows Performance Toolkit. – Ilya Grigorik – Google+

–jeroen

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

Oracle Cross database queries: you need a “database link” for that

Posted by jpluimers on 2016/09/27

I recently learned that you can do cross database queries in Oracle using database links.

You need to prefix your objects with the right schema/owner (for instance dbo.) and suffix with an @ sign followed by the database link name.

This query finds all configured database links:

select * from all_db_links;

–jeroen

via: Ask Tom “database link”.

Posted in Database Development, Development, OracleDB | Leave a Comment »

Nick Hodges Joins Embarcadero as Product Management Lead

Posted by jpluimers on 2016/09/23

And the other bomb-shell: Nick Hodges Joins Embarcadero as Product Management Lead

Interesting times in the Delphi community…

And I really wonder if this affects Delphi Developer Days 2016, Nick Hodges & Cary Jensen.

–jeroen

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

David I becomes an Embarcadero MVP, starts new job at Evans Data Corporation

Posted by jpluimers on 2016/09/22

Just in case you missed it David I becomes an Embarcadero MVP, starts new job at Evans Data Corporation [WayBack]

via +Stefan Glienke and Evans Data Corporation Welcomes Developer Relations Industry Guru David Intersimone (“David I”) to Their Team – News9.com [WayBack]

Which means there are very few seasoned people left at the Delphi team.

–jeroen

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

Jark/FTDISample: Note: As of version 10556.0 the ftdi driver does no longer seem to work. A sample application showcasing the FTDI D2XX driver use in Windows Universal projects (UWP). This sample is tested on the Raspberry PI 2 with Windows IOT installed and a FTDI FT232R usb-to-serial adapter.

Posted by jpluimers on 2016/09/22

Source: Jark/FTDISample: Note: As of version 10556.0 the ftdi driver does no longer seem to work. A sample application showcasing the FTDI D2XX driver use in Windows Universal projects (UWP). This sample is tested on the Raspberry PI 2 with Windows IOT installed and a FTDI FT232R usb-to-serial adapter.

Yeah, I couldn’t get this working either. I’m not sure where ReadTimeout is actually used by the SerialDevice class internally. But I did end up getting something working by copying the timeout to a

Source: c# – Unable to use SerialDevice.ReadTimeout in Windows 10 IoT – Stack Overflow

Source: Raspberry Pi • View topic – Windows 10 IoT Core Simple Serial Example not working

Posted in Development, IoT Internet of Things, Network-and-equipment, Power User, Software Development | Leave a Comment »

grep: searching for pipes, optional characters

Posted by jpluimers on 2016/09/22

For my own reference as RegEx is a write-only language:

Search for pipes means just back-slash escaping them:

grep "\|S\|" products.txt > s-rated-products.txt

Search for optional charactes (in this case searching for both the singular and plural form of a word) can be done by grouping the optional part in parentheses:

grep -i "Movie(s)?" products.txt > movie-products.txt

Search for either OR:

grep -E "foo|bar" products.txt > foo-or-bar-products.txt
egrep "foo|bar" products.txt > foo-or-bar-products.txt

Note that the Borland grep does not support the OR syntax, but egrep does.

–jeroen

via:

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

com – Delphi [weak] reference attribute produces “Invalid class typecast” when implementation is in more than one library – Stack Overflow

Posted by jpluimers on 2016/09/21

Source: com – Delphi [weak] reference attribute produces “Invalid class typecast” when implementation is in more than one library – Stack Overflow

via: Interesting question and excellent answers about [weak] references (not to be) used with COM interfaces. – Ondrej Kelle – Google+

 

Posted in Delphi, Delphi 10.1 Berlin (BigBen), Development, Software Development | Leave a Comment »

Delphi Code Monkey: Delphi Features I Avoid Using And Believe Need to be Gradually Eliminated from Codebases

Posted by jpluimers on 2016/09/21

Hear, hear! Delphi Code Monkey: Delphi Features I Avoid Using And Believe Need to be Gradually Eliminated from Codebases

Posted in Delphi, Delphi 10 Seattle, Delphi 10.1 Berlin (BigBen), Delphi 2007, Delphi XE, Delphi XE2, Delphi XE3, Delphi XE4, Delphi XE5, Delphi XE6, Delphi XE7, Delphi XE8, Development, Software Development | Leave a Comment »

Tools to view Blue Screen info and Windows/Application Crash Reports

Posted by jpluimers on 2016/09/21

These NirSoft tools helped me finding out about some crashes that never made it to the event log:

At first I thought my own software development caused them, but In the end they were caused by buggy video drivers.

–jeroen

Posted in Development, Power User, Software Development, Windows | Leave a Comment »

Yes Dorothy, the .NET System.Array Class can throw you a NotSupportedException

Posted by jpluimers on 2016/09/21

It’s been in the System.Array class forever, but remarkably few people do know that it can throw you a NotSupportedException (for instance when calling Add, Insert, Remove, etc).

It does because it implements IList, but not all methods implemented from IList are valid.

And it also indicates that, as the IList Properties allows for IsFixedSize to return false.

A similar case is there for IsReadOnly: then you cannot even modify the values.

Ever since I started teaching .NET/C# classes almost 15 years ago, I warned:

beware when you use IList as not everybody implements all methods.

–jeroen

via:

Posted in .NET, .NET 1.x, .NET 2.0, .NET 3.0, .NET 3.5, .NET 4.0, .NET 4.5, C#, C# 1.0, C# 2.0, C# 3.0, C# 4.0, C# 5.0, C# 6 (Roslyn), Development, Software Development | Leave a Comment »