Skip to main content

Posts

Showing posts from March, 2018

Fundamental Books of a Software Engineer (version 2018)

More then six years ago I wrote a blog post about fundamental books that any software engineer (developer) should read. Now it is an excellent time to update this list with new entries. There are 5 different categories of books, that represent the recommended path. For example, you start with Coding books, after that, you read books about Programming, Design and so on. There are some books about C++ that I recommend not because you shall know C++, only because the concepts that you can learn from it. Coding Writing solid code Code complete Programming Pearls, more programming pearls(recommended) [NEW] Introduction to Algorithms Programming Refactoring (M. Fowler) Pragmatic Programmer Clean code [NEW] Software Engineering: A Practitioner's Approach [NEW] The Mythical Man-Month [NEW] The Art of Computer Programming Design Applying UML and Patterns (GRASP patterns) C++ coding standards (Sutter, Alexandrescu) The C++ programming language (Stroustrup, P

[Post Event] ITCamp Community Event (Timisoara) | March 17, 2018

On March 17th we had another ITCamp Community Event in Timisoara. This event took place Hotel Timisoara and convinced more than 50 IT specialists, to wake up at 08:00 AM Saturday morning and join the event. Multiple topics were presented and discussed during the event, from Azure Platform and Coco Framework (Microsoft Blockchain framework) to Docker and Power BI. From the sessions, it is clear that Azure together microservices are here to stay and Blockchain technology is becoming part of our life. At this event, I talked about Coco Framework and Blockchain inside Microsoft Azure. This new technology is already inside Azure and is offering an environment where you can run any blockchain solution on top of Azure. You can find the artifacts from my session. Title : Azure Blockchain Service – Myth or Reality Abstract : This is a session dedicated to the blockchain. We talk about mining inside a cloud provider and why blockchain is so attractive to any company nowadays. In the seco

Azure VM Availability SLA

This post is focusing on the availability SLA of Azure Virtual Machines. You might think that there is not so much to say about it, even so, the reality is different. Let me ask you a simple question when you talk about availability and Azure Virtual Machines: When do you have 99.9% availability? When do you have 99.95% availability? Case 1: Single VM When there is only one instance of VM, the SLA guaranty us minimum 99.9% availability. There are no actions that you can take to improve this value. Remember that this is the minimum value that is guaranteed. This value means that the real value can be higher than 99.9%. Case 2: Two or more VMs in the same Availability Set When there are two or more VMs in the same Availability Set, you have the availability SLA to 99.95%. This value means that: The availability of the two or more VMs combined is at least 99.95%.  On the other hand, this does not mean that for each VM the availability is 99.95%. Per node the availability can

Adding extra- complexity to a solution by using too many SaaS of a cloud provider

Context When you embrace Azure or another cloud provider, you’ll discover an environment that offers out of the box a high variety of options for each type of action that you need. Let us take computation as an example. If on-premises you would have the option only on top of VMs, where on top of them you would be able to put any other solution that you would like, when you are on Azure, things are looking different. Beside the classical VMs, on Microsoft Azure you have: Scale Sets, App Services, Functions, AKS (Azure Container Services), Container Instances, Batch, Service Fabric and other Cloud Services (classical Web and Worker role for example). Problem Having so many options, selecting the best service for your needs might be tricky. It is not about taking the wrong decision; it is more about selecting the right service for your needs, taking into account your context and expectations. This is one of the most challenges steps during the initial phases of the project that can