Czas się przyznać. Nie można takiego stanu utrzymywać dłużej bo prawda prędzej czy później wyjdzie na jaw. Jak to mówią kłamstwo ma krótkie nogi. Dzisiaj postanowiłem wyjść z szafy, ujawnić się i powiedzieć to na głos. Nie testuję JavaScript’ów. Uff teraz kiedy już publicznie to powiedziałem 50% sukcesu za mną. No bo przecież powiedzenie tego publicznie jest najtrudniejsze… Mimo, iż JavaScript jest już od dawna pełnoprawnym obywatelem w naszych aplikacjach czy to WebForms (tfu!) czy MVC i pisze się g...
Majowy weekend w pełni, słońce grzeje, pełen relaks. Microsoft podobno ma wydać Windows-a 9 zupełnie za darmo. Wydaje się to prawdopodobne skoro Windows Phone ma być za darmo dla urządzeń z xx” poniżej ileś tam. Wszystko fajnie ale po co czekać. Zgarnij darmowego Windows 8 Pro już dzisiaj.
Six years ago I purchased Logitech UltraX, which is still the best keyboard I have ever had. Unfortunately, as you know, keyboard cannot live for ever. Two years ago I wanted to buy the same model again, but…UltraX is no longer made. I was looking for some on amazon and ebay, and I found only Logitech Ultra X with PS/2. I bought it and it was fine, but I needed also PS/2->USB converter (my laptop doesn’t have PS/2 like most of laptops today). It works...
I decided to move my blog from hosting on Webio.pl to Microsoft Azure (formerly Windows Azure before March, 25th 2014). Why? To get more familiar with the Cloud and especially Azure. I did my migration following Dave Bost’s series Moving a WordPress Blog to Windows Azure...
Personal Challenge - 100 dni kodowania, codziennie minimum 30 minut na kod nie związany z pracą
Ach święta, czas jedzenie i nie policzalnych kalorii. A gdy ktoś ma szczęście, to także czas błogiego programowania bez żadnych zobowiązań. To także czas kiedy można przysiąść i poczytać. Udało mi znaleźć chwilę i posiedziałem, czytałem i czytałem i nie mogłem przestać, bo ciągle nie miałem rozwiązania swojego problemu. Chciałem zaimplementować "Owin Identity" w asp mvc, a w internetach chciałem znaleźć rozwiązanie podane na talerzu. Spędziłem cały dzień wpisując coraz to różne i kombinacje słów "owin, i...
W jednym z tworzonych przeze mnie systemów pojawiła się konieczność dodania funkcjonalności pozwalającej na odblokowywanie kont użytkowników w Active Directory (zablokowanych na skutek kilkukrotnego podania błędnego hasła). Standardowa procedura odblokowania konta to wejście do konsoli Active Directory i zaznaczenie odpowiedniej opcji w ustawieniach danego użytkownika...
Powiedzmy, że potrzebujemy wyciągnąć PostCode użytkownika (a po drodze mamy jeszcze Address): string postCode = person.Address.PostCode.ToString(); Nie mamy pewności czy person nie jest nullem, a następnie czy person.Address nie jest nullem, a następnie person.Address.PostCode … . Aby się zabezpieczyć przed NullReferenceException musimy napisać trochę dodatkowego kodu, jak np: ...
W starszych wersjach .NET, do dyspozycji był m.in. strumień GZipStream. Do prostych zastosować wystarczał ale zwykle, trzeba było opakowywać go w swoje klasy, aby np. skompresować cały folder. Od .NET 4.5 mamy klasę ZipFile, która dostarcza kilka przydatnych metod. Najpierw należy dodać referencję do System.IO.Compression.FileSystem, a potem wystarczy skorzystać jednej ze statycznych metod...
Wspomniałem o właściwościach DirectorySearcher.SizeLimit oraz DirectorySearcher.PageSize, których poprawne ustawienie zapewnia, że z bazy danych AD można pobrać więcej obiektów niż ustawiony na serwerze limit. Tym razem chciałbym sprecyzować do czego służą obie właściwości bo moim zdaniem dokumentacja nie jest precyzyjna, co potwierdza zresztą spora liczba pytań w Internecie na ten temat. Otóż SizeLimit określa maksymalną liczbę obiektów jaka może zostać zwrócona w wyniku wy...
Dzisiejszy wpis o książkach, z których miałem okazję korzystać w ciągu ostatnich 12 miesięcy. Niektóre pozycje są warte polecenia, inne mniej, a niektóre w ogóle. Z książkami jest jeden podstawowy problem – bardzo szybko się starzeją...
Dystrybucja lokalnych bibliotek jako NuGet'y w oparciu o TFS Build i NuGet Server.
.NET zawiera klasy przeznaczone do leniwej inicjalizacji i zwykle nie trzeba samemu implementować tego wzorca. Jeśli jakiś obiekt, chcemy inicjalizować dopiero w momencie, gdy jest on potrzebny to można skorzystać ze wspomnianych typów.
Najczęściej programiści korzystają z klasy Dictionary ale warto rozważyć dwie inne kolekcje. ListDictionary przechowuje dane na liście jednokierunkowej. Dla słowników z kilkoma kluczami zwykle jest to szybsze niż standardowy hash table, wykorzystywany w Dictionary. Szybciej jest po prostu przejść przez 10 elementów, niż liczyć skomplikowaną funkcję haszującą.
Jako, że ostatnimi czasy mam do czynienia ze współpracą pomiędzy aplikacją ASP.NET MVC, a Selenium , chciałbym się podzielić z Wami kilkoma przemyśleniami...
Post ten dotyczy tematu efektywnego pobierania danych z Active Directory. Załóżmy, że chcemy pobrać listę użytkowników przy czym interesują nas tylko niektóre właściwości, które ich opisują. Pokarzę trzy niewiele różniące się z pozoru sposoby odczytania potrzebnych nam danych. Pozornie ponieważ te trzy podejścia znacząco różnią się wydajnością.
I am back! with brand new blog post! My new approach to creating CV, everything is on github.
Today’s post opens the series of my notes I will collect during preparation for the Microsoft exam 70-483 which focuses on programming in C#...
Dzisiaj nie technicznie jednak temat bardzo ważny bo przecież połowę życia spędzamy w pracy. Tak połowę. Czas to najcenniejszy zasób jaki mamy (najcenniejszy asset jeśli pracujesz w korpo). Doba dla wszystkich ma tyle samo godzin, minut i sekund. Nikt na ziemi nie dostał go mniej lub więcej, wszyscy dokładnie tyle samo, jak w komunie.
Ostatnio pierwszy raz w życiu miałem okazję ustawiać nagłówki HTTP odnośnie cachowania. Pogłębiłem trochę temat i okazało się, że trzeba myśleć nie w kategoriach czasu lokalnego, tylko czasu uniwersalnego. Na nasze: zamiast DateTime.Now trzeba używać DateTime.UtcNow. Wstęp: Przechowujesz datę i czas? Może warto w UTC? DateTime ma właściwość Kind typu DateTimeKind: public enum D...