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

Time for a golden oldie: Pragmatic Software Development Tips

Posted by jpluimers on 2013/05/09

From the century start era of The Pragmatic Bookshelf | The Pragmatic Programmer, a – still valid – list of Pragmatic Software Development Tips.

From Care About Your Craft, via DRY, Some Things Are Better Done than DescribedKeep Knowledge in Plain Text, Work With a User to Think Like a User, Find the Box, and many others till Sign Your Work.

–jeroen

via: The Pragmatic Bookshelf | List of Tips.

Posted in .NET, C++, Cloud Development, COBOL, CommandLine, Delphi, Development, Fortran, iSeries, Java, Pascal, RegEx, Scripting, Software Development, Web Development, xCode/Mac/iPad/iPhone/iOS/cocoa | 3 Comments »

What programmers font (monospaced!) do you like best?

Posted by jpluimers on 2013/05/08

Lucida Console Sample (thanks Wikimedia!)

Lucida Console Sample (thanks Wikimedia!)

I’m in search to see if there is a better programmers font than the monospaced Lucida Console mainly to be used in Visual Studio, Delphi, the Windows console, Xcode and Eclipse. What I love about Lucida Console design is the relatively large x-height combined with a small leading (often called “line height”). This combines very readable text, and a lot of code lines in view. Lucida has two small drawbacks, see the second image at the right:

  • The captial O and digit 0 (zero) are very similar.
  • Some uppercase/lowercase character pairs are alike (because of the large x-height)

But, since the font hasn’t been updated for a very long time, lots of Unicode code points that are now in current fonts, are missing from Lucida Console (unless you buy the [Waybackmost recent version that has 666 characters from Fonts.com) Well, there are dozens of monospaced fonts around, so I wonder: which ones do you like? In the mean while, I’m going to do some experimenting with fonts mentioned in these lists:CcKkOoSsUuVvWwXxZz are much alike.

A few fonts I’m considering (I only want scalable fonts, so raster .fon files are out):

I have tried Adobe Source Code Pro about half a year ago. That didn’t cut it: problem with italics in Delphi, and not enough lines per screen. [WaybackNew Open Source monospaced font from Adobe: Source Code Pro.

–jeroen

Posted in .NET, Adobe Source Code Pro, Apple, Delphi, Delphi 2007, Delphi XE3, Development, Encoding, Font, Lucida Console, Mac, Mac OS X / OS X / MacOS, Power User, Programmers Font, Software Development, Typography, Unicode, Visual Studio 11, Visual Studio 2005, Visual Studio 2008, Visual Studio 2010, Visual Studio and tools, Windows, Windows 7, Windows 8, Windows Server 2008 R2, Windows XP, xCode/Mac/iPad/iPhone/iOS/cocoa | 43 Comments »

c# – What’s the hardest or most misunderstood aspect of LINQ? – Stack Overflow

Posted by jpluimers on 2013/05/07

It is such a pity that StackOverflow is not the place any more for questions like these:

c# – What’s the hardest or most misunderstood aspect of LINQ? – Stack Overflow.

These questions and answers historically got me most of the insight from SO.

Alas, no more.

–jeroen

Posted in .NET, Development, LINQ, Opinions, Pingback, Software Development, Stackoverflow | Leave a Comment »

Some Delphi & C#/.NET links on XML related stuff

Posted by jpluimers on 2013/05/02

for my link archive:

–jeroen

Posted in .NET, C#, Delphi, Delphi 2007, Delphi 2009, Delphi 2010, Delphi XE, Delphi XE2, Delphi XE3, Development, Software Development | 1 Comment »

FMX is not a VCL replacement

Posted by jpluimers on 2013/05/01

This is more elaborate English version of a short Dutch message I recently sent to explain the differences between VCL and FMX:

Do not regard FMX as a replacement for VCL: they are different kinds of frameworks.

VCL is a wrapper around Windows Controls. In itself, it has not much functionality: it exposes the underlying Windows functionality. The exception are data aware controls that provide basic functionality for writing data aware applications. There is a huge 3rd party market for extending VCL support, for instance providing extra Windows functionality, enriching data aware behaviour (look at all those fancy data aware grids), and many more.

FMX  is the FireMonkey X-platform framework. Major functionalities are vector based 2D, 3D drawing and controls, and support for styles and composition.

When introducing FMX in Delphi XE2, Embarcadero also introduced a new way of data binding that is shared with FMX and VCL. FMX extends this a bit to some basic data aware controls.

Gone are most of the platform specific features like drag & drop, full blown Windows Shell ListViews, etc. There are some controls that manifests themselves differently on each supported platform (like Pickers), but most of that is currently left to the 3rd party FMX component market.

So if you want FMX to replace VCL, then be prepared for quite some shopping in the 3rd party market.

CLX tried to be a full blown cross platform VCL replacement, but that didn’t work very well.

–jeroen

Posted in Delphi, Delphi XE2, Delphi XE3, Delphi XE4, Development, FireMonkey, OS X FMX, Software Development | Tagged: , , , , , , | 1 Comment »

Creating Lnk ShortCut files the programmatic way

Posted by jpluimers on 2013/05/01

A while ago, I needed to automatically create a bunch of shortcuts all in the same directory, and all the batch files in a different directory.

There’s different kinds of doing this:

I needed a one-off, so I came up with some code like this. Read the rest of this entry »

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

Counting Lines of Source Code in PowerShell | Precision Computing

Posted by jpluimers on 2013/04/30

Precision Computing is a site by Lee Holmes having a great blog with PowerShell tips. Of course he does, as he is part of the PowerShell team and he wrote Windows PowerShell Cookbook: The Complete Guide to Scripting Microsoft’s New Command Shell.

The Counting Lines of Source Code in PowerShell entry is on counting C# code lines (and shows some great performance optimization tips).

I knew about the blog, and bumped into the entry because of file – Lines-of-code counting for many C# solutions – Stack Overflow.

Last year I inherited a suite of .NET projects totaling about 4 million LOC. Which I want to drastically reduce to make it more maintainable.

–jeroen

Posted in .NET, C#, C# 1.0, C# 2.0, C# 3.0, C# 4.0, C# 5.0, CommandLine, Development, PowerShell, Software Development | Leave a Comment »

Delphi: Thomas Mueller is fast – experimental GExperts + code formatter for Delphi XE4 « twm’s blog

Posted by jpluimers on 2013/04/28

Thomas Mueller is fast: experimental GExperts + code formatter for Delphi XE4 « twm’s blog.

–jeroen

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

What do you mean “cannot use parentheses?” – Fabulous Adventures In Coding – Site Home – MSDN Blogs

Posted by jpluimers on 2013/04/25

Eric Lippert:

Ah, VBScript. It just wouldn’t be the same without these quirky gotchas.

So either perform Call, assign the function result, or use less parenthesis.

Another thing that drives me crazy with VBScript is that you can only specify ByVal or ByRef, but not specify what type a parameter (string, integer, etc) will be.

VBScript will just barf with “Microsoft VBScript compilation error: Expected ‘)’” at the first As. or colon (:) when you declare Sub or Function parameters like this:

  • Function Describe(ByVal FileName As String, ByVal Description As String)
  • Function Describe(ByVal FileName : String, ByVal Description : String)

The reason is that the colon is end-of-statement token, which means you can string statements together, an can Dim and assign a variable in one line:

  • Dim PathName : PathName = FileName

To quote ebgreen:

VB is NOT VB.Net which is NOT VBA which is NOT VBScript

Oh and Debugging VBScript is indispensable (:

–jeroen

via: What do you mean “cannot use parentheses?” – Fabulous Adventures In Coding – Site Home – MSDN Blogs.

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

Delphi static class methods are assignment compatible with plain old function pointers

Posted by jpluimers on 2013/04/24

So I won’t forget, as the  [WayBackstatic in different languages varies in meaning:

[WayBack] Static on class methods makes them assignment compatible with plain old function pointers.

Thanks Moritz Beutel for initially posting this.

–jeroen

via:

related:

  • [Archive.isFacebook – Delphi developer: static class methods
  • [WayBack] Delphi 2007: Methods; Class Methods:

    Like class methods, class static methods can be accessed without an object reference. Unlike ordinary class methods, class static methods have no Self parameter at all. They also cannot access any instance members. (They still have access to class fields, class properties, and class methods.) Also unlike class methods, class static methods cannot be declared virtual.

    Methods are made class static by appending the word static to their declaration.

Posted in Delphi, Delphi 2005, Delphi 2006, Delphi 2007, Delphi 2009, Delphi 2010, Delphi XE, Delphi XE2, Delphi XE3, Development, Software Development | 5 Comments »