Posts

Binding yourself to high level design by details - irrevocably

Little over half a year ago I was present in an unprecedented blunder by a team leader. I saw how the fervor to succeed  made for a design mishap and how the same fervor made for a Mr. Know It All team leader. TL;DR detailed designs are for devs, not VPs or CTOs How to not design like a galley master and not be shackled like a rowing slave When one is asked to make the design document of a new development, one must be very very careful how flows are put on paper. These documents are binding and every word or terminology in them can and will haunt one for a long time. In order to try to minimize a possible mess here are some rules of thumb, gathered from my own experience Detailed documents glide up like migrating birds High level design documents may and will end up to the higher ranks of the corporate hierarchy. Be vague when describing functional parts. Do not put highly detailed implementation details in a high level design, otherwise once the details are stated and a VP of a

Public speaking - baby steps

Image
Sometime last year I decided that I too have something to say to the world. This is how this blog was born. I really feel it is time to take the next step and try my luck on public speaking. TL;DR this is not long hang in there.  Where to start There isn't really a recipe or a user guide on that one. One can start on meetups, try one's luck on a conference out of the blue... Just take your pick.  I am personally starting in my town of residence, giving a 12 minute session on cryptographic and virtual currencies to a non technical audience. These are people I see every day on my way to the country club, school, gym etc. This is as up close and personal as I could start.  Consider this... 12 minutes on such a subject and skip the technical jargon. This is quite a challenge! But as one tiny, great fictional green alien once said..  Where to go from there After that 12 minute challenge I plan to speak on friendlier ground. At work towards colleagues on a techn

Applying an internal forums system in the company culture - thoughts

Image
Long gone are the days where, as children, we used to tie a string to two boxes and shout messages at each other. Communication for some of us has changed from phones with a round dial to smartphones in a decade. Having worked in several places with a mobile based solution for groups of teams and dev departments forum/chat system as well as  a couple of places with an internal forum/social media system in place, I have seen more often than not that the adoption rate of such a system is diverse. Some like it, some not and some participate on a whim. And in some places it is obligatory. However what happens when you find yourself accustomed to such a system and arrive at a place where there was none, and one is being applied. How does an organization make the shift from coffee machine pow wows to an internal forum/social/chat board. TL;DR Success of such a forum depends on... oh quite a few factors It is not the medium, it is the content This is not a post on the different solu

How to port a .NET framework project to .NET Core including tests - A Guide

Image
So you want to port your project to .Net Core and don't know how? Are you reluctant to let go of your traditional .Net Framework targeting but want to have a taste of the new .Net buzz?  Is the information on the subject incomplete or too confusing (yes it usually is). Well you have come to the right place.  TL;DR This is guide. It will hopefully save you time. Rejoice. A tale of two frameworks (well actually 3)  I will make this one short and sweet and let this article tell the tale. I recommend to read this article  before you continue:  .NET Standard - Demystifying .NET Core and .NET Standard . To port or not to port It depends If this is your production code and there is no prospect to run it in a platform other than windows then maybe not.  If it is a huge complicated project then maybe not If it is your open source baby maybe yes If it is a new project and you see the benefit of it being cross platform maybe yes The considerations are many and it is up to you

It's been a hard year's... coding - Happy Holidays 2017!

Image
I have found myself lately learning all sorts of new things. I am mostly using this very known video courses web site. Every course is between 5-10 hours broken down to sections and clips. And this is when my mind goes blank  TL;DR sometimes you need to take a break. Take your brain to.. golf Regardless on whether you are coding, reading a technical book or taking an online course at some point or another you may find yourself being stuck on he same lines of code, or paragraph in a book, or rewinding the video of that course. This is it; your brain has had enough. You need to "F5" your brain cells. And this you do by either getting up and taking and stroll around the cubicles or get out in the open air and have your eyes look towards the horizon.. or.. whatever makes your brain disconnect for a while from the task at hand. So towards the new year and in the midst of the holiday season and the time resolutions are being made through the best intentions of being kep

On job hunts and recruiters

Image
Job hunting for a software developer is a full time job. One polishes and hones one's skills and CV, scours the placement advertising sites and goes out to the world to seek one's next challenge. Ever since the late '90s of the previous century some things have changed and some have not when it comes to looking for a new job. TL;DR tech recruiters have changed . Online presence and you Towards the end of the last century all we had was CVs and not so polished web sites to send our CVs to. Placement companies did their best to make their sites shiny and down the road they even had job posts online with an appropriate submit button to post your CV for a position. In time they also made agents for you to set your job preferences and have the agent send you a notification when a relevant search came up with results. And then somewhere in the second decade of the new century something changed. Your online presence became much more important, not only when looking for a j

Distributed monolith - a microservices nightmare

"... and then the interviewer coined an expression. I stared wide eyed as it hit me... microservices or not the monolith looms behind every feature... and it is a distributed monolith" TL ;DR not what y ou think read on. From monolith to microservices to monolith What is it that fascinates developers all over the world with microservices? Some say it is the separation of concerns into tiny services focused on one task. Some say it is the scaling capabilities the architecture provides. Others like the fact that there is no single point of failure. Or is there? I came across this video and article  by Ben Christensen about the perils of a miscoservice architecture to become a distributed monolith. And then it hit me. It is not only what is described in the article as signs and perils of a distributed monolith. Consider a set of microservices "perfectly" orchestrated. They each pass around different DTOs, even if duplicate ones, that can evolve in separate p