Kto stoi w miejscu, ten się cofa - bardzo popularny cytat z książki Margot Michała Witkowskiego jest chyba najlepszym wstępem do tematu rozwoju umiejętności programistycznych. Technologie IT, języki programowania i framework’i rozwijają się w tak zawrotnym tempie, że aby nie pozostać w tyle warto uczyć się ciągle nowych rzeczy. Wiele jest w internecie dostępnych kursów MOOC, które pomagają się rozwijać. Inna formą uczenia jest podejście bardziej praktyczne polegające na rozwiązywaniu różnych problemów czy zadań programistycznych, a nawet uczestniczenia w konkursach. Z jakich platform warto skorzystać ? 

CodeFights Link to heading

Platforma umożliwia rozwiązywanie quiz’ów programistycznych, a także uczestniczenia w zawodach oraz bezpośredniego sprawdzenia swoich umiejętności z innymi programistami.

HackerRank Link to heading

Serwis wyróżnia od innych witryn możliwość nauki zagadnień, które podzielono na domeny. Dla każdego tematu w domenie oprócz samego zadania można na forum podyskutować, a w niektórych przypadkach zapoznać się ze wstępem teoretycznym do zadania.

CodeChef Link to heading

Użytkownicy platformy mogą rozwiązywać zadania podzielone na odpowiednie poziomy trudności, uczestniczyć w konkursach oraz dyskutować na forum.

HackerEarth Link to heading

Ciekawym elementem wyróżniającym serwis od pozostałych jest CodeMonk (zbiór dobrych praktyk oraz uporządkowanej wiedzy teoretycznej) dostępny poprzez przeglądarkę internetową oraz jako aplikacja działająca w trybie offline na urządzenia z systemem Android.

CodeForces Link to heading

Najważniejszym elementem serwisu jest uczestnictwo w konkursach. Brakuje takich elementów, które wyróżniają HackerEarth czy też HackerRank.

TopCoder Link to heading

Użytkownicy platformy nie tylko uczestniczą w konkursach rozwijając swoje praktyczne umiejętności programistyczne, lecz również mają możliwość zarobku, co oczywiście dotyczy najlepszych uczestników rywalizacji.

SPOJ Link to heading

Podobnie jak CodeForces serwis skupia się na rywalizacji uczestników w konkursach oraz rozwiązywania zadań programistycznych.

Podsumowanie Link to heading

Oprócz przedstawionych serwisów można oczywiście znaleźć w internecie ich wiele więcej, jednak ciężko wskazać, który z nich warto wybrać. W zależności od upodobań, znajomości poszczególnych języków programowania czy też stopnia zaawansowania wybór może być inny. Najlepszym podejściem jest sprawdzenie kilku z serwisów i ich porównanie, a następnie wybranie najodpowiedniejszego z nich i … programowanie :)