Dobór technologii oraz ocena trudności pierwszych projektów

0

Cześć wszystkim. Od trzech miesięcy uczę się sektora IT z zamiarem zatrudnienia się na stanowisku stażysty/juniora w drugim kwartale 2023. Sporo czasu poświęciłem na naukę git'a i poruszania się po githubie, nauczyłem się html/css i od kilku tygodni regularnie męczę Pythona. Jestem na etapie samodzielnego radzenia sobie z zadaniami dla początkujących/średniozaawansowanych, nie zrobiłem jeszcze żadnego projektu, który nie opierałby się na tutorialu, dlatego proszę bardziej doświadczonych kolegów o rady jak się za to zabrać i ile czasu może to realistycznie zająć.

Pierwszy projekt - Program do tworzenia wizualizacji (mockup'ów)
2 lata temu stworzyłem na allegro sklep, który w swoim asortymencie ma kubki/t-shirty/bluzy. Jako, że miałem kilka pomysłów i dobrze ogarniałem Photoshopa/Illustratora, kupowałem różne paczki wektorów na stronach anglojęzycznych, modyfikowałem je (jeżeli grafika miała np. anglojęzyczny żart, tłumaczyłem go lub zmieniałem treść według swojego pomysłu), nanosiłem grafikę na przygotowane wcześniej mockupy w Photoshopie i wystawiałem gotowe produkty na allegro. Biznes trzyma się do dzisiaj i przynosi mi ok. 500-2000zł na czysko za 2-3 godziny czasu miesięcznie.
Chciałbym nieco zautomatyzować proces tworzenia nowych produktów pisząc program, który brałby przygotowaną przeze mnie grafikę, nanosił ją w Photoshopie na mockupy kilku rodzajów kubków oraz ubrań, w różnych kolorach, w różnych wariantach i wypluwał w odpowiednich folderach zdjęcia gotowe do wystawienia na allegro.

Drugi projekt - Strona badająca trendy cenowe używanych samochodów osobowych.
Chciałbym zescarpować dane z mobile.de z ostatnich 10 lat i wykorzystać te informacje do zwizualizowania jak zmieniała się średnia cena danego modelu na przestrzeni lat z podziałem na jego generację, silnik, rocznik itp. Takie informacje można fajnie wykorzystywać do wyceny swojego samochodu i jako wskaźnik przy zakupie auta inwestycyjnego/dla siebie. Nigdy nie robiłem czegoś podobnego, więc będę wdzięczny za info jak ciężki jest to temat. Na archive.org jest spora ilość archiwalnych ogłoszeń z mobile.de.

TL;DR:
Będę wdzięczny za wszystkie rady i przestrogi dotyczące napisania programu ingerującego w Photoshopa, scrapowania danych z archive.org oraz tworzenia strony internetowej z dużą ilością wizualizacji.

3

W pierwszym zdaniu deklarujesz zamiary na etat, ale reszta opowieści jest o freelancerze z samodzielną działalności.
Kwalifikacje, których sie dorabiasz nie-do-końca pasują do etatu w korpo, przynajmniej na pierwszy rzut oka.

Celujesz w programowanie-frontend, czy frontend-grafika, czy jeszcze coś innego ?

0
ZrobieDobrze napisał(a):

W pierwszym zdaniu deklarujesz zamiary na etat, ale reszta opowieści jest o freelancerze z samodzielną działalności.
Kwalifikacje, których sie dorabiasz nie-do-końca pasują do etatu w korpo, przynajmniej na pierwszy rzut oka.

Celujesz w programowanie-frontend, czy frontend-grafika, czy jeszcze coś innego ?

Pierwszy program udostępniłbym za darmo wszystkim zainteresowanym, ale w praktyce byłby pewnie tylko do mojego własnego użytku, więc poza najprostszym UI nie byłoby w nim nic poza backendem. Drugi projekt jest pod kątem liźnięcia pracy z danymi i odpowiednią ich wizualizacją, w obu przypadkach niewiele frontendu.

Budowanie obu tych rzeczy ma nauczyć mnie technologii i samodzielnego radzenia sobie z zadaniami, to, że obie rzeczy mi się przydadzą jest drugorzędne. Od października zaczynam mgr. w Data Science i to jest główny kierunek pracy, którym byłbym zainteresowany, poza nim Python backend/Data Analyst/Business Analyst.

2
DawidSiuda98 napisał(a):

Będę wdzięczny za wszystkie rady i przestrogi dotyczące napisania programu ingerującego w Photoshopa, scrapowania danych z archive.org oraz tworzenia strony internetowej z dużą ilością wizualizacji.

Myślałem nad tym co Ci radzić, ale pierwsze co mi przyszło do głowy to: wybierz jeden z tych projektów i go po prostu zacznij.

Przed pisaniem kodu przemyśl co tak naprawdę chcesz zrobić, jak to ma wyglądać itp.
Ustal sobie, co ma posiadać pierwsza wersja. Ona nie musi być taka super-hiper, może realizować np. jedną podstawową rzecz np. uruchamianą z linii komend.

Jak zaczniesz pisać kod to poszukaj np. na GitHub jak inni tworzą strukturę katalogową projektu, jak nazywają pliki, zmienne, klasy.
Sam Python ma zapewne opisane zasady pisania kodu np. nieśmiertelne czy tab, czy spacje :)
Warto trzymać się już pewnych standardów !

Poznaj, przynajmniej pobieżnie różne praktyki pisania dobrego kodu np. SOLID.
Na początku i tak to jest wielka "papka" zasad, więc kładź raczej nacisk na kończenie funkcjonalności.
Wraz z doświadczeniem przyjdzie "objawienie" z tymi praktykami.

Poszukaj odpowiednich bibliotek, sprawdź jak się z nich korzysta.
Poznaj techniki testowania, zacznij z nich korzystać, bo program nic nie jest wart jak źle działa !

Staraj się rozwiązywać problemy samodzielnie ! Szukaj, sprawdzaj - w ten sposób najwięcej się nauczysz, nie masz przecież żadnego limitu czasowego !
Jak już będzie całkowita "kaplica" to zapytaj.
Daj komuś do oceny Twój kod - nie martw się krytyką !

Staraj się nie robić dłuższych przerw w "pisaniu" kodu - bo to po pewnym czasie "zakatrupi" ten projekt, a nie o to chodzi.
Staraj się potem utrzymywać ten projekt przy "życiu" - czyli jak coś się nowego nauczysz/poznasz, to zastosuj to w projekcie.
Refaktoruj kod,, sprawdzaj czy są nowe biblioteki, nowy Python itp.
Utrzymywanie kodu to też ważna umiejętność !

Z mojego doświadczenia wynika, że takie projekty najwięcej uczą, najwięcej dają frajdy i zadowolenia.
Są też dużym "plusem" przy szukaniu nowej pracy.
Trzymam kciuki !

1 użytkowników online, w tym zalogowanych: 0, gości: 1