P4 Blog

  • December 14, 2015

    Branching is what makes version management so important to developers. It allows teams to work in parallel, to experiment and to ensure the right features are released at the right time. Good branch management is key to effective development. Bad branching will cause risk and rework. Here are eight tips to help you develop a coherent, effective branching strategy.
  • December 09, 2015

    We recently hosted a DevTalk webinar, “Better Together: Adventures in Pair Programming” describing our journey with pair programming. We received many great questions we wanted to follow up with a blog post. But first, if you missed the webinar and would like to see it, you can access it here at your convenience.

    Here are some of the more popular questions with a bit more detail. 

    If working solo in the pit, do the other people distract you?

  • December 08, 2015


    Throughout this series of posts, we are examining some of the challenges faced when adopting Git in the enterprise space, and presenting tips and best practices for successfully managing the task. In today’s entry, we’ll look at the fundamental need for reliability and recommend best practices for disaster recovery. 
    Posted In:
  • December 07, 2015

    In today’s modern cars, intelligent connected services such as OnStar and ConnectedDrive entertain, guide, and protect drivers. But that same connectivity also leaves the car exposed to a new set of malfunctions, as well as hackers who can exploit security vulnerabilities to remotely take over the car.

    What can car manufacturers and their governing bodies do to ensure consumer safety standards evolve with the speed of innovation?

  • December 04, 2015

    A common theme with Component-Based Development (CBD) is that there must be a single source of truth for all manner of configuration information. When you consider that any of those items can change at any time, the need for strong configuration management is clear. 

  • December 03, 2015

    Over the years my way of working with Perforce (now Perforce Helix) has changed dramatically.

    When I started out eight years ago, I mapped every project to my client workspace, including the mainline and the most recent release branches as well as my development branches. This made integrating between different branches easy, but it came with a price: a careless p4 sync brought the whole repository down and several pending changes in different projects infrequently found their way into a single submitted change.

    Posted In: