Browse Definitions :
Definition

forking (software fork)

Forking is to take the source code from an open source software program and develop an entirely new program.

Forking is often the result of a deadlock in an open source project that is so insurmountable that all work stops. Typically this happens when development team members are unable to resolve personal conflicts or fail to reach a consensus about next steps. Forks may also occur when core members of an open source development team decide not to address use cases that other members of the development community feel are important.

Software forks can be controversial when they duplicate efforts, but most developers agree that the right to fork is open source software's greatest strength. A successful fork can save development time, inspire other uses for old code and create new business opportunities. To be considered a fork, the newer version of the software must have its own name and its own developer community. When a new program remains compatible with the original program, it is referred to as a shallow fork.

The name fork is derived from the POSIX standard for operating systsems. In this context, a fork is a process that generates a copy of itself. 

This was last updated in June 2014

Continue Reading About forking (software fork)

Networking
  • CSU/DSU (Channel Service Unit/Data Service Unit)

    A CSU/DSU (Channel Service Unit/Data Service Unit) is a hardware device about the size of a modem. It converts a digital data ...

  • data streaming

    Data streaming is the continuous transfer of data from one or more sources at a steady, high speed for processing into specific ...

  • secure access service edge (SASE)

    Secure access service edge, also known as SASE and pronounced sassy, is a cloud architecture model that bundles network and ...

Security
CIO
HRSoftware
  • recruitment process outsourcing (RPO)

    Recruitment process outsourcing (RPO) is when an employer turns the responsibility of finding potential job candidates over to a ...

  • human resources (HR) generalist

    A human resources generalist is an HR professional who handles the daily responsibilities of talent management, employee ...

  • employee lifecycle

    The employee lifecycle is a human resources model that identifies the different stages a worker advances through in an ...

Customer Experience
  • Adobe Experience Platform

    Adobe Experience Platform is a suite of customer experience management (CXM) solutions from Adobe.

  • virtual assistant (AI assistant)

    A virtual assistant, also called an AI assistant or digital assistant, is an application program that understands natural ...

  • inbound marketing

    Inbound marketing is a strategy that focuses on attracting customers, or leads, via company-created internet content, thereby ...

Close