Sealcode to przede wszystkim społeczność programistów chcąca się rozwijać w webdevie i wzajemnie się w tym wspierać. Aby stać się częścią Sealcode'u, wystarczy założyć konto na forum:
https://hub.sealcode.org/w/sealcode_wiki/forum/
oraz na Telegramie:
https://hub.sealcode.org/w/sealcode_wiki/telegram/
i zrobione! Witamy w Sealcode ;)
**Polecamy też lajkować/followować nas na [Facebooku](https://www.facebook.com/sealcode.org) i na [Twitterze](https://twitter.com/sealcode/)** 😉
Aby wdrożyć się w Program Mentoringowy, trzeba:
0. Przedstawić się na forum!
1. uzyskać dostęp do naszego systemu zarządzania taskami;
2. uzyskać dostęp do odpowiednich grup na Forum;
3. dopiąć formalności;
4. dowiedzieć się, jakie projekty realizujemy;
5. postawić sobie środowisko developerskie;
6. przydzielić się do projektu/projektów;
7. wybrać sobie taska;
8. przyswoić treść taska;
9. wykonać taska ;)
Poniżej opiszemy, jak to zrobić :)
Jeżeli masz problem z którymkolwiek z kroków, pisz na forum! W razie wątpliwości odnośnie tego, jak korzystać z forum, [ten poradnik](https://forum.sealcode.org/t/kategorie-tagi-jak-jest-zorganizowane-nasze-forum/445?u=kuba-orlik) może być przydatny. Jeżeli wolisz abyśmy zaczęli od spotkania "ramię w ramię" i pomogli Ci niezdalnie, daj znać mailowo, na Telegramie lub telefonicznie i znajdziemy na to odpowiedni termin :) **Zapraszamy też na [Sealcodingi](https://hub.sealcode.org/w/sealcode_wiki/sealcodingi/)**
# 0. Przedstawienie się na forum
Upewnij się, że masz założone konto na [Forum](https://forum.sealcode.org);
A następnie napisz kilka słów o sobie :)
https://forum.sealcode.org/t/hello-sealcode-przedstawmy-sie-sobie/267
# 1. i 2. Pozyskanie dostępów
Upewnij się, że masz już założone konto na [Sealhubie](https://hub.sealcode.org/), oraz że **masz taki sam login i na forum, i na Sealhubie**.
Napisz do Kuby Orlika na Telegramie z prośbą o dopisanie do odpowiednich grup. W Telegramie możesz wejść w chat grupowy, następnie w listę osób z chatu i tam wybrać osobę do PW.
Poczekaj na odpowiedź ;)
Po uzyskaniu dostępów zapoznaj się z naszym kalendarzem wydarzeń:
https://hub.sealcode.org/w/sealcode_wiki/kalendarz/
# 3. Formalności.
(Dotyczy w szczególności osób, które chcą zaliczyć praktyki studenckie w Sealcode)
W [tym dokumencie](https://hub.sealcode.org/w/program-mentoringowy/formalnosci/) znajdują się szczegółowe informacje dot. wzoru umowy, sposobu na śledzenie czasu, programu praktyk.
# 4. Jakie projekty realizujemy?
Po prawidłowym ustawieniu dostępów masz uprawnienia do zapoznania się z treścią tego dokumentu:
https://hub.sealcode.org/w/program-mentoringowy/nasze-projekty/
# 5. Postawienie środowiska deweloperskiego
## System operacyjny
Najmniej problemów sprawi GNU/Linux - polecamy w szczególności dystrybucję [Manjaro](https://hub.sealcode.org/w/sealhub_workflow/narzedzia/manjaro-linux/), ale Ubuntu czy inna w miarę aktualna dystrybucja też będą spoko.
WARNING: EDIT: Windows sprawia więcej problemów, niż się spodziewaliśmy. Zachęcamy do spróbowania [Windows Subsystem fot Linux](https://docs.microsoft.com/en-us/windows/wsl/install-win10) lub instalacji [Manjaro](https://hub.sealcode.org/w/sealhub_workflow/narzedzia/manjaro-linux/) obok/zamiast windowsa lub w maszynie wirtualnej.
Najnowszy OSX i Windows 10 Pro też dadzą radę, ale nie obejdzie się bez przeszkód. Windows 10 Home odpada, ponieważ nie działa na nim Docker, wymagany do uruchamiania naszych apek. Jeżeli masz tę wersję Windowsa, to musisz albo postawić Linuksa w maszynie wirtualnej, albo zainstalować Linuksa obok Windowsa. Jeżeli nie wiesz, jak to zrobić - zapytaj na forum! Pomożemy ;)
## Phabricator
Phabricator to aplikacja stojąca za stroną, którą właśnie czytasz ;)
Przeklikaj się przez widoczne dla Ciebie opcje i zapoznaj się z układem. Na początku może być przytłaczający, ale z czasem stanie się intuicyjny ;)
Zapoznaj się też z artykułem zalinkowanym poniżej - jest w nim zawarty kluczowy tip pozwalający ograniczyć ilość "spamu" wysyłanego przez Sealhuba:
https://hub.sealcode.org/w/sealhub_workflow/narzedzia/phabricator/
## Klucz SSH
Wykonaj instrukcje z tego tutoriala:
https://hub.sealcode.org/w/sealhub_workflow/narzedzia/klucz-ssh/
## Programy developerskie
Będą potrzebne:
* Przeglądarki internetowe - Firefox (najlepiej [developer edition](https://www.mozilla.org/en-US/firefox/developer/)) i Chromium (albo w ostateczności Chrome)
* edytor kodu dla programistów - Twój ulubiony. Jeżeli nie masz ulubionego, spróbuj [VSCodium](https://github.com/VSCodium/vscodium) (do instalacji VSCodium na Manjaro/arch potrzebne jest [włączenie repozytoriów AUR](https://wiki.manjaro.org/index.php?title=Arch_User_Repository))
* [Prettier](https://hub.sealcode.org/w/sealhub_workflow/narzedzia/prettier/)
* [arcanist](https://hub.sealcode.org/w/sealhub_workflow/narzedzia/arcanist/)
* [docker oraz docker-compose](https://hub.sealcode.org/w/sealhub_workflow/narzedzia/docker_i_docker-compose/)
* GNU Make (domyślnie zainstalowany na MacOS oraz na GNU/Linux, na Windowsie trzeba go doinstalować za pomocą installera cygwin - http://www.cygwin.com/install.html )
* git (na Windowsie potrzebny jest także Git Bash)
* Node.js - polecamy instalację za pomocą [`nvm`](https://github.com/creationix/nvm) na wspieranych systemach. Na Windowsie można po prostu skorzystać z instalki na stronie https://nodejs.org/en/)
Zainstaluj każdy z nich - w razie problemów z instalacją poproś o pomoc :)
# 6. Przydzielenie się do projektów.
Zapoznaj się z listą aktualnych projektów:
https://hub.sealcode.org/project/query/QOuVi6oZQgk6/
Znajdź interesujący Cię projekt - lub kilka! - i dopisz się do niego używając opcji "join project":
{F43900}
{F43902}
# 7. Wybór taska
Poczytaj o tym, jak działają taski w Sealhubie i jak wybierać sobie taski:
https://hub.sealcode.org/w/sealcode_wiki/maniphest_%28w_sealhubie%29/
Wejdź na stronę projektu, aby wyświetlić listę odblokowanych tasków do wzięcia:
{F43904}
# 8. Przyswojenie treści taska
Przeczytaj uważnie opis taska, który wybrałeś. Jeżeli nie jest jasne, co należy zrobić - pytaj! Napisz swoje pytania w komentarzu pod taskiem i daj znać na telegramie.
# 9. Wykonywanie taska - Sealhub workflow
Przypisz taska do siebie ("assign/claim") oraz ustaw mu stan na Doing - to sygnał dla innych programistów, że Ty zajmujesz się tym zadaniem.
Zapoznaj się ze [Standardami Sealcode](https://hub.sealcode.org/w/sealhub_workflow/standardy/).
W Sealcode robimy taski w dwóch trybach - Audyt i Review. **W ramach programu mentoringowego będziemy pracować tylko w trybie review**, ale warto dowiedzieć się o nich obu:
https://hub.sealcode.org/w/sealhub_workflow/audyt-i-review/teoria/
https://hub.sealcode.org/w/sealhub_workflow/audyt-i-review/review-workflow/
Sklonuj repozytorium projektu, **przeczytaj plik `README` w nim zawarty** i postępuj wg Review Workflow.
Nad taskami pracujemy gdzie i kiedy chcemy - w domu, w pociągu, w trakcie okienka na uczelni., Spotykamy się także w coworku [+jeden](https://www.plusjeden.com/), aby wspólnie kodzić. Na wspólne kodzenie umawiamy się na Telegramie.oraz na tzw. Sealcodingach:
https://hub.sealcode.org/w/sealcode_wiki/sealcodingi/
Powodzenia! 💪