Source string Read only

(itstool) path: listitem/simpara
361/3610
Context English State
We now look at a few best practices for making the best use of FreeBSD in product development.
Plan for the long term
Setup processes that help in tracking the development of FreeBSD. For example:
Track FreeBSD source code
The project makes it easy to mirror its SVN repository using <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/articles/committers-guide/article.html#svn-advanced-use-setting-up-svnsync"><application>svnsync</application></link>. Having the complete history of the source is useful when debugging complex problems and offers valuable insight into the intentions of the original developers. Use a capable source control system that allows you to easily merge changes between the upstream FreeBSD code base and your own in-house code.
<xref linkend="fig-svn-blame"/> shows a portion of an annotated listing of the file referenced by the change log in <xref linkend="fig-change-log"/>. The ancestry of each line of the source is clearly visible. Annotated listings showing the history of every file that is part of FreeBSD are <link xlink:href="https://svnweb.freebsd.org/">available on the web</link>.
An annotated source listing generated using <command>svn blame</command>


#REV #WHO #DATE #TEXT

176410 bde 2008-02-19 07:42:46 -0800 (Tue, 19 Feb 2008) #include &lt;sys/cdefs.h&gt;
176410 bde 2008-02-19 07:42:46 -0800 (Tue, 19 Feb 2008) __FBSDID("$FreeBSD: head/en_US.ISO8859-1/articles/building-products/article.xml 54253 2020-06-14 08:10:06Z carlavilla $");
2116 jkh 1994-08-19 02:40:01 -0700 (Fri, 19 Aug 1994)
2116 jkh 1994-08-19 02:40:01 -0700 (Fri, 19 Aug 1994) /* __ieee754_rem_pio2f(x,y)
8870 rgrimes 1995-05-29 22:51:47 -0700 (Mon, 29 May 1995) *
176552 bde 2008-02-25 05:33:20 -0800 (Mon, 25 Feb 2008) * return the remainder of x rem pi/2 in *y
176552 bde 2008-02-25 05:33:20 -0800 (Mon, 25 Feb 2008) * use double precision for everything except passing x
152535 bde 2005-11-16 18:20:04 -0800 (Wed, 16 Nov 2005) * use __kernel_rem_pio2() for large x
2116 jkh 1994-08-19 02:40:01 -0700 (Fri, 19 Aug 1994) */
2116 jkh 1994-08-19 02:40:01 -0700 (Fri, 19 Aug 1994)
176465 bde 2008-02-22 07:55:14 -0800 (Fri, 22 Feb 2008) #include &lt;float.h&gt;
176465 bde 2008-02-22 07:55:14 -0800 (Fri, 22 Feb 2008)
2116 jkh 1994-08-19 02:40:01 -0700 (Fri, 19 Aug 1994) #include "math.h"

Use a gatekeeper
Appoint a <firstterm>gatekeeper</firstterm> to monitor FreeBSD development, to keep an eye out for changes that could potentially impact your products.
Report bugs upstream
If you notice bug in the FreeBSD code that you are using, file a <link xlink:href="https://www.FreeBSD.org/support/bugreports.html">bug report</link>. This step helps ensure that you do not have to fix the bug the next time you take a code drop from upstream.
Leverage FreeBSD's release engineering efforts
Use code from a -STABLE development branch of FreeBSD. These development branches are formally supported by FreeBSD's release engineering and security teams and comprise of tested code.
Donate code to reduce costs
A major proportion of the costs associated with developing products is that of doing maintenance. By donating non-critical code to the project, you benefit by having your code see much wider exposure than it would otherwise get. This in turn leads to more bugs and security vulnerabilities being flushed out and performance anomalies being identified and fixed.
Get support effectively
For products with tight deadlines, it is recommended that you hire or enter into a consulting agreement with a developer or firm with FreeBSD experience. The <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-jobs">FreeBSD related employment mailing list</link> is a useful communication channel to find talent. The FreeBSD project maintains a <link xlink:href="@@URL_RELPREFIX@@/commercial/consult_bycat.html">gallery of consultants and consulting firms</link> undertaking FreeBSD work. The <link xlink:href="http://www.bsdcertification.org/">BSD Certification Group</link> offers certification for all the major BSD derived OSes.
For less critical needs, you can ask for help on the <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo">project mailing lists</link>. A useful guide to follow when asking for help is given in <citation>Ray2004</citation>.
Publicize your involvement
You are not required to publicize your use of FreeBSD, but doing so helps both your effort as well as that of the project.
Letting the FreeBSD community know that your company uses FreeBSD helps improve your chances of attracting high quality talent. A large roster of support for FreeBSD also means more mind share for it among developers. This in turn yields a healthier foundation for your future.
Support FreeBSD developers
Sometimes the most direct way to get a desired feature into FreeBSD is to support a developer who is already looking at a related problem. Help can range from hardware donations to direct financial assistance. In some countries, donations to the FreeBSD project enjoy tax benefits. The project has a dedicated <link xlink:href="@@URL_RELPREFIX@@/donations/">donations liaison</link> to assist donors. The project also maintains a web page where developers <link xlink:href="@@URL_RELPREFIX@@/donations/wantlist.html">list their needs</link>.
As a policy the FreeBSD project <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/articles/contributors">acknowledges</link> all contributions received on its web site.
Conclusion
The FreeBSD project's goals are to create and give away the source code for a high-quality operating system. By working with the FreeBSD project you can reduce development costs and improve your time to market in a number of product development scenarios.
We examined the characteristics of the FreeBSD project that make it an excellent choice for being part of an organization's product strategy. We then looked at the prevailing culture of the project and examined effective ways of interacting with its developers. The article concluded with a list of best-practices that could help organizations collaborating with the project.
Carp1996
<link xlink:href="http://www.ietf.org/rfc/rfc1958.txt">The Architectural Principles of the Internet</link>
<personname><firstname>B.</firstname><surname>Carpenter</surname></personname><affiliation> <orgname>The Internet Architecture Board</orgname> </affiliation>

Loading…

No matching activity found.

Browse all component changes

Glossary

English English
No related strings found in the glossary.

Source information

Source string comment
(itstool) path: listitem/simpara
Flags
read-only
Source string location
article.translate.xml:676
String age
a year ago
Source string age
a year ago
Translation file
articles/building-products.pot, string 130