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

My initial thoughts on the new Community sites

Posted by jpluimers on 2014/04/06

(I just found out this post was marked “missed schedule” since April 6, 2014. It’s a [WayBack] known WordPress bug that on wordpress.com still raises it’s head every now and then. Sorry for that.)

The introduction of AppMethod wasn’t only introducing a new product based on the Object Pascal language and Firemonkey framework, it also shows which direction Embarcadero is taking with their community sites all hosted on community.embarcadero.com some of which replace parts of the EDN (Embarcadero Developer Network) sites.

These already saw the light:

Here is my initial impression on them. So below, phrasings like “it is” phrase how I feel about them.

The UI looks clean

Whereas most of the EDN sites look cluttered (some of which just look like a big landing page), the new sites look much cleaner. Less fuzz, more aimed towards their goal.

Existing EDN credentials are re-used

This is only part of the story. EDN has two credentials: a username and an email address. At the EDN sites, you can use either one. But not all community sites support that. I hope this means “not all community sites support that yet”.

So far, the Answers, Articles and Forums sections (which are hosted on the main site) understand authentication using either the username or email.

The Quality part

The community site is PHP based.

I have mixed feelings about this. On the plus side, PHP is used by many people, Embarcadero has a PHP based HTML5 Builder product (initially called Delphi for PHP, then RadPHP; well Delphi was almost called AppBuilder so that is still positive). On the negative side, even big PHP users like WordPress do horrible things with it (don’t get me started on their scheduling engine, or on breaking posts that contain source code).

Answers is new.

Answers does not have a predecessor within. It is a bit like a StackExchange site targeted at one product, but unlike StackOverflow, it feels more welcoming to new users. I hope that stays so, and that some people with capabilities like John Skeet will join it, and not the typical StackOverflow moderators  that think they can judge questions that are clearly out of their field of expertise.

I’m not yet sure how to maintain this in

Forums.

The forums server doesn’t keep articles forever: depending on the forum, the retention duration can be as little as a couple of months or less.

It means that valuable information gets lost as nobody puts this in the WayBack machine and the WayBack machine is not indexed by Google anyway.

Articles.

Currently there are the categories Tutorials, Technical Articles and Support.

Quality.

Quality is the future direction of QC. It is based on JIRA (from Atlassian). Whereas QC was developed in-house (initially bound to the then internal RAID) a long time before publicly accessible quality systems became widespread, JIRA is an external system.

QC is dated^w dead. Though [WayBack] it has a – for its age modern – WSDL API, the web interface is horrible as of nowadays standards, and even the [WayBack] Windows and [WayBack] Java clients mentioned on the [WayBack] QC home page are not a pleasant use (personally I still use the QC Plus client though it is not publicly available any more).

Embarcadero has used JIRA internally since at least 2009 (and presumably converted their internal RAID bug database to JIRA), so they have experience using it.

I love JIRA as it is the central piece in a lot of agile environments, has all its functionality on a web-based fashion backed with a publicly documented REST based  API so you can hook up native tools with ease and is in use by many closed and open source projects. There are options to host it yourself, or in the cloud or mix and match.

So I do welcome JIRA. But there are a few things that Embarcadero needs to fix:

  • Better integration with EDN login services (right now you can only login using the username you registered at EDN, but not with the email address you registered at EDN).
  • Making all reports of publicly available products also public just like on QC (I get it that bugs on products not publicly available are not visible to the public at large).

–jeroen

Posted in Appmethod, Delphi, Development, Missed Schedule, QC, SocialMedia, Software Development, WordPress | Leave a Comment »

how can I embed an mp4 video into a Firemonkey app (via: David M Williams – Google+)

Posted by jpluimers on 2014/04/06

Last week, David M Williams posted a nice question on how can I embed an mp4 video into a Firemonkey app.

The resolution – using the Deployment Manager  and TPath – was remarkably simple based on my suggestion:

That depends on your platform. Windows can embed and extract resources in your EXE. On other platforms that is either hard or impossible. I’d just deploy the mp4 with your app. `TPath` has some really nice methods to get you directories (Home, Documents, etc) in a platform neutral way, and to combine directories and filenames to form a full path name.

he went along and this was his solution:

Under Project/Deployment I add the MP4 file, then set the MediaPlayer filename property using TPath.

–jeroen

via: David M Williams – Google+ – Seeking some help – how can I embed an mp4 video into a….

Posted in Delphi, Delphi XE2, Delphi XE3, Delphi XE4, Delphi XE5, Development, Software Development | Tagged: , , | Leave a Comment »

Cool post from Marc’s Blog: Delphi XE2’s hidden hints and warnings options

Posted by jpluimers on 2014/04/05

A while ago, I had to disable a couple of warnings from legacy code so I could first perform the Unicode conversion, then make time to eliminate the actual warning cause.

This post was much helpful here:

Marc’s Blog: Delphi XE2’s hidden hints and warnings options.

He lists all the W#### and X#### warnings he could find in Delphi XE2 (XE3, XE4 and XE5 more or less have the same), including the mapping to the equivalent directive IDs used inside these blocks:

{$WARN SYMBOL_DEPRECATED ON}
{$WARN SYMBOL_DEPRECATED OFF}
{$WARN SYMBOL_DEPRECATED DEFAULT}
{$WARN SYMBOL_DEPRECATED ERROR}

I also learned that the DEFAULT value restores an option to what you specified in the project settings.

–jeroen

Posted in Delphi, Delphi 2009, Delphi 2010, Delphi XE, Delphi XE2, Delphi XE3, Delphi XE4, Development, Encoding, Software Development, Unicode | 11 Comments »

Appmethod registry keys for trying to build Spring4D

Posted by jpluimers on 2014/04/04

I’m researching the Spring4D build engine to compile and install the packages and sources for the first Appmethod release.

These are the registry settings that I’ve found:

HKEY_CURRENT_USER\Software\Embarcadero\BDS\13.0

I wonder if the 13 has anything to do with http://docwiki.appmethod.com/appmethod/1.13.

Anyhow: it looks like the next Delphi (XE6) might not use the number 13. Again. Although Allen Bauer was in episode 13 (:

–jeroen

Posted in Appmethod, Delphi, Delphi XE6, Development, Software Development | Tagged: | 2 Comments »

André Vatter – Google+ – Wie Tabellen eigentlich aussehen sollten: 

Posted by jpluimers on 2014/04/03

Below is how tables should look like.

Thanks Thomas Mueller (dummzeuch) for pointing me to André Vatter – Google+ – Wie Tabellen eigentlich aussehen sollten: .

–jeroen

André Vatter - Google+ - Wie Tabellen eigentlich aussehen sollten: 

Posted in Development, Software Development, UI Design | Leave a Comment »

PowerShell conditional and logical operators (via: PowerShell Pro!)

Posted by jpluimers on 2014/04/03

Switching between many different languages, I tend to forget the exact names and symbols of the PowerShell operators.

Most of the ones I use have to do with comparison and logic, o here they are:

Most used comparison operators

Operator Description
-eq Equal to
-lt Less than
-gt Greater than
-ge Greater than or Eqaul to
-le Less than or equal to
-ne Not equal to

Logical operators

Operator Description
-not Not
! Not
-and And
-or Or

I find it funny that you have ! and -not, but not -!. Oh well (:

Talking about logicals: PowerShell can coerce a couple of values to $false, but I’m ambivalent to use that: it does shorten code, but is very PowerShell specific.

Before I forget: an operator that is undervalued, is the -f operator that does formatting.

It uses the standard .NET formatting strings, so that is an easy way to put your .NET knowledge to use. Some further reading on the -f operator:

–jeroen

via: Conditional Logic | PowerShell Pro! :: PowerShell Pro!.

Posted in CommandLine, Development, PowerShell, PowerShell, Scripting, Software Development | Tagged: , , | Leave a Comment »

Escaping in PowerShell: the back-tick ` is the escape character.

Posted by jpluimers on 2014/04/03

Somehow I always forget this:

The PowerShell escape character is the backtick “`” character.

Use it for escaping quotes within quotes, or inserting special characters.

Don’t abuse it (see the great debate: do not use it as a line continuation).

Often you can avoid line continuation characters by using splatting, which is one of the “best kept secrets” in PowerShell.

–jeroen

via: Escaping in PowerShell.

Posted in CommandLine, Development, PowerShell, PowerShell, Scripting, Software Development | Leave a Comment »

Android: “R cannot be resolved to a variable” What is R? Why is it so Cryptic? (via: Stack Overflow)

Posted by jpluimers on 2014/04/03

If I ever get “R cannot be resolved to a variable” in an Android project again, then I should read these posts:

One of the quotes was the culprit:

*Note: Eclipse sometimes likes to add an “import android.R” statement at the top of your files that use resources, especially when you ask Eclipse to sort or otherwise manage imports. This will cause your make to break. Look out for these erroneous import statements and delete them.*

–jeroen

Posted in Android, Development, Mobile Development, Software Development | Leave a Comment »

Windows: setx sets environment variables in a persistent way (from values on cmd-line, registry or text files)

Posted by jpluimers on 2014/04/02

Wow, I totally missed the introduction of SETX.

From TechNet:

SETX:

Creates or modifies environment variables in the user or system environment, without requiring programming or scripting. The Setx command also retrieves the values of registry keys and writes them to text files.

Even better, is that it allows you take values from these sources so it is easy to get those into environment variables:

  • Command-line parameter
  • Registry key
  • Text file (with some filtering/search options)

From a bit of searching around, I think it got introduced in a Windows Resource Kit, and got included by default starting Windows Vista.

Excellent addition to my toolset (:

–jeroen

via Setx.

Posted in Batch-Files, Development, Power User, Scripting, Software Development, Windows, Windows 7, Windows 8, Windows 8.1, Windows Server 2008, Windows Server 2008 R2, Windows Vista | Leave a Comment »

anyone know how to look up an ip address given a mac… (via: Koushik Dutta – Google+)

Posted by jpluimers on 2014/04/02

Wondering what kind of device AllCast is going to support next (:

Interesting question: Koushik Dutta – Google+ – anyone know how to look up an ip address given a mac….

–jeroen

Posted in Android, Chromecast, Development, Google, Mobile Development, Power User, Software Development | Leave a Comment »