Przejdź do głównej zawartości

Posty

Wyświetlanie postów z 2018

Pragmatyczne Programowanie Funkcyjne

Przechodzenie do programowania funkcyjnego rozpoczęło się na dobre jakąś dekadę temu. Widzieliśmy jak języki Scala, Clojure i F# zaczęły przyciągać uwagę. To przechodzenie było czymś więcej niż tylko zwykłym entuzjazmem w stylu: "O fajnie, nowy język!". Było w tym coś prawdziwego. Coś, co to napędzało - przynajmniej tak myśleliśmy. Poniższy tekst jest luźnym tłumaczeniem wpisu bloga Roberta Cecila "Wujka Boba" Martina ze strony : https://blog.cleancoder.com/uncle-bob/2017/07/11/PragmaticFunctionalProgramming.html Proszę o komentarze, jeżeli ta luźność jest zbyt daleko posunięta. Prawo Moora mówiło, że prędkość komputerów będzie podwajać się każdorazowo co 18 miesięcy. To prawo sprawdzało się od lat 60-tych aż do roku 2000. I wtedy się zatrzymało. Na amen. Częstotliwości zegara osiągnęły 3ghz i krzywa wzrostu spłaszczyła się. Prędkość światła została osiągnięta. Sygnały nie mogły rozchodzić się po układzie elektronicznym z wystarczającą prędkością,...

Droga Hackera!

Zawsze wydawało mi się, że Erik Meijer ( @headinthebox ) jest całkiem inteligentnym gościem. Prawda? Mam na myśli to, że koleś, który dał nam LINQ, nie może być idiotą, mam rację? Ale ostatnio ... No cóż, ostatnio zdałem sobie sprawę, że dr Meijer jest po prostu niesamowicie genialny. To znaczy kreatywnie, kosmicznie, bohatersko genialny! A powód? POWÓD? POWÓD jest taki, że właśnie zrobił kawał stulecia! Proszę, obejrzyj to . Po obejrzeniu tego Ron Jeffries zatweetował: "no cóż, to było 45 minut, do których już nigdy nie wrócę" Poniższy tekst jest luźnym tłumaczeniem wpisu bloga Roberta Cecila "Wujka Boba" Martina ze strony : https://blog.cleancoder.com/uncle-bob/2014/11/12/PutItInProduction.html Proszę o komentarze, jeżeli ta luźność jest zbyt daleko posunięta. Popatrz na dr Meijera grzmiącego, pieklącego się, dyszącego, pocącego się, szturmującego scenę, emitującego więcej szaleństwa niż normalny móżg jest w stanie znieść. Grzmi wśród płomi...

Tragedia Rzemiosła

Wydajesz się zamyślony. Tak. Właśnie przeczytałem transkrypcję prezentacji Martina Fowlera otwierającą konferencję Agile Australia 2018. Nazwał to "Stan Agile w 2018". Aaa, tak, wspaniała prezentacja. Strzeż się Złożoności Agile-Branżowej Dbaj o Techniczną Doskonałość Produkty ponad Projektami Fantastyczne treści! No więc, co Cię martwi? Poniższy tekst jest luźnym tłumaczeniem wpisu bloga Roberta Cecila "Wujka Boba" Martina ze strony : https://blog.cleancoder.com/uncle-bob/2018/08/28/CraftsmanshipMovement.html Proszę o komentarze, jeżeli ta luźność jest zbyt daleko posunięta. W tej prezentacji powiedział, że uformowanie się ruchu Software Craftsmanship (Rzemiosła Programistycznego) było tragedią. Tak. Ma rację. Ma? Jak to? Myślałem, że Software Craftsmanship było dobrą rzeczą. O tak, jest. To bardzo dobra rzecz. No to o co chodzi? Tragedią jest, że ruch Agile miał promować wartości Rzemiosła; i poniósł porażkę. Sromot...

Liczby Całkowite i Estymaty

Co to jest: a^2 + b^2 = c^2 Twierdzenie Pitagorasa Dobrze. Czym jeszcze to jest? Równaniem z trzema niewiadomymi. Znasz jakieś rozwiązania tego równania? Jasne. (3,4,5) i (5,12,13). Poniższy tekst jest luźnym tłumaczeniem wpisu bloga Roberta Cecila "Wujka Boba" Martina ze strony : https://blog.cleancoder.com/uncle-bob/2018/06/21/IntegersAndEstimates.html Proszę o komentarze, jeżeli ta luźność jest zbyt daleko posunięta. Dobrze. To są często spotykane trójki pitagorejskie . Znasz jakieś inne? Cóż, Google jest moim przyjacielem, zobaczmy. (wpisuje) Wygląda na to, że (7,24,25) i (9,40, 41) spełniają to równanie. Zauważyłeś, że te rozwiązania, które podałeś zawieraja tylko liczby całkowite ? Ooo, no tak. Przypuszczam, że jest całe mnóstwo niecałkowitoliczbowych rozwiązań. Słyszałeś o Diofantosie ? Czy to nazwisko jakiegoś Greka? Tak, Diofantos zainteresowany był równaniami, które mają rozwiązania złożone z liczb całkowitych. Nazywamy ...

Zasada skautów

Skauci mają zasadę: "Zawsze zostawiaj obozowisko czystsze niż je zastałeś." Jeśli zastaniesz bałagan, posprzątaj go, niezależnie od tego, kto to zrobił. Celowo ulepszaj otoczenie dla następnych obozowiczów. W rzeczywistości, oryginalne brzmienie tej zasady, zapisanej przez Roberta Stephensona Smytha Baden-Powella, ojca skautingu, jest następujące: "Postaraj się zostawić świat choć trochę lepszym, niż go zastałeś." Poniższy tekst jest tłumaczeniem wpisu bloga Roberta Cecila "Wujka Boba" Martina ze strony (Wayback Machine) : https://web.archive.org/web/20160326021448/http://programmer.97things.oreilly.com/wiki/index.php/The_Boy_Scout_Rule Bazowałem na tłumaczeniu jakie dokonał Rafał Legiędź. @rafek . na nieistnieącej już stronie 97rzeczy.devblogi.pl. Archiwum na Wayback Machine Licencja oryginalnego tekstu: Creative Commons Attribution 3 Co byłoby gdybyśmy postępowali według tej samej zasady podczas naszego kodowania: "Zawsze ...

WATS Linia 54

Tego ranka miałem interesującą rozmowę z Doc'iem Nortonem . Skłoniło mnie to do rozmyślań... Wiesz co to jest numer 800. Niektórzy ludzie nazywają je "bezpłatna infolinia". Firma Telekomunikacyjna nazywa je liniami WATS. W ide A rea T elephone S ervice. Poniższy tekst jest luźnym tłumaczeniem wpisu bloga Roberta Cecila "Wujka Boba" Martina ze strony : https://blog.cleancoder.com/uncle-bob/2015/10/05/WattsLine54.html Proszę o komentarze, jeżeli ta luźność jest zbyt daleko posunięta. W roku 1976 podjąłem pracę w firmie na przedmieściach Chicago. Nazywała się Teradyne Central. Robiliśmy sprzęt testujący dla firmy telekomunikacyjnej. Nasz produkt nazywał się 4-Tel. Testował każdą linię telefoniczną, w jednym obszarze świadczenia usług, każdej nocy. Jeden obszar świadczenia usług telefonicznych mógł mieć 100'000 linii lub więcej. System 4-Tel mógł mieć podłączonych do niego jednocześnie 21 terminali. Każdy terminal mógł był użyty prze...

W Dużej Skali

Od pierwszych chwil rewolucji Agile zastanawialiśmy się nad pytaniem o Agile w Dużej Skali . Jak możemy wziąć zasady lekkiego, częstego, przyrostowego, o wysokim poziomie informacji zwrotnej rozwoju oprogramowania i zastosować je do naprawdę ogromnych projektów? Poniższy tekst jest luźnym tłumaczeniem wpisu bloga Roberta Cecila "Wujka Boba" Martina ze strony : https://blog.cleancoder.com/uncle-bob/2018/04/02/InTheLarge.html Proszę o komentarze, jeżeli ta luźność jest zbyt daleko posunięta. Pierwszymi odpowiedziami były takie rzeczy jak Scrum Scrumów . Pomysł był taki, żeby rekurencyjnie zastosować zasady rozwoju oprogramowania Agile na coraz wyższych poziomach skali. Projekt, który wymagał więcej niż jednego zespołu składającego się z 5-12 developerów mógłby być zbudowany z dwóch takich zespołów z zespołem wyższego poziomu do "doglądania?" ich. Zauważ znak zapytania. Jak tylko zaczynamy rozważać większe projekty, nie udaje nam się uniknąć hi...

OO kontra FP

Przez kilka ostatnich lat programowałem w parach z ludźmi uczącymi się Programowania Funkcyjnego, którzy manifestowali swoją niechęć do OO. To zwykle sprowadzało się do stwierdzenia pokroju: "Ooo, to za bardzo przypomina Obiekt". Poniższy tekst jest luźnym tłumaczeniem wpisu bloga Roberta Cecila "Wujka Boba" Martina ze strony : https://blog.cleancoder.com/uncle-bob/2018/04/13/FPvsOO.html Proszę o komentarze, jeżeli ta luźność jest zbyt daleko posunięta. Myślę, że to wynika z przekonania, że FP i OO są jakoś wzajemnie rozłączne. Wydaje mi się, że wiele osób myśli, że jeżeli program jest funkcyjny w całości, to nie jest już zorientowany obiektowo. Przypuszczam, że ta opinia wynika z naturalnej konsekwencji uczenia się czegoś nowego. Wtedy, kiedy zajmujemy się nową techniką, często mamy tendencję do odrzucania starych technik używanych przez nas wcześniej. To jest naturalne, ponieważ wierzymy, że ta nowa technika będzie "lep...

Tylko Wykonywałem Polecenia

Jest rok 2006. Zarząd Volkswagena wie, że ich silnik diesla nie spełni amerykańskich standardów emisji. Więc poprosili inżynierów o rozwiązanie nie wymagające przeprojektowania silnika. Wyobraź sobie scenę spotkania w salce konferencyjnej. Co było powiedziane? Na co się zgodzili? Możemy nigdy nie poznać wszystkich szczegółów; ale jasne jest to, że zarząd poprosił inżynierów o znalezienie sposobu oszukania testów emisji. Poniższy tekst jest luźnym tłumaczeniem wpisu bloga Roberta Cecila "Wujka Boba" Martina ze strony : https://blog.cleancoder.com/uncle-bob/2017/08/28/JustFollowingOders.html Proszę o komentarze, jeżeli ta luźność jest zbyt daleko posunięta. Teraz pomyśl o tych inżynierach. Jaki fajny mieli problem do rozwiązania. No, naprawdę! Wyobraź sobie ile zabawy, może być w wymyśleniu jakiegoś sprytnego sposobu oszukania testów emisji. Jak byś to zrobił? Czy zrobiłbyś to w sprzęcie? Czy zrobiłbyś to w oprogramowaniu? Jak byś wykrył, ...

FORA ZE DWORA, Responsywny Designie

Cholerne dzieciaki, nie potrafią zachować poprawnych definicji słów. Pamiętasz czasy, kiedy słowo "responsywny" znaczyło szybki ? O tak, wtedy to miało poprawne znaczenie. Zwykle mówiliśmy coś w rodzaju: "O kurcze, ten system jest z pewnością responsywny!" albo "Musimy włożyć dużo pracy, żeby ten system pozostał responsywny." Poniższy tekst jest luźnym tłumaczeniem wpisu bloga Roberta Cecila "Wujka Boba" Martina ze strony : https://blog.cleancoder.com/uncle-bob/2014/10/08/GOML1-ResponsiveDesign.html Proszę o komentarze, jeżeli ta luźność jest zbyt daleko posunięta. Ale teraz, nagle, te słowo znaczy: kompatybilny z urządzeniami mobilnymi . Co? Responsywny? W jaki sposób dorabianie GUI to wielkości ekranu czyni system responsywnym? Na co, do diabła, system odpowiada? Na ekran? O rany! Chciałbym wiedzieć kto porwał ten termin i dlaczego? Chciałbym usiąść i odbyć długą rozmowę z tym gościem. Czy nie moglibyśm...