ASP .NET, OgólnePiotr ZielińskiLeave a comment Kilka postów chcę przeznaczyć na temat HTTP 2.0. Zamiast pisać tylko o nowościach w nowej wersji protokołu, warto najpierw zrozumieć jak działała dotychczasowa wersja czyli HTTP 1.1. Pierwszym problemem HTTP 1.0 oraz HTTP 1.1 była obsługa wielkiej ilości zapytań. Każda strona, aby prawidłowo wyświetlić się potrzebuje załadować mnóstwo zewnętrznych zasobów takich jak skrypty JS, arkusze css czy grafika. Ponadto HTTP oparty jest na TCP więc ponadto mamy do...
From time to time we need to use npm packages on Continuous Integration build agentwith no access to internet (usually CI agent)with slow internet proxy Moreover as Windows developers we have Windows servers. ...
Osoby czytające bloga na pewno zauważyły regularne posty o “Tydzień z Azure”. Musze jednak z “przykrością” poinformować iż już nie będę z Mirkiem kontynuował tej serii… Ale oczywiście nie można było zostawić takiej pustki! Dlatego teraz jest “This week in Azure”! Jak coś robić to z rozmachem i dlatego poszliśmy międzynarodowo i teraz będzie po angielksu i na cały świat! Zapraszamy do oglądania, czytania, subskrybowania, ćwierkania! Blog:https://blogs.msdn.microsoft.com/thisweekinazure/ Channel9 (pierw...
Podczas zabaw z Dependency Injection można się trochę zapędzić używając kontenerów, uzależniając od nich cały kod naszej aplikacji. A to źle. Na dobra sprawę logika aplikacji nie powinna nawet wiedzieć z jakiego kontenera korzystamy. Do kontenera nie powinniśmy się przyzwyczajać – jeśli wykorzystujemy go poprawnie, to jego podmiana na inną bibliotekę nie będzie nastręczać żadnych trudności. Tak naprawdę to całkowite pozbycie się kontenera z systemu również powinno być proste. Pisałem już trochę o tym w p...
Sztuka programowania 3260 dni, 23 godziny, 1 minutę temu 190 źrodło rozwiń
Właśnie widziałem, że zostało zapowiedziane bardzo ciekawe wydarzenie na stronach SharePoint community. Z poprzednich edycji wiem, że warto oglądać, tym bardziej, że jest całkowicie za darmo. Rejestracja jest możliwa pod tym linkiem. Poniżej kila szczegółów:
Byłem na DevDay2015! Prezentacje były i można oglądać, albo będzie można wkrótce. Część ludzi spotkała się z ogromną ilością swoich fanów, inni leczyli kaca, inni słuchali i starali się coś z tego wyciągnąć. Jako że nie zapiłem, to starałem się coś mądrego usłyszeć, poniżej materiał zebrany i w mojej interpretacji: Decyzje które podejmujesz podczas wybierania frameworka, biblioteki, pracownika, czy czegokolwiek innego powinieneś przemyśleć pod kątem, nie tylko rozwiązania, które przyniesie, a racze...
Człowiek uczy się całe życie. Słyszymy, powtarzamy ten truizm. Czasem jest to pochwała, najczęściej pocieszenie.Wiedza, mądrość, inteligencja, czy to synonimy? Na studiach uczymy się czy studiujemy? Po studiach jesteśmy mądrzejsi czy mamy większą wiedzę? Czasami słyszę pytania skąd wiem to co wiem i w jaki sposób dowiaduję się co mam wiedzieć. Oto garść moich przemyśleń (rad?) na ten temat.
Sztuka programowania 3263 dni, 21 godzin, 10 minut temu 418 źrodło rozwiń
W poprzednim wpisie pokazałem, w jaki sposób możemy zaprojektować obsługę błędów. Jak widać mamy do dyspozycji sporo opcji. Z punktu widzenia AKKA.NET nie jest to jednak tak skomplikowane. Wystarczy przeładować jedną metodę i zwrócić odpowiedni obiekt. Tak jak w poprzednim wpisie będziemy testować kod na następującym “systemie”: Dla przypomnienia nasz ApplicationUserActor wygląda następująco: public class ApplicationUserActor : UntypedActo...
Programowanie rozproszone 3263 dni, 21 godzin, 10 minut temu 103 źrodło rozwiń
W najbliższą środę czyli 2016-01-13 w biurze Microsoft w Warszawie odbędzie się trzecie już spotkanie User Group-y Microsoft Azure Spotkanie o tyle dla mnie ciekawe, ponieważ będę prowadził tam sesję o Azure WebApps. Oprócz mnie Emil Wasilewski (nasz świeżo upieczony MVP z Azure’a) opowie o usługach, jakie są dostepne w Azure, a także kolejny nasz MVP – Łukasz Kałużny opowie o Azure Resource Manager. Bogate w treści spotkanie, dlatego wszystkich chętnych zapraszam do rejestracji i przybycia na spotkanie!...
The most important thing I learn in 2015 is that clean code is everything. You can have bad performance or logical errors or even security issues. But without clean code you cannot fix anything above, because you don't understand the code. The regular expressions were always dramatic for fast reading. Unless there was a variable which describes it well, I need a lot of time to understand what exactly is going on. Just let look on the JavaScript example...
Description of change tracking mechanism Entity Framework and 3 possibilities to use it optimally
W części czternastej kursu Test-Driven Development omówimy technikę testowania zależności za pomocą atrap (jęz. ang. „mock”). Test jednostkowy z definicji testuje zachowanie w izolacji, a więc bez zależności zewnętrznych. Takimi zależnościami są najczęściej inne klasy lub interfejsy, które posiadają zachowanie.
Sztuka programowania 3265 dni, 16 godzin, 46 minut temu 164 źrodło rozwiń
← Kurs MVVM #3 – Galeria obrazów (ObservableCollection, AncestorType i datatemplate)Opublikowano, autor:Tomasz J Wstęp W poprzedniej części kursu dowiedzieliśmy się jak zbindować kolekcję danych. Dzisiaj rozszerzymy sobie to o możliwość bindowania kolekcji, która zawiera różne dane albo zawiera elementy, które chcielibyśmy przedstawić w różny sposób. Do tego posłuży nam DataTemplateSelector. Jeśli mój opis jest zbyt zagmatwany polecam zapoznać się z tym. https://msdn.microsoft.com/pl-pl/library/sys...
Sztuka programowania 3271 dni, 22 godziny, 22 minuty temu 142 źrodło rozwiń
Wiele, bardzo wiele się działo w roku 2015, w życiu prywatnym ale i pod względem moich zaangażowań IT. Ale ponieważ jest to blog o mojej "IT-twarzy", to na tym się skupmy. A jest na czym. W skrócie - uruchomiłem się.
During this Christmas time I had an reflection about being nice vs being honest (aka being an a**hole)...
ASP .NET, BezpieczeństwoPiotr ZielińskiLeave a comment W poprzednim poście opisałem zasadę działania protokołu HTTP Strict Transport Security. W skrócie najważniejsze punkty to:Serwer zwraca specjalny nagłówek “Strict-Transport-Security”, który powinien być przesyłany wyłącznie przez HTTPS.Po otrzymaniu nagłówka od serwera, przeglądarka zawsze będzie łączyć się przez HTTPS, a nie HTTP. Użytkownik jeśli nawet będzie chciał użyć HTTP, przeglądarka dokona wewnętrznego przekierowania na HTTPS (307 – interna...
Może to wpływ świątecznego nastroju i kolęd podśpiewywanych z korytarza - najwyraźniej MiNI miało tego wieczora "opłatek" - ale 98 spotkanie WG.NET było naprawdę fajne. Podoba mi się też zmiana z ankietami - od teraz ankiety są zarządzane przez grupę.
If we think about advanced website development, sooner or later we’ll deal with JavaScript Task Runners. One of them is Gulp – a library available in NPM, which enables us to significantly automate our work. Gulp facilitates a compilation of Sass or Less files to CSS format; it allows to use Autoprefixer (a tool that will ensure the compatibility of our CSSs with multiple browsers) as well as to watch the progress of our work in many browsers/ devices in real time.
Tak… aż chciałem to nazwać Autentykacją ;) by tych wszystkich purystów, Hitlerów polskiej gramatki skłonić do wejścia i dania komentarza. Ale nie, nie będę taki, bo dla tych purystów też będzie piękne słówko, ale kiedy indziej. No dobrze, to dlaczego w ogóle z tym słowem wyskakuje? A, to dobre pytanie. Przez ostatni miesiąc miałem dość sporo na głowie i za każdym razem jak coś paplałem, to sobie to zapisywałem by to...
BezpieczeństwoPiotr ZielińskiLeave a comment Protokół HTTPS jest dzisiaj powszechny na wszystkich stronach z wrażliwymi informacjami. Banki są klasycznym przykładem. HTTPS “gwarantuje”, że dane są przesyłane w szyfrowanej formie, a klient wie, że łączy się z oryginalną stroną. Certyfikat publikowany przez stronę jest gwarantem, że korzystamy właśnie z tej aplikacji, z której zamierzaliśmy. W najprostszej postaci wygląda to zatem następująco: Tego przynajmniej spodziewamy się… Problem w tym, że czasam...