Coding with Titans

so breaking things happens constantly, but never on purpose

5 sposobów na dostosowanie Visual Studio

Visual Studio 2008 jako narzędzie developerskie dla programistów Windows (czytaj .NET i nie tylko) plasuje się na pierwszej pozycji. Jednak pod względem rozszerzania i dostosowywania plasuje się daleko w tyle za swoim największym konkurentem Eclipse. Prawdopodobnie dlatego też Microsoft zrezygnował z opłat licencyjnych, wymaganych przy pisaniu dodatków jeszcze przy pierwszej wersji Visual Studio 2008 SDK. Dlatego też chciałem dzisiaj pokazać kilka przykładów, jak Visual Studio możemy dostosowywać do swoich potrzeb (z użyciem lub bez SDK): Read more →

Mac OS X – Przydatne skróty

Magiczny system Mac OS X zawsze wie lepiej, co chce zrobić użyszkodnik. Aby jednak wiedział lepiej możemy go poinstruować takimi oto skrótami: Operacja Skrót rozruch z płyty CD/DVD C rozruch z dysku twardego D pokazanie dostępnych źródeł do bootowania OPT uruchom z określonego dysku SCSI ID=# CMD-OPT-SHIFT-DELETE-# uruchom z serwera sieciowego N bezwarunkowy restart CTRL-CMD-POWER bezwarunkowe zamknięcie systemu CTRL-CMD-OPT-POWER zamknięcie aktywnej aplikacji CMD+Q przełączanie aplikacji CMD+TAB przełączanie okienek w ramach aktywnej aplikacji CMD+~ Read more →

Mac OS X – Pokaż kotku, co kryjesz w środku

Próżno szukać opcji w ustawieniach, aby pokazać wszystkie ukryte pliki i foldery. Niestety takowa nie istnieje. Aby ukazać to, czego zazwyczaj “standardowy” użytkownik nie chce oglądać należy w oknie terminala wpisać: defaults write com.apple.finder AppleShowAllFiles TRUE killall Finder I po sprawie. Oczywiście, dla cofnięcia zmian TRUE wystarczy zamienić na FALSE. Read more →

Problem ze statyczną analizą kodu a nieprawidłowymi wersjami bibliotek

Podczas pracy nad projektem i uruchomieniu statycznej analizy kodu w Visual Studio 2008 (Code Analysis 2008/FxCop) napotkałem bardzo intrygujący błąd: CA0058 : The referenced assembly 'EnvDTE, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' could not be found. This assembly is required for analysis and was referenced by: 'MojProjekt.dll', 'VSLangProj.dll'. Należy w tym miejscu oczywiście zaznaczyć, że faktycznie projekt jest zależny od wymienionej VSLangProj.dll oraz EnvDTE.dll. Tyle, że ta ostatnia jest dołączana w wersji 8.0. Cały kłopot w tym, że wymagana wersja 7. Read more →

Przenoszenie folderu ‘Moje Dokumenty’ w Windows 7

Nigdy nie trzymam swoich dokumentów (czytaj folderu, który traktuję jako ‘Moje dokumenty’) w domyślnej lokalizacji proponowanej przez system. Dlaczego? Ano dlatego, że chciałbym aby: nie zniknęły mi te dokumenty przy przeinstalowywaniu Windows’a (niezależnie od przyczyny; a im mniej trzeba pamiętać w takiej chwili, tym lepiej) kilka kont z tego samego/różnych systemów zainstalowanych na komputerze korzystało z tej samej lokalizacji, bo do tego właśnie służy ten folder partycja systemowa nie jest odpowiednim miejscem na wrzucanie tam dużej ilości drobnych plików, które dość często aktualizowane, prowadzą jedynie do niepotrzebnego zwiększenia fragmentacji dużo gier w końcu nauczyło się wrzucać zapisy stanów (save’y) do ‘Moich dokumentów’ i to też jest miłe jak po przeinstalowaniu potrafią się odnaleźć. Read more →

Prywatne Repozytorium plików PDB

Mało kto zdaje sobie tak naprawdę sprawę, że oprócz wersjonowania kodu oraz oficjalnych/inżynierskich releasów wysyłanych do klientów wypada również wersjonować pliki PDB z nimi związane. Dlaczego? Odpowiedź jest bardzo prosta. Wyobraźmy sobie, iż nasza aplikacja się po prostu wysypuje. Zaraz ktoś mi powie – “hola hola, ale przecież mamy logi, w pięknym tekstowym formacie i wszystko w nich widać”. Może ktoś nawet słyszał o plikach MAP :) Super! No ale nie wszystkie nasze moduły muszą być przecież napisane w . Read more →

Resource Governor w MS SQL 2008

Resource Governor to nowa opcja dostępna tylko w Microsoft SQL Server 2008 Enterprise. Dzięki niej możliwe jest w końcu zagwarantowanie priorytetów oraz średniego czasu wykonania zapytań, od których zależy nasz biznes. Pozwala on między innymi na zarządzanie i przypisywanie zasobów “typom” użytkowników łączących się z naszą bazą danych. Każdy “typ” reprezentowany jest jako pewna workload groupa, która z kolei posiada referencję do zasobów (resource pool). Zasobami są tutaj: minimalna i maksymalna ilość pamięci RAM oraz czasu procesora. Read more →

Czy ktoś debuguje moją aplikację?

Z różnych powodów, czasem nie chcemy, aby ktoś przyglądał się naszej aplikacji w trakcie jej działania. Pomińmy jednak na chwilę te powody i skupmy się na samym wykrywaniu debuggera… Najprostszą metodą sprawdzenia w systemie Windows, czy nasza aplikacja jest aktualnie uruchomiona w jego kontekście lub jest on podłączony można wykonać poprzez wywołanie funkcji: IsDebuggerPresent() z WinAPI. Jednakże sprytny debugger może ją przesłonić i zawsze zwracać, że nie. Informację tę zatem wyciągniemy samemu, “ręcznie” z bloku informacji o wątku (Thread Information Block – TIB). Read more →

70-432 Optimizing Performance

9.-te spotkanie przygotowujące do egzaminu 70-432 za nami. Poprowadzona sesja o Database Engine Tuning Advisor oraz Resource Governor udana! Więcej takich sobie i wam życzę. Materiały do pobrania tutaj. Video opublikowane zostanie niebawem. Te same sesje również obejrzeć można na portalu www.VirtualStudy.pl. Read more →

SQL Day 2009

28. listopada odbyła się konferencja SQLDay 2009. A ja na tej imprezie byłem i sam pomagałem w jej organizacji. Ci co nie przyszli niech tylko żałują! Read more →