#DarowiznySidnet: Krzysiek dla Vim i Fundacji na rzecz Nauki Polskiej

Połowa października należy do Krzysztofa Pisery. Dziś przekazujemy darowizny projektom open source i non-profit zgodnie z jego życzeniem. Jutro świętujemy 10 lat jego pracy w Sidnet, którą rozpoczął jako zdolny 21-latek(!). Nasz lead developer dał się poznać jako świetny organizator pracy własnej i innych osób w zespole.

Kogo łapie nostalgia na myśl o początku lat ’90, ten doceni, że oba projekty wskazane przez Krzyśka powstały w 1991 roku. Co to za projekty?

Vim

Wolnodostępny edytor tekstowy i graficzny, nazywany edytorem dla programistów (programmer’s editor). Wspiera setki języków programowania i formatów plików.

28 lat po premierze jest piątym najbardziej popularnym środowiskiem developerskim według Stack Overflow. Społeczność skupiona wokół Vima prowadzi odwieczny spór (editor war) z użytkownikami innego edytora – Emacsa. W zespole Sidnet mamy zwolenników jednego i drugiego narzędzia. Krzysiek stroni od tego typu sporów, uznając je za kontrproduktywne. Natomiast Vima polubił tak bardzo, że przekazuje na jego rzecz już 5. darowiznę w ramach akcji Sidnet.

„Lata temu spróbowałem Vima i pozostałem przy nim ze względu na jego elastyczność, rozszerzalność o kolejne funkcje, ale przede wszystkim efektywność. Vim to wzorcowy przykład oprogramowania typu charityware. Jest rozwijany zupełnie bezinteresownie, a darowizny od użytkowników są przekazywane dzieciom z Ugandy” – mówi Krzysztof.

Ubocznym skutkiem akcji #DarowiznySidnet jest to, że Sidnet znalazł się na liście Hall of honour dostępnej na stronie Vima.

Fundacja na rzecz Nauki Polskiej

Największa w Polsce organizacja pozarządowa wspierająca naukowców i zespoły badawcze. Od 1991 roku finansuje stypendia dla młodych naukowców. Co roku przekazuje stypendystom łącznie aż 3 miliony złotych. Sprawia, że naukowcy przed trzydziestką nie muszą martwić się o utrzymanie w pierwszych latach kariery naukowej.

„Obszar naukowy jest bliski mojemu sercu. Niestety wybitni naukowcy (nie tylko z najmłodszego pokolenia) najczęściej zarabiają mniej niż reszta społeczeństwa i muszą wybierać między pracą naukową a bardziej dochodowymi zajęciami. Powinni dostawać możliwość skoncentrowania wysiłków na tym, w czym są najlepsi. Fundacja pomaga im także w komercjalizacji odkryć i wynalazków. Wszyscy na tym korzystamy” – mówi nasz lead developer.

#DarowiznySidnet: Staszek dla LibreOffice i Fundacji Pomagam

Wrzesień to dla Staszka miesiąc debiutów. W zeszłym roku o tej porze dołączył do zespołu. Teraz, po raz pierwszy wskazuje odbiorców darowizn. Michał Staszewski „Staszek” w Sidnet zajmuje się sprzedażą. W dużym skrócie, sprawia, że klient lepiej rozumie zespół techniczny, a zespół techniczny – klienta.

Sprawdź, jakie projekty open source i charytatywne zyskają finansowe wsparcie dzięki wyborom Staszka.

LibreOffice

Pakiet programów biurowych o otwartym kodzie źródłowym. Używany przez dziesiątki milionów osób na całym świecie, w tym ministerstwa Francji, Włoch czy Tajwanu. Dostępny w 110 językach. Rozwijany przez The Document Foundation – organizację non-profit, działającą dzięki wolontariuszom. Rozpowszechniany na licencji Mozilla Public License.

„Zacząłem używać LibreOffice jeszcze w szkole, kiedy potrzebowałem bezpłatnej alternatywy dla Microsoft Office. Minęło kilka lat, a ja nadal używam go w codziennej pracy. Co więcej, trafiłem do zespołu, który świadomie rezygnuje z rozwiązań komercyjnych, wspierając rozwiązania open source, takie jak LibreOffice” – wyjaśnia Staszek.

Za co Staszek lubi LibreOffice?

  • Wielofunkcyjność. LibreOffice to najbardziej wszechstronny pakiet biurowy typu open source. Zawiera w sobie takie narzędzia jak: Writer (edytor tekstu), Calc (arkusz kalkulacyjny), Impress (edytor prezentacji), Draw (edytor grafiki), Base (edytor baz danych) i Math (edytor wzorów matematycznych).
  • Różnorodność formatów. LibreOffice obsługuje pliki o różnych rozszerzeniach, w tym formaty pakietu Microsoft Office (.docx, .xlsx czy .pptx). Własny, otwarty format .odf (OpenDocument Format) ma być gwarancją wiecznego dostępu do danych, bez względu na sytuację twórców rozwiązań komercyjnych.
  • Rozszerzenia. Jak przystało na oprogramowanie o otwartym kodzie źródłowym, LibreOffice daje się rozszerzać o kolejne funkcje. W internecie można znaleźć szereg bezpłatnych pluginów, w tym m.in.: słowniki, szablony dokumentów czy narzędzia usprawniające eksport plików.

Fundacja Pomagam

Łódzka fundacja niosąca pomoc chorym dzieciom i podopiecznym domów dziecka. Staszkowi znana „z pierwszej ręki”.

„Gdy mieszkałem w Łodzi, poznałem Prezes Fundacji – Ewę. Dzięki jej zapałowi zainteresowałem się pomocą innym, a zwłaszcza chorym dzieciom. Pomagałem Ewie m.in. w organizowaniu zbiórek i transporcie” – mówi Staszek.

Fundacja Pomagam od 2006 roku przekazała potrzebującym ponad milion złotych. Dofinansowuje leczenie i rehabilitacje chorych dzieci. Tym z domów dziecka zapewnia wsparcie materialne i w edukacji, a także pozytywne doświadczenia – wyjazdy edukacyjno-integracyjne, zajęcia sportowe, warsztaty z psychologami czy dogoterapie.

„W sierpniu przyszłego roku biorę ślub. Chcę, by moi goście zamiast kwiatów przynieśli artykuły szkolne dla podopiecznych Fundacji. Będą w sam raz na rozpoczęcie roku szkolnego” – zachęca do niesienia pomocy Staszek.

Komputery kwantowe i machine learning. Relacja z Data Science Łódź #16

Zainteresowanie analizą danych i big data zaprowadziło nas na Data Science Łódź #16. W końcu uczenie maszynowe z użyciem komputerów kwantowych to wciąż przetwarzanie danych, choć na poziomie zaawansowania dotąd nieznanym ludzkości.

Poznaj kluczowe pojęcia związane z kwantowym uczeniem maszynowym (QML).

Komputer kwantowy IBM Q
Komputer kwantowy IBM Q. Connie Zhou/IBM (Flickr).

Maciej Adamiak z SoftwareMill i Uniwersytetu Adama Mickiewicza podczas treściwej prelekcji „Quantum-assisted machine learning” zaprezentował algorytm uczenia maszynowego, łączący działanie klasycznego komputera z komputerem kwantowym. Pokazał także przykłady kodu w Pythonie, uruchomionego wcześniej na komputerze kwantowym. Wykorzystał do tego chmurę IBM i odpowiednie biblioteki.

Pozytywnie zaskoczył nas poziom merytoryczny spotkania. Poza prelegentem, także uczestnicy wykazali się wiedzą – i to nie tylko w ogólnym obszarze data science, ale też w zupełnie świeżym temacie kwantowego uczenia maszynowego.

Jako podsumowanie prelekcji przedstawimy kluczowe pojęcia i ciekawostki, obrazujące obecny stan rozwoju komputerów kwantowych.

Kubity – jednostki komputera kwantowego

1 GB danych w zero-jedynkowych bitach można zapisać z wykorzystaniem ok. 30 kubitów (niepodzielnych jednostek komputera kwantowego). Maszyny operujące kubitami mogą wykonać wiele obliczeń jednocześnie, w przeciwieństwie do klasycznych komputerów. To jednak nie oznacza, że ich powszechne użycie szybko stanie się opłacalne.

Przewiduje się, że komputery kwantowe dopiero za kilka lat przewyższą mocą komputery klasyczne. Pojedyncze, dostępne obecnie maszyny operują zaledwie na ok. 30 kubitach.

Przyspieszenie algorytmu dzięki splątaniu kwantowemu

Maszyny kwantowe pozwalają na szybsze uzyskanie wyniku. Przyjrzyjmy się algorytmowi, działającemu ze złożonością O(n). Przykładowo, taki algorytm musi sprawdzać każdy element w n-elementowym wektorze. Dzięki komputerowi kwantowemu, możemy być pewni wyniku po sprawdzeniu jedynie kilku elementów tego wektora (złożoność stała O(1)). Pozwala na to “splątanie” komórek wektora w komputerze kwantowym, analogiczne do kwantowego splątania dwóch cząstek.

Losowość osiągana przez komputer kwantowy

Komputer kwantowy jest w stanie otrzymać prawdziwą losowość, podczas gdy na powszechnie stosowanych komputerach zawsze występuje jakiś seed. Dzięki maszynom kwantowym wystarczy wprowadzić kubit w stan superpozycji, gdzie prawdopodobieństwo, że kubit jest albo 1 albo 0 rozkłada się po połowie. To oznacza prawdziwy (czyli pochodzący z natury kwantowości), niedeterministyczny wybór.

Trudności w wykonywaniu obliczeń kwantowych

Korzystanie z komputera kwantowego wiąże się współcześnie z wieloma niedogodnościami. Opanowanie skomplikowanej wiedzy o zapisywaniu algorytmów w komputerze kwantowym to jeszcze nie wszystko. Wykonanie obliczeń przy obecnym stanie technologii komputerów kwantowych wymaga skrajnej ostrożności i skrupulatności. Dla przykładu, konieczne jest minimalizowanie użycia bramek kwantowych, by ścieżka nie była zbyt długa. W przeciwnym razie, szum może przeinaczyć rezultat do tego stopnia, że będzie on losowy.

Dostęp do komputera kwantowego

Komputer kwantowy nie jest i jeszcze przez jakiś czas nie będzie dostępny komercyjnie. Można z niego skorzystać poprzez chmurę IBM, łącząc go z klasycznym komputerem. Maszyna kwantowa IBM Q fizycznie pozostanie na terenie firmy producenta. To dlaczego, że do poprawnego wykonywania obliczeń potrzebuje całkowitej izolacji. Znajduje się w szklanej obudowie szerokiej na ok. 2,7 m i temperaturze bliskiej zeru bezwzględnemu (-273°C). Chroniony jest nie tylko przed wahaniami temperatury, ale także innymi czynnikami jak np.: głośne dźwięki, wibracje czy promieniowanie. Najmniejsza zmiana warunków fizycznych wokół komputera kwantowego może pozbawić kubity ich właściwości.

Kod źródłowy w Pythonie, uruchomiony na komputerze kwantowym (narzędzie Jupyter)
Kod źródłowy w Pythonie, uruchomiony na komputerze kwantowym.
Zaprezentowany w narzędziu Jupyter.

Machine learning i data science to tematy, które przewijają się w projektach IT. Coraz częściej towarzyszyć im będą próby wykorzystania komputerów kwantowych do obliczeń.

Dziś próbę połączenia świata kwantowego ze światem informatyki dobrze oddaje cytat, przytoczony przez Macieja Adamiaka:

„In fact, the mere act of opening the box will determine the state of the cat, although in this case there were three determinate states the cat could be in: these being Alive, Dead, and Bloody Furious”

Terry Pratchett

From: Dawid, Sidnet | To: jQuery + Schronisko w Tczewie

Nasi programiści pracują z różnych lokalizacji, ale najbardziej oddalone od biura w Warszawie jest rodzinne miasto Dawida. Na co dzień pracujący z Tczewa, Dawid Jancen od niemal 5 lat zajmuje się programowaniem frontendu i aplikacji SPA (single-page applications).

Zapytany o projekty open source i charytatywne zasługujące na wsparcie, wskazał te, które już kilkakrotnie otrzymały naszą darowiznę z jego inicjatywy. Tym sposobem Dawid 3. raz pomaga twórcom biblioteki jQuery, a po raz 4. „lokalsom” – Schronisku w Tczewie.

jQuery

Biblioteka JavaScript pomocna przy tworzeniu frontendu aplikacji webowych. Otwarte oprogramowanie z licencją MIT, obecnie rozwijane przez JS Foundation. Używane przez 73% z 10 milionów najbardziej popularnych serwisów internetowych, w tym: Wikipedię, Twittera czy LinkedIn. Przez nas wykorzystywane w wielu projektach, m.in. w systemie do sprzedaży i zarządzania usługami UK2.

Co daje nam biblioteka jQuery?

  • Pluginy. Wiele bezpłatnych dodatków do wykorzystania w interfejsie, formularzach czy mechanizmach AJAX.
  • Animacje. Gotowe do wdrożenia efekty zwiększające atrakcyjność interfejsu. Powód, dla którego biblioteka jQuery jest lubiana przez web designerów.
  • Krótki kod. Zgodnie ze sloganem „Write less, do more”, jQuery potrafi wiele zdziałać za pomocą krótkich linijek kodu.
  • Niezależność od przeglądarki. Biblioteka funkcjonuje we wszystkich najpopularniejszych przeglądarkach internetowych. Nie ma potrzeby dostosowywać kodu do każdej z nich.

„jQuery to pierwsza biblioteka, z której nauczyłem się korzystać, kiedy zacząłem przygodę z JavaScriptem. Istnieje od 13 lat i skupia wokół siebie aktywną społeczność, dzięki czemu łatwo znaleźć rozwiązania nawet najrzadszych problemów” – mówi Dawid.

Schronisko w Tczewie

Schronisko dla psów i kotów, od 2007 prowadzone przez OTOZ Animals. Organizuje adopcje, edukuje, otacza opieką swoich mieszkańców. W czerwcu na terenie schroniska otwarto Staruszkowo – miejsce dedykowane psim seniorom.

„Kilku moich znajomych było zaangażowanych w działalność tego schroniska. Stąd wiem, że schronisko w Tczewie stale potrzebuje datków na swoich podopiecznych” – uzasadnia nasz programista.

Ogólnopolskie Towarzystwo Ochrony Zwierząt OTOZ Animals zajmuje się nie tylko przygarnianiem zwierząt. Realizuje tysiące interwencji rocznie, prowadzi spotkania w szkołach, organizuje coroczne ogólnopolskie akcje zachęcające do adopcji i wspiera protesty, walcząc z okrucieństwem wobec zwierząt.

15 lat Sidnet: zespołowe wartości i zdjęcia z jubileuszu

Od pierwszych zleceń na RentACoder za 15$ do 15-lecia firmy. Od freelancerki do spółki z o.o. Poprzez ciągłe uczenie się, wpadki, kolejne osiągnięcia, szczęśliwe zbiegi okoliczności.

W lipcu świętowaliśmy jubileusz. Wnioski? Zmieniali się ludzie i projekty, ale pewne wartości na stałe wpisały się w kod źródłowy Sidnetu.

1. Prowadzenie firmy to też praca zespołowa

Maksimum produktywności, minimum zbędnych procedur. Przez lata poznaliśmy i sprawdziliśmy na sobie różnorodne metody pracy, ale bezrefleksyjne trzymanie się ich nie jest w naszym stylu.

Z 20+ osobami na pokładzie zachowujemy płaską strukturę, w której każdy może mieć realny wpływ na organizację pracy, komunikację w zespole, dobór narzędzi. Nawet jeden głos może wywołać rewolucję i w efekcie usprawnić pracę całej firmy.

2. Komunikacja, nie lokalizacja

Nasi programiści pracują z Warszawy, Lublina, Tczewa, Rzeszowa, Torunia. Z dowolnego miejsca. Mamy stały kontakt, choć pracujemy niemal wyłącznie zdalnie. Efektywnie prowadzimy projekty na odległość dzięki narzędziom do wspólnej pracy i komunikacji. Na żywo widzimy się m.in. podczas spotkań z klientami, wewnętrznych prezentacji i cowtorkowych planszówek w Warszawie.

Jesteśmy szczerzy w komunikacji między sobą i z klientem. Od razu sygnalizujemy zagrożenia i nie boimy się przyznać do błędu. Umożliwiamy śledzenie postępu naszych prac – w repozytoriach kodu, codziennych stand-upach, raportach.

3. Wspieranie społeczności open source

Stawialiśmy na oprogramowanie open source zanim stało się to modne. W organizacji własnej pracy i projektach klientów bazujemy głównie na programach o otwartym kodzie źródłowym. Rzadko poprzestajemy na gotowych rozwiązaniach. Wolimy wprowadzać zmiany w kodzie, by oprogramowanie w 100% odpowiadało potrzebom. Sami też udostępniamy kod na GitHubie do dalszego rozwijania.

Co miesiąc odwdzięczamy się twórcom oprogramowania open source, w szczególności tym bez zaplecza komercyjnego. Od 2012 przekazaliśmy 90 darowizn takim projektom jak m.in.: Redmine, Matrix, Laravel, Django czy Jenkins.

4. Dobroczynność

Mamy świadomość, że świat nie kończy się na technologii. Dlatego przez ostatnie 7 lat przekazaliśmy 88 datków na rzecz potrzebujących: fundacji, stowarzyszeń, hospicjów, schronisk i konkretnych osób.

Uwrażliwienie na pomoc potrzebującym przerodziło się w wieloletnie współprace z odbiorcami darowizn. Jako technologiczny partner Stowarzyszenia mali bracia Ubogich dbamy o utrzymanie frontendu i backendu serwisu WWW oraz budowę landing pages dla okolicznościowych akcji. Z kolei Stowarzyszenie Sarcoma powierzyło nam utrzymanie i rozwój głównego serwisu oraz serwisu rejestracji na coroczny Onkobieg.


Jak uczciliśmy 15-lecie? Były tematyczne prezentacje, kręgle, bilard, automaty z grami, rozmowy do późna i mnóstwo śmiechu.

Zobacz więcej zdjęć z jubileuszowej kolacji:

From: Marcin, Sidnet | To: Mobile Detect + Kuba Ułanowicz (podopieczny Fundacji Dzieciom)

Nie ma to jak w Światowy Dzień bez Komórki wesprzeć rozwój narzędzia związanego ze smartfonami. Co zrobić, skoro tym razem dotowane projekty open source i non-profit wskazuje nasz webowy i mobilny developer Marcin Tabaka, nazywany Tabsem.

Mobile Detect

Rozwijane od 2009 narzędzie do wykrywania rodzaju urządzenia, na którym użytkownik wyświetla stronę WWW. Działa na serwerze, dzięki czemu odbiorca treści nie odczuwa dodatkowego transferu danych.

Mobile Detect rozpoznaje takie cechy urządzenia jak:

  • rodzaj: komputer, tablet, telefon komórkowy,
  • nazwa i numer wersji systemu operacyjnego,
  • nazwa i numer wersji przeglądarki internetowej.

W efekcie narzędzie ułatwia optymalizację strony pod kątem tabletów i smartfonów.

„Twórcy Mobile Detect nie mają łatwego zadania w czasach, gdy na rynku miesięcznie pojawiają się dziesiątki nowych urządzeń mobilnych. Należy im się wparcie, bo dostarczają przydatne narzędzie, które wykorzystujemy w wielu projektach, m.in. w serwisie Kujawskiego Fooder – mówi Tabs.

Kuba Ułanowicz (Fundacja Dzieciom)

Cierpiący na autyzm dziecięcy podopieczny Fundacji Dzieciom „Zdążyć z pomocą”. Kuba wymaga farmakoterapii i codziennych, specjalistycznych zajęć – terapii logopedycznej, psychologicznej, ruchowej, a także integracji sensorycznej. Poza trudnościami z uspołecznieniem, chłopiec ma zespół tików przewlekłych, problemy z nerkami i poważne problemy hematologiczne wskazujące na chorobę von Willebranda.

„To już trzeci raz, kiedy w ramach sidnetowej akcji pomagania potrzebującym wskazuję na Kubę. Moja znajoma jest jego ciocią. Dziś chłopiec ma niemal 11 lat i jest w trakcie diagnozowania tików, obserwowanych pod kątem zespołu Tourette’a lub zespołu PANDAS” – mówi nasz programista.

Fundacja Dzieciom „Zdążyć z pomocą” obejmuje opieką ponad 35 tys. dzieci, głównie z porażeniem mózgowym, wadami serca, zespołem Downa, autyzmem, epilepsją, retinopatią, chorobami nowotworowymi, dystrofią mięśniową. Działa od 1998, realizując ogólnokrajowy program „Zdążyć z Pomocą” zainicjowany przez prof. Zbigniewa Religę.