# Как решить: покупать программу или писать свою

Предпринимательская компания или проект, которые пытаются добиться чего-то с помощью программного обеспечения, постоянно вынуждены принимать решения типа *покупать программу или писать свою*. Это выражение неудачно по двум причинам. Оно как будто игнорирует существование свободного и открытого программного обеспечения, которое необязательно покупать. И, что более важно, его стоит переформулировать в *приобрести и интегрировать или написать свое и интегрировать*, потому что затраты на интеграцию обязательны надо учесть. Такие решения требуют редкого сочетания деловой, управленческой и инженерной смекалки.

* Насколько полно ваши требования совпадают с требованиями, под которые было создано программное обеспечение, рассматривающееся к покупке?
* Какая часть программы, которую вы можете купить, действительно вам нужна?
* Каковы затраты на оценку интеграции?
* Каковы затраты на интеграцию?
* Приобретение этой программы увеличит или уменьшит затраты на долгосрочную поддержку?
* Если вы напишите свое программное обеспечение под свои цели, поставит ли это вашу компанию в нежелательную бизнес-ситуацию?

Следует как минимум дважды хорошо подумать, прежде чем начинать создавать программу, достаточно большую, чтобы стать основой чьего-то бизнеса. Подобные идеи часто предлагают яркие и оптимистичные люди, которые могут внести большой вклад в вашу команду. Если их идея окажется убедительной, возможно вы захотите изменить свой бизнес-план. Но не инвестируйте необдуманно в решение, которое больше, чем ваш собственный бизнес.

Рассмотрев эти вопросы, вам стоит подготовить две черновых проектных плана, один с покупкой программного обеспечения, второй с созданием собственного. Это подтолкнет вас оценить затраты на интеграцию. Также стоит рассмотреть затраты на долгосрочную поддержку программы. Чтобы оценить затраты на интеграцию, вам придется тщательно изучить само программное обеспечение перед покупкой. Если это невозможно, то вы берете на себя неразумные риски при покупке и вам стоит отказаться от приобретения программного обеспечения в данном проекте. Если в рассмотрении несколько подобных вопросов о покупке, то придется потратить время на тщательную оценку каждого случая.

Следующее: [Как расти профессионально](/how-to-be-a-programmer/ru/2-intermediate/judgment/05-how-to-grow-professionally.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://braydie.gitbook.io/how-to-be-a-programmer/ru/2-intermediate/judgment/04-how-to-make-a-buy-vs-build-decision.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
