On June 2, 2011 the US Department of Labor’s Bureau of Labor Statistics reported a 1.8% (annual rate) increase in non-farm business sector labor during the first quarter of 2011. For the manufacturing sector there was a 4.2% growth in productivity for Q1 2011. Most businesses measure the productivity of their employees. In Software Project Management we can measure the completion of development milestones, feature completion, bug close ratios, check-ins, and other aspects of developing software releases. At Embarcadero Technologies we use the Scrum agile methodology and track team and individual productivity at each sprint.
Since the beginning of our work on high speed compilers and integrated development environments (IDEs), developer productivity has been at the center of our focus. From the early IDEs of the Turbo Pascal, Turbo C, and Turbo C++ products and continuing with Delphi, C++Builder, and RadPHP, the engineering team has continued to focus on ways to increase the productivity, quality, and capability of software engineers.
Here are just a few of the many productivity innovations that have appeared over the years:
- High speed, integrated, native code, optimizing compilers.
- Integrated designers using component drag and drop for visual and non-visual application modules. Live database connections and data at design time. Layout guidelines and snap to hints for components.
- Integrated Frameworks for visual and non-visual components
- Automatic component wrappers for COM and ActiveX components
- IDE Insight - quickly find every command, menu, component, wizard and more using a single hot key
- Help Insight and DocWilki - find the help you need on your disk and online
- Symbol Insight - move from use of a symbol to its declaration
- Code Insight - completes code and displays functions and parameter options
- Error Insight - see errors as you type code
- Code Formatter and Beautifier - you can decide how the editor formats your code
- Code Folding and Brace Matching
- Live Code Templates - type part of a keyword or template name and hit a hot key to create the code
- Project Templates - use and build your own starting templates
- Project Wizards - answer a few questions about the project you want to build and a starting project is created
- Class Explorer - see all of the classes in your project, the hierachy and navigate the code
- Database Explorer - displays all of your database connections. Allows you to view metadata, make changes, and query result sets. Also allows you to drag and drop databases into your forms and data modules.
- Live Source UML modeling - you can change class declarations in code and in the model. Diagrams are included for Class, Use Case, Sequence, Collaboration, State, Deployment, Activity, and Component. Support for UML in Color and document generation.
- Code Audits and Metrics - find common errors and violations in your source code and models.
- Design Patterns - support for the "Gang of Four" patterns. You can also harvest and create your own patterns.
- Incremental Search for code and components
- Components, Property Editors, Component Editors
- Project Groups, Build Configurations and Project Option Sets
- Integration Source Code Control
- Unit Test frameworks - build unit tests as part of your project
- Integrated Debugging, data visualizers, thread support, conditional code and data breakpoints
- C++ Pre-Compiled Headers
- Smart Block Completion
- Docked and Un-Docked Windows
- Sync-Edit for highlighted blocks of code
- History Manager with Differences and automatic file backups for code versions
- Integrated Translation Environment for Forms and Resources
- Open Tools APIs for the IDE
- Built-in refactorings
- Integrated Delphi and C++ Profiling using SmartBear’s AQTime. Integrated Profiling for PHP.
- Automated builds using FinalBuilder.
What other capabilities would you like to see in our development tools and environments that will help increase your productivity?