Saturday, July 1, 2017

[Theory] Software craftsmanship Part 2 - Microservices

Part 1 - Parallel vs united sequential vision
Part 2 - Microservices
Part 3 - Deployment pipeline
----------------------------
In the previous post I wrote about the importance of small independent projects. 
The most important rules for building micro or nano services are:

1) The service should be autonomous.
The service and the small team should follow the idea of Bounded Context. Some examples: Email sending, SMS sending, Logging, Order service, Best buy suggestion, Products review, Search, Login and registration.
2) The service should be independently deployable.
The team should be able to deploy its service whenever it is desired.The compatibility can be supported with the ideas that were discussed in the previous part. 
If, for example, email sending team decides to work with some logging library version 1.2.5, while others use fancy v.1.6.0, then they must go with their choice (v.1.2.5), even if it is a product of their own company. The team is responsible for fixing bugs and makes reasonable decisions, logging package v.1.6.0 might not be properly tested or has undesirable behaviour. 
Creating a microservice with some HTTP RPC API usually does not rise many questions. The different picture is with GUI.
UI monolith that calls some HTTP API endpoints breaks the second law. The idea about a team being able to deploy its service independently from others means that the service should contain everything it needs for properly functionality, including UI controls if it is required:

The website shell should be able to collect independent services from some registry. Notice that autonomy also means that each team should be able to apply different technologies for their services, even different UI technologies (React, Angular, Vue.js, pure HTML, bootstrap, jquery, pure js). Of course it is likely that UI will be done in one technology stack, nevertheless such possibility should exist. The same is true for other technologies (data storage type, runtime and programming language).

A new question appears: how is it possible to control such a mess of technologies? Plus companies need consistent design.

Contradiction
As a team we want to have consistent design across the website.
As a team we want freely modify different parts of the website.
One solution is to separate service and not combine them at all.
Solution (1)
Give each service its own microsite.
Take a look at bbc.co.uk, in addition to the main "news" site there are many sub sites: weather, education, radio, TV and others. Each sub site has its own design, purpose and can be implemented with its own technology stack and its own team.

Solution (2)
Create the UI shell service that will dynamically collect different UI parts from the services.

Today this is scarcely done, however there are some attempts:
1) Scout 24 and Thoughtworks blog post and video
2) Zalando blog post and video
3) Amazon website itself

And what is about design?
Follow strict guide rules for design, share common styles.

An excellent example of such implementation is Building a Visual Language at Aribnb.

Designers specified common guides for sizes, colours and forms. Besides, their teams reuse common blocks across different types of applications. Headers, subheaders and rows have a consistent style in the website, mobile applications and emails.

23 comments:

  1. Dank vapes
    You may hear that genuine Dank vapes don’t have a sequential number. On the other hand, in the event that you draw up on the mouthpiece, and it flies out, you can make sure it’s a phony. There may likewise be a “Ccell” logo imprinted on the base of the dank vape cartridge to show it is phony. Nonetheless, you can discover individuals asserting that the Ccell stamp affirms its realness. Despite every one of the cases, it’s essential to just depend on target data. Moist Vapes carts offer top 10 Amazing, ground-breaking Dank vapes flavors.
    Dank vapes cartridges
    There is a typical contrast in quality between the wet cartridges you may run over. Some less expensive carts have a mouthpiece that flies in as opposed to fasten. Low quality cart may likewise utilize a plastic mouthpiece rather than metal or fired. Saying this doesn’t imply that that Dank Vapes cartridges with a clay mouthpiece are authentic, they’re simply better quality.
    Vapes Dank
    You may find that the oil in your cart is slight and moves around effectively inside the tank. This implies there is a decent shot the oil. Regularly, the slender oil is the consequence of cutting or blending in different items with the oil. This might be something like propylene glycol, found in e-fluids. You are currently shopping at the best online Dank Vapes official Cartridges dank carts.
    https://vapecartsshop.net

    ReplyDelete
  2. QuickBooks Desktop often fails to link successfully to the internet, which causes QuickBooks Error 12002 while updating.QuickBooks users may lead to QuickBooks Error 12002 when QB is unable to utilize the internet connection. Have you ever encountered errors while updating QuickBooks or QuickBooks not Working?

    ReplyDelete
  3. We feel satisfied to helping you, and you are consistently welcome here for fixing your undesirable issue on this stage. Error code 1772 and comparative introduce errors may happen at Run-time, and in this manner they are called Run-time Errors, and it is basic to investigate. QuickBooks Error 1772 is a run-time error. This implies when you working with the product, it is conceivable that the screen freeze for a couple of moments, and so on.

    ReplyDelete
  4. When we are talking about QuickBooks Error 6000 82 first question is that why and how this error code occurs. QuickBooks must be updated to the latest release and you can install QuickBooks file doctor tool before proceeding with the solutions. The error message reads: ‘Warning: An error occurred when QuickBooks Desktop tried to access the company file. Please try again. If the problem persists, contact Intuit Technical Support.’ This error is commonly referred to QuickBooks Desktop Error 6000. QuickBooks Error 6000 82 indicates the message, An error occurred when trying to open up the company filer or An error occurred.

    ReplyDelete
  5. The problem has now been resolved after several attempts at altering the registry and installing new installer software etc. This will get the error linked with the “MSIEXEC. EXE” category of the data file. Getting Sage 50 Error 1719 with encounters an error message displaying “The Windows Installer Service could not be accessed”. Sage 50 software or uninstalling. Some users face sage error 1719 with the” MSIEXEC.

    ReplyDelete
  6. While updating payroll and maintenance release, however, the software encounters. Here is the instant solution for you to get rid of your QuickBooks error 15215. Maintenance Release QuickBooks update error. The another reason for occurring this error might be a conflict with another application running in the background when you try to download a payroll update. We can help you solve even the most complex accounting related issues in the least possible time.

    ReplyDelete
  7. In the end, the shopper gets depleted to finish the standard help office of QuickBooks Support. In such a case, conventional customers are taking autonomous outsider QuickBooks Support which is accessible to give brief help to QuickbBooks Tech Support Phone Number 1800-871-6508. QuickBooks is valuable to offer responses for the entrepreneurs who don’t have a great deal of vitality for tracking each arrangement and cost they make, since they have to take off to raised spots for get-togethers and schedules. So you can get you out in business QuickBooks 1800-871-6508 writing computer programs is used.

    ReplyDelete
  8. In such a case, customary customers are taking independent pariah QuickBooks Support which is available to give brief assistance to QuickBooks 1(844)-857-4846. QuickBooks Desktop Support Services is a Technical assistance expert center for Quickbooks. Solution QuickbBooks Tech Support Phone Number 1(844)-857-4846 offers ensured support for all QuickBooks Desktop Support. Our gathering of Certified QuickBooks pros is set up to help you 24 hours out of each day, 7 days seven days.

    ReplyDelete
  9. QuickBooks Enterprise Support +1-844*857*4846 Phone Number Wizxpert QuickBooks Enterprise is a great fit for medium to large scale businesses that help you manage your business accounting and bookkeeping. QB experts with 24*7 assistance. Quickbooks Pro, an entry-level accounting software. We are one of the most renowned and reputed service providers with millions of satisfied customers. QuickBooks is a concoction of accounting software. Payroll Support is the fundamental service provided by QuickBooks as it is very efficient technique to manage the complex process of salary dispensed, incentives, compensation, and bonuses to the employer’s accounts. QuickBooks and need Technical Help 1 844-857-4846.QuickBooks Desktop bolster group help you in any way and resolve your concern.We at Peniel Technology took upon us the initiative to provide a robust add-on solution called Peniel QuickBooks Support UAE which allows customization of the Payment voucher, Receipt voucher, Journal Voucher & Purchase Bill.. Auto Data Synchronization with QuickBooks.

    Resolution QuickBooks Technical Support Phone Number

    QuickBooks Pro Tech Support Phone Number

    QuickBooks Tech Payroll Support Phone Number

    QuickBooks Payroll Support Helpline Number

    Desktop QuickBooks Enterprise Payroll Support Phone Number

    ReplyDelete
  10. Call for USA & Canada toll free phone number 1844 (857) 4846 QuickBooks Payroll Desktop programming is utilized bundle by the greater part of the little organizations, and bookkeeping
    organizations inside the USA. You can email us to find fast solutions for your QuickBooks related issues This item framework gives stock association and changed news gadgets that connect with you to investigate your insight and gather knowing decisions. QuickBooks is the center bookkeeping apparatus for improving clearness and particularity in proficient concerns. One can
    either specify this help to the highlights of it or the flexible forms that give assistance.

    Related More Click Here:

    QuickBooks Payroll TAX Support Phone Number
    QuickBooks Desktop Support Toll Free Number
    QuickBooks Pro Customer Service Phone Number
    QuickBooks Premier Online Service Phone Phone NUMbeR
    QuickBooks Mac For Tech Support PH0Ne Number
    QuickBooks Point Of Sale (Pos) Support Phone Number

    ReplyDelete
  11. If you just wish to actuate started with QuickBooks Premier Mac, you'll build an interest QuickBooks Premier Mac Support Number 1844-857-4846. They will help you in resolving the trouble. We have a large panel of experts who have excellent product knowledge & years of experience in solving complex technical issues. Don’t let your work be affected by the technical flaws. Place a direct call to our QuickBooks POS Accounting Software Service.

    Related More Information:

    QuickBooks Enterprise Support Phone Number
    QuickBooks Desktop for MAC Support Phone Number
    QuickBooks Tech Support Phone Number
    QuickBooks Technical Support Phone Number
    QuickBooks Desktop Support Phone Number
    quickB00ks Payroll Support Ph0Ne Number
    QuickBooks Pro Support toll free Number
    QuickBooks POS Support toll free Number
    QuickBooks Error 24*7 Support toll free Number

    ReplyDelete
  12. In this determined technological world, at whatever point we talk about the best bookkeeping programming 1844-857-4846, we suggest QuickBooks, an astonishing programming by Intuit. That is all in this article. I trust it was useful for you. Finally, we simply need to state that pick the best assistance for QuickBooks and records, as per your need and business type On the off chance that encountering same error "QuickBooks Error Support" once more, in a split second associate at QuickBooks Error Help Desk Number. To get Quickbooks Assistance for any sort Quickbooks error codes, Quickbooks Enterprise support Also.

    Related More Information:

    Get Trip QuickBooks Tech Support Help Desk Phone Number
    QuickBooks Error Code Support Toll Free Number

    ReplyDelete
  13. Get in contact by leaving a message with our TurboTax or QuickBooks Error group. You can likewise visit with our Mint help group. Have you gotten a dubious email? The following most ideal approach to converse with their customer Error group, as per different QuickBooks customer Support by approaching our Quickbooks online customer administration telephone number +1-844-857-4846. The equivalent has assembled solid customer administration aptitude. Customers can demand the Quickbooks Enterprise Support and have their expert inquiries.
    Click Here for Information: QuickBooks Technical Support Number USA
    Watch Now Video: QuickBooks Customer Support Phone Number

    ReplyDelete
  14. Get information for Quickbooks accounting software for small business start and technical issues solution for contact phone number 1844-857-4846. Quickbooks enterprise, desktop, payroll others service provide 24/7 hour support. The name QuickBooks has been such a great amount of well known in itself that no one can bring up the issue on its administrations for organizations around. While an update or installation of the QuickBooks Software. Quickbooks occurs when you try to download an update for payroll or QuickBooks desktop.

    Watch Now Video:
    https://youtu.be/Lq6KImj1ipI
    https://youtu.be/oZ-qeESJ530
    https://youtu.be/af1EutzHO-I

    Click Here

    QuickBooks Desktop Support Phone Number USA
    QuickBooks Enterprise Support Number
    QuickBooks 24/7 Technical Support Phone Number
    QuickBooks Tech Support Phone Number

    ReplyDelete
  15. The contents you mentioned in the post are too good and very useful.How to die without pain while we sleep I will keep it in mind, thanks for sharing the information keep updating further.

    ReplyDelete
  16. QuickBooks Error Code 6000 is an error experienced by users when they are trying to open a company file. QuickBooks Error code 6000 -832 is a 6000 series error code that exists predominantly due to company file corruption. QuickBooks Error 6000 Desktop Error system once the user tries to open, restore and take backup of the company files.

    ReplyDelete
  17. How would I set up email, either through an email application like Outlook, or through Webmail in Sage 50? In the event that you will be you utilizing Sage 50 through terminal administrations or a distant work area program, you should introduce the email program on the host PC and set it as the default email program there. Assuming you are setting up either a Gmail or a Yahoo account, Email Setup and Settings on Sage 50 you will likewise need to arrange the record in the record settings of those applications to 'permit less secure applications. Assuming you are utilizing Microsoft Outlook, when you attempt to email records from Sage Accounts or Sage 50 Payroll one of the accompanying messages might show up.

    You can make fill-in variants of Forms W-2 and W-3 for documenting with SSA. You may likewise print out duplicates for documenting with state or neighborhood legislatures, dissemination to your representatives, and for your records. Step by step instructions to Print Sage W2 Forms in Sage 50. Click on the current year W-2/W-3 tax document in the Payroll Tax Form Selector window. Print Sage 50 W2 Forms proposition business the executives, finance, accounting, charge planning, advance planning, and so on.

    ReplyDelete