Posts

Showing posts from October, 2018

Finding your service boundaries - a practical guide (@adamralph, #ndc2018)

Image
A lot of "technical issues" just fall away, once you restructure your service boundaries. Create IDs before creating the object, so that you can communicate it downstream. You can get rich business data from "leftover" data, such as incomplete orders (so that they can improve the purchase process, for example). Consider services cutting through technical boundaries, aligning them with business needs. Consider naming your technical things 'systems'. Adam argues for taking components for multiple services, deploying them together as a technical system. Find service boundaries by looking at transaction scopes - do we update things at the same time, then they belong together. Anti-requirements. Don't look at entity terms, look at interactions. Look at singular fields and Use cases / interactions. If you're thinking "x has a .. ", you are probably having an entity mindset.  Avoid naming things until much later, or name t

Beyond the usual suspects, emerging Cognitive Services

Image
Henk Boelman , NDC 2018 Cognitive services makes it easier for me to make smart apps without writing a bunch of code and understanding machine learning. It's a great way to kickstart and prototype your projects, since a lot of stuff is done for you. If it pays off, you can invest time and money into training your own model. In the  Cognitive Services Labs web site , there are up and coming services. Check 'em out! There's a content moderator service - image, text and video. This spits out recommendations - "you might want to review this", provides you with auto-corrected text and languge information. It can extract texts from images, classify the adult content and point out where faces are. You can hook up the computer vision api to this api to get more intelligent information. Can also detect celebrities (and you can block them), landmark detection. The extended face apis can detect moods in pictures, allowing you to moderate your content f

Supercharge your debugging in Visual Studio 2017

Image
This video has way too few views! In it, Jackson Davis teaches us ... ... that F10/F11 starts your debugging session at the first executable statement - Main, Startup, Global Application_Start ... ... that Step into specific  is talking about Methods (not threads, processes or something else). ... that you can transform breakpoints into tracepoints - points in your executable that automatically prints out logging statements without breaking ... ... that you can avoid side effects in your watch window, by using a no side effects  formatter ... ... that your Locals window also show return values and that you can use $ReturnValue1-N (e.g. $ReturnValue3) in your Immediate and Watch windows to show the last, previous, previous-previous return value etc. ... ... that the DebuggerDisplayAttribute supports format specifiers too ... ... that you can conditionally break when a certain object instance is in scope ... ... that you can live debug your release built apps in Azure i