TeamCity has really good support for running PowerShell, however, it can cause some troubles if it’s not configured correctly. After coming across the same mistakes and issues over and over again, I finally decided to write this article that shows how to use PowerShell properly, together with TeamCity.
Strona głównaUżytkownik
https://chrisseroka.wordpress.com/ | użytkownik
W dokumentacji Microsoft przeczytamy, że Azure Service Fabric to platforma wspomagająca tworzenie, deployment oraz zarządzanie skalowalnymi i niezawodnymi mikroserwisami. Definicja jest nieco zawiła i mało obrazowa dla osób które wcześniej nie pracowały z podobnym rozwiązaniem. Co to właściwie oznacza? No cóż, zacznijmy od końca, czyli od pojęć “skalowalny” i “niezawodny”.
StaleElementReferenceException can be definitely classified as the number 1 nightmare of people who write automated tests with Selenium framework. This exception occurs when given web element with which we are trying to interact is no longer present in DOM tree. This can be caused by multiple factors...
When it comes to writing maintainable UI test there always appears the term of Page Object Pattern. For those who are not familiar with Page Object, it’s the approach to building UI test that focuses on creating high-level abstraction over low-level details related to interaction with a tested application. This testing interface encapsulates all the noise related to technology and allows to clearly express intention of test cases. This concept is very well described...
Sztuka programowania 2286 dni, 18 godzin, 17 minut temu 83 źrodło rozwiń
W standardowym Azure AppService mieliśmy sekcję “Application settings” gdzie mogliśmy przeciążyć wszystkie ustawienia z pliku appsettings.json a następnie zrestartować aplikację. W Azure Service Fabric niestety nie ma takiego ekranu do zarządzania. Ba! Nie można nawet zrestartować aplikacji. W artykule postaram się przedstawić rozwiązanie tego problemu.
One of my ideas for increasing productivity of my team with ELK was to integrate it with Microsoft Teams. I wanted to shorten the feedback loop between error occurrence and diagnosis phase by notifying development team about the issue right after of the occurrence through the dedicated Microsoft Teams Channel. In this blog post, I've described how to easily implement this integration.
Jest bug! 😦 Hacki się mszczą, ale teraz musimy dostarczyć paczkę Kolejny tydzień, kolejny ten sam bug Bądź EXPLICIT
Sztuka programowania 2360 dni, 19 godzin, 15 minut temu 159 źrodło rozwiń
Recently I’ve had occasion to work much more than usually with NHibernate. This is a really great ORM and a very mature project, but when you make a mistake it informs you about that in a very generic way (in most cases). The problem that hunted me for a few days was the issue with field length constrains (which was caused by insufficient and inconsistent REST API validation). When there was a discrepancy between declared field length in NHibernate mapping and validation logic (or the vali...
Bazy danych i XML 2390 dni, 19 godzin, 8 minut temu 52 źrodło rozwiń
Programiści .NET od zamierzchłych czasów używali podmiany wersji w pliku AssemblyInfo.cs do uaktualnienia wersji tworzonej aplikacji. To było oczywiste jak stawianie średnika na końcu linii. Jednak czasy się zmieniają, mamy nowe CLI i warto wiedzieć, że można łatwo zmienić numer wersji aplikacji bez dodatkowych narzędzi ani skryptów.
Sztuka programowania 2455 dni, 4 godziny, 5 minut temu 303 źrodło rozwiń
Some time ago I was trying to find a good extension to Chrome that would let me go to recent tab same as for example R# does it with files (or Alt+Tab for Windows). The outcome was rather poor so I decided to write my own extension (it’s called Omnicomplete). It does even more and is available on GitHub. Now I use it dozens of times a day and I can recommend it wholeheartedly.
Quite often when you play with dependency updates or project configuration it’s needed to clean the solution. Especially if other teammates claim it works on their machine (or even on build server). Unfortunately neither “dotnet clean” nor “Clean” command in Visual Studio work as expected and sometimes leave some leftover. So here’s the trick that I learned from one of my colleagues...
Wersją roboczą nazywam pliki na którymi pracujemy, to te gotowe do zmiany. Zmiana gałęzi, zmiana HEAD naszego repozytorium powoduje również zmianę wersji roboczej. Zazwyczaj ta zmiana jest bardzo szybka, ponieważ git jest bardzo szybki, ale… im większe repozytorium i większe zmiany między wersjami, to czas potrzebny na przełączanie rośnie. Czasochłoność przełączania powiększy także IDE, bo zmiana plików projektowych pociągnie za sobą ekran konieczności przeład...
Czasem robiąc code review rodzą się wątpliwości, czy dany kawałek kodu w ogóle działa albo czy przypadkiem nie psuje reszty systemu. Najlepiej w takiej sytuacji przed zamknięciem pull requesta po prostu to przetestować, ale do tego trzeba ściągnąć najnowszą wersję kodu, zbudować i uruchomić projekt a wcześniej odłożyć swoje zmiany na bok. Sam wiem po sobie, że często z tego rezygnowałem. Można jednak rozszerzyć swój proces CI/CD aby build server sam robił deploy każdego pull request’u na odrębne środowisko.
Sztuka programowania 2480 dni, 17 godzin, 28 minut temu 67 źrodło rozwiń
I’ve recently watched a pretty decent tutorial about DSC on Microsoft Virtual Academy. I’m not a huge fan of video tutorials because it always takes more time to watch them than read a book/blog post (you can hack it by increasing video speed and save yourself a couple of minutes) but sometimes there is additional beneficial side effect - the presenter can show you (accidentally or not) some tips and tricks not strictly related to the core subject of the video. This post is an attempt of summarizing tric...
Jak każdy programista, masz na pewno długą listę projektów jakie chciałbyś zrobić, prawda? Cześć z tych projektów być może nawet zrealizowałeś i świetnie się przy tym bawiłeś. Jednak ktoś musi naprawiać błędy w aplikacji oraz implementować nowe funkcjonalności. W tym przypadku jesteś to Ty, w końcu to twoje dzieło. Radość z tworzenia może szybko zamienić się na żmudną pracę jeśli projekt przestanie Cię interesować.
Command linePosted on by chrisseroka in Command line Sometimes free disk space shrinks and you need to figure out the reason. Whenever it happened to me I remember downloading some tool to calculate size of subfolders and detect the weightest one. I felt that there must be a way of doing that without third-party tools but it lived a long life on my TODO list (not that obvious to google).
I’ve recently written an article about managing TODOs in the codebase with TODOExplorer. I’ve also proposed an idea of introducing code snippet for TODOs which helps to keep all TODOs in predefined format as well as provides more information about delayed task (author, receiver, date, issue tracker id). This article was a result of a few discussions with my programmer-colleagues and I hoped that that idea of TODOs snippet was worth sharing (I’ve been using it in my project for a while). After publishing ...
Sztuka programowania 2513 dni, 18 godzin, 50 minut temu 100 źrodło rozwiń
Some people used to say that a good programmer doesn’t need to debug his own code. However, sometimes we have a problem with third party libraries usage, for example: there is insufficient documentation or the module contains some bugs. Visual Studio has excellent debugging toolset but this is totally useless without symbols and sources (and this is often the case with third party libraries). Thanks to Reshaper decompiler this shouldn’t be a problem anymore. Before we start debugging we should make so...
It’s a good practice to make all things done at the first approach. But in the real world it’s ot always possible - for example we need to ask customer for clarification and it will take some time, or worst - we don’t have enough time right now to implement things in the right way. In order to adress this issue, a TODO was invented to mark all those places in code requiring additional work. But the main disadvantage of TODO is that we mark code with it, commit it and forget about it. Sometimes somebody a...
Zawsze przychodzi ten moment gdy trzeba rozwiązać buga na produkcji i jedyne co mamy to logi aplikacji. Okazuje się oczywiście, że nie ma wszystkich informacji w tych logach. Nie ma nawet całkiem podstawowych informacji...
Sztuka programowania 2513 dni, 18 godzin, 50 minut temu 146 źrodło rozwiń