Community pulse: Delphi Survey hacked (well, almost) – Part 1

SurveyHi guys, first of all please let me tell you that we have some really interesting interviews with most of the nominees of our award! (more on the pipeline 😉 ) – be sure to check them out in the next posts. Since then, we see that all of you are occupied with the famous Delphi Survey and because this survey is really technical grade and complex please feel free to discuss, ask and comment here and / or in the newsgroups. Note that we snipped the ‘obvious / clear’ (imho) questions…

Page 1:

Survey Page1

Page 2:

Survey Page 2

Page 3:

Survey Page 3

Page 4:

Survey Page 4

On Page 5 the first question says: How would you rate your use of the following IDE features?

And as options we have:

IDE Insight
Block Completion
Class Completion
Class Explorer
Code Completion
Code Formatting
Current Line Highlighting
Parentheses Matching
Sync Edit
Dockable Windows
Code Folding
Structure View
Welcome Page
VCL Designer Guidelines
TODO List functionality
Unit Testing Wizard
UML/Class Modeling
UML Visualization
Soap/WSDL Import
Code Audits
Code Metrics
History Tab
Data Explorer
Delphi/XML Binding Wizard
Live Templates
Error Insight
Background Compiler
Search / Find
Reopen Menu
Use Unit
Resource Manager
Change bar in editor
Undocked Designer
Classic Look & Feel
Symbol Insight
Help Insight
ITE (Integrated Translation Env.)
ETM (External Translation Manager)
Rename refactor
Find References refactor
Introduce variable refactor
Introduce field refactor
Inline variable refactor
Change parameters refactor
Safe delete refactor
Push members up/down refactor
Pull members up refactor
Extract superclass refactor
Extract interface refactor
Move members refactor
Declare variable refactor
Declare field refactor
Extract method refactor
Find unit/import namespace refactor
Extract to resource string refactor
OCL support
Debug Visualizers
Thread: Freeze/Thaw
Breakpoint on thread
Remote debugging
CPU view debugging
Event log view
DataSnap wizard
Import WSDL wizard
Visual Query Builder
Blackfish SQL
SOAP 1.2 clients
ActiveX wizards

…and for each one we can choose the following values:

“Don’t have or don’t know about”
“Don’t care / Don’t use”
“Need education on the feature”
“Use it some of the time”
“Use it all the time”

Also, on the same Page 5 we have the following questions:

Survey Page 5b

Also, the following questions on the page 5 are:

6. Are there any other 3rd party software that should be part of the product?

7. If you use VCL for the web (Intraweb) how do you feel about it?

IntraWeb is awesome and we use it for all of our web needs
I use it for small jobs
It does not scale
Does not work
Never used it
I don’t use VCL for the web (Intraweb)

8. What one feature would you add to VCL for the web (Intraweb)?

9. What solution for Report you will use in Delphi?

ACE Report
AIM ReportFactory
Crystal Report
Fortes Report
ExpressPrinting System
Rave Report
Report Builder
Virtual Print Engine
Other (please specify)

10. Delphi Language Enhancements: For your development needs, please rank the following language features in order of desirability for Delphi/Object Pascal:

Design by Contract
Multi-cast Delegates
Language support for Multi-threaded/Multi-core
Garbage collection for Win32
Partial Classes/Fragments

Other (please specify):

11. RAD Studio 2010 Personalities/Environment: According to your development requirements, please allocate 100 points across the following RAD Studio 2010 personalities to indicate the relative amount of support and features you would like to see Embarcadero focus on for your particular needs. Assign any amount to each personality/environment from 0 to 100, so that the total of all entries is 100.

Delphi for Win32 Personality
C++Builder Personality
Delphi Prism

12. Please indicate one other VCL feature that you would like to see added or enhanced.

13. IDE Enhancements: According to your development needs, please allocate 100 points across the following potential IDE enhancements to indicate the relative amount of support and features you would like to see Embarcadero focus on for your particular needs. Assign any amounts to each feature from 0 to 100, so that the total of all the entries is 100.

Faster CodeInsight
2-way unit testing
Generate snapshot (.png) of GUI design
More refactorings
Source Control Integration into the IDE
Open Tools API
Modernize the IDE look & feel
Keymapping Editor
Code Coverage
Memory Profiler
CPU Profiler
IDE Warning about persisting settings (passwords, database connections, etc.)

14. Please indicate one other IDE feature that you would like to see added or enhanced.

15. Embarcadero has made a significant change in the .NET strategy by introducing Delphi Prism. What are your on going requirements for compatibility between .NET and Native Delphi?

Very High – need high language compatibility between Prism and Delphi
Moderately High – help me migrate from Native to .NET
Medium – i.e. we use .NET for newer projects only, minimal code reuse
Low – i.e. I’m using .NET all I need is a similar language to Delphi

– to be continued –

18 thoughts on “Community pulse: Delphi Survey hacked (well, almost) – Part 1

    • Now ‘hacked’ is used in his original sense:

      “The word itself comes from the German word meaning “someone who makes furniture with an axe”,[2] implying a lack of finesse in a “hack”; it is believed by many in the hacking community that the reason for this is because programs too large to run on the limited computer resources of the time had portions “chopped” or “hacked” out in order to be reduced to a more reasonable size.” (from Wikipedia)

      I ‘chopped’ the survey in order make it more affordable for anyone if he wants to ask (for ex. ‘What Iterators mean?’ ‘What is MVC language feature?’ etc.), discuss or explain the choices (eg. ‘I voted “Don’t use/Don’t Care’ but if that feature would have the ‘x’ improvement I would definitely use it’ etc.)

      • Sorry, but that quote is nonsense (I also couldn’t actually find it on Wikipedia – what article is that supposed to be from?). The German verb “hacken”, has actually nothing to do with making furniture. It simply describes the sudden downward motion you make when you chop wood – or, as it might be, hit keys or on a keyboard…

        • Right, eventually found the quote (it’s in the article “Hack_(technology)” ).

          Still sounds wrong to me. I am German and I never heard the word “Hacker” be used to describe “someone making furniture with an axe”, though that might of course simply be an extremely archaic term by now…

          The original article referenced in the footnote of that article also doesn’t mention German, though.

  1. I’m not sure I understand why you’ve reproduced sections of the survey here, surely people need to just get on with filling out the real survey?

    • Surveys are good to take community snapshots for data mining and are very suitable for data mining hence they helps significantly in decision making process. That said there are several important problems with polls – some of them can have quite dangerous consequences. Incidentally this survey has some such problems. And (un)fortunately not necessarily because of its design.
      1. Human factors. First of all, the survey’s theme is so complex and some questions involve enough human factors in order to require further explanation. For example, let’s start with the beginning (The question 4 on page 1): “Rate Delphi technology. Excellent, Good,…” (etc.) What means ‘Technology’? …’Excellent’ means that I’m someone who has a let’s say D7 (my last purchase, isn’t it?) and just maintain some applications (ie. 5 bug fixes in 5 months) or someone who fights with D2010 to provide bleeding edge solutions to compete with VS, Java ecosystem etc.?

      2. Dictionary. Page 5 – Question 1. Do you know all those ‘Insights’ which are listed there? And, much more dangerous, perhaps someone thinks that knows what a feature does and marks it ‘Don’t Use’ which in fact means “I would use it if it would had that ‘foo’ functionality’ – thing which is lost – the Team will think that the feature is ‘broken / poor / low value’ (etc) – and in most cases the ‘foo’ functionality is already inside (but not discoverable due of most probably GUI design problems) or seeing holistically, the ‘foo’ functionality isn’t really needed but the one who took the survey at that time wasn’t able to figure it out.

      3. Size. Too big. But I understand them. Anyway, now is too late to discuss this… (but if the pressure grows perhaps I’ll make a post on the theme)

  2. Being asked to allocate values out of 100 to a long list of choices was bizarre. Had me reaching for my pocket calculator to make sure I got it right. The second time I just chose two or three features, gave them values and moved on.

    What also concerns me is the tendency to use technical/insider terms without explanation. Then you have to guess what it might be.

    Also, some features really WOULD be useful to, but they don’t work properly (in my version of Delphi), so how do you convey this with these choices? Will Embi have a different evaluation sheet for each version a user selected in the beginning, or will they say, “no-one uses this”?

    I found the previous survey frustrating, too.

    • Ken,

      Added technical terms definitions and also tried to add comments in logical places. So that you have an opportunity to comment on things. I also added a open questions to talk about anything.


  3. 1. Survey was way too long.
    2. Adding up points to make 100 total was rediculous ‘noise’ idea. Much better idea to sort things in the list of their importance.

    • Warren,

      I don’t disagree and I believe in the future I will change the questions to be more ordered or importance. By the way, I also agree that the poll is long and I hope to break-it-up in the future and do it a little more often than 2 years.


  4. Huhhh …. I just completed the survey (but I’ll gave my thumb down to all those 100% calculation to be performed)…

    Anyway, since the “concurent/parallel” feature was quite present in the several places into the survey I just want to point out some really great concurrency presentations made by Rich Hickey (The Clojure’s “Father”) that can enlighten the Delphi programmers on how to realize great parallelism … and also might provide some very good hints/ideas for the Delphi compiler geeks (ex: Allen & Barry) to spice up the Delphi language/RTL.

    Hopefully in the next Delphi RTLs (since the last survey and in past also Allen give us some hints on the “parallel” support) we can encounter something similarly simple and powerful like the persistent and reference structures presented by Rich.

    So, here comes the links:

    Clojure Concurrency: Brief overview of Clojure, discussion of concurrency issues, locking, and immutabiity. In-depth look at Clojure’s refs, transactions and agents. Demonstration and review of code for a multithreaded ant colony simulation

    Persistent Data Structures and Managed References

    Absolutely “have to watch” !

    PS: I also entered a “Non-Tech” forum entry named “Goldmine: Great Rich Hickey (Clojure’s “Father”) concurency talks” with the same content here:

  5. My only gripe with the survey (I abandoned it while I thought about how I was going to solve this); I want to tell them that I have bought Rad Studio 2010, but I can’t rate it as I’m not able to use it in any of my projects yet. There ought to be some way to let me differentiate between the last version I bought (ie 2010) and the version I am qualified/experienced enough with to ‘rate’ (in my case, 2007).

    I guess I could just tell the poll that I last bought 2007, then enter my thoughts on it (this is what I’ll probably do), but I want Delphi to succeed and I wanted to answer the poll as honestly and supportively as I could. I’ve bought 2010, and I’m keen to use it, but I’m not qualified to comment on any of it at the moment. 🙂


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s