Project Rider – dostęp do Early Builds

Podczas jednej z sesji na styczniowej konferencji NDC London, Hadi Hariri z JetBrains ogłosił światu, że jego firma, znana w środowisku .NET chociażby z ReSharpera, pracuje nad nowym produktem. Project Rider, bo taka jest jego nazwa, to multiplatformowe środowisko IDE dla programistów .NET.

Na tą chwilę nie jest dostępna do pobrania nawet wersja alpha, gdyż produkt ten jest w fazie mocnego developmentu.

JetBrains daje możliwość uzyskania dostępu do tzw. Early Builds. Wystarczy jedynie zarejestrować się na stronie https://www.jetbrains.com/rider/.

Tych z was, którzy do tej pory nie słyszeli o Project Rider, odsyłam do wpisu na firmowym blogu JetBrains, gdzie znaleźć można min. zapis video z sesji, na której po raz pierwszy zaprezentowano Project Rider.

https://blog.jetbrains.com/dotnet/2016/01/13/project-rider-a-csharp-ide/

 

Read More

Opinia po szkoleniu Developing Microsoft Azure Solutions

W ostatnim czasie miałem okazję uczestniczyć w szkoleniu Developing Microsoft Azure Solutions. Szkolenie odbyło się we wrocławskim oddziale jednej ze znanych firm szkoleniowych w Polsce. Chciałbym się z Wami podzielić swoimi przemyśleniami na temat tego szkolenia.

Na początek kilka negatywnych uwag dotyczących części praktycznej:

  • Pierwszym zadaniem była konfiguracja środowiska pracy, a konkretnie instalacja Visual Studio 2015 Community na wirtualnej maszynie w Azure. Straciliśmy na to sporo cennego czasu, a i tak kodowanie na zdalnej maszynie okazało się niepraktyczne (min. przez opóźnienia na sieci). Ostatecznie każdy z uczestników szybko wyciągnął z teczki swojego prywatnego (służbowego) laptopa. Moim zdaniem organizator powinien dostarczyć środowisko niezbędne do przeprowadzenia szkolenia out-of-the-box, tym bardziej, że na rynku dostępne są narzędzia wprost stworzone do tego typu przypadków (Vagrant)
  • Błędy w solucji. Aplikacja, która rozwijaliśmy w trakcie szkolenia nie działała w środowisku deweloperskim z Visual Studio 2015 Community Edition, a rzekomo pod takie środowisko była przygotowana. Irytujące stało się, przed rozpoczęciu każdego kolejnego zadania, poprawianie tych samych błędów np. connection string do LocalDB (w SQL Server Express 2014 mamy (localdb)\MSSQLLocalDB zamiast (localdb)\v11.0), konsolidacja wersji paczek NuGet czy ustawianie CultureInfo.InvariantCulture w generatorze danych testowych (osobiście do generowania danych testowych polecam AutoFixture)
  • W kodzie aplikacji, którą rozwijaliśmy, można znaleźć kilka kontrowersyjnych praktyk, jak np. nawiązywanie połączenia i wysyłanie wiadomości do usługi ServiceBus w klasie ViewModelu.
  • Moim zdaniem bardziej efektywna była by praca na prostszej aplikacji, ale w zamian skupienie się na bardziej zaawansowanych możliwościach, jakie dana usługa oferuje. W przypadku kolejek, aż prosiło się o jakiegoś resenda w przypadku wystąpienia wyjątku, ustawienie maksymalnego czasu wykonania czy liczby powtórzeń w przypadku niepowodzenia.

Generalnie jak na laboratoria przygotowane przez Microsoft, zabrakło mi trochę… jakości.

Jakby ktoś miał ochotę zapoznać się z pełnym zakresem, odsyłam na GitHuba:

https://github.com/MicrosoftLearning/20532-DevelopingMicrosoftAzureSolutions/tree/master/Instructions

To teraz pora na kilka plusów:

  • Szkolenie nadaje się jako jako wprowadzenie dla osób, które nigdy wcześniej nie miały do czynienia z Microsoft Azure. Omawiane są wszystkie najważniejsze usługi, choć dość ogólnie.
  • Poznałem Azure Compute Emulator i Azure Storage Emulator, które pozwalają w wygodny sposób tworzyć i testować rozwiązania korzystające z Blobów, Tabel czy Cloud Service.
  • Po pięciu dniach klikania człowiek oswoił się portalem do zarządzania, który moim zdaniem jest użyteczny, ale trzeba się przyzwyczaić.
  • Dowiązania symboliczne w Windows! Tak tak, tyle lat żyłem w przekonaniu, że istnieją tylko w systemach Unix-owych. Tymczasem także w Windows możemy utworzyć dowiązanie poleceniem mklink.
  • Szkolenie to czas, w którym życie programistyczne biegnie nieco wolniej. W przerwach była więc okazja na dłuższe rozmowy z chłopakami i wymianę poglądów nie tylko na tematy techniczne. Bardzo sobie cenię tego typu rozmowy.
  • Miałem okazje kilka razy skorzystać z dokumentacji i przyznam, że jest na prawdę świetna! Zawiera dużo przykładów, w rożnych językach programowania.

I na koniec jeszcze jedno spostrzeżenie. Azure jest w fazie mocnego rozwoju. Cześć usług jest dostępna w nowym portalu, a cześć tylko w starym. Czasem brakuje spójności w interfejsie lub nazewnictwie. Zmiany wprowadzane są stopniowo, najszybciej pojawiają się w PowerShell, a dopiero potem w Portalu. Nie warto się przywiązywać do pewnych nazw czy planów, bo jutro może ich po prostu nie być.

Na zakończenie szkolenia każdy z uczestników został poproszony o wypełnienie ankiety ewaluacyjnej. Na pytanie czy polecił bym szkolenie innym – moja odpowiedź brzmiała – tak, ale tylko dla osób, które wcześniej nie miały żadnej styczności z Microsoft Azure.

Read More