## Zapraszamy do Sealcode!
Aby dołączyć do nas nie trzeba prosić o pozwolenie - wystarczy wykonać poniższe kroki ;)
WARNING: W razie pytań dotyczących poniższych kroków, pisz śmiało do @kuba-orlik, na [maila](mailto:kuba.orlik@sealcode.org), telefon (+48 662 842 840) lub [Telegrama](https://t.me/kuba_orlik)
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 dołączyć do naszych grup na Telegramie:
https://hub.sealcode.org/w/sealcode_wiki/telegram/
i zrobione! Witamy w społeczności Sealcode ;)
**Polecamy też lajkować/followować nas na [Facebooku](https://www.facebook.com/sealcode.org), [LinkedInie](https://www.linkedin.com/company/10804478/admin/) i [Twitterze](https://twitter.com/sealcode/)** 😉
Aby wdrożyć się w nasz workflow, 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 :) W tym celu [utwórz nowy wątek na forum](https://forum.sealcode.org/t/kategorie-tagi-jak-jest-zorganizowane-nasze-forum/445?u=kuba-orlik) i nadaj mu tag [hello-sealcode](https://forum.sealcode.org/tags/hello-sealcode). W [tym miejscu](https://forum.sealcode.org/t/hello-sealcode-przedstawmy-sie-sobie/267/2?u=kuba-orlik) możesz poczytać jak inni członkowie się przedstawiali :) W swoim poście napisz, jakie masz oczekiwania wobec Sealcode.
Wątek będzie publiczny i widoczny dla wyszukiwarek internetowych.
**Na forum znajdziesz też [informacje o naszych spotkaniach integracyjnych](https://forum.sealcode.org/tags/integracja), na które serdecznie zapraszamy!**
# 1. i 2. Pozyskanie dostępów
1. Upewnij się, że masz już [założone konto na Sealhubie](https://hub.sealcode.org/w/sealcode_wiki/sealhub/#zak-adanie-konta), oraz że **masz taki sam login i na forum, i na Sealhubie**.
2. Dołącz do naszych grup na Telegramie:
https://hub.sealcode.org/w/sealcode_wiki/telegram/
3. Napisz do [Kuby Orlika na Telegramie](https://t.me/kuba_orlik) z prośbą o dopisanie do odpowiednich grup. **W wiadomości napisz swój nick na Sealhubie/forum**
Poczekaj na odpowiedź ;)
Po uzyskaniu dostępów zapoznaj się z listą zbliżających się wydarzeń - może chcesz wpaść na któreś z nich? :)
https://forum.sealcode.org/tags/wydarzenia
# 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 :)
## Notka o `sudo`
Czasem zdarza się, że jakaś komenda rzuca błąd typu `access denied`. Jeżeli ta komenda dotyczy instalacji czegoś globalnie w systemie, to najprawdopodobniej należy użyć `sudo`. Jednak jeżeli dotyczy czegokolwiek innego, to lepiej wstrzymać się z sudo i znaleźć inne rozwiązanie. Jest tak dlatego, że używanie sudo w lokalnym repozytorium może popsuć uprawnienia plików. W razie problemów `access denied` (i jakichkolwiek innych) - pytaj śmiało na forum/telegramie :)
# 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, oraz na tzw. Sealcodingach:
https://hub.sealcode.org/w/sealcode_wiki/sealcodingi/
Powodzenia! 💪