At the Perforce User Conference, held May 8-9 2003 at the Paris Hotel in Las Vegas, attendees mixed in a bit of fun while listening to useful and informative presentations by fellow Perforce users. In addition to hearing how other companies use Perforce, tutorials by Perforce employees provided advanced technical knowledge.
Feel free to gain some insight from the presentations below, and we hope to see you next time!
Development and Codeline Management
- Merge As You Go
- Changing How You Change
- Codeline Management for Evolutionary Development
- Scripting with Perforce, Using the Perl and Ruby Interfaces
- Managing Software Reuse with Perforce
- A Bug's Life: Using Perforce to Propagate and Track Bug Fixes in Evolving Software
- Return from the Swamp: Understanding Perforce Server Performance
- User Management with Perforce
- File Systems and Perforce: High-Performance Server Environment
- Distributed Development with Perforce
- Handoffs 101: A Survey of Expectations Encountered by Build Engineers
This presentation is a survey of configurations of Perforce for distributed software development. The new Perforce Proxy will be discussed as well as ways to use remote depots and other tools.
Factors that might be limiting the performance of your Perforce server are the subject of this talk. Topics include recognizing server performance problems on various platforms, Perforce features and metadata that affect performance, and hardware configurations and operating system behavior that impact performance.
by Christopher Berarducci - Software Engineer, Handspring
Can you really merge each change as it is checked into a source tree? What are the advantages of doing this type of merge? This presentation talks about how we at Handspring have enabled change-based merging and the advantages that it brings us. The solution is a combination of Perforce's native merge tools, Perl scripting and process/ownership definition between the product development team and the tools development group.
by Colin Bodell - Senior VP of Product Development, VA Software
Can an infinite number of monkeys working at an infinite number of computers really develop the perfect operating system? Where is Penguin-led Linux taking us? Did the Dog really eat the project? Consider these, and other imponderables in Colin's keynote address that explores the challenges facing enterprise and ISV Developers. Explore how improved collaboration, emerging processes and technologies are standing the traditional application development lifecycle on its head.
by Jeff Bowles - Consultant, Piccolo Engineering, Inc.
A handoff is the process of preparing work into a form usable by others. It is an engineering task with formal underpinnings, much more than a software automation role. This document describes the role of a build/release engineer when the emphasis is placed on engineering: with what groups does he or she interact (and in what ways), what are the requirements of a software handoff, etc. The key is to understand who will receive the work product, and what they need to receive in order to proceed efficiently.
It's an interesting exercise to examine a company's configuration management needs and set up a system. This presentation discusses what happens a few years after that has been done. Systems evolve to adapt to organizational change and customer requirements. How do you make sure that these changes are good ones and what do you do if you realize that things are going wrong? This talk is a case study of just such a situation, showing how it came about, what we are planning to do about it and how similar situations might be prevented in other organizations.
- View the white paper
by Tommy Fad - Programmer, National Instruments
Although Perforce is a versatile application, National Instruments needed a highly automated external tool to manage user data. The system developed to solve this problem allows the National Instruments Perforce administrators and licensing department to actively manage Perforce accounts using an external database. This system helps the Perforce administrators manage users, groups, and permissions while providing a familiar user interface. This talk discusses the benefits of implementing an automated user management system for a large Perforce user base.
by Anders Johnson - Verification Engineer, WIS Technologies
Evolutionary development practices are generally quite advantageous, but they also pose certain configuration management challenges. This talk will present a number of specific conventions and techniques that enable successful evolutionary development using Perforce, and a battle-proven approach for developing multiple related projects concurrently.
The performance and scalability of large Perforce installations is heavily dependent on the underlying file system implementation. This paper will explore the architectural differences of UFS, ext2, XFS, NTFS and WAFL and benchmark their performance using a real-world database from Matrix Semiconductor.
- Download white paper [PDF]
by Tony Smith - UK Technical Service Manager, Perforce Software
This session provides an introduction to scripting Perforce operations using the Perl and Ruby bindings for the Perforce C++ API.
by Laura Wingerd - Vice President of Product Technology, Perforce Software
This presentation examines how Perforce tracks bug fixes as they are propagated from one codeline branch to another during the software development and release cycle. It includes a detailed discussion of the Perforce operations and objects used to record and audit bug fixes and offers guidelines for making the most effective use of them.
by Jo Woodison - Principal Consultant, Mandarin Consulting
Software reuse is touted as one of the biggest benefits of object-oriented programming, and indeed we have been reusing software libraries for decades. However, reuse practices have mostly been ad hoc, and the potential benefits of software reuse are still rarely realized. This presentation will discuss how Perforce can help manage reusable software components with Inter-File Branching and associated reporting commands. Also explored are some of the elements of reuse-based software development methodologies. Read Jo's biography.
- Download white paper [PDF]