Jak pisałem poprzednio o problemie braku milisekund w dacie. Wspomniałem o tym, że tabele posiadają kolumnę informującą o ostatniej zmianie, która nastąpiła na rekordzie. Można się domyślić, że ręczne ustawianie tej wartości było by mozolne oraz podatne na błędy ( w szczególności – zapomnienie o wstawieniu nowej wartości)
Bazy danych i XML 1648 dni, 23 godziny, 50 minut temu 158 źrodło rozwiń
Na swoich stronach często udostępniamy możliwość dodawania komentarzy, bo chcielibyśmy by nasza aplikacja/witryna jak najlepiej spełniała oczekiwania naszych użytkowników. W jaki sposób możemy wyłapać komentarze o dobrym/złym wydźwięku by wiedzieć jak modyfikować naszą aplikację? Przecież nie będziemy czytali wszystkich komentarzy, jeżeli ich liczba idzie w setki/tysiące.. właśnie o tym jest tenże post. Zachęcam do lektury :)
Last week I had a pleasure to attend and present the Azure Portal insights at the Visual Studio Live conference in Redmond. Throughout the conference, 5 sessions were being presented simultaneously, and 1 session was being streamed live. My session was chosen to be streamed live, and is now available on channel9!
In case you’re not familiar with the Warden project that I’ve been working for the last few months, I strongly recommend you to take a look, as you may find this tool especially useful for monitoring your infrastructure and resources. So what is the Warden Spawn? It’s a brand new repository within the Warden Stack that will let you configure the instance of the Warden monitoring application using the human readable configuration files – and that’s just the beginning!
Automapper jest bardzo interesującą biblioteką. Może ona służyć do „przepisywania” danych (object-object).
Sztuka programowania 1651 dni, 7 minut temu 288 źrodło rozwiń
So far we learned about the whole concept of Command Query Responsibility Segregation (CQRS) and Event Sourcing. We also implemented domain objects which Aggregate consists of, and we expressed user’s intentions using Commands executed by Command Handlers. Today we’ll discover the role of events, and more importantly, we’ll introduce Event Sourcing to our Awesome Calendar project. One more thing. As I mentioned in one of the previous parts, I’m currently working on this project wich means that some code ...
Architektura 1651 dni, 7 minut temu 143 źrodło rozwiń
W jakich sytuacjach powinniśmy budować portal internetowy od podstaw, a kiedy skorzystać z gotowego rozwiązania? Poniżej znajdziecie listę przypadków w których (moim skromnym zdaniem) powinniśmy zdecydować się na jeden lub drugi scenariusz. Mam nadzieję, że okażą się one przydatne dla kogoś, kto być może stoi przed podobną decyzją w niedalekiej przyszłości
Architektura 1651 dni, 7 minut temu 158 źrodło rozwiń
Behavior Driven Development – dosyć niedawno nawet słyszałem, że to Test Driven Development Done Right 🙂 Co, jak, czemu i po co? Czytaj by się dowiedzieć jak ja to widzę :)
Sztuka programowania 1653 dni, 23 godziny, 15 minut temu 221 źrodło rozwiń
We have many pdf libraries that we can use, but none of them are perfect and all of them have some advantages and disadvantages. Here is my little experience with generating PDF file in .net framework with generating reports both, in a browser on demand and large numbers in bash/console by night. Crystal_Reports - big, commercial library develop by big company Pros: - can be really fast Co...
Jeśli API, z którego musisz skorzystać dostarcza Ci dane w 'brzydkiej' formie, zmapuj je. Dodaj warstwę abstrakcji i ukryj złe struktury.
Sztuka programowania 1653 dni, 23 godziny, 15 minut temu 158 źrodło rozwiń
Reading time ~2 minutes In the previous post I’ve wrote about why I think the ability to schedule tasks for later execution is a fundamental technical feature, but also a must have from a business point of view. We are passed the whys, so lets get to the hows. The answer is simple - Hangfire. I’ve wrote about it here, here and here, so yeah, I like it. Hangfire is an amazing library. It has proved itself in my pet project (cookit.pl) and in a huge ERP system that we are building at work, where we repla...
Architektura 1653 dni, 23 godziny, 15 minut temu 150 źrodło rozwiń
Kolejne zadanie rekrutacyjne na tapecie. Autor przedstawia kilka możliwych rozwiązań, wraz z analiza wad i zalet każdego z rozwiązań.
Sztuka programowania 1653 dni, 23 godziny, 15 minut temu 276 źrodło rozwiń
VS automatycznie transpiluje pliki *.ts do *.js. W wielu przypadkach, lepiej robić to przy pomocy innych narzędzi (gulp) - wówczas warto wyłączyć tą funkcję w Visual Studio.
Tym razem omówiona ciekawa właściwość języka python. Na przykładzie zadania rekrutacyjnego
Sztuka programowania 1653 dni, 23 godziny, 15 minut temu 201 źrodło rozwiń
Dzisiaj kolejna przydatna konstrukcja LESS. Często zachodzi potrzeba stworzenia klasy na podstawie kilku innych klas. Załóżmy, że mamy: .class1 { color:red; } .class2 { font-size:10px; } .finalClass { color:red; font-size:10px; border-color:blue; } FinalClass składa się zarówno z class1 jak i class2. Ponadto rozszerza możliwości o border-color. Za pomocą mixin możemy kod skrócić do: .class1 { color:red; } .class2 { font-siz...
Xamarin.Forms nie jest lekiem na całe zło i w praktyce nie da się za pomocą tej technologii zrobić w pełni natywnego efektu, stosując dostępne standardowo kontrolki. Idea tego rozwiązania jest inna. Do worka zwanego Xamarin.Forms trafiają takie elementy, które da się jakoś uwspólnić pomiędzy obsługiwanymi systemami. Innymi słowy po użyciu określonej kontrolki i tak w rzeczywistości zostanie wykorzystana ta natywna, która w danym systemie jest najbardziej zbliżona funkcjonalnie i wizualnie. I tak np. Form...
Sztuka programowania 1654 dni, 12 godzin, 13 minut temu 45 źrodło rozwiń
Krok po kroku opis rozwiązania zadania rekrutacyjnego. Zaczynamy od rozwiązania najprostszego i stopniowo je poprawiamy. Przykłady w c++
Sztuka programowania 1654 dni, 18 godzin, 40 minut temu 414 źrodło rozwiń
Mniej więcej 3 miesiące temu zainteresowałem się biblioteką SignalR i bardzo szybko stała się ona jednym z moich ulubionych narzędzi. Z mojego polecenia skorzystało z niej kilka osób i każdy chwalił ją za bardzo szybkie widoczne efekty i banalną implementację. O czym nie wspomniałem w poprzednich postach, to połączenie SignalR z jednym z najpopularniejszych obecnie frameworków JavaScriptowych - AngularJS.
Zarys API kart bezstykowych z rodziny MIFARE, oraz przykład jak sie z nimi komunikować przy pomocy czytnika ACR122.
There are many ways to perform a validation of our models living within the system. Whether there’s an incoming request from the user who would like to create an account or there’s a need to ensure about the correct amount of money in a bank transaction, the validation process should always (I really mean that) take place. In today’s post, I’d like to present one of the possible solutions that might help you validate your entities.
Sztuka programowania 1656 dni, 17 godzin, 19 minut temu 162 źrodło rozwiń