Get Noticed 2017 summary

Get Noticed 2017 summary

This is the final post for Get Noticed 2017 competition, so it’s time for some summary 🙂 What was good? I finished it 🙂 I managed to find a time and I worked hard. During the competition I had problems, similar to ones that can be found in all IT projects – stuff doesn’t work as I think it should, other things took longer that I expected they’ll take. I had problems sticking to the schedule – many times I post only…

Read More Read More

Programmist cartoons

Programmist cartoons

When working long in the same field, people tend to make fun of it and create jokes that make fun of broken stuff that cannot be fixed. If you work for some time in IT, you surely will be sooner or later familiar with most of them 🙂 So to brighter a little day when nothing is working I wanted to create an additional plugin for TeamScreen where you could see some funny images. Unfortunately I run out of time,…

Read More Read More

TeamScreen – general progress update #3

TeamScreen – general progress update #3

This will be the shortest post related to TeamScreen and Get Noticed competition. Recently I had a very little time for developing it and more importantly, I’m a little bit tired of it. I need a little break and with competition finishing in few days I’ll certainly have that 🙂 I did quite a lot stuff outside of work, you can check it out here and I think a break is very important when you’re doing them. We are not robots,…

Read More Read More

Accessing GitHub using REST and C#

Accessing GitHub using REST and C#

Some time ago I created a GitStat app and described it in this post. To do that I used the libgit2sharp library, which I also planned to use for git plugin for TeamScreen. Unfortunately, at the time I’m writing this post, there isn’t the libgit2sharp version for .NET Core. I needed alternate approach so I decided to go for accessing GitHub repository via its REST API. I wanted to have general solution, but it’s just not possible at this time 🙁…

Read More Read More

About simplicity

About simplicity

As software developers, we have a lot of rules – SOLID, DRY, YAGNI. They help us to create a source code that is easy to maintain. There is one more rule that in my opinion is much more important than all others – KISS – Keep It Simple Stupid. Why is it so important? Few examples: Architecture During years of work as a software developer, I came in contact with many systems. Often the architect/tech leader imagine a great architecture. The problem…

Read More Read More

Creating ProjectTeam plugin for TeamScreen

Creating ProjectTeam plugin for TeamScreen

As I mentioned in the first post of this series, when you are going through IT company, TV screens with a list of running/failing builds aren’t an uncommon thing. Depending on the size of the company you can pass many of them, but all you see it’s just a set of different words, you have not a clue what actually means. You pass these people every day and very often all you know about them are just those build names….

Read More Read More

Creating health check dashboard using Warden

Creating health check dashboard using Warden

Hello! Today’s post for Get Noticed competition will be about creating a dynamic dashboard for health checks. The goal of this is to have one place when you can check if every system/environment you maintain actually works. To do this I’m gonna use Warden, which is a library created especially for this task, by the last year winner of Get Noticed competition, Piotr Gankiewicz. Warden support a lot of different types of checks, can work in real-time and even send…

Read More Read More

TeamScreen – general progress update #2

TeamScreen – general progress update #2

Last three post were about creating a general architecture for TeamScreen application – handling views, settings, and plugins itself. Today’s post will be about polishing it. First screens showing how TeamScreen looks now: TeamCity plugin: JIRA plugin: Settings screen with TeamCity tab: In my opinion is definitely an improvement from how it looked before. I changed the bootstrap theme to use something more darkly by using SuperHero theme from Bootswatch site. Other minor things regarding UI: Created favicon using great generator I…

Read More Read More

Plugin architecture with ASP.NET Core and Autofac

Plugin architecture with ASP.NET Core and Autofac

The plugin architecture is definitely the trickiest part of TeamScreen yet. I encountered many problems during its creation and needed to compromise on few things. Treat this article more like proof of concept rather than the fully-mature solution – it works, but I believe it could be done better. If you have better idea, please share it in comments – I’m always open to constructive feedback 🙂 The requirements for the architecture are – the plugin itself is packed in a DLL file…

Read More Read More

Creating mechanism to save dynamic settings locally with ASP.NET Core, Entity Framework Core and SQLite

Creating mechanism to save dynamic settings locally with ASP.NET Core, Entity Framework Core and SQLite

Next step in TeamScreen development is settings screen. In time I plan to abandon solution with providing credentials to 3rd party services using configuration files and moved them to more user-friendly UI. In today’s post, I’ll start from saving only one setting – an interval between plugin change. Saving other settings will come after the creation of plugin architecture. The first thing we need to do is to remove existing reference to Microsoft.EntityFrameworkCore.SqlServer – it’s added by default when creating…

Read More Read More