In this video, we take a look at a handy shortcut for when you are editing forms. It hides all the non-visual controls, which can get in the way of the layout of your applications. There are also a number of bonus hints (Hide component captions, customise the file menu).

I don't use the Navigation Bar in the Code Editor as much as I should, but now that I know these cleaver shortcuts I'll be using it much more.  Find out what they are here.

DelphiCon was a great success, you can watch my presentation on my YouTube channel, or Embarcadero's which includes the Q&A, or any other of the great sessions by having a look at the replays.

Delphi has been able to build 64-bit applications for quite some time, we are going to write a simple Windows app that allocates 32GB of memory and see what happens. Watch it here.

In this video, we build a simple application to take a list of names and print name tag labels using FastReports. We are going to do this without writing a single line of code, or even compiling our application.

Block selection allows you to select rectangular blocks of text in your code, it's more useful than it sounds - trust me - watch the video.

Yes, my book is finally published, at least in electronic form. To help promote it here are a few keyboard shortcuts related to selection that might help boost your productivity.  Watch them in action on YouTube.

You can get the book from LeanPub.

Here are the shortcuts:
Select identifier, then expand: CTRL+W
Smart Surround Keys: (, [ and {
Shift cursor within selection: Ctrl+Q+B and Ctrl+Q+K

Exactly10 Videos ago we looked at a bug I found in Delphi related to visual styles, did it get fixed? Is it worth reporting bugs? Find out in this video.

Strings are special in many ways, and in this video, we take a look at how we can generate some strange behaviour when we return a string from a function. This behaviour is also exhibited by variants and dynamic arrays.

Want to return a value from a function? Normally you would use the "Result" keyword, but in fact, there is another way of doing it (and I'm not talking about Exit(Value)), watch to find out about this bit of obscure Pascal syntax - which may cause some hard to spot bugs if you are not aware of it.