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,860 other subscribers

Archive for the ‘Missed Schedule’ 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 »

Delphi .dproj files: FrameworkType and FormType (via: Embarcadero Discussion Forums)

Posted by jpluimers on 2013/11/28

One more of the “Missed Schedule” series, this time it was originally scheduled for October 1st, (2013 that is).

Delphi XE2 and up introduced the FrameworkType and FormType elements in the .dproj files to distinguish between VCL and different flavours of FireMonkey.

Actually, Delphi XE1 already had the value None for FrameworkType, so some cross-platform changes trickled into the Delphi builds early.

Though the IDE writes these values to the .dproj files, you [Wayback/Archive] cannot change their values from within the Delphi IDE, not even through the Open Tools API.

There is no documentation about the values in the .dproj files. the only places I could find were these about FrameworkType in combination with [Wayback/Archive] Actions:

that basically tell this:

FrameworkType

Defines whether an action is created for the VCL or FireMonkey (FMX) framework. The default of this parameter is VCL (for compatibility with legacy applications).

This parameter is used to avoid situations when VCL actions are used in FireMonkey applications and inversely; this can lead to a serious increase in an application’s size and to execution errors, for example, calling of Windows API under MacOS.

But it is incomplete, and there is no documentation about FormType. Read the rest of this entry »

Posted in Delphi, Delphi XE2, Delphi XE3, Delphi XE4, Delphi XE5, Development, Missed Schedule, SocialMedia, Software Development, WordPress | Leave a Comment »

.NET Framework 1.1 and Visual Studio .NET 2003 support ended 20131008 (via: Microsoft Support Lifecycle)

Posted by jpluimers on 2013/11/27

WorPress did it again to me:

2013/10/08; Missed schedule

Anyway:

If you still have a coded base in the .NET Framework 1.1 / Visual Studio 2003, then you should note that after 20131008, the extended support has ended.

Though the introduction of both feels like yesterday to lots of us, they have been supported for more than 10 years. An era has ended. Time to move on to newer versions has passed long ago.

The next important date is about 2.5 years from now: 2016-04-12, when the support for the .NET Framework 2.0 and Visual Studio 2005 ends.

From the Microsoft Support Lifecycle: .NET Framework 1.1 and Microsoft Support Lifecycle: Visual Studio .NET 2003 pages (I formatted the dates into YYYY-MM-DD): Read the rest of this entry »

Posted in .NET, .NET 1.x, C#, C# 1.0, Development, Missed Schedule, SocialMedia, Software Development, Visual Studio 2003, Visual Studio and tools, WordPress | Leave a Comment »

.NET/C#: Getting volume free space from UNC path requires PInvoke of GetDiskFreeSpaceEx in Kernel32.dll

Posted by jpluimers on 2013/11/26

For some remote monitoring, I needed to get information on UNC paths.

Though suggested, you cannot do this using the System.IO.DriveInfo class (not through the constructor, nor through the VB.NET FileSystem way) as that is about drives, not UNC paths. The System.IO.DriveInfo constructor clearly indicates it doesn’t work with UNC paths. And if you still try, this is the error you will get:

System.ArgumentException was unhandled
HResult=-2147024809
Message=Object must be a root directory ("C:\") or a drive letter ("C").
Source=mscorlib
StackTrace:
at System.IO.DriveInfo..ctor(String driveName
)

Same for WMI: that only works when the UNC path has already been mapped to a drive letter.

You could do with adding a temporary drive letter but since there is nothing as permanent as a temporary

P/Invoke

The actual solution is based on calling Windows API functions using P/Invoke. Read the rest of this entry »

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, CSV, Development, Missed Schedule, SocialMedia, Software Development, WordPress | Leave a Comment »

Optimize your Delphi installed disk size

Posted by jpluimers on 2013/11/26

Another instalment in the WordPress Missed Schedule series (:

Each version, Delphi gets more features, and grows bigger.

Especially in testing environments (where you want to have a cut-down base machine you can clone from), it is wise to cut down on the installation size.

A few directories you might want to consider compressing for your Delphi installation:

  • C:\Users\All Users\{*}
    The directories with GUID names contain the installer cache. You can ditch the whole installer cache if you keep ISO images of all installations. I prefer just to compress these directories.
    Compressing usually saves 50% of the storage there, which can count for 5+ gigabyte of savings for the newest Delphi version.
  • C:\Users\Public\Documents\RAD Studio
    Contains (among others) the help files and SVN examples, and (for the most recent version) the Platforms SDKs.
    Saving is usually a couple of 100 megabytes for less recent Delphi versions until about 1 gigabyte for the most recent.
  • C:\Program Files (x86)\Embarcadero\RAD Studio\#.0\lib
    This contains all the precompiled files. Since they are readonly in nature, it pays of compressing them, usually saving 50% or more.
    Saves 5+ gigabytes for the most recent Delphi version.

–jeroen

Posted in Delphi, Delphi XE, Delphi XE2, Delphi XE3, Delphi XE4, Delphi XE5, Development, Missed Schedule, SocialMedia, Software Development, WordPress | Leave a Comment »

Remote Android screen monitoring and viewing

Posted by jpluimers on 2013/11/25

Another one in the “WordPress Missed schedule” series.

Below are the Android remote screen monitoring/viewer/mirror tools I know about:

  • For a long time, I have used Droid@Screen: an Open Source,  Java based mature cross platform tool that uses ADB (it can even restart it for you in case it hangs) with lots of features (zooming, no temporary files, device recognition, disabling emulator devices, etc). There are some Screen Shots | Droid@Screen.
  • A while ago, I saw android-screen-monitor – Android Screen Monitor – Google Project Hosting. It is a mixed Java/C++ solution that only works on Windows.
  • Recently, Jim McKeeth open sources his Android Screen View: Android Screen View | The Podcast at Delphi.org. It is written as a quick hack in Delphi XE5, so right now it has less features and works in a more crude way than the two Java based tools, but it shows the potential of doing similar things with Delphi.

I primarily use Droid@Screen as so far it works best for me.

But I keep a close eye on the other two just to make sure I don’t miss improvements.

–jeroen

Posted in Android Devices, Delphi, Delphi XE5, Development, Java, Missed Schedule, Mobile Development, Power User, SocialMedia, Software Development, WordPress | 1 Comment »

When the Delphi XE5 commandline compiler fails with `error F1026: File not found: ‘False.dpr’`

Posted by jpluimers on 2013/11/20

If you an error like below when compiling Delphi XE5 .dproj files using msbuild … then note the documentation for Debug information (Delphi) – RAD Studio. has not been updated yet as it still lists the values {$D+} or {$D-} {$DEBUGINFO ON} or {$DEBUGINFO OFF}.

(_PasCoreCompile target) -> C:\Program Files (x86)\Embarcadero\RAD Studio\12.0\Bin\CodeGear.Delphi.Targets(187,5): error F1026: File not found: 'False.dpr'

With Delphi XE5, you can specify 3 additional values: {$D1}{$D2} and {$D0}, or {$DEBUGINFO 1}{$DEBUGINFO 2} or {$DEBUGINFO 0}

In the msbuild .dproj files , the values are stored as DCC_DebugInformation elements. Read the rest of this entry »

Posted in Delphi, Delphi 2005, Delphi 2006, Delphi 2007, Delphi 2009, Delphi 2010, Delphi XE, Delphi XE2, Delphi XE3, Delphi XE4, Delphi XE5, Development, Missed Schedule, SocialMedia, Software Development, WordPress | 13 Comments »

LinkedIn: connecting two people, sort of. (via: LinkedIn Answers)

Posted by jpluimers on 2013/11/18

One of the things I wish that LinkedIn implements is an easy way to connect two of your relations.

I understand that the underlying issues might be a tad more difficult than this simple request (what about spam connects, or other security concerns?), but right now the way to do this is cumbersome:

how do i connect two people ?
posted June 18, 2009 in Using LinkedIn

Daniel Jatovsky:

You cant connect two people, but you can introduce them to each other. Then its up to them to connect.

There are two methods in LinkedIn for doing this.

One is to go to each persons profile. At the top of the profile is a link to Forward this profile. Click on it, forward it to the other person with a note from yourself. Once they’ve responded positively you can forward contact information to each other.

The other is to send a message to both simultaneously. To do that, go to your Inbox and click on Compose a message and select Send a message to a connection. Write a message that you can send to both simultaneously and, if you like, check the box that allows them to see the other persons name and email address.

–jeroen

via: how do i connect two people ? | LinkedIn Answers | LinkedIn.

Posted in LinkedIn, LinkedIn, Missed Schedule, Power User, SocialMedia, WordPress | 2 Comments »

Android 4.2+: enable USB debug mode (Nexus 4, Nexus 7, etc)

Posted by jpluimers on 2013/11/15

Researched this a long while ago, but just presented this at my Delphi cross-platform session on ITDevCon 2013 (of which some sessions have been broadcasted on YouTube):

With Android 4.2 and up, they did hide the debug mode a bit.

Perform these steps one to enable debug mode:

  1. Go to “Settings”.
  2. Scroll down to “About phone” or “About tablet”.
  3. Tap on “About phone” or “About table” to go to the “About” screen.
  4. In the “About” screen, scroll down, to “Build number”
  5. Tap on “Build number” seven (7!) times. It will give you some messages until finally it shows “You are now a developer”.
  6. (On some devices): confirm with the PIN code for your phone.

The above steps unlocked the “USB debugging” mode.

To enable or disable “USB debugging” mode:

  1. Go to “Settings”
  2. Choose “Developer Options”
  3. Choose “Debugging”
  4. Choose “USB Debugging”

–jeroen

via:

Posted in Android, Android Devices, Delphi, Delphi XE5, Development, Missed Schedule, Mobile Development, Power User, SocialMedia, Software Development, WordPress | 1 Comment »

The end of the classic ThinkPad Keyboard layout (#Lenovo #Fail)

Posted by jpluimers on 2012/05/18

(Thanks to a “Missed Post” problem on WordPress.com, this one didn’t get posted on the scheduled date. Sorry for any inconvenience)

First Lenovo did away with 1920×1200 screens. Now they done away with the ThinkPad keyboard layout.

Both were my compelling reasons for buying Lenovo.

In fact, they are now marked as forum.thinkpads.com • non-ThinkPad Lenovo Hardware.

New Lenovo X1 keyboard. No more ScrLk, Pause and local-menu keys, PrtScr key moved to impossible place. 6-key navigation split.

New Lenovo X1 keyboard. No more ScrLk, Pause and local-menu keys, PrtScr key moved to impossible place. 6-key navigation split.

–jeroen

PS: Anyone in The Netherlands who has a new ThinkPad W701 with 1920×1200 screen for sale?

Posted in Keyboards and Keyboard Shortcuts, Missed Schedule, Power User, SocialMedia, WordPress | 2 Comments »