#main, 28 września 2016

By 28 września 2016#main

No i stało się ;) Nasza cała trójka jest już w Dublinie ;) Nawet Tesla zdaje się cieszyć ze zmiany i szybko (po jednym smakołyku) zapomniała o dość długiej przygodzie z jej pierwszym lotem samolotem. Przed nami jeszcze trochę wypakowywania, ale korzystając z chwili wolnego, mamy dla was kolejną porcję newsów ze świata IT.

Cykl #main to punkt początkowy Waszego tygodnia,  prasówka, w której zbieramy ciekawe linki, dzielimy się informacjami, a także podsyłamy programistyczne zadanie. Mamy nadzieję, że w ten sposób umilimy Wam poniedziałkowy powrót do rzeczywistości ;)

Podsumowanie ankiety z zeszłego tygodnia

12-09-001

Najlepiej waszym zdaniem, budować swój network w pracy. I z tym oczywiście ciężko polemizować, jednak o wiele więcej możliwości może dać nam sieć kontaktów, która nie jest z naszą pracą bezpośrednio powiazana. Zachęcamy więc Was do szukania ich poza, w szczególności polecając spotkania społeczności IT w ramach Twojego miasta.

Unroll.me

Sama aplikacje nie jest nowością, ale właśnie wyszła w wersji aplikacji iOS, dzięki czemu sobie o niej przypomnieliśmy. Idea jest bardzo fajna – analizuje ona wszystkie newslettery na jakie jesteś zapisany i pozwala Ci ze swojego poziomu się z nich wypisać. Może warto sprawdzić, co tak naprawdę wlatuje do skrzynki, bo od dawna już nawet nie otwierałeś tego maila, tylko od razu kasowałeś?

4 Urodziny Geek Girls Carrots Wrocław

Wrocławskie Karotki mają już 4 lata, stąd zaproszenie dla Was na ich urodzinową imprezę. Osobiście znamy wrocławską społeczność i cieszymy się, że mogliśmy korzystać z ich pomocy i inspiracji, a także dzielić się naszymi doświadczeniami podczas comiesięcznych spotkań. Warto więc złożyć organizatorom urodzinowe życzenia, wysłuchać specjalnych prelekcji (założycielki Geek Girls Carrots Kamili Sidor, Agnieszki Szarmach  Centrum Technologii Audiowizualnych, oraz Iwony Laik znanej z bloga programistka.net). Karotki, Sto lat!

Bilety na evenea| Link do wydarzenia na facebooku

Garść pytań rekrutacyjnych od fossBytes

Ćwiczenia swoich umiejętności nigdy dość – tym razem podsyłamy Wam naprawdę spory zbiór pytań rekrutacyjnych, jeśli jesteście ciekawi o co pyta Google albo Facebook, to te wpisy są dla Was. Od siebie możemy polecić jeszcze książkę: Craking the Coding Interview, która również zawiera przykładowe pytania i rozwiązania. A i jeszcze jedno, pamiętajcie, że większość rzeczy w IT projektowali ludzie o dość dobrym zdrowym rozsądku, więc często, gdy nawet nie znacie odpowiedzi na pytanie, warto powiedzieć, jak wydaje Wam się, że to działa. Nawet jeśli nie opiszecie dokładnie mechanizmu czy algorytmu, to pokażecie, że umiecie analizować problem i szukać rozwiązania. A z dużym prawdopodobieństwem to, co się zdaje, będzie tym, co faktycznie opisuje dane rozwiązanie ;)

Kano 2.0

Trzy lata temu pojawił się Kano, mały komputer, który wykorzystywał Rasberry Pi, i który można było samemu złożyć, by potem uczyć się z nim programowania. Dziś pojawił się na Kickstarterze jego młodszy brat, który zawierać będzie nowe komponenty jak pixleowy wyświetlacz czy aparat. Zdecydowanie warte do polecenia dla małych i dużych geeków.

Odpowiedź na pytanie z zeszłego tygodnia

A pytaliśmy o to: Czym jest (i do czego służy) blok statyczny?

Być może spotkałeś się kiedyś z podobnym zapisem:

static {
   //some code
}

Zapisany w ten sposób kod, wykona się tylko jeden raz – przed wywołaniem konstruktora czy metody main (a dokładniej – w momencie pierwszego użycia danej klasy w ramach maszyny wirtualnej). Taki kod nie może nic zwracać, przyjmować argumentów, nie możemy wewnątrz bloku statycznego stosować słów this czy super.

Blok ten jest przydatny jeśli musimy zainicjować jakieś zmienne zanim zostanie utworzony obiekt danego typu, a jedna linijka (inicjująca zmienną) nie jest wystarczająca (np. jeśli musimy obsłużyć rzucany wyjątek lub połączyć wynik wykonania kilku komend). W praktyce bardzo rzadko jest to najlepsze rozwiązanie na inicjowanie ‚normalnych’ klas, ale bywa to przydatnym ‚skrótem’ w przypadku klas testowych czy rozwiązań na szybko.

Więcej informacji można znaleźć w dokumentacji na stronie oracle.com

 

Na czym polega koncept mikroserwisów?

Więcej pytań technicznych z poprzednich mainów wraz z linkami do odpowiedzi znajdziesz tutaj! 

J. C. R. Licklider

W poprzednich częściach #main opisywaliśmy głównie wizjonerów-praktyków i wynalazców. Nie mniej ważne w rozwoju współczesnej technologii były same pomysły i koncepcje, a w tej kategorii bezkonkurencyjna jest jedna osoba.

J. C. R. Licklider, a właściwie Joseph Carl Robnett Licklider, był amerykańskim naukowcem i psychologiem. Bez wątpienia można o nim powiedzieć, że zainicjował cyfrową rewolucję i ukształtował to, co dziś nazywamy IT na długie lata.

Joseph uzyskał dyplom z fizyki, matematyki oraz psychologii, ale to tę ostatnią dziedzinę zgłębiał najchętniej. W latach 50 rozpoczął pracę na MIT, gdzie zafascynował się rodzącą się dziedziną – technologią informacji. Współtworzył laboratorium im. Lincolna (zajmujące się bezpieczeństwem narodowym) oraz zaczął wdrażać elementy psychologii na studiach inżynierskich. Jednym z pierwszych projektów, przy jakim pracował był SAGE – komputerowy system, którego celem było zbieranie danych m.in. z radarów i przedstawianie ich operatorom w celu podejmowania decyzji. Licklider odpowiedzialny był za prace zespołu, który szacował i analizował czynnik ludzki w całym procesie.

W 1962 roku został szefem działu technologi przetwarzania informacji w agencji DARPA, gdzie zajmował się zagadnieniami wykorzystania i przetwarzania informacji przy pomocy komputerów. Rok później rozesłał notatkę, w której nakreślił wizję „Intergalactic Computer Network”. Stała się ona podstawą do prac nad ARPANETem – prekursorem obecnego internetu. Co ciekawe, sam koncept był dużo bardziej perspektywiczny – znajdziemy w nim np. opis tego, co współcześnie określamy jako Cloud Computing.

Kolejną głośną pracą jest „Man-Computer Symbiosis”, która opisuje komputer osobisty taki, jak znamy go współcześnie. Koncept ten na praktyczną realizację czekał kolejne długie lata, aż było to technicznie możliwe. Opisał tam także teoretyczne podwaliny pod naukę o AI – w przeciwieństwie do powszechnego ówcześnie poglądu, że komputery zastąpią ludzi, opisywał on sytuację w której komputery wspierają działania ludzi wykonując powtarzalne, łatwe do zdefiniowania czynności i przetwarzając informacje.

Jego późniejsze prace były inspiracją i bezpośrednią przyczyną dla wielu przełomowych odkryć w dziedzinie IT. Ciężko wyobrazić sobie, jak wyglądałby współczesny świat, gdyby nie pomysły Licklidera.

Notka biograficzna w serwisie wikipedia.com
Notka w serwisie Internet Hall of Fame
Notka w serwisie ibiblio.com

Pytanie na ten tydzień

Koncepcja jest prosta, chcielibyśmy za niedługo zaprosić Was do wspólnego rozwoju programistycznego i zaproponować wyzwanie. Jednak, nic dla Was bez Was dlatego chcemy zapytać o to, co zachęciło by Was do podjęcia się go. Bo wierzymy, że chęć rozwoju macie!

Co powinno zawierać wyzwanie dla programistów, abyś chciał w nim wziąć udział
  • Add your answer
  •  
  •  
  •  
  •  
  •  
  • Darek

    Hej.
    Co będziesz porabiać w Irlandii?

    • Programować ;)

      • Daniel

        Dostałaś pracę nie mając akademickiego wykształcenia bez problemu czy kręcili nosem? Sam jestem w uk i uczę się JAVY, ale mam obawy czy uda mi się znaleźć zatrudnienie nie mając komercyjnego doświadczenia i szkoły. Co o tym myślisz?

        • Na razie rekrutacje się toczą, ale szczerze, nikt nawet nie pytał mnie o studia ;) Z tym, że ja mam już 1,5 roku komercyjnego doświadczenia, szukanie pierwszej pracy w IT, w Polsce było trochę trudne, ale też bez przesady. Z mojego doświadczenia tutaj, jest naprawdę wiele ogłoszeń na „entry level” i raczej nie ma w nich wymogu studiów, choć jest to dobry nice to have. Z tego co mówili nam znajomi Kuby, w Irlandii nie ma też żadnej super prestiżowej uczelni technicznej, więc to też może być powód, że te ogłoszenia wyglądają tak jak wyglądają ;) Jeśli martwisz się brakiem wykształcenia IT jako czymś co potwierdza kompetencje (z praktyki wynika jednak, że dość średnio określa cokolwiek:)), to może warto zrobić sobie: Oracle Certified Associate Java SE Programmer I i Oracle Certified Professional Java SE Programmer II, by przede wszystkim dla własnej pewności siebie mieć potwierdzenie swojej wiedzy ;)