Scala na Śląsku

0

Jakie znacie firmy, które używają Scali na Śląsku?
Mi wiadomo o: Leocode, Relayr, Future Processing

3
  • Relayr - słabo płacił kilka lat temu, może się to poprawiło. Projekt w Scali był pisany w stylu imperatywnym, może to też się poprawiło
  • FP - jak u nich się rekrutowałem to mieli tylko krótkie projekty (na pół roku). Potem Scala może się skończyć i zostajesz przerzucony do Javy
  • Leocode - nie znam

Ja zbieram się do rekrutacji do softwaremill, ale tam praca i tak jest 100% zdalna

0

A dlaczego tak bardzo chcesz w tej scali pisać? Co jest z javą nie tak?

Podejrzewam, że jak projekt jest do d**y napisany, to bez różnicy, czy jest to scala czy java.
Natomiast w javie można pisać funkcyjnie. Nie jest to język 100% funkcyjny, no ale scala też takim nie jest.

3
wiciu napisał(a):

Natomiast w javie można pisać funkcyjnie. Nie jest to język 100% funkcyjny, no ale scala też takim nie jest.

Tak w praktyce to średnio Java jest może w 5% funkcyjna, a Scala z 50% (wartości z kapelusza, ale chodzi o pokazanie skali). Typowa Java to setterologia stosowana, rzucanie wyjątkami na prawo i lewo z metod typu void oraz sterta magicznych adnotacji.

2
Wibowit napisał(a):
wiciu napisał(a):

Natomiast w javie można pisać funkcyjnie. Nie jest to język 100% funkcyjny, no ale scala też takim nie jest.

Tak w praktyce to średnio Java jest może w 5% funkcyjna, a Scala z 50% (wartości z kapelusza, ale chodzi o pokazanie skali). Typowa Java to setterologia stosowana, rzucanie wyjątkami na prawo i lewo z metod typu void oraz sterta magicznych adnotacji.

Czyli Java nie jest taka zła. O wiele gorsze zło to imperatywni programiści Javy którzy muszą mieć zmienny stan i wyjątki, a jak widzą Either to składa się ich świat

2
wiciu napisał(a):

A dlaczego tak bardzo chcesz w tej scali pisać? Co jest z javą nie tak?

Podejrzewam, że jak projekt jest do d**y napisany, to bez różnicy, czy jest to scala czy java.
Natomiast w javie można pisać funkcyjnie. Nie jest to język 100% funkcyjny, no ale scala też takim nie jest.

Różnicą też jest tematyka projektów. W Javie znacznie łatwiej trafić na 10 letniego CRUDa niż w Scali (co nie znaczy, że nie istnieją). Także oprócz wygody pisania kodu dochodzi jeszcze kwestia samej domeny projektów.

0
Wibowit napisał(a):
wiciu napisał(a):

Natomiast w javie można pisać funkcyjnie. Nie jest to język 100% funkcyjny, no ale scala też takim nie jest.

Tak w praktyce to średnio Java jest może w 5% funkcyjna, a Scala z 50% (wartości z kapelusza, ale chodzi o pokazanie skali). Typowa Java to setterologia stosowana, rzucanie wyjątkami na prawo i lewo z metod typu void oraz sterta magicznych adnotacji.

To akurat prawda, ale nie wynika to z języka, tylko jego wykorzystania. Nie jest to problem Javy, tylko programistów. Można pisać z Javie bez tych wszystkich rzeczy lub stosować je z umiarem w uporządkowany sposób. To tak, jakby odradzać komuś używanie noża, bo można się nim skaleczyć ;).

DisQ napisał(a):
wiciu napisał(a):

A dlaczego tak bardzo chcesz w tej scali pisać? Co jest z javą nie tak?

Podejrzewam, że jak projekt jest do d**y napisany, to bez różnicy, czy jest to scala czy java.
Natomiast w javie można pisać funkcyjnie. Nie jest to język 100% funkcyjny, no ale scala też takim nie jest.

Różnicą też jest tematyka projektów. W Javie znacznie łatwiej trafić na 10 letniego CRUDa niż w Scali (co nie znaczy, że nie istnieją). Także oprócz wygody pisania kodu dochodzi jeszcze kwestia samej domeny projektów.

Możliwe, że tak jest, ale chętnie posłuchałbym o jakichś konkretach. W Javie trafiałem na zarówno stare, nudne CRUDy jak i ciekawsze projekty, więc bym tak nie generalizował.

2
wiciu napisał(a):

Możliwe, że tak jest, ale chętnie posłuchałbym o jakichś konkretach. W Javie trafiałem na zarówno stare, nudne CRUDy jak i ciekawsze projekty, więc bym tak nie generalizował.

Oczywiście, że w Javie można znaleźć fajne projekty ;) Po prostu specyfika języka, a raczej jego wiek sprawia, że znacznie łatwiej trafić na coś starszego niż w innych, nowszych językach. Do tego dochodzi jeszcze kwestia "spychania" projektów utrzymaniowych do Polski.

Osobiście, odkąd zacząłem pracować w Scali to trafiam domenowo/technologicznie na ciekawsze rzeczy niż miało to miejsce w Javie. Przykładowo praca przy eSIMach czy wykorzystywanie Akki/Akki Cluster/Akki persistence itd. Może po prostu nie miałem za dużo szczęścia w Javie i dlatego mam taką opinie ;)

1

@wiciu:

Java jest słaba jak ktoś lubi programowanie funkcyjne. Już taki kotlin to duży skok do przody (z punktu widzenia kodu i architektury) i nie chodzi wcale o to, że można pisać coś w mniejszej liczbie linijek.
Po prostu pewne rzeczy w javie sa tak niewygodne, że w zasadzie ich nie robimy (immutable generalnie), generyki też dość słabe.

Przepaść między Scalą a Kotlinem jest faktycznie większa nawet niż między Javą a Kotlinem (mimo podobieństw w składni scala - kotlin).
Pierwsze z brzegu konkrety: TypeClass-y, HKT, Do - notation itd, generics (declaration-site variance), macra scalowe też są całkiem ok i zmniejszają listę patologii runtimowych.
(@Wibowit Ci napisze jak się nazywa ten efekt, że wiesz, że tego nie potrzebujesz).

Z drugiej strony sam mam problem - chciałem zrobić jeden projekt w scali... ale nie chce mi się już pisać w Scali 2 i wolałbym w 3(a ta ciągle w produkcji i słabe wsparcie jest ze strony intellij (wbrew deklaracjom)).

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