Cezary Walenciuk Programowanie

CSS3 GenIstnieje tona wspaniałych generatorów, które za ciebie napiszą style CSS3 wraz ze specyficznym prefiksami do przeglądarek.

Gradienty, Animacje, obramowania, cienia.

Oto krótka lista takich generatorów.

WykładowcaOto co widzą me oczy. Nieskrępowane przez czasu okowy. Trójkę nieprzyjazny wykładowców dane ci będzie spotkać…Żaden jednak z nich nie będzie jednakże najbezpieczniejszy niż ty w pełni swojej chwały. To cienie matematyki, automatyki i starego programowania obdarzone życiem i zniekształcone zgodnie z prawami, jakim się uczelnie rządzą…

Link do orginalnego dialogu

…Dojdziesz do więzienia z żalu i płaczu powstałego, gdzie nawet studenckie cienie odchodzą od zmysłów. Zażądają tam od ciebie potwornej ofiary, Najdroższy. By móc w końcu spocząć, zmuszony będziesz unicestwić to, co utrzymuje cię wśród studentów i przestać być wiecznym studentem.

Wiem ,że musisz ukończyć studia, póki masz taką możliwość. Krąg *musi* się zamknąć najdroższy. Nie przeznaczonego takiego życia i praca już zbyt długo czeka na ciebie. Musisz odnaleźć to, co zostało ci odebrane i udać się w podróż poza granicę tej egzystencji do krainy ludzi pracujących.

Będę na ciebie czekała w komnatach pracy…najdroższy.

Po tygodniu siedzenia w kontrolkach Telerik postanowiłem zrobić wpis bardziej na luzie. Może napiszę coś o studiach, jutro przecież mam zjazd. Mój głupi wpis o tytułach mgr licencjatach cieszy się taką popularnością. Może to niezły pomysł. W rezultacie poczułem nieodpartą chęć zrobienia wpisu o wykładowcach i studentach. Zatem nie traćmy czasu.

Focus BorderChyba dawno nie odrobiłem pracy domowej z technologii webowych, ponieważ nie mogłem ustalić co powoduje  to obramowanie. Teraz już wiem.

Zacząłem swoją przygodę z kontrolkami Telerik i jedną z najbardziej irytujących rzeczy było właśnie to obramowanie. Sprawa wydawała się trudna, ponieważ to obramowanie nie wywodziło się od żadnych styli CSS.

HightChartNowe bajery HTML 5 pozwalają na rysowanie złożonych zawartości bez użycia pluginów takich jak Flash czy Silverlight. Z punktu widzenia biznesowego prawdopodobnie chcielibyśmy w Canvas narysować jakiś wykres niż postać z anime.

Canvas i HTML 5 istnieją już od dłuższego czasu ,a to oznacza ,że już ktoś opracował gotowe biblioteki do rysowania takich wykresów.

C++ c# C

Specjalny znak “#” nie może być zakodowany w adresie url. Jak więc zmaksymalizować SEO pod tym kontekstem.

Co zrobić, gdy człowiek zdaje sobie sprawę ,że słowa kluczowe jak“C#” “C++” "i “C” dla Google mogą reprezentować ten sam kontekst.

AttachDzisiaj w pracy pokazałem koledze jak w Visual Studio potrafi się dołączyć do procesu aplikacji w celu debugowania aplikacji. Trochę się uśmiałem, ponieważ pewien kolega nauczył mnie tego w poprzedniej pracy.

Czasami nie możemy debugować aplikacji. Przykładowo moduły w DotNetNuke nie mogą być inaczej debugowane, gdyż reprezentują tylko część systemu ,a nie całość.

JDBCUdało mi się połączyć bazę danych PostgreSQL z .NET. Dostałem zapytanie czy to samo mogę zrobić używając Javy i JDBC. Można. Cały proces przygotowania tego wpisu był dużo przyjemniejszy. W .NET z tego, co wiem nie ma gotowych sterowników do PostgreSQL ,a użycie w tym wypadku ODBC wymaga przejścia kilku okienek dialogowych. W Javie ten proces jest łatwiejszy.

LockSłowo kluczowe “lock” oznacza część krytyczną kodu, która zablokuje przepływ kodu dla innych wątku ,aż do jego zwolnienia.

Wewnątrz części krytycznej zabezpieczam kod, który mógłby zachowywać się nie przewidywalnie, gdyby wiele wątków naraz próbowało wykonać jedną i tą samą operację.

Polski

Przyszedł czas aby poruszyć niewygodny temat. 8 miesięcy temu przeniosłem bloga z bloggera na BlogEngine.NET. Blog wygląda teraz bardziej profesjonalnie. Wcześniej sam nie mogłem traktować poważnie tego starego wystroju.

To nie było coś, co mógłbym pokazywać z dumą i chwałą.

Java+JSJak sprawdzić czy ktoś ma ogólne pojęcie o programowaniu?

Najlepiej zadać mu pytanie, jaka jest różnica pomiędzy JavaScript-em ,a Javą. Sam kiedyś dawno temu myślałem ,że oba języki programowania mają ze sobą dużo wspólnego ,że JavaScript jest Javą dla przeglądarek (cokolwiek to znaczy).

Awaiting XNauka “async i await” się nie kończy. Co można jeszcze zrobić przy pomocy tych słów kluczowych.  W WPF w prosty sposób możemy zwolnić wątek UI. W WCF możemy łatwo przejąć kontrolę nad wiadomościami zwrotnymi usługi. To jednak nie koniec.

JQuery

Po miesięcznej pracy nad Androidem w Eclipsie wróciłem do Visual Studio i ASP.NET. Po kilku godzinach pracy stwierdziłem ,że chyba zapomniałem jak się programuje. Do rozwiązania miałem prosty problem ,a ja uznałem ,że do jego rozwiązania jest potrzebny “UpdatePanel”. O to moja historia.

Accent ColorsW końcu udało się mi zaktualizować swój telefon “LG”  do wersji 8.  Osobiście miałem już dosyć swojego telefonu, ponieważ nie ukrywajmy jest on przestarzały i z natury sam system jest zamknięty.Ten wpis zawiera tylko krótką notkę na temat styli kolorów w Windows Phone.Biorąc pod uwagę ,że sam używam tych kolorowych kwadracików na blogu ta zmiana jest także dla mnie istotna.

Config ClassW poprzedniej pracy zgodnie z zalecanym wzorcem tworzyliśmy klasę konfiguracyjną, której właściwości odpowiadały wartościom słownikowym  w pliku konfiguracyjnym.  Taka klasa rozwiązuje problem z magicznymi stringami i plikami konfiguracyjnymi. Wtedy  ja taką klasę  pisałem ręcznie co jest czystą głupotą ponieważ można napisać template T4 który zrobi to za nas.

PlaceHolder Całkiem nie dawno w pracy tworzyłem moduł dla strony, który był tylko prototypem prawdziwego rozwiązania. Moduł ten był dosyć złożonym sliderem.  Nie ma slidera bez grafiki więc musiałem go uzupełnić jakimiś bzdurnymi grafikami.Kilka tygodni później zdałem sobie sprawę ,że straciłem kilka minut życia nad tym małym problemem, ponieważ istnieje wiele serwisów, które oferują zastępczą grafikę.

T4 Ten artykuł demonstruje jak łatwo stworzyć prosty schemat T4, który wygeneruje kod w C# bez bawienia się w bardziej zaawansowane narzędzia jak DLS.

Jeśli nie wiesz co to jest T4 i jak tego użyć spokojnie ten wpis pokaże wszystko co musisz wiedzieć aby zacząć swoją przygodę.

Zen Coding Po wpisie o “Less CSS” otrzymałem sugestie ,że powinien zainteresować się “Zen Coding”. Dlaczego nie? Pisanie div-ów trwa odrobinę za długo ,a Zen Coding to ciekawy sposób, który przyspieszy ten  proces wielokrotnie.

Zen Coding może być użyte  z Visual Studio dzięki dodatkowi Web Essentials.

Source? Oto jeden ze sposobów na pozbycie się komunikatu “Source not found” w trakcie debugowania kodu w Androidzie. Jeżeli kodu nie ma to po co w ogóle chce mi go wyświetlić. Visual Studio w trakcie debugowanie nie spaceruje po klasach systemowych. Nic dziwnego ,że tak lubię MonoDroida. Problem można rozwiązać dodając kod źródłowy Androdia do projektu ,ale ja nie chce go oglądać wcale.

Less CSSKilka dni temu wyszła aktualizacja do ASP.NET i narzędzi WEB w Visual Studio 2012.

Zainteresowała mnie lista obsługiwanych składni językowych (CoffeScript, CSS Less), o których słyszałem, ale nie miałem jeszcze okazji ich sprawdzić. W pracy działam w końcu na Visual Studio 2010.

BroadCastPrace na projektem w Androidzie ruszają pełną parą, a ja jak widać zapomniałem już o podstawach. Nic nie  stoi jednak na przeszkodzie aby te podstawy sobie przypomnieć. Dzisiaj opowiem krótko o “BroadcastReceiver”  . W Androidzie "Broadcast Receivers" służą do odbioru  wiadomości wysłanych  z innych aplikacji, bądź z samego systemu. Komunikaty te są czasami nazywane zdarzeniami.

WCF AwaitPisząc ostatnio wpis o WCF zauważałem ,że Visual Studio 2012 domyślnie generuje klasy proxy dla usługi w stylu “Task”. Ten styl wymaga użycia słów kluczowych async i await. 

Pomyślałem, dlaczego nie zrobić o tym wpisu i przy okazji same siebie przyzwyczaić do nowej składni języka C# 5.0.

StronicowanieW poprzednim wpisie udowodniłem ,że nawet na moim obecnym super sprzęcie i systemie 64-bitowym nie jestem wstanie przesłać 2.000.000 rekordów w WCF za jednym zamachem. W tym wpisie pokaże jak za pomocą “stronicowania” (paginacji) można rzeczywiście przesłać ,aż tyle informacji.

Oto drugi wpis z cyklu “WCF Big Large Data”.

DriverNie korzystam na co dzień   z Androida i nie jestem jego szczególnym fanem. Prawdopodobnie wynika to z modelu programistycznego, który mnie irytuje.Niestety ,ale od czasu do czasu muszę coś na te urządzenie napisać.

Do testowania aplikacji otrzymałem jakieś nieokreślony chiński model telefonu więc mnie nie dziwi ,że Windows domyślnie wie co to jest ,ale nie może nic z tym zrobić dalej.

Try Sending Wczoraj kolega zrzucił mi wyzwanie. Spytał mnie czy kiedyś przez WCF wysłałem 600.000 rekordów. Oczywiście tego nie robiłem, ponieważ dlaczego usługa typu REST dla telefonu Android powinna przekazywać 600.000 rekordów.

Wyzwanie jest wyzwaniem. Udowodnię kto z nas jest lepszym programistą raz na zawsze.

ToxicPogląd NR.1

Uwaga celem tego wpisu jest przedstawienie pewnego problemu. Wpis celowo jest napisany toksycznie.  Nie traktuj tego wpisu poważnie i nie staraj się wiązać mnie z nim, ponieważ ten wpis jest przeciwieństwem tego co bym chciał naprawdę robić i reprezentować. Jest to także chyba jedyny wpis, który zawiera przekleństwa.

Piąteczek !!!! Jak zawsze w piątek wszyscy odżywają po tygodniu szkoły, która niewiele uczy. Co będziesz robił w wolny weekend? Co ty robisz w wolnych chwilach?. Niektórzy wolny czas wykorzystują na przeglądanie obrazków w Internecie lub imprezowanie z ludźmi, dla których studia nie są żadną wymówką.

WCF CirWczoraj mój najlepszy przyjaciel przedstawił mi problem związany referencją cykliczną i WCF.

Mój kolega wie ,że pisałem wcześniej aplikacje w WCF i spodziewał się ,że znam już odpowiedź na to pytanie. Oczywiście tak nie było ,ale ponieważ mam większe doświadczenie w tej technologii znalezienie odpowiedzi nie trwało długo.

ChromeKiedyś moją ulubioną przeglądarką był FireFox głównie ze względu na dodatki jak “AdBlock” i “ReadItLater”(Pocket).

Chrome jednak powoli podbija moje serce swoimi dodatki. Oto lista 6 ciekawych dodatków do przeglądarki Chrome, które ułatwią tobie czytanie Internetu.

PANIC notDzisiaj zaczyna się wielki powrót do Androida. Od ostatniego projektu przesiadłem się na Windows 8 i zauważyłem ,że mam pewien problem z uruchomieniem emulatora Androida.

Wpis jest krótki ponieważ rozwiązanie jest proste.

StudneckiPrawdopodobnie ostatni egzamin jaki będę pisał zbliża się do mnie wielkimi krokami. Zapewne by się tak nie przejmował gdyby nie fakt ,że powstała pewna głupia sytuacja, która trochę mnie zdołowała. A sam egzamin jest z “algorytmów genetyczny, sieci neuronowych, analiza szeregów czasowych, liczb rozmytych oraz zagadnień transportowych plus  algorytm centroidów.  Nie mówiąc o tym ,że planowałem sobie ferie.

Zapewne powinien opisywać jaki to ja jestem wściekły i tak dalej. Jednak gniew do niczego nie prowadzi i nie ma on sensu z punktu widzenia biznesowego dlatego staram się zarządzać takim emocjami w bardziej cywilizowany sposób.

Postanowiłem zrobić wpis na blogu.

UpdatePanelUpdatePanel to kontrolka, która w prosty sposób odświeża zawartości strony bez jej całkowitego przeładowywania. Jej popularność polega na tym ,że nie wymaga ona od programisty znajomości JavaScriptu, Ajax czy jQuery.

Zawartość jest zmieniana w C# po stronie serwera.

Przyjaciele Przyjaciele. Według Japońskiej animacji jest to najsilniejsza siła we wszechświecie. Według kucyków “My Little Pony” przyjaźń to magia.

Istnieją jednak naukowe dowody na to jak twoi znajomi wpływają na ciebie oraz to jak ty wpływasz na nich. Na ostatnim zjeździe studencki wykładowca pokazał nam ciekawą prezentacje.

SessionJavaScript jest językiem klienckim i wywołuje się on po stronie przeglądarki.Naturalnie w JavaScript  nie możemy uzyskać dostępu do zmiennej sesyjnej  ASP.NET. Istnieją jednak pewne sposoby do uzyskania zmiennej sesyjnej i jej wyświetlenie po stronie JavaScript.

VirtualBoxHyper-V nie lubi strasznie konkurencji. Mając Windows 8 istnieją  spore problemy z zainstalowaniem jakichkolwiek innych maszyny wirtualnych. Patrz Virtual PC.

Jednym z nich jest VirtualBox. VirtualBox i Hyper-V nie mogą koegzystować równocześnie na tej samej maszynie. Tylko jednak usługa “hypervisor” może być uruchomiona na raz. Hyper-V działa cały czas natomiast VirtualBox działa tylko wtedy gdy próbujemy go uruchomić.

OfflineWpis ten jest wyjątkowo krótki. Jeżeli chcemy tymczasowo zablokować naszą witrynę tak aby użytkownik nie mógł uzyskać dostępu do jej zawartości nie musimy wcale dużo kombinować.

Nie potrzebujemy magicznego kodu w C# ,ani nie musimy modyfikować naszej strony w tym kierunku. Wiele osób odziwo o tym nie wie.Kosmita

Video IDW poprzedniej pracy kiedyś dawno temu dostałem takie zadanie. Polegało ono na stworzeniu kodu, który by wyciągał “id-ki” z filmików z Youtube.

Sprawa nie jest prosta ,a czas jaki dostałem na to zadanie był zdecydowanie za krótki.

Global JS

Język JavaScript do zarządzania zasięgiem zmiennych wykorzystuje funkcje. Zmienna zdefiniowana wewnątrz funkcji jest zmienną lokalną. Istnieje ona tylko wewnątrz funkcji.

Zmienna globalna natomiast jest zadeklarowana poza funkcją lub jest używana bez jakiejkolwiek deklaracji.

Środowisko JavaScript udostępnia obiekt globalny pod słowem kluczowym this ,pod warunkiem, że jest ono użyte poza funkcją lub bez żadnych deklaracji.

Każda zmienna globalna staje się właściwością obiektu globalnego.

W przeglądarkach istnieje właściwość “windows”, która zazwyczaj wskazuje na sam obiekt globalny.

LoopJS Strony internetowe są ładowane wiele razy przez wielu użytkowników równocześnie. Nasz kod JavaScript też.

Napisania złego kodu JavaScript nie zawsze skutkuje totalną katastrofą. Jednak jeśli lubisz być perfekcyjny to warto zapamiętać jak pętle w JavaScript działają.

C++ HelloW tym wpisie opiszę jak w kilkanaście sekund napisać prosty program Konsolowy w C++. Jak łatwo można się domyśleć ten program napisze napis “Hello World”.

Nie będzie to nic niesamowitego ,ale przynajmniej będziesz wiedział jak zacząć swoją przygodę z C++.

ModuleStworzenie modułu w DotNetNuke nie jest takie proste ,a ta umiejętność jest esencją DotNetNuke. Istnieje wiele tutorialów opisujących jak  stworzyć moduł na DotNetNuka. Są nawet gotowe przygotowane wzory do tworzenia modułów.

Problem jednak polega na tym ,że te wzory mają w sobie dużo gotowych bajerów. Te bajery wymagają stworzenia odpowiednich procedur w bazie danych i tak dalej.

Writer Windows Live Writer to najprawdopodobniej najlepszy program do pisania wpisów na różne silnik blogowe.

Dla mnie zawansowany użytkownika spodoba się jego interfejs gdyż jest on zbliżony do programu Word.

Analiza Parsowanie HTML-a  nie jest prostą sprawą. HTML nie ma jednolitej składni i nie może być potraktowany jak plik XML. Napisanie swojego parsera też nie jest łatwe. Analiza HTML przy użyciu wyrażeń regularnych jest jeszcze gorszym koszmarem.

Na szczęście jak to w programowaniu bywa ktoś już dużo wcześniej opracował rozwiązanie i się z nim podzielił. W tym wpisie omówię bibliotekę HTMLAgilityPack.

KampaniaJest to blog programistyczny dlatego możesz być zdziwiony co tutaj robi taki wpis.

Otóż w przeszłości pracowałem w jednej z najlepszych firm interaktywnych jako programista. Mimo iż byłem programistą mogłem popatrzeć jak najlepsi ludzie o e-marketingu robią swoje kampanie.

BlogEngineMinęło już 6 miesięcy  od czasu migracji mojego bloga z Bloggera  do BlogEngine.NET.

Migracja przebiegła pomyślnie.  A nowy blog powoli zaczyna zbierać tyle samo wyświetleń co stary. Niestety z powodów SEO stary blog wciąż musi istnieć ,ale co ja na to poradzę.

WłaściwościCzęść NR.3 Windows Forms nie oferuje takiej bogatej kompozycji jak WPF. Nie mówi tutaj o różnicy pomiędzy grafiką rastrową ,a grafiką wektorową. Przykładowo w Windows Form do przycisku możemy umieścić tylko tekst.

Natomiast do zawartości przycisku w WPF możemy umieścić każdy element. Musi on tylko dziedziczyć po odpowiednich klasach.

CV & You

CV. to najbardziej istotny dokument. To on jest kluczem do twojej kariery. W tym wpisie skoncentruję się na tym, co należy umieścić w tym dokumencie. Co powinieneś umieć i co trzeba napisać w CV, aby przejść etap rekrutacji jako programista. Nic tak nie pomaga w zrozumieniu otaczającego nas świata, jak jego dokładna analiza.

Create DbNa studiach inżynierski miałem okazje poznać system baz danych Oracle. W tamtym okresie znałem z poprzedniego semestr MySQL jak i przykładałem się do nauki T-SQL. Niestety ,ale Oracle wciąż mnie zaskoczył. Oracle zdecydowanie jest inny niż wszystkie system baz danych.

ODBC

ADO.NET potrafi się połączyć prawie z każdą bazą danych. Obecnie na laptopie zainstalowałem następujące systemy bazy danych: Oracle, PostgreSQL, MySQL. Postanowiłem każdą z nich przetestować do celów edukacyjnych.

WyłączenieKolejny wpis zafascynowany wynikami wyszukiwania użytkowników, którzy trafiają na tego bloga nie z powodów programistycznych.

Windows 8 nie ma przycisku start ,a co zatem idzie istnieje pewien problem z wyłączeniem nowego sprzętu, gdyż pewnych umiejętności trzeba nauczyć się na nowo.

WPF AsyncAsync i Await to całkiem nowy fantastyczny bajer, który został dodany do języka C# całkiem nie dawno. Można go używać w każdej aplikacji .NET-owej, chociaż  małe różnice w wykorzystaniu istnieją to sumie filozofia działania jest ta sama .

Ciężko jest wyjaśnić co dokładnie dzieje się pod spodem aplikacji,  która korzysta z tej funkcjonalności.

Ikony Niektórzy uważają ,że Visual Studio 2012 jest najpiękniejszą wersją Visual Studio. Jeśli jednak uważasz inaczej możesz to poprawić.

Czarno białe ikonki kojarzą mi się z Amigą i Windows 3.11. Problem  nie polega na tym ,że są brzydkie. Ich bladość szkodzi produktywności, ponieważ wszystkie ikony prawie wyglądają tak samo.

Istnieją dwa dodatki do Visual Studio, które potrafią rozwiązać ten problem niestety z skutkami ubocznymi .

TFS Wczoraj na swoim laptopie zainstalowałem sobie TFS-a. Trochę się za nim stęskniłem i pomyślałem sobie ,że może zrobię o nim wpis. Lubię to narzędzie i chciałby go używać w każdym projekcie. Być może kiedyś tym wpisem zachęcę początkujących programistów do jego użycia.

Wszystkie Kategorie