Wpis z mikrobloga

Pytanie na serio:
Jaka przyszłość czeka język #scala?
Warto się tego trzymać? Aktualnie coś się bawię w jednym projekcie w firmie na Databricksach i głównie piszemy w Pythonie/pyspark ale przyznam szczerze ciągnie mnie do Scali niemiłosiernie.
Z drugiej strony większość projektów w mojej firmie piszą w #dotnet i jak już skończę ten projekt to w .net bym miał większe pole manewru.

Koncepcja Scali odpowiada mi przez jej wszechstronność. Ogarnę w tym ETL, Backend, Analizę danych, ML itp.
Z .NET/C# w sumie nie mam zawodowo jakoś szczególnie dużo wspólnego ale dzielnie nadrabiam to nauką po godzinach. Przyznam jednak szczerze, że mam ostatnio chwile zwątpienia. Nie potrafię sobie wyobrazić sytuacji gdzie na konkretne zapotrzebowanie / problem biznesowy odpowiedziałbym: "napiszemy to w C#" zamiast ogarnąć to w Python / Scala itp.

Ze scala mam jednak ten problem, że nie widzę za bardzo późniejszej możliwości manweru na rynku pracy. Jakoś mało ofert się z tym przewija przynajmniej w #trojmiasto.

Problem trochę z d**y ale serio sam już nie wiem, w którym kierunku chce iść w przyszłości. Teraz mam dużo związku z szeroko pojętym #businessintelligence od projektowania / modelowania #hurtowniedanych, ETL czy jak tam teraz modnie ELT, warstwy analysis services aż po finalne raporty/analizy w #powerbi.

Narzędziowo i merytorycznie w tym zakresie czuje się ok. Chciałbym jednak wymasterować jakiś język programowania i zastanawiam się czy poświęcanie czasu na scale to nie będzie czas stracony i lepiej już iść w .net.

Zapraszam serdecznie do dyskusji i szkalowania: #programista15k #kariera
  • 16
  • Odpowiedz
via Android
  • 0
@lukenzi podstawy c++ ogarniam i szanuje bardzo. Jednak nie starczy mi sił, żeby się na to rzucać. Wolę pozostać przy rozkminie: scala vs .net.
  • Odpowiedz
via Wykop Mobilny (Android)
  • 1
@inny_89: gdyby nie to, że jest późno to bym Ci odpisał xD

Pracuję w pysparku i Scali obecnie to z rana z biura coś napiszę.

IMO do ingestow, ETLi, czy data processing z elementami big data żaden .net nie pomoże jak ScalaSpark i Pyspark.

A od tego nie jest daleko od ciekawszych rzeczy jak Big Data Engineering czy ML engineering.
  • Odpowiedz
via Android
  • 0
@SwordPL przyjacielu i na kogoś takiego jak Ty czekałem. Jak będziesz mieć wenę i czas to proszę napisz coś więcej.
O .net też dużo teraz się mówi, że chcą go wyprowadzić na #databricks. Nie bardzo mi się to widzi ale już jakąś furtkę otwiera dla rzeszy dotnetowcow, którzy potencjalnie mogą rzucić się na sparka/ databricks.
  • Odpowiedz
via Android
  • 0
@SwordPL druga sprawa skoro już wyszło, że robisz w pysparku/scali napisz proszę coś więcej o konfiguracji, na której robisz. Macie swój klaster onprem postawiony czy wykorzystujecie rozwiązanie #databricks na chmurze? Jeśli na chmurze to czy korzystasz może z databricks-connect?

Na noc już więcej nie wołam.
  • Odpowiedz
@inny_89: Scala zawsze i wszędzie najlepszym jezykiem będzie.

A tak na poważnie, to warto spróbować nawet dla samych walorów edukacyjnych. W żadnym innym popularnym języku tyle się nie nauczysz i nie zmienisz myslenia jak w Scali. Zaczynając od dość podstawowych rzeczy jak niemutowalność, która wejdzie Ci w krew juz do końca życia, aż po zaawansowane koncepty wprost z teorii kategorii (jeśli poczujesz że FP to twoja broszka).

Ekosystem jest, bibliotek jest
  • Odpowiedz
@inny_89: Mamy dużego on-premise'a od Hortonworksa i intefrujemy się z AWSem, więc za bardzo nie pomogę z cloudem :)

Scala jest świetna, język jest naprawdę fajny i pozwala na dużo ładnego, czystego kodu. Problem tkwi w tym, że Scala *jest* trudna. I ciężko jest z tym handlować. Tak jak pisał @Krever - jeżeli piszesz funkcyjnie w Scali i zaprzyjaźnisz się z kategoriami, (free :D) monadami i innymi applicative functorami to jest
  • Odpowiedz
@SwordPL: To właściwie przekonałes mnie całkowicie. Jedno tylko pytanie: czy rzeczywistą przewagą C#/.net nad Scalą jest to, że łatwiej skompletować zespół?
Wracając do fragmentu mojego oryginalnego wpisu: " Nie potrafię sobie wyobrazić sytuacji gdzie na konkretne zapotrzebowanie / problem biznesowy odpowiedziałbym: "napiszemy to w C#" zamiast ogarnąć to w Python / Scala (...)"
Skoro znasz zarówno C# jak i Scale czy byłbyś w stanie opisać mi konkretne zapotrzebowanie biznesowe w przypadku,
  • Odpowiedz