Nick Hodges

Word of the Day: BOGO

01
Jul

The new word around here is BOGO – or Buy On, Get One.  Free that is.  Right now, if you buy any Embarcadero product, you can get a different Embarcadero product of equal or lesser value for free.  That’s right – Free. As in no additional money.  As in register your purchased product, get the code, go to our website, enter the code, choose a product, and get it for free.   But you need to do it before August 24.  That’s when the deal expires. There are some restrictions – not many – so now is the time to buy.

There are a lot of prices out there that you can pay, but of all the prices there are, I think we can all agree that Free is the best one.  I know that it is my favorite price, and I pay that price as often as I can.  :-)

Random Thoughts on the Passing Scene #114

28
Jun

Random Thoughts on the Passing Scene #113

23
Jun

Random Thoughts on the Passing Scene #112

10
Jun
  • Some good advice on moving to Delphi 2009.  Money quote: “If you want to estimate the amount of work involved to convert a project, note that it is not significant, how many lines of code you have”
  • Zarko Gajic is a great Delphi community member.  He runs the eminently useful delphi.about.com website which is a huge wealth of information for Delphi developers.  Zarko emailed me this week to let me know about a couple of things that he has going on.  First, he’s running a Delphi Challenge: Fastest Unique Random Number Generator which is a larger part of part of Delphi Programming Challenges / Exercises / Algorithms.  In addition, he’s got a very cool set of “Almanacs” which have “Something for Every Delphi Developer: Beginner or a Guru!”  Cool stuff – thanks Zarko!
  • Hannes Danzl also emailed to let me know that NexusDB V3 has been released. He writes "Apart from the already established cursor based db core and SQL:2003 engine, we’ve are introducing lot of real exciting new features like server side Pascal scripts (e.g. backups, warehouse maintenance, ..), built-in web application, Pascal scripted SQL extensions, and full cursor support. A lot of these features are unique for a databases engine, especially in the Delphi market."  You should be able to find out more at: http://www.nexusdb.com/support/index.php?q=new_features_in_v3.htm
  • Tweet of the Week: kirbyt: Getting to do a bit of coding using Delphi Prism this afternoon. Wish I could replace C# with Prism for all my customers’ .NET projects.
  • ESBPCS for VCL v5.1 released - heaps of routines and components for Delphi. (hat tip to Malcolm Groves)

Random Thoughts on the Passing Scene #111

29
May

We Won’t Overwrite Your Changes

29
May

Delphi 2009 Update 3 is out, and you all seem to have successfully downloaded it and are enjoying the new fixes and improvements.  But some of you are reporting that there are some discrepancies between your PAS files and your DCU files.

This is happening almost certainly as a result of you making changes to the VCL source code.  The installer is very careful not to overwrite your files – if you’ve changed a file in the \source\vcl directory, the update installer will see that and not make the change.  Same with any DCU files that you may have produced as a result.  Again, we won’t overwrite and thus delete your changes.

So, if that is happening to you, then you merely need to run a repair, and the installer should at that point see the differences and correct them.  When you run a repair, you are telling the installer “Go ahead and make my install like it is supposed to be, and you have permission to overwrite my changes”.  Doing that will get everything back in sync.

Following on to that, we strongly recommend that you never make any changes to the files in:

C:\Program Files\CodeGear\RAD Studio\<version>\source

and instead treat the files in that directory as a reference only.  In addition, we strongly recommend that you never put that path (or any of its subdirectories) on any of your IDE paths that can result in that code being compiled.  (You can put it on your browsing paths if you want….)  If you want to debug into the VCL source code, you should set “Use Debug DCUs” in your project options.  That will enable you to step into the VCL/RTL code with the debugger in one easy step without having to muck with the source itself.

debugdcu

Now, if you want to make change to the VCL source code and include that in your projects, we strongly recommend that you take a copy of the PAS file in question and either include it directly in your project or put it in a path where your project will see it. 

Again, we strongly discourage you from compiling or altering the source code in place in the default install directory.  Use it a reference, but leave it in place.  If you need to mess around with it, make copies and mess around on your copy.

Finally! Update 3/4 is here!

27
May

Okay, I told the team that if we didn’t ship this thing today, I was going to throw myself off the third story balcony.  Fortunately, my teammates like me just enough to want to prevent that from happening, and now Update 3/4 is out.  Update 3 is for the IDE/VCL/general product updates, and Update 4 is the Database side of that. 

If you have Check for Updates on automatically, then you should see it the next time you start the IDE.  If you need to do it manually, you can find “Check for Updates” in the RAD Studio Start menu. 

If you want to download the whole thing, you can at the Registered Users page.

Here are the readme files:

The list of bugs fixed in these updates can be found here:

Now, the first question that a lot of you are going to ask is “Why the delay"?” – and unfortunately I’m not at liberty to tell you.  Suffice it to say that it was a frustrating but necessary set of related issues that held us back.  But it is here now, so you can all enjoy it. 

DelphiLive Summary

18
May

Hey, DelphiLive was a real gas.  I had a lot of fun meeting new people, meeting people in person that I’ve known online, and visiting with old friends.  The content was phenomenal – everyone I talked to said the talks were really good.  I loved doing the “What’s Cooking in the Labs” talk – that was really fun, and thanks to everyone for laughing at my lame jokes.  Overall, it was a really fun time, and if you weren’t there, you probably should have been. Maybe next year.  :-)

Probably the most fun was the Meet the Team event. We had almost the entire team there.  Everyone was able to talk to the exact people that build, test, and document the area that they were concerned about.  Embarcadero folks were able to talk to customers and see what their pain points are, what problems they are having, and how they’d like the product to work in better and different ways.  That kind of first-hand feedback is invaluable.  So thanks to all the attendees for their great feedback, and thanks to the team for taking the time to be there last Thursday night.

Of course, we also talked about a few of the projects we are working on like Weaver, Project X, Commodore, and Chromium. 

Other highlights included:

  • I got lots of great feedback about the content of the conference. As far as I can tell, every single talk was top notch: high-quality, useful, in-depth, thorough, and interesting. Kudos to all the speakers for their great work, and kudos the conference team for putting together a great lineup of speakers and talks.  You know the topics are good when everyone is always having a hard time deciding which talk to go to in a given timeslot.
  • The Twitter folks were on fire – the #delphilive tweet channel was humming.  It was quite strange to be in a session and seeing it being “live-tweeted” at the same time. Twitter is really cool for exactly this type of conference – you can definitely get a “live and there” feeling from following the right Twitter channels.
  • Marco Cantu was of course there, and has some good summaries up on his blog (Day 2, Day 3).  Marco also gave his “Fun Side of Delphi” and it was, well, fun.  Marco is always hilarious, and he never fails to continue to find strange, goofy things to do with Delphi.  Nicely done as always.
  • I went to Danny Magin’s talk about Delphi and Subversion, and was delighted when he pointed me to VisualSVNServer.  I had Subversion up and running on my machine in literally two minutes.  Very cool.
  • Another fun part for me personally was visiting with some old friend from Minnesota.  There was a pretty good cadre of Minnesota folks at the conference, and it was great catching up and seeing  how everyone was doing. 

Overall, it was a great conference, and those of  you who didn’t come should really be wishing that you did.  ;-)

Random Thoughts on the Passing Scene #110

13
May

Random Thoughts on the Passing Scene #109

05
May

Random Thoughts on the Passing Scene #108

27
Apr
  • As if you needed another reason, but attendees of Delphi Live will be able to take advantage of a 20% discount or more on RAD Studio products. 
  • If you are on Twitter, you can now join the Delphi Twibe.
  • When was the last time any of you selected “File|New|Other|Delphi Projects|MDI Application?
  • Congratulations to the three new “Delphi Badge” owners over at StackOverflow.  Keep up the good work, guys!
  • So we were sitting in a meeting today and someone said “We have to test and make sure Weaver is uninstallable”, and I had to do a double-take on that.

Random Thoughts on the Passing Scene #107

20
Apr

Cool Stuff with Delphi #27

17
Apr

PSPad - editor for developers for Microsoft Windows systems

The universal freeware editor, useful for people who:

  • work with plain text - the editor has a wealth of formatting functions, including a spell checker
  • create web pages - as a web authoring editor, PSPad contains many unique tools that save your time
  • want to use a good IDE for their compiler - PSPad catches and parses compiler output, integrates external help files, compares versions and much more…

It also includes a very nice set of language localizations and is scriptable and plug-able.  And the best part is that it is free!  Of course, you can donate, which I strongly recommend if you decide, like I have, to use it.  Downloaded, installed, and donated to.  

Random Thoughts on the Passing Scene #106

16
Apr
  • Issam Ali has a new Delphi plugin — AppManifest Application Manifest for Delphi2009/2007
  • The number of questions with the “delphi” tag just went past 1100 at stackoverflow.com.  If you aren’t keeping an eye on stackoverflow.com, you are missing out on a really cool site.  Jeff Atwood and Joel Spolsky have done an excellent job of creating a community where good questions get asked and good answers get given.  There is a solid group of folks answering Delphi questions there, including our very own Allen Bauer and Barry Kelly
  • Some Delphi code makes the DailyWTF!  The ultimate chicken and the egg question!  :-)
  • StackOverflow now has a Delphi badge.  Sweet! Hat tip to Jim McKeeth (who currently happens to be the only holder of the badge. ;-)
  • Remember, if you have a Delphi related event coming up, please feel free to send it to me and I’ll put it here in my blog.  I love doing that.
  • Delphi really bubbled up to the top here.

Cool Stuff with Delphi #26

15
Apr

Now this may very well be the coolest thing that I’ve ever seen done with Delphi:  These folks have put a sensor on their cat door and RFID tags on their cat’s collars that that triggers a Delphi application that sends out a Tweet every time their cats go through the door.   You can follow their cat’s activity on Twitter as well.  How sweet is that?

A New Role for Nick

14
Apr

There have been some changes around here and as a result, I have a new job within Embarcadero.  I am now an R&D Manager on the RAD Studio team, working more closely with the development team to ensure that we deliver a feature rich, stable, high-quality product.  I’ll be writing feature specifications, managing the development process, and ensuring that we are doing the right things at the right time.  As Product Manager, I was involved to a certain level with the product as it was developed, but my main focus was on the product after it shipped.  Now, I’m totally focused on managing the people, process and the project itself to ensure that we ship on time, on target.  I’m pretty psyched, because when you get right down to it, I’m really a geek at heart and so being totally immersed in the development process is awesome.

Fear not — I’ll still be blogging and hanging around in the community.  I am of course always available to hear about your issues, questions, and problems – that won’t change. There is a new Product Manager who will be letting himself be known soon enough, and I can quite happily say that Delphi will be in capable hands.

Ten Things That Really Bug Me

13
Apr

I was cleaning up my hard drive and I found lying around in an old HTML file.  The date on the file was from April of 2006, before I came to CodeGear.  I can’t remember if I ever put this up on a blog somewhere, but I thought it was a pretty good rant, so I’m posting it here. :-)

  1. Message boxes that ask a Yes/No question, but give you Ok/Cancel buttons. I mean, come on. If you are asking a "Yes or No" question, how tough is it to tell the dialog to have Yes and No buttons? Not tough at all, that’s how tough it is.
  2. Ok buttons that are enabled when a dialog is not properly filled in.   This is basic User Interface design. If pushing a button will result in an error message, don’t let the user push the button.
  3. Non-sizable dialogs.  Argh. This one drives me nuts. It’s especially galling when there’s a list box or something that is so small you feel like you are looking at it through a straw.
  4. Dialogs that don’t remember their size and position. Related to the previous item. Sometimes a dialog is too small, and when I size it, I want it to stay sized. Sometimes it blocks stuff I want to see. It should stay where I put it.
  5. Windows that insist on putting themselves in front when I am doing something else. This is absolutely, unequivocally the most irritating thing about Windows. I decide what I am looking at, not some shareware programmer from Wisconsin. If I am typing or otherwise working in a Window, no other application should ever be able to steal the focus, unless it’s warning me that my house is on fire or something.
  6. File directory trees the size of postage stamps. Related to the issue above. Ever get one of those slightly older applications that won’t let you size the directory lookup tree? With ever expanding hard drives and increasingly complex file directory structures, looking at your harddrive through a fixed size treeview that’s only 150 pixels square feels like being shoved in the trunk of a Yugo.
  7. Crappy error messages, especially when they are sentences and don’t end in a period. "Item not found". Great — which item? The name or even type of the item has got to be known by something in the app, otherwise, how could it be looked for?  Tell us for crying out loud! Or how about the old favorite "Error 332322". This isn’t a problem for me personally because I have, of course, memorized all the error codes for your application.
  8. CAPSLOCK keys. The person who thought putting the CAPSLOCK key above the SHIFT key and right below the TAB key should be rubbed vigorously with rough sandpaper and then placed in a bathtub full of lemon juice. [Ed:  Solution can be found here]
  9. Unnecessary modal dialog boxes that I have to click when it doesn’t make any difference. I love these. "You’ve done something really stupid. Press Ok to continue". Great. Thanks. I couldn’t have made it through the day without that totally, utterly meaningless and pointless message.
  10.   Dialog boxes that have the negative answer on the left and the positive answer on the right. OK buttons go on the left. Cancel buttons go on the right. Don’t put the Delete button on the left and the Approve button on the right. It’s a gross violation of the laws of nature.

Random Thoughts on the Passing Scene #105

11
Apr
  • I attended the Software Industry Conference last year – it was really fun and very valuable.  There were a lot of Delphi developers there, since Delphi is a great choice for ISV and Micro ISV application developmentDavid I went two years agoThis years conference is already on the calendar, and I’d recommend it.  If you are a guy building and selling software on the web (that is, what used to be known as “shareware” in the good old days…), I think it would be a great place to attend. There are many technical talks, but the bulk of the conference covers the business aspect of things – and area that developers are notoriously a bit weak at.  The exhibit hall is also well stocked with vendors ranging from CD creation to app virtualization.   I don’t know if Embarcadero will be there this year. but it would be a good place for you to be. 
  • Okay, no one can say I’m not brave.  Today, I went to a command prompt, went to the root directory, and then ran the following DOS command:  del /s *.~*    That took a while.  ;-)
  • Many of you read this and other blogs on DelphiFeeds.com.  Dennis Gurock of Gurock Software (he has some nice logging and monitoring tools for Delphi and for .Net – give them a look) provides this very nice service to the Delphi community.  If you haven’t actually been to the site lately, you might want to head over there.  According to Dennis, “The new site allows you to vote for postings, mark items as off-topic and save blog postings as favorites. You can also configure which newsgroups appear in the sidebar and in what order they are displayed. I hope you enjoy the new site!”
  • Carlo Kok of RemObjects has written a C# to Prism converter.  I just like the sound of that “C# to Prism Converter”.  :-)
  • PlatinumGrid packs a impressive feature set for PHP developers – very nice control for VCL for PHP developers.

Cool Stuff with Delphi #25

08
Apr

Rapid Environment Editor

“Rapid Environment Editor (RapidEE) is an environment variables editor. It includes easy to use GUI and replaces small and inconvenient Windows edit box. RapidEE 3.x supports Windows NT, 2000, XP & Vista. If you still use Windows 9x or ME, then use 2.x branch.”

And it is free to boot.  Can’t beat that!  Downloaded, installed, used successfully, and donated to.

Random Thoughts on the Passing Scene #104

01
Apr

    Random Thoughts on the Passing Scene #103

    29
    Mar

    ADUG Autumn Symposium 2009

    23
    Mar

    The Australian Delphi User Group is having their Autumn (Spring for us in the Northern Hemisphere :-)  ) Symposium in two cites this year, in Melbourne on Thursday 02 April, and in Sydney on Friday 03 April.  You can find out more at their web site. And the events will be presented by none other than our own David I! In order to attend, you apparently must be an ADUG member, and you can register on their website to join up.

    UPDATE: Malcolm Groves tells me that you don’t have to be a member to attend, but it is cheaper to go if you are a member.  And in addition, all the cool kids are ADUG members, so you should join up too, if you aren’t already a member.  ;-)

    Two Interesting Links for Delphi Developers

    20
    Mar

    Hey, here are two links of interest for you Delphi developers and folks doing Delphi programming.

    I’ll definitely be keeping an eye on both of these links.

    Cool Stuff with Delphi #24

    17
    Mar

    Are you an iTunes user on Windows?  Well, Delphi is pretty good at building Shell Extensions, and here is a shell extension to find out a bit more about *.m4a files.

    Cool Stuff with Delphi #23

    17
    Mar

    “FindOnClick is a very easy to use, file searching utility for Microsoft Windows 2000/XP/2003/Vista”

    http://www.2brightsparks.com/onclick/foc.html

    Random Thoughts on the Passing Scene #102

    17
    Mar
    • We are very pleased to announce that for a limited time, Delphi 2009 includes a special version of TMS Software’s Smooth controls.  If you buy before March 31, you can get a complete set of these very nice controls for free!  So upgrade to Delphi 2009, C++Builder 2009, or RAD Studio 2009 today. 
    • And of course, .Net developers should make the move to Delphi Prism today as well.  Delphi Prism is a complete .Net development solution that lets you leverage your Delphi skills to do anything you can do with the .Net 3.5 Framework.  You can buy Delphi Prism as a standalone product, and with that purchase you’ll get one year of maintenance – that means you’ll get all updates, including feature updates for that year.  And of course, when that year is up, you can renew your maintenance to continue getting all the great stuff on the Delphi Prism roadmap.
    • In addition to the Smooth Controls, TMS Software also has an impressive array of components and controls, including controls for VCL for the Web, Delphi Prism, and of course, the VCL.  I’d strongly recommend giving their products a close look.
    • Thoughts, votes, comments welcome:  http://qc.embarcadero.com/wc/qcmain.aspx?d=72174
    • For those of you wise enough to subscribe, the latest issue, Issue # 5, of the Blaise Pascal  Magazine is out and available for download.  Dr. Bob has a nice summary of the articles in the latest issue
    • It doesn’t happen too often, but in this case, I think Jeff Atwood is crazy.  He linked to that article from a recent summary of the StackOverflow podcast.  I find it inconceivable that threaded views could be viewed as “awkward”.  Having a visual representation of the actual flow and give/take of a conversation is, in my mind, essential.  I can’t imaging trying to follow a discussion of any length in our newsgroups without being able to see the flow of who replied to whom.   The notion that a flat list of comments, especially when there are multiple threads within the comments is better than a nice TreeView look at the conversation seems daft to me. Can you imagine trying to read NNTP newsgroups with a news reader that displays everything in a ListView instead of a TreeView?  Me neither.
    • Have you signed up for DelphiLive yet?  We here at CodeGear are really excited.  I’m going to be giving the Delphi Product Address, and that should be really interesting.  Expect some interesting stuff.  I believe that our CEO Wayne Williams is going to be there to give a keynote, and we are also going to have a “What’s Cooking in the Labs” session to whet your appetite for some of the new and interesting directions that we are heading in.  Also, there will be a number of sessions from our R&D Engineers including sessions on Delphi Prism, DataSnap, performance tuning, and others. And we will also be doing the “Meet the Team” session as well, which is always a crowd favorite.   All in all, it should be a great time. Sign up now as it looks like you can save some money on registering early.

    February 2009 Release of Delphi Prism Is Now Available

    Random Thoughts on the Passing Scene #101

    09
    Mar

    Random Thoughts on the Passing Scene #100

    04
    Mar

    The 2009 Delphi for PHP Survey is up.

    18
    Feb

    If you are a Delphi for PHP user, or are just interested in the product, please take the time to fill out the survey: http://edn.embarcadero.com/article/39306

    © 2009 Nick Hodges | Entries (RSS) and Comments (RSS)

    Your Index Web Directorywordpress logo
    Close