Posts

GitLab + Octopus CLI + Docker in Docker (image octopusdeploy/octo) Octopus has 4 main steps that you should familiarize yourself with:  - pack (creates package from source directory) - push (pushes package to Octopus server) - create-release (Octopus release contain one or more packages) - deploy-release (Tells octopus to deploy release to target environments) Here is an example of the .gitlab-ci.yml file defined in the GitLab project that works with octopusdeploy/octo docker image. variables: VERSION: "1.0.$CI_PIPELINE_IID" DOCKER_TLS_CERTDIR: "/certs" stages: #- test #- build #- release - create-release - deploy-release create-release: image: docker:19.03.12 services: - docker:19.03.12-dind stage: create-release script: - echo $(pwd) - docker run --rm octopusdeploy/octo version - docker run --rm -v $(pwd):/src octopusdeploy/octo pack --id="$OCTOPUS_PACKAGE_NAME" --version="$VERSION" --basePath="release/" - ...

Thoughts on Scrum & UI design

Yesterday I had a chance to work with UX experts (User expirience specialists, or siply the UI guys). We are developing our project by using scrum. As you probably know scrum is designed to develop application in iterative way. So that means every X (usually 2 or 3 weeks) scrum team is ready with a product which is potentially shippable. One drawback of agile methodologies is that no one knows how the final product will look like.  Typically the UI guys look at the application and ask a few simple questions: 1.      Who is the main actor of the application? 2.      What the actor usually do (90% of their time)? 3.      What is the most used part of system? 4.      And how one thing is related to another. So the goal of these questions is to find out the   key usage scenarios .  I was impressed then UI guys presented their vision (wireframes) on how application can look like. We a...

Book Review: Managing Humans - biting and humorous tales of a software engineering manager

Image
I have read this book on my Kindle device. I must say that you will get a lot of enjoyment while reading this book. The book is written in informal, personal, sometimes too informal style and it is extremely easy to read. The book covers personal thoughts and experience of the author. I think is is very useful, as people tend to learn more from the personalities instead of some abstract facts or books. I have used notes & marks on my reading device and I would like to present  some quotes/thoughts which I consider every manager or a software developer must have: 1. Do not give orders. Then someone gives me an order, I hear "Shut up, get moving, I don't care what you think". 2. I know it feels great to make that snap decision and show the team you're the guy in charge, but was it the right decision or was it ego? 3. "With great power comes great responsibility". As a manager you are responsible for making great decisions and the best way to d...

Book Review: The Art of Unit Testing: With Examples in .Net

Image
This is interesting book and it was written by Roy Osherove, he is chief architect on Typemock Isolator product. Despite that fact the book is very balanced (I didn't expected that, but it really is) and it covers probably all  open-source testing frameworks available up to the date. It is very valuable source of information with regard to software development. In particular I like how each library is described, compared and strong/weak points are presented. So this is a place there all the best practices are presented in one place. I should not say that the book also describes the reasons why do we need to do unit testing, how to do it correctly, common mistakes and some recommendations on how to apply TDD style in your enterprise. If you are new to such concepts as SOLID, IoC frameworks, Mocking - here you can find great examples of these techniques. To sum up, I think this book deserves 4.5/5. It is not very thick, so you'll be able to read it in a couple of days and ...

Book Review: Architecting Applications for the Enterprise

Image
"The pessimist complains about the wind; the optimist expects it to change; the realist adjusts the sails" - William Arthur Ward I will write a short summary about the book I have read. To start with I must say that I am very deliberate about the books I buy. You will spend a lot of time on the book so it is crucial to choose it right. So, what are the reasons for having a book like this? I have a few mantras that I use in my everyday work when I am researching or architect solutions. Here are them: 1. Get only information that has practical value 2. Information should be up to date 3. Use the tools from the well-known vendors Taking that into account I had chosen this particular book because of 1. It has been written by software developers 2. It covers up to date information 3. It is very practical - it covers the tools and technologies I am working with 4. Price is nice (~$29) It was a pleasure to read the book. The book introduces you to the most wid...

Amazon Kindle 3 (6'' Graphite) Tips

A week ago my Kindle has arrived. To my surprise it was blazingly fast. Something like 4-6 days from central US to Ukraine. I would like to share a couple of tips. First of all, I must admit that the device is great. It is probably the slimmest E-Book reader you'll find at the moment. Is it is suitable for reading technical books(like software development books) - probably not. In my humble opinion the screen is too small to read technical books with graphics. But it is more than suitable for non-technical books! I have compared PocketBook 301 with Kindle 3 and despite the fact that PocketBook has much reacher software it is more expensive than Kindle 3. And most importantly Kindle 3 really has better screen and text-to-speech is simply impressive. Unfortunately Kindle 3 software is not as robust as PocketBook one, therefore you'll need a couple of tips. Ok, so the tips. The device can be used as flash card. IE you can attach it to the PC without ...

UML Sequence Diagram and Visual Studio

Image
In this article I will introduce you to the UML Sequence Diagrams. UML, as you now stands for Unified Modeling Language. So why sequence diagrams can be useful? Recently I have been working on legacy project. And sequence diagram can really help you to figure out the application calling sequence. Let's take this piece of code. public partial class About : System.Web.UI. Page     {         protected void Page_Load( object sender, EventArgs e)         {             var authorService = new AuthorService ();             this .Title = authorService.GetServerDateTime().ToString();         }     } I believe that one picture is better that 100 words. So here is the same code but in UML Sequence Digram. Simple UML Seque...