REPORT/RECOMMENDATION TO THE BOARD OF SUPERVISORS
OF SAN BERNARDINO COUNTY
AND RECORD OF ACTION
January 9, 2024
FROM
LYNN FYHRLUND, Chief Information Officer, Innovation and Technology Department
SUBJECT
Title
Non-Financial License Agreement with Python Software Foundation for Programming Language
End
RECOMMENDATION(S)
Recommendation
1. Approve non-financial License Agreement, including non-standard terms, with Python Software Foundation for the use of open-source Python programming language, for the period commencing on the date of first use of the programming language and continuing until terminated.
2. Authorize the Chief Information Officer or Assistant Chief Information Officer to electronically accept the License Agreement in Recommendation No. 1, with Python Software Foundation, and any future updates, as they pertain to changes to the use of programming language, subject to review by County Counsel, provided that such updated terms do not substantively modify the terms of the original agreement.
3. Direct the Chief Information Officer or Assistant Chief Information Officer to transmit printed copies of any updated terms to the License Agreement in Recommendation No. 1 related to the use of the programming language that are electronically accepted to the Clerk of the Board of Supervisors within 30 days of execution.
(Presenter: Lynn Fyhrlund, Chief Information Officer, 388-5501)
Body
COUNTY AND CHIEF EXECUTIVE OFFICER GOALS & OBJECTIVES
Improve County Government Operations.
Operate in a Fiscally-Responsible and Business-Like Manner.
FINANCIAL IMPACT
Approval of this item will not result in the use of Discretionary General Funding (Net County Cost). The License Agreement (Agreement) with Python Software Foundation (PSF) for open-source programming language is non-financial in nature and does not commit the County to make any purchases. If future purchases are made under the Agreement, the Innovation and Technology Department (ITD) will adhere to County purchasing policies and return to the Board of Supervisors for approval, if necessary.
BACKGROUND INFORMATION
The ITD Business Solutions Development Division (Division) develops, maintains, supports, and enhances business applications for hardware and software platforms used by County departments. The Division also consults with County departments to identify ways to increase efficiency through technology, including services such as process reviews, cost analysis, and overall recommendations for the acquisition and integration of new systems. Additionally, various County departments utilize Geographic Information System (GIS) information, which allows for spatial data to be collected and displayed through various means such as by creating maps, analyzing data for patterns, and improving decision making.
Python is a general-purpose programming language, which can be integrated into a variety of different programs. Programs can range from sending data to and from servers, processing data and communication from databases, and task automation.
The Land Use Services Department has purchased a software system known as CityView360 from Agiline Software that updates large amounts of GIS data to and from the County’s ArcGIS platform by utilizing Python programming language. Based off this need, the Division agreed with the Agiline Software’s recommendation of Python based on the functionality and accessibility of the programming language.
The Agreement is PSF’s standard commercial contract, which includes terms that differ from the standard County contract and omits certain County standard contract terms. The Agreement is a non-negotiable clickwrap agreement accepted when utilizing the programming language. The non-standard and missing terms include the following:
1. The Agreement is silent on governing law.
• The County standard contract requires California governing law.
• Potential Impact: Having no specified governing law in the Agreement results in uncertainty over which state’s laws will govern the interpretation of the Agreement, and leads to ambiguity in interpretation of the Agreement terms. PSF is located in Beaverton, Oregon. The Agreement could be interpreted under any state law depending on where the claim is brought, including Oregon or California. Any questions, issues or claims arising under this Agreement could require the County to hire outside counsel competent to advise on the applicable state law, which may result in fees that exceed the total Agreement amount.
2. PSF may assign the Agreement without notice to the County and without the County’s approval.
• The County standard contract requires that the County must approve any assignment of the contract.
• Potential Impact: PSF could assign the Agreement to a third party or business with which the County is legally prohibited from doing business due to issues of Federal debarment or suspension and conflict of interest, without the County’s knowledge. Should this occur, the County could be out of compliance with the law until it becomes aware of the assignment and terminates the Agreement. County Counsel cannot advise on whether and to what extent another State’s law may permit or restrict a party’s right to assign without an express provision in the Agreement.
3. There is no provision in the Agreement addressing each party’s responsibility for paying attorneys’ fees.
• The County standard contract requires each party to bear its own costs and attorney fees, regardless of who is the prevailing party.
• Potential Impact: County Counsel cannot advise on, whether and to what extent, another State’s law may affect a party’s requirement to pay the prevailing party’s attorneys’ fees and costs in a legal action where no specific provision is provided in the Agreement.
4. The Agreement does not require PSF to indemnify the County, as required by County Policies 11-05 and 11-07, including for intellectual property infringement claims.
• The County standard contract indemnity provision requires the contractor to indemnify, defend, and hold County harmless from third party claims arising out of the acts, errors or omissions of any person. If applicable, add: The standard contract provision for intellectual property indemnity is: Contractor will indemnify, defend, and hold harmless County and its officers, employees, agents and volunteers, from any and all third party claims, costs (including without limitation reasonable attorneys’ fees), and losses for infringement of any United States patent, copyright, trademark or trade secret (Intellectual Property Rights) by any goods or services.
• Potential Impact: PSF is not required to defend, indemnify or hold the County harmless from any claims, including indemnification for claims arising from PSF’s negligent or intentional acts and intellectual property infringement. If the County is sued for any claim, including intellectual property infringement based on its use of PSF’s software or services, the County may be solely liable for the costs of defense and damages, which could exceed the total Agreement amount. County Counsel cannot advise on whether and to what extent another State’s law may allow the County to require PSF to defend or indemnify it absent an express provision in the Agreement.
5. The Agreement does not require PSF to meet the County’s insurance standards as required pursuant to County Policies, 11-05, 11-07 and 11-07SP.
• County policy requires contractors to carry appropriate insurance at limits and under conditions determined by the County’s Risk Management Department and as set forth County policy and in the County standard contract.
• Potential Impact: The County has no assurance that PSF will be financially responsible for claims that may arise under the Agreement, which could result in expenses to the County that exceed the total Agreement amount.
6. There is no stated venue in the Agreement.
• County Policy 11-05 requires venue for disputes in Superior Court of California, County of San Bernardino, San Bernardino District.
• Potential Impact: PSF is located in Washington County, Oregon. Having no express venue in the Agreement means that Washington County, Oregon venue could be applied to disputes arising under this Agreement, which may result in additional expenses that exceed the amount of the Agreement.
7. PSF provides the software “AS IS” and disclaims all warranties of any kind.
• County Policy 11-05 requires a contractor to fully warrant its services and products.
• Potential Impact: The County’s use of the software is solely at its own risk. County Counsel cannot advise on, whether and to what extent, another State’s law may limit or expand the disclaimers of warranty to the extent prohibited by applicable law.
ITD recommends approval of the Agreement with PSF, including non-standard terms, to allow Departments to utilize Python to build upon frameworks for other applications.
PROCUREMENT
Python is an open-source language tool that is free to use. Python is known for being user friendly and adaptable to many needs. Use of the programming language allows for easy and efficient automation, versatility in its application, and a wide breadth of frameworks that offer ready-made solutions and tasks. The Agreement, including non-standard terms, will be used to accompany future purchase orders to be approved, as necessary, per County Policy 11-04, Procurement of Goods, Supplies, Equipment, and Services, provided that PSF does not substantively change the terms of the Agreement.
PSF was selected as they meet the specified needs of the existing County vendor, Agiline Software, to establish a framework in which additional programming language can be written to increase the efficiency with which GIS Parcel data is updated to and from CityView360, while also being open source.
REVIEW BY OTHERS
This item has been reviewed by County Counsel (Bonnie Uphold, Supervising Deputy County Counsel, 387-5455) on November 22, 2023; Purchasing (Ariel Gill, Supervising Buyer, 387-2070) on November 22, 2023; Risk Management (Gregory Ustaszewski, Staff Analyst II, 386-9008) on November 27, 2023; Finance (Iliana Rodriguez, Administrative Analyst, 387-4205) on December 18, 2023; County Finance and Administration (Paloma Hernandez-Barker, Deputy Executive Officer, 387-5423) on December 18, 2023.