Dołączenie do projektu typu open source jest z pewnością jednym ze sposobów na rozpoczęcie pracy. Jednak od lat używam oprogramowania typu open source i szczerze mówiąc, jakość prawie wszystkich takich projektów jest zazwyczaj w toalecie. Jeśli nauczysz się całkowicie swoich umiejętności programowania i projektowania, prawdopodobnie wybierzesz bardzo słabe i dobre, bez możliwości odróżnienia ich.
Czego chcesz nauczyć się programowania ? Odpowiedź na to pytanie określi, czego należy szukać i gdzie. Oto kilka typowych odpowiedzi i moja profesjonalna opinia na temat tego, jak je realizować (pamiętaj, że to tylko opinia, choć IMHO, dokładna):
Wystarczy powiedzieć, że wiesz, jak to zrobić.
Zatem tak naprawdę nie potrzebujesz mentora, a C ++ jest kiepskim miejscem do rozpoczęcia. Uwielbiam C ++, to mój pierwszy wybór do programowania ogólnego, ale zamiast tego gram w innym języku. Sugerowałbym Python; ma znacznie łagodniejszą krzywą uczenia się niż C ++, i w przeciwieństwie do niektórych języków (nie wymieniono żadnych nazw, nie nosiłem dziś mojej bielizny z azbestu), nadal nauczysz się kilku przydatnych umiejętności, na wypadek, gdybyś chciał później się do niej dostać. Wiele pojęć można przetłumaczyć bezpośrednio na C ++, jeśli zdecydujesz się kontynuować tę trasę.
Wystarczy wypróbować i sprawdzić, czy ci się spodoba.
Projekt open source może być do tego wystarczający. Wybierz program, który Ci się podoba, ale z którym masz problemy lub podrażnienia, i zaoferuj swoją pomoc każdemu, kto go uruchamia. Większość projektów typu open source jest otwarta na wkład, dlatego generalnie są one przede wszystkim typu open source.
Jednak w takim przypadku nie wypróbuj C ++ jako pierwszego języka programowania. Opanowanie podstaw nie jest trudne, ale C ++ jest na tyle niskim poziomie, że możesz uzyskać poważne i bardzo trudne do znalezienia błędy w swoich programach. Jeśli nie wiesz, że lubisz programować, jesteś uparty jak przysłowiowy wół lub nie znalazłeś mentora, który może skierować cię w dobrym kierunku, co zabije wszelkie zainteresowanie, jakie możesz mieć w tej dziedzinie. Zobacz powyższą odpowiedź na temat Pythona, lepiej się do tego nadaje.
Ponieważ masz pomysł na konkretny program, który chcesz napisać.
(Nie sądzę, że OP należy do tej kategorii, umieszczam go dla późniejszych czytelników.)
Czy masz pojęcie o czasie potrzebnym do opanowania projektowania i wdrażania programu? Podpowiedź jest mierzona w latach. Być może będziesz w stanie wymyślić pół przyzwoity projekt po zaledwie kilku miesiącach studiów, jeśli jesteś zarówno mądry, jak i wyjątkowo szczęśliwy, ale każdy z małym doświadczeniem, który musi nad nim popracować (w tym ty, później), będzie żałuję, że nigdy się nie urodziłeś - mówię z doświadczenia. :-) Jeśli ten pomysł nie jest tak bardzo tajny, że nikt inny nie może się o nim dowiedzieć, dopóki nie zostanie zrealizowany, nie przejmuj się. Zatrudnij doświadczonego programistę, który zrobi to za Ciebie, lub jeśli nie możesz sobie na to pozwolić, ale nadal chcesz wystarczająco mocno programu, zaoferuj partnerstwo z jednym - zajmujesz się stroną biznesową i pozwalasz mu zająć się częścią programistyczną. Większość dobrych programistów wolałaby programować, więc taka oferta może być dla nich tego warta.
Ponieważ już wiesz, że fascynuje Cię programowanie i chcesz dowiedzieć się więcej.
Zatem jesteś na właściwej drodze. :-) Niezależnie od tego, czy jest to hobby, czy może coś, co później możesz zmienić w karierę, jeśli masz osobowość, która jest dla niego nieskończenie fascynująca, najlepszą rzeczą, jaką możesz zrobić, to zanurzyć się w nią. W takim przypadku C ++ jest tak dobrym językiem, jak każdy, a mentor na pewno pomoże (i nie tylko rozwija umiejętności; może stać się samotny bez przyjaciół, którzy podzielają twoją pasję).