Skończyły mi się wifecoiny, bo poszedłem na Code Forward

Na konferencje Code Forward poszedłem trochę pod wpływem impulsu. Raz, że znałem organizatorów, a dwa w środę kolega „namówił mnie” na warsztaty z Martinem Thompsonem, co poskutkowało masą pytań. Czas na ich zadanie był na afterpraty, które caluteńkie przegadaliśmy z Martinem jako jego groupies. Co innego się działo? Na dzień dobry Alister Cockburn „zjebał” świat […]

FaaS, czyli jak nisko możemy zejść z delegacją kodu

FaaS – Function As A Service, nie mylić z FAZW tudzież z FASW jest to usługa w ramach, której umieszczamy w chmurze nasz kod w postaci bezstanowych, czystych funkcji. Następnie karmimy je danymi i na wyjściu otrzymujemy wyniki. Możemy tworzyć małe funkcje w rodzaju f(A):B, f(B):C i następnie z poziomu interfejsu webowego budować potoki g(A):C […]

W przyjaźni z maszyną – podsumowanie warsztatów z Martinem Thompsonem

Dawno nie dane mi było uczestniczyć w warsztatach, które były by tak wymagające. Miejsce na warsztatach z Martinem Thompsonem, autorem bloga Mechanical Sympathy udało mi się zarezerwować w ostatnim momencie. Wydałem na nie masę wifecoinów, ale było warto. Nie będę rozwodził się nad przykładami, bo te bez solidnego wprowadzenia teoretycznego nie będą wiele warte. Wprowadzenie […]

Znaki magiczne w kodzie elixirowym

Mała odskocznia od tematów JVMowych. Dziś przyjrzymy się mechanizmowi sigiliW w elixirze. Czym jest sigil? Wikipedia mówi, że jest to symbol utworzony do celów magicznych. I ta definicja całkiem ładnie wpisuje się w to co robią. Swoim zachowaniem przypominają interpolatory ze scali jednak są pomiędzy nimi drobne różnice, które jednak nie będą dla nas istotne […]

Wywołanie kilku metod na obiekcie z with

Klasyczna sytuacja w kodzie. Mamy sobie jakiś obiekt i chcemy wywołać na nim kilka metod po kolei. Listing 1. Kod typowy do bólu fun main(args: Array<String>) { val donatello = Turtle(); donatello.penDown() for (i in 1..4) { donatello.forward(100.0) donatello.turn(90.0) } donatello.penUp() } i w ten sposób mamy tu inwazję zmutowanych żółwi ninja. Pomijając już kropkozę […]

DevCrowd 2016, czyli inni też mieli 1000 na liczniku

Jak co roku kopsnąłem się do Szczecina w celu czysto konferencyjnym. Po raz kolejny pojechałem tam z dwiema prezentacjami. Tegoroczny DevCrowd był tym o numerze b1000. Dla mnie było to szóste spotkanie. Co i jak w temacie moich prezentacji znajdziecie w poprzednim wpisie. W tym skupię się na prezentacjach innych 🙂 Prezentacje Marcin Warczygłowa – […]

Materiały z prezentacji na tegorocznym DevCrowdzie

Wczoraj był ósmy DevCrowd. Miałem tam dwie prezentacje i jak ktoś przegapił to ma szansę zapoznać się ze slajdami tu. Slajdy są bez komentarzy, ale dodam je w miarę możliwości tak by przeglądając prezentacje wszystko miało ręce i nogi. Pełna relacja powstanie zapewne w dniu jutrzejszym, ale w dużym skrócie było fajnie. Kod jest dostępny […]

Post numer 1000

Oto i tysięczny post na blogu. Czas chyba na małe podsumowanie. Pierwszy post ukazał się 2 kwietnia 2007 roku! Postów jest w sumie 1000 z dzisiejszym 🙂 Komentarzy jest około 2580 Najbardziej zażarta dyskusja miała miejsce o wpisie o śwince morskiej Najdłuższy tekst, ponad 38 tys. znaków, popełniłem dawno temu i dotyczył EJB, a i […]

Pattern matching w Kotlinie

Dziś znowu ketchup, ale tym razem coś, czego w Javie nie ma. Jest w scali, jest w językach funkcyjnych, ale w javie nie ma. Co to pattern matching? W najprostszych słowach jest to konstrukcja języka, która pozwala na budowanie czegoś w rodzaju rozbudowanych instrukcji warunkowych, ale z decydowanie prostszy i przyjemniejszy dla oka sposób. Zazwyczaj […]

Data classes jako encje JPA

Gdy opisałem data classes to praktycznie od razu pojawiło się pytanie, a co z ich użyciem jako encje? Spróbujmy zatem. Wygenerowałem projekt spring boot, bo mam już wtedy skonfigurowane JPA w sposób podobny do tego, jaki występuje w wielu projektach. Encja – to proste Kotlin wspiera adnotacje, a zatem stworzenie encji jest bardzo proste. Wystarczy […]