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

Delphi XE7: The new Tasks / Parallel Computing Library. Like any library, it is not a magic bullet!

Posted by jpluimers on 2015/01/01

In Delphi XE7, Embarcadero introduced a new Parallel Computing Library.

Programmers – human as they are – see this as a silver bullet, thinking using such a library will take away all your performance issues without having to know about solving race conditions.

Boy are they wrong. The library helps you, and makes it easier. Easier in the sens of “less hard”.

So here is my friendly warning:

Parallel programming is hard. Live with it.

This apart from another important warning:

Delphi XE7 is the first version where this library is introduced. So expect bugs and more bugs.

This isn’t to say you should not use a library for parallel computing (the OmniThreadLibrary has been around for a reason), just that it is hard to get these right, even for library writers. They often get it right better and faster than rolling your own.

Read the rest of this entry »

Posted in Delphi, Delphi XE7, Development, Software Development | 5 Comments »

XSD regular expressions are a tad different: creating GroupProj.xsd

Posted by jpluimers on 2014/12/31

While creating jeroenp / BeSharp.net / source / Native / Delphi / Scripts / GroupProj.xsd — Bitbucket, I bumped into the fact that regular expressions in XSD *or better XML Schema Regular Expressions) regular expressions are a tad different than the RegEx.

Actually, there are quite a few regular expression flavours, and all of them are a tad different. The page Compare Regular Expression Flavors at Regular-Expressions.info.

That is a great site with Regex Tutorial, Examples and Reference – Regexp Patterns by RegEx guru Jan Goyvaerts (yes, that looks Dutch, but he was born in Belgium and now lives in Phuket) famous for tools like PowerGREP and RegExBuddy. All based on the great Delphi RegEx PCRE library written by Jan and included in Delphi XE and up.

The thing that baffled me most is that even though XML Schema Regular Expressions do not support anchors ^ and $, you still have to escape them.

–jeroen

via: XML Schema Regular Expressions.

Posted in Development, RegEx, Software Development, XML/XSD, XSD | 2 Comments »

Delphi memory managers – via Tommi Prami G+

Posted by jpluimers on 2014/12/30

There is a nice Delphi memory thread at G+ initiated by Tommi Prami for which I added some links to the memory managers:

  • FastMM (No signs of the Version 5)
  • ScaleMM – Interesting (two versions)
  • SynScaleMM – Fork of the previous
  • SapMM – Just found out about this, but tries to tackle multithreading issue.

More interesting comments (most people seem to favour FastMM, as they can get very good performance out of it even in multi-threaded environments) at There have not been much of the Talk of MemoryManagers lately….

Note there is also TBBMM based on TBB, but it seems unmaintained.

Barry Kelly’s memory manager is based on Boehm-Demers-Weiser GC.

–jeroen

Posted in Delphi, Delphi 2007, Delphi 2009, Delphi 2010, Delphi XE, Delphi XE2, Delphi XE3, Delphi XE4, Delphi XE5, Delphi XE6, Delphi XE7, Development, Software Development | Leave a Comment »

Tools to generate sample data from regeX expressions (via: Stack Overflow)

Posted by jpluimers on 2014/12/30

Thanks DD59 for posting these interesting links:

I like the name `Xeger`.

–jeroen

via: xml – Generate a valid example value for a xs:pattern – Stack Overflow.

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

For the 6502, 65c02 and 65816 freaks out there: WDC have made their Programming the 65816 Including the 6502, 65C02 and 65802 available for free again

Posted by jpluimers on 2014/12/24

Cool:

Shared publicly

For the 6502, 65c02 and 65816 freaks out there: WDC, who still produce the chips, have made their Programming the 65816 Including the 6502, 65C02 and 65802 available for free again (see link below). It’s the standard reference for the new version of these CPUs. Yes, this will be on the test. Ping +Alan Cox HT to BDD on 6502.org

–jeroen

For the 6502, 65c02 and 65816 freaks out there: WDC, who still produce the….

Posted in 6502, 6502 Assembly, Assembly Language, Development, History | Leave a Comment »

.NET/C#: Chaning the ForeColor of a ReadOnly/Disabled TextBox (via: Stack Overflow)

Posted by jpluimers on 2014/12/24

Once every while you still do WinForms work, and bump into something you hadn’t bumped into before.

This time it was trying to set ForeColor = Color.Red on a ReadOnly TextBox for displaying error messages:

  • Using a TextBox means the user can still copy the text to the clipboard.
  • Using a Red foreground draws enough attention (it’s was an app with a really busy user interface).

When setting a TextBox from ReadOnly = false to true sets the BackColor from SystemColors.Window (usually white) to SystemColors.Control (usually light grey), and leaves the ForeColor to SystemColors.WindowText (usually black).

Setting ForeColor = Color.Red (funny there is a plural in SystemColors but not in Color) it doesn’t display it as such:

To my surprise, the TextBox had ReadOnly text (you could copy, but not modify it), which showed with a a grey (SystemColors.Control) BackColor and a black (SystemColors.WindowText) ForeColor: the defaults for a ReadOnly TextBox, not using my ForeColor = Color.Red;

I vaguely remembered there was some odd way of solving this, but since I hadn’t written a blog article about it back then (somewhere around .NET 1.x or 2.0 I didn’t have a blog yet), I was glad that Cheetah posted this answer on StackOverflow: Read the rest of this entry »

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, Color (software development), Development, Software Development, VB.NET, VB.NET 10.0, VB.NET 11.0, VB.NET 7.0, VB.NET 7.1, VB.NET 8.0, VB.NET 9.0, Visual Studio 11, Visual Studio 2002, Visual Studio 2003, Visual Studio 2005, Visual Studio 2008, Visual Studio 2010, Visual Studio and tools, WinForms | Leave a Comment »

Episode 215: Gang of Four – 20 Years Later : Software Engineering Radio

Posted by jpluimers on 2014/12/23

If you are into serious software development, then this is a 75 minute PodCast you must listen to: Episode 215: Gang of Four – 20 Years Later : Software Engineering Radio.

Abstract

Johannes Thönes talks with Erich Gamma, Ralph Johnson and Richard Helm from the Gang of Four about the 20th anniversary of their book Design Patterns. They discuss the following topics: the definition of a design pattern and each guest’s favorite design pattern; the origins of the book in architecture workshops; the writing of the book together with the community; the rock-star feeling at the release of the book at OOPSLA conference; the influence of the book on the industry; the evolution of the Observer pattern; and new patterns since the book was released. The interview closes with each guest talking about their current projects.

What I liked

Of course I enjoyed the history of the Gang of Four (and am still sad that John Vlissides passed away).

Read the rest of this entry »

Posted in .NET, C#, Delphi, Development, Java, Java Platform, JavaScript/ECMAScript, Scripting, Software Development | Leave a Comment »

Am I really a developer or just a good googler? – Scott Hanselman

Posted by jpluimers on 2014/12/23

Found back an awesome post from about 16 months back: Am I really a developer or just a good googler? – Scott Hanselman.

I admin that I’m both, not only for development, but also for life hacking and a lot of other stuff I do.

There is so much information, that you can’t know or remember everything.

In fact one of the reasons I started my own blog, contribute to sites like StackOverflow, newsgroups, and speak/visit at events (conferences, user groups, etc) is that I don’t know everything and the interaction helps me learn more.

One of the cool things, is when Googling for some information, I stumble upon one of my own blog entries or other online contributions (:

–jeroen

Posted in About, Development, LifeHacker, Personal, Power User, Software Development | 1 Comment »

Direct link to the “old” WordPress stats page giving more information: My Stats — WordPress.com

Posted by jpluimers on 2014/12/22

For my link archive: the “old” stats page, as it shows more information in a better formatted way (especially on larger monitors) My Stats — WordPress.com.

The “new” stats page used only half the screen width (long live responsive layout): Stats ‹ 7443331 — WordPress.com.

–jeroen

Posted in Development, SocialMedia, Software Development, Web Development, WordPress, WordPress | 2 Comments »

Delphi Cookbook for USD 5 (or EUR 4.80); actually: get any Packt eBook or video for that price – #packt5dollar

Posted by jpluimers on 2014/12/20

Earlie this month, I wrote a review about Delphi Cookbook.

Well: as of last thursday, you can get that for USD 5 (or EUR 4.80, so better get yourself a USA account: just ensure your address is in the USA).

Heck: until januari 6th, you can get any eBook or Video on Packt for USD 5.

Note there is even an x-Mas countdown on the way (with each day a free book that is readable/downloadable for 24 hours).

There’s over 2500+ books to choose from, so I’m grabbing this chance to learn a few things on OpenCV, Scala, and PowerShell.

–jeroen

via: Book review: Delphi Cookbook by Daniele Teti, Packt publishing.

Posted in .NET, CommandLine, Delphi, Delphi XE, Delphi XE2, Delphi XE3, Delphi XE4, Delphi XE5, Delphi XE6, Delphi XE7, Development, Java Platform, PowerShell, Scala, Scripting, Software Development | Tagged: , | Leave a Comment »