niedziela, 20 października 2013

Warsjawa 2013 - Scala i AngularJs

Wstęp

<?php echo $generycznyWstępPochwalnyPoKonferencji ?>

Scalania - wydanie specjalne - Jacek Laskowski

Jacek ma tak rozwinięte zdolności prezentacyjne, że nawet jeśli jego kod nie kompiluje się z niewiadomego powodu to i tak jest w stanie zrobić z tego interesujący punkt programu :)

Generalnie z tego co zauważyłem aby chcieć się nauczyć czegoś nowego trzeba przekonać swój umysł do tego, iż to coś może się przydać i tutaj mamy dwa podejścia :

  • dużo teorii+jakieś ćwiczenia
  • ćwiczenia przeplatane teorią pomagającą je rozwiązać
Na całe szczęście scalania przyjęła drugą formę dzięki czemu jest ciekawie i mamy efekt "o k***a minęła już godzina" zamiast "o k***a minęło dopiero 5 minut". Jest minimum teorii i od razu zabieramy się do zadania. Czas jest ograniczony i całe szczęście - dzięki temu grupy się nie de synchronizują.

Później dyskusje o kodzie i jest git.

Pozostaje jeszcze jedno fundamentalne pytanie - Po co uczyć się Scali . Odpowiemy sobie na to za chwilę ale najpierw umieszczę obrazek aby przerwać monotonię ciągłości tekstu.

Po co uczyć się Scali.

Po pierwsze jest to technologia, która ma o wiele większe możliwości od Javy. Ten aspekt okaże się krytyczny gdy nadejdzie dzień ( a wieżę, że nadejdzie) gdy o konkurencyjności produktu będzie w dużej mierze decydowała technologia użyta do jego wytworzenia a nie minimalizacja ilości błędów w projektach popełniana przez ludzi którzy chcieliby sobie pozarządzać. Nie wiem jak ta sytuacja wygląda w skali całej Polski ale w Łodzi do niedawna było tak, że jak chciałeś sobie kupić mieszkanie+samochód na raty i do tego pojechać na jakieś wakacje to trzeba było uciekać na lepiej płatne pozycje gdzie twoim obowiązkiem było napierdalać jakieś szlaczki w powerpointach i udawać, że potencjalny sukces projektu to głównie twoja zasługa. Wydaje mi się, że trzeba chwilę poprogramować w Javie&Spółka aby odczuć jej ograniczenia - a jeśli robi się uskok ze ścieżki programistycznej po 3 latach aby zostać "JuniorBrandManager" to taki efekt dana osobę ominie. Osobiście subiektywnie odczuwam, że sytuacja się poprawia i zawód programisty zaczyna cieszyć się w naszym mieście coraz większym szacunkiem.

Scala jest trudniejsza od Javy co z jednej strony stanowi pewną przeszkodę w jej adaptacji bo jeśli odpowiednia ilość osób an rynku nie będzie znała tej technologii to firmy nie będą chciały robić przy jej pomocy projektów ( Dlatego kolejny plus dla inicjatyw typu scalania za szerzenie świadomości pośród społeczności). Z drugiej strony ta trudności nauki jest pochodną ogromnych możliwości Scali i stanowi pewien filtr, przez który mogą przejść jedynie osoby dysponujące określoną wiedzą. I może to co tutaj napiszę nie zabrzmi jakoś poprawnie politycznie ale właśnie ta trudność nauki może sprawić, że praca nie będzie uciekać dalej na wschód gdy zarobki w Polsce będą sukcesywnie rosnąć. A to dzięki temu ,że programiści tutaj w Polsce będą w stanie zagwarantować większą produktywność niż X razy tańsi programiści gdzieś tam na wschód.

I kolejny argument, o którym do niedawna nie miałem pojęcia. Scala to już nie jest jakiś tam projekt naukowy z uczelni ale produkt przemysłowy! Martin Odersky dostał kasę i założył firmę Typesafe, która wspiera rozwój Scali. Do tego w zarządzie zasiadł Rod Johnson - to ten, który stworzył Springa. Mając ogromny bagaż doświadczenia zapewne wie jak sprawić aby dana technologia osiągnęła sukces biznesowy. Wygłosił dosyć ciekawy wykład przy okazji ostatnich ScalaDays : http://parleys.com/play/51c1ffe7e4b0d38b54f46231/chapter0/about - kilku nerdom się nie spodobało ale cóż - prawda czasem boli.

AngularJs - Michał Ostruszka

Bardzo pouczający warsztat. Może w końcu uda nam się w firmie stworzyć jakieś porządne testy do javascriptu - na razie jest ciężkie selenium plus średnio wygodne testy Jasminy zagnieżdżone w htmla. Angular ładnie oddziela javascript od htmla i nie ma tego bólu. Do tego sam narzuca pewne poprawne praktyki jak dzielenie kodu na moduły. Na razie moja znajomość tematu jest zbyt mała abym napisał coś więcej ale już zaczęliśmy to cudowdrażać w naszym projektu. Ogólnie warsztat git.

Coś z innej beczki

Chłopaki rzucili ostatnią partię biletów na Mobilization3 - można się rejestrować tutaj : http://2013.mobilization.pl/registration/

Coś z zupełnie ale to zupełnie innej beczki

W zeszłym tygodniu pojawiła się wiadomość, iż naukowcy z jednego z uniwersytetów odkryli, że zarówno hipokamp jak i wątroba potrzebują białka zwanego "PPARalpha" do poprawnej pracy. Hipokamp potrzebuje go do tworzenia nowych "struktur pamięci" zaś wątroba do spalania tłuszczu. Im bardziej zatłuszczony jest organizm tym więcej tego białka potrzebuje wątroba - podprowadzając je hipokampowi - więcej info tutaj : http://www.livescience.com/40440-your-liver-may-be-eating-your-brain.html

Także wbrew mitom z holyłudu - narzucając na siebie dwudziesto-centymetrowy skafander tłuszczowy wcale nie stajemy się romantycznymi bohaterami z bujnym życiem wewnętrznym ale przeciętnymi ludźmi z upośledzoną pracą mózgu. Także wio na siłownie i nie opierdalać się!

niedziela, 6 października 2013

Obiektowe i funkcyjne obszary mózgu

Jeśli przyjmiemy dosyć ciekawe definicje programowania obiektwego i funkcynego podane w tej oto prezentacji :

czyli :
  • Programowanie obiektowe - obiekty jako podstawowe funkcje abstrakcji
  • Programowanie funkcyjne - funkcje jako podstawowe funkcje abstrakcji
to może okazać się, że różnica jest nie tylko w tym z jakich "klocków" (nie mylić z klockami lego albo wc) będzie zbudowany system ale również w tym jak będzie odbierał go nasz mózg.

Lingwistyka w służbie narodu

A to dlatego, iż kilka lat temu (zdaje się, że w 2010) dwójka hiszpańskich psychologów (z nazwiskami, które nikomu nic nie powiedzą) i Niemiecki neurolog (z nazwiskiem, które...) postanowiła poskanować mózgi ludzi uczących się rzeczowników oraz czasowników i zobaczyć co z tego wyjdzie.

Gdy ludzie leżeli sobie słodko w romantycznej komorze do skanów słyszeli takie zdania jak : Otworzyłem amelinium aby wsiąść do samochodu , Otworzyłem amelinium by przepuścić kobietę w ciąży - wtedy z kontekstu mozna wywnioskować, iż amelinum to coś ala drzwi.

Podobnie z czasownikami - Byłem głodny, więc farełałem puszkę z fasolą , Farełałem drzwi od samochodu - tutaj farełać oznacza "otworzyć"

Według badań przy nauce tych dwóch słów pracują u nas inne części móżgu. Rzeczowniki (czyli obiekty) - obszar mózgu odpowiedzialny za procesowanie wizualne , kategoryzowanie, rozpoznawanie twarzy (to ciekawe). Zaś za rozpoznawanie czasowników(Funkcji) odpowiedzialne były obszary "od gramatyki" i jakieś tam jeszcze.

Wnioski

Ponieważ to na razie ciekawostka także żadnych praktycznych wniosków na chwilę obecną nie ma. W artykule do którego link będzie (jeśli tylko nie zapomnę) na samym dole naukowcy deklarują, że podobno znaczenie rzeczowników łatwiej wyłapać z kontekstu. Być może dlatego wygodniej jest rysować kwadraty w uml jako symbole rzeczowników a nie czasowników? A może to nic nie znaczy?

Tak czy inaczej lingwistyka może być dosyć ciekawym kierunkiem dla lepszego zrozumienia zależności pomiędzy typami danych i przekształceniami w systemach.

A oto linki, o których nie zapomniałem :