W angielskojęzycznych (choć nie tylko) rozważaniach na temat bezpieczeństwa, tytułowy termin przewija się całkiem często i oznacza on, że ktoś wymyślił, jak możnaby obejść lukę zabezpieczeń, gdyby się umiało. Ale że się nie umie, to się tworzy właśnie "proof of concept". Rozumiem, że luki w zabezpieczeniach to poważna sprawa i znalezienie ich musi się wiązać z natychmiastową reakcją producenta. Rozumiem, że odkrywca luki chce mieć swoje parę minut sławy. Rozumiem, że opracowanie kodu, który wykorzystuje ...
Joel Spolsky wczoraj opublikował na łamach gazety Inc. przyszły (bo z datą 1 lutego ;)) artykuł na temat problemów przepełnienia kanałów komunikacji. W artykule głównie porusza obserwacje z wyśmienitej książki Mityczny osobomiesiąc autorstwa Frederick P. Brooks i już w merlinie i wydawnictwie WNT nie dostępnej (ale na Amazon tak, za $26,02) - osobiście gorąco polecam tą książkę każdemu programiście i nie tylko...
Kolejne 3 grosze do sposobu formatowania stringa, gdzie zamiast kolejnych indeksów {0}, {1}, itd podaje się nazwy właściwości, a jako źródło obiekt je posiadający. Swego czasu Phill Haack zainteresował się tym tematem i pokazał inne implementacje....
FormatWith 2.0czwartek, 28 maj 2009 Niejednokrotnie sklejałem ze sobą wiele stringów na przykład w ten sposób: string ala = "Ala"; string ma = "ma"; int dwa = 2; string koty = "koty"; string zdanie = ala + " " + ma + " " + dwa.ToString() + " " + koty + "."; Problem w tym, że ta metoda jest mało estetyczna oraz słabo wydajna, ponieważ w ten sposób tworzonych jest wiele pomocniczych obiektów typu string co powoduje spadek wydajności. Tutaj z pomocą przychodzi nam metoda string.Format(), ...
Oryginalny post: Does More Than One Monitor Improve Productivity? Autor: Jeff Atwood Począwszy od mrocznych czasów Windowsa Millenium jestem entuzjastą pracy na wielu monitorach. W ciągu ostatnich czterech lat pisałem już kilka razy o rozmaitych przyjemnościach płynących z pracy na kilku monitorach. Posiadam trzy monitory w domu jak i w pracy. Jestem tym, kogo mógłbyś nazwać prawdziwym zwolennikiem. Zawsze szukam argumentów dla kolegów po fachu, którzy żądają drugiego (albo nawet trzeciego) monitora, ...
Jak zapewne zauważyłeś od jakiegoś czasu trzy razy w tygodniu pojawiały się wpisy, których tytuły zaczynały się od 70-536. Kamil Lemański, Daniel Jarzynka oraz Dawid Tulski przygotowując się do tego egzaminu tworzyli wpisy podsumowujące kolejne lekcje z Training Kita. W tym miejsu zebrałem wszystkie artykuły, które się pojawiły (pojawiły się już wszystkie lekcje z drugiej edycji książki):Podstawy FrameworkuUżycie typów wartościowychUżycie popularnych typów referencyjnychTworzenie klasKonwersja między typ...
Ostatnio przeraziłem się, ponieważ po zainstalowaniu .NET Framework 3.5 na serwerze oczekiwałem, ze pojawi się możliwość wybrania ASP.NET 3.5 w IIS Managerze...
Każdy z nas zna to na pamięć. Bohater filmu podchodzi do komputera. Ikony wielkości dłoni, tak aby nie można się pomylić. W tym momencie rozlega się głośne “you’ve got mail!” i na ekranie (od razu) pojawia się mail. Times New Roman, 200 pikseli. Żeby było łatwiej przeczytać rzecz jasna. Mail oczywiście jest dowodem zdrady męża, ale zupełnie nie...
Globalizacja to proces tworzenia aplikacji która wspomaga nasz “lokalny” interfejs. Przez lokalny należy rozumieć kulturę wyświetlania liczb, dat czy innych informacji. .NET Framework jest w stanie zrobić większość rzeczy za użytkownika, my jednak musimy zrozumieć jak korzystać z przewidzianych narzędzi. Na przykład w Stanach Zjednoczonych separatorem “miejsc po przecinku” (mówiąc po polsku ;) )jest kropka.Ustawienia kultury Możemy użyć dwóch właściwości do ustawienia kultury z jakiej chcemy skorzystać w...
Minęło circa około ~300 dni od kiedy zostałem freelancerem. Przez ten czas dość regularnie otrzymywałem od Was pytania typu "jak to jest?", "jak zacząć?", "jakie są plusy i minusy?"... Czas więc na krótkie zerknięcie wstecz i spisanie kilku porad dla tych, którzy myślą o przejściu na "swoje" i pracy w domu. Freelancowanie może wydawać się szczytem zawodowej rozkoszy, jednak nie wolno myśleć o nim z klapkami na oczach. Przez nierozsądne podejście do tematu można się nieźle sparzyć. Mam nadzieję, że po le...
Oryginalny post: A Question of Programming EthicsAutor: Jeff Atwood Z Kodeksu Etycznego ACM: Jako członek ACM będę Przyczyniał się do dobrobytu społeczności oraz ludzi. Unikał krzywdy innych. Był uczciwym i godnym zaufania. Uznawał prawa własności włączając w to prawa autorskie i patenty. Doceniał własność intelektualną. Resp...
Ilość materiału, z którą warto się zapoznać po zakończonej ponad dwa miesiące temu konferencji PDC 2009 jest dość przytłaczająca (ok. 70 sesji dotyczących .NET lub pośrednio z nim związanych). Stąd wybranie prezentacji, które warto zobaczyć może być problematyczne. Poniżej skrajnie subiektywna lista 10 sesji, z którymi zapoznanie się daje pewien obraz zmian, które czekają nas w ekosystemie .NET w najbliższym czasie.
Po ciężkiim tygodniu nastał weekend :) Skupiłem się dziś na czytaniu Training Kit’a do egzaminu 70-536. Rewolucji żadnej póki co ta książka nie wnosi. Owszem – dość dobrze porządkuje całą zdobytą wiedzę, jednak zagadnienia są dość akademickie. Muszę jednak przyznać, że to jedna z lepszych publikacji MS jakie mam okazję czytać. Pisana jest bez zbędnego nadęcia a autor pozwala sobie nawet na rozbawiające wstawki w rodzaju: ...
W moich ostatnich projektach SharePoint, było więcej kodu JS niż C# (no dobra, przesadzam, ale kodu JS było naprawdę sporo). Coraz częściej się zdarza, że operacje związane z UI są w moim przynajmniej przypadku wykonywane po stronie klienta. Nie tylko lepiej i imo szybciej to działa, ale także odciążam tym samym IIS od niepotrzebnych i zbędnych operacji. Jedyny problemem jaki ostatnio jednak miałem to rzadkie występowanie błędów w JS - pytanie właśnie czy błędów czy może coś innego na to wpłynęło. Nie z...
W bibliotece System.ServiceModel.dll znajdziemy ciekawą klasę SynchronizedCollection
Jak wysłać wiadomość Po utworzeniu wiadomości, musimy wysłać ją przez serwer SMTP, który prześle wiadomość do odbiorcy. W .NET klasą, która reprezentuje serwer SMTP jest klasa SmtpClient. Aby wysłać wiadomość wywołujemy SmtpClient.Send. Najczęściej wysyłanie wiadomości jest tak proste jak w poniższym przykładzie(gdzie smtp.contoso.com jest nazwą lokalnego serwera SMTP): 1: MailMessage m = new MailMessage 2: ("[email protected]", 3:"[email protected]", 4:"Quarterly data report.", 5:"Hello, wo...
Oryginalny post: JavaScript: The Lingua Franca of the WebAutor: Jeff Atwood Mike Shaver, członek-założyciel Mozilla Organization wyraża mocne przekonania na temat przyczyn popularności Internetu:Jeśli wybierasz platformę powiązaną z konkretnymi narzędziami, jeśli porzucasz swobodną współpracę przez Zobacz Źródło, mashupy robione na zasadzie copy-and-paste i możliwość zapakowania jQuery tam gdzie wcześniej siedział Prototype, wtedy tracisz to, co spowodowało rozrost i rozproszoną ewolucję sieci. Tracisz t...
Jeśli binding w WPFie czasem Wam nie wystarcza polecam przyjrzeć się "projektowi", który pojawił się na The Joy of Code. Jeśli kiedykolwiek próbowaliście wykonać jakieś operacje na wartości bindowanej teraz już możecie.
Standardowe komunikaty w bibliotece NHibernate.Validator nie są zbyt przyjazne dla użytkownika. Można dostosować je do własnych potrzeb poprzez pliki zasobów.
Dzisiaj powiemy sobie o używaniu refleksji, tworzeniu instancji typów, wywoływanie metod do dynamicznego ładowania pakietów, ładowaniu pakietów itd. Przez większość czasu mamy bezpośredni dostęp do typów w trakcie pisania kodu. Są jednak chwilę kiedy warto byłoby załadować assembly, typy i metody zawarte w nim dynamicznie. Na przykład aplikacja, która obsługuje wtyczki powinna być napisana tak aby uruchomić plug-in dynamicznie nawet gdy plug-in nie jest dostępny, podczas opracowywania takiego wniosku.Jak...