Milestone
След като постигнамхе немислимото и на всички идеи за проекти е отговорено, можем с чиста съвест и леко сърце да ви призовем да се подготвите за следващия milestone. Напомняме, че той ще се случи на 08.06.2015 по време на лекцията от 19 часа в зала 200.
Очакваме от вас тогава да представите една съвсем малка част от крайния си проект, за да видим, че имате сериозното намерение да го доведете до завършен вид и да ви стимулираме да мислите по въпроса от по-рано.
Какво очакваме от вас
Хранилище
Всеки проект трябва да има публично достъпно хранилище. Предпочитаме да използвате git и github, навити сме на mercurial вместо git и сме съвсем ОК с bitbucket, gitorious, че даже и собствено хостнато хранилище. С GitHub обаче ще стане най-лесно, пък и повечето вече имате регистрации там.
Задачата ви се състои в това да създадете публично хранилище за вашия проект, като имаме няколко малки условия:
- Хранилището трябва да има адекватно име. Примери за неадекватни имена: "my-python-project", "python-2015", "proekt-po-piton", "pitonya-15"
- В хранилището трябва да има файл README.md, в който да опишете какво ще представлява проекта когато достигне завършен вид, какви функционалности очаквате да има и как си представяте да бъде използван.
- Освен това трябва да има и файл LICENSE, в който да е лиценза, под който искате да се разпространява приложението.
Пояснения
README
Не трябва да бъде технически, а чисто описателен. Например:
- Ако проектът е игра опишете идеята на играта, какви са целите в нея и какви допълнителни функционалности ще има(запазване/зареждане на игра, multiplayer през мрежа или на една машина, scoreboard, дали ще има графичен интерфейс и/или конзолен и прочее).
- Ако правите web application опишете ориентировъчно каква функционалност ще предоставя, каква информация ще дава и получава потребителя и как това ще бъде полезно.
- Ако правите библиотека опишете какъв проблем ще решава тя и дайте пример за това как си представяте че ще бъде използвана.
- ...
LICENSE
Има много възможности, на този етап изборът не е изключително важен. Ако нямате претенции/представа какъв лиценз да изберете, ние бихме препоръчали GNU GPL v2. Условието е кодът да бъде публично достъпен и всеки който желае да има право да го използва за собствени цели. GitHub и Gitorious дават възможност да изберете лиценз от dropdown меню при създаване на ново хранилище. Като цяло избирането на лиценз не е тривиална задача, за това няма да поставяме кой знае каква тежест върху това, а ако имате интерес вижте Choosing a license.
Промени
В един идеален свят всичко, което опишете ще бъде реализирано в крайния проект. Ние гледаме малко по-реалистично на нещата и нямаме проблем с това крайния вид на проекта да е малко по-различен от това, което опишете първоначално, в някакви разумни граници разбира се.
Код
Очевидно очакваме и поне малко код. Няколко дефинирани класа, от които да си личи как си представяте архитектурата на приложението/библиотеката, която пишете е напълно достатъчна отправна точка, за да можем да ви дадем съвети ако сметнем, че сте избрали неправилен подход.