W tym tygodniu bez wątpienia najważniejszą informacją w branży była premiera Copilota od GitHuba. Mnóstwo dyskusji wywołały też wymagania sprzętowe Windowsa 11. Do tego kompletu dorzucę od siebie przedziwną zabawę, w którą bawią się DevOpsi na AWSowym subreddicie.
1. Czy nowy projekt GitHuba zabierze nam pracę?
Nie ma wątpliwości, że największym wydarzeniem zeszłego tygodnia była premiera GitHub Copilot. Sojusz Microsoftu z OpenAI, który nie raz już przewijał się przez nasze weekendowe edycje, dostarczył tematu do dyskusji tysiącom programistów. Zaczęli oni zadawać jedno zasadnicze pytanie – czy to jest ten moment, kiedy maszyny zaczną pisać kod źródłowy i wysiudają nas z rynku?
Zanim spróbujemy się nad tym zastanowić, warto zrozumieć czym Copilot jest. Mamy do czynienia z rozszerzeniem do Visual Studio Code, będącym “więcej niż auto-complete”. Na pierwszy rzut oka wygląda trochę, jakby był to tylko i wyłącznie zbiór istniejących templatek, ale niech nie zmylą Was pozory – zdecydowana większość sugerowanego kodu jest generowana w unikalny sposób i pozostaje zupełnie oryginalna. Ichniejsza strona w dość obrazowy sposób pokazuje możliwości przychodzące wraz z narzędziem – a te na ten moment robią naprawdę duże wrażenie.
GitHub Copilot czerpie kontekst z komentarzy i kodu (na ten moment brany jest pod uwagę kontekst pojedynczego pliku), sugerując poszczególne linijki, jak i całe funkcje. GitHub Copilot jest zasilany przez Codex, nowy system AI stworzony przez OpenAI. Został on wytrenowany na kodzie źródłowym z publicznie dostępnych źródeł, w tym repozytoriów GitHub. Powoduje to, że np. w generowanym kodzie mogą pojawić sie personalne dane, jeśli takowe były w oryginalnych datasetach – aczkolwiek podobno w wewnętrznych testach taka sytuacja występowała niezwykle rzadko.
Jeżeli jesteście ciekawi, jak cały ten model tak naprawdę działa, sporą ilość detali znajdziecie w publikacji wydanej przez GitHuba.
Na razie Copilot dostępny jest wyłącznie w wersji testowej dla wybranych developerów. Szczęśliwcy, którzy mieli okazję pobawić się nowym narzędziem mają o nim zaskakująco pozytywne mniemanie. Przykładowo, Fireship opublikował mały test, i jego wyniki są więcej niż pozytywne:
Po zakończeniu fazy testowej, GitHub zamierza wydać komercyjną wersję oprogramowania.
Czy Copilot rzeczywiście zastąpi programistów? Zastąpić pewnie nie zastąpi, ale na pewno sprawi, że Ci już pracujący będą efektywniejsi. Oczywiście, to wszystko pod warunkiem, że produkowane źródła będzie wysokiej jakości – a należy pamiętać, że to nie tworzenie nowego kodu, a raczej jego późniejsze utrzymanie jest zwykle największym wyzwaniem. Copilot więc wydaje się być narzędziem, które w przyszłości może znacząco ograniczyć zapotrzebowanie rynku na programistów – zwłaszcza tych, których pogardliwie określa się w branży jako Code . Wraz ze wzostem popularności rozwiązań no-code, wydaje się, że wchodzimy w bardzo ciekawe czasy w naszej branży.
Źródła
- Research recitation
- GitHub Copilot · Your AI pair programmer
- The Truth about Github Copilot // AI Programming First Look
- github.blog Introducing GitHub Copilot: your AI pair programmer
Zainstaluj teraz i czytaj tylko dobre teksty!
2. Czy da się przepalić 100 milionów dolarów używając AWS Free Tier?
Wakacje się zaczynają, programiści (i DevOpsi) się nudzą, także do głowy przychodzą im głupie pomysły.
Od pewnego czasu w ramach redditowej AWSowej społeczności pojawił się nowy “challenge” – administratorzy chmury przerzucają się pomysłami na to, jak wydać w ramach AWS sto milionów miesięcznie. Warunkiem jest, że metoda musi działać bez żadnych interakcji z supportem o zwiększenie domyślnych limitów – zabawa wymaga więc pewnej dozy kreatywności. Pomysły są naprawdę różne i bardzo polecam wątek – można się z niego dowiedzieć naprawdę dużo o działaniu AWSa.
Jak to zwykle w takich sytuacjach bywa, do zabawy przyłączył się Corey Quinn (twórca newslettera „Last Week in AWS”), dodając do niej kolejny poziom utrudnienia – używany może być tylko i wyłącznie tak zwany Free Tier. Trochę naciągając (w tekście podkreśla, że nikt nigdy nie próbował zaproponowanego przez niego sposobu, więc możliwe, iż uruchomią się jakieś dodatkowe mechanizmy AWS) przedstawia metodę przy użyciu publicznych plików na S3.
Kumulacja wszystkich innych usług pozwoliła mu na wydanie wyłącznie 100 000$ (co i tak jest jakąś chorą liczbą jak na coś, co chwali się byciem darmowym). Okazuje się jednak, że to własnie teoretyznie bardzo tani blokowy storage Amazona jest największą studnią bez dna jeśli chodzi o pochłanianie pieniędzy – zwłaszcza jeśli pliki zostają udostępnione publicznie i zaczną nam akumulować się koszty przesyłu danych. W przypadku S3, nawet w wersji Free Tier, prawdziwe jest stwierdzenie, że “sky is the limit”.
Dobra, trochę się pośmialiśmy z trollowatek posta Coreya. Faktem pozostaje, że jeśli jest choć cień możliwości “przepalenia” takiej ilości pieniędzy po prostu bawiąc się “darmowym” dostępem do chmury, to znaczy, że fundamentalnie jest z tym jakiś problem. Bawiąc się Amazonem, bardzo łatwo wpakować się w nadmiarowe koszty. Nawet profesjonaliści popełniają błędy, a dla początkujących bardzo niejasny “pricing” AWSa może być bolesny dla portfela.
Bardzo dobre artykuły na ten temat, przekorojowo przyglądające się tematowi pojawił się ostatnimi czasy na InfoQ oraz TechMonitor. Kto wie, może AWS posłucha głosu społeczności i zadba o większą przejrzystość cen swoich usług?
Źródła
- AWS pricing problems could deter new cloud engineers
- Growing Concerns among Developers about the AWS Free Tier
- From 0 to $100M spend in 1 month: aws
- The Cloud Genie
Zainstaluj teraz i czytaj tylko dobre teksty!
3. Kto by się spodziewał – narastają kontrowersje koło Windowsa 11
Tydzień temu pisaliśmy, jak to ciekawą premierą okazał się ostatecznie być Windows 11. Wymagania sprzętowe nowego systemu Microsoftu okazały się jednak zaskoczeniem w zasadzie dla każdego. Uruchamiając udostępnione przez Microsoft narzędzie do sprawdzania kompatybilności, okazało się, że nawet część nowoczesnych maszyn przywitał komunikat o braku wsparcia. Jest to związane z wymogiem posiadania układu TPM 2.0. Dla niektórych jest to chęć wymuszenia przez Microsoft wymiany sprzętu i napędzenie rynku hardware. Prawda może być jednak nieco bardziej złożona.
Czy jest ten cały TPM? Trusted Platform Module, bo tak należy rozwijać ten skrót to, to moduł posiadający pewnie specjalne zastosowania. Cytując portal Benchmark.pl:
Pomysłodawcy zastosowali szyfrowanie TPM – komputer z takim modułem tworzy specjalne klucze szyfrowania, które mogą zostać odszyfrowane tylko za pomocą tego samego modułu TPM. Główny klucz szyfrowy przechowywany jest w mikroukładzie, co zapewnia lepszą ochronę przed atakami, niż w przypadku przechowywania go bezpośrednio na dysku twardym.
Dlaczego TPM jest taki kontrowersyjny? Bardzo dobre opisuje to publikacja secret.club. Przedstawia ona lata starań Microsoftu w ramach tak zwanego projektu Palladium o to, żeby ograniczyć kontrolę usera nad jego własnym sprzętem. Z punktu widzenia użytkownika końcowego TPM wydaje się mieć to masę zalet – eliminuje on przeróżne wektory ataków. Z drugiej strony zaś okazuje się, że wsparcie go w systemie daje niespotykaną do tej pory kontrolę twórcom aplikacji.
Przykładowo, nie wiem czy zdajecie sobie sprawę, ale np. w wypadku iPada podpięcie po kablu HDMI do projektora pozwoli na wyświetlenie wielu aplikacji, ale np. zamiast Netfixa dostaniecie tylko czarny ekran – jest to forma ochrony DRM. Do tej pory tego typu praktyki możliwe były tylko i wyłącznie w urządzeniach mobilnych. Niektórzy mają (pewnie nawet nieco uzasadnione) obawy, że są one też przyszłością systemów desktopowych, ponieważ TPM 2.0 pozwala na implementacje wymienionego “feature”, jak i jemu podobnych, również w wypadku klasycznych desktopów.
Microsoft twierdzi, że to poziom bezpieczeństwa, jaki chce osiągnąć przy Windowsie 11, wymaga TPM 2.0. Twierdzą też, że jest to niezbędne do prawidłowej wirtualizacji aplikacji Androidowych. Tak naprawdę jednak do tej pory nie doczekaliśmy się klarownej informacji, jakie będą wymagania sprzętowe nowego Windowsa (nie, publikacje takie jak ta SpidersWeb można sobie między bajki włożyć – dokumentacja o której wspominają już została zaktualizowana o potrzebę układów TPM 2.0). Zobaczymy czy Microsoft przestraszy się reakcji klientów.
A jeśli już piszemy o kontrowersjach, też związanych z aplikacjami na Androida, to tutaj do pieca dołożył też Google. Firma ogłasiła nowe wymogi wobec aplikacji w ichniejszym Play Store. Od sierpnia jedynym dopuszczalnym formatem będzie tak zwany Android Bundle (AAB), nie zaś dotychczas używany format APK. Według specjalistów od bezpieczeństwa, jest to kolejna próba “zamykania” systemu. W wypadku użycia formatu AAB, ze względu na sposób podpisywania certyfikatem aplikacji, które teraz będzie się odbywać po stronie Google, firma dostaje możliwość modyfikacji kodu aplikacji umieszczonych w sklepie. Było to niemożliwe w wypadku formatu APK, podpisywanego certyfikatem przez samych programistów. Poza możliwością ingerencji, nowy format utrudni też publikacje w alternatywnych sklepach.
Źródło
- Windows 11: TPMs and Digital Sovereignty | secret club
- The future of Android App Bundles is here
- Compatibility for Windows 11- Compatibility Cookbook
- Windows 11: Understanding the system requirements and the security benefits
- Why Google Play’s APK replacement is scaring some security experts Jul 1, 2021