Category Archives: CS-343

week-7

Hello, I want to write this
blog after looking over some class activities again and seeing any questions to
review, but something caught my attention. I read the word
“microservices” in some class-work exercises; I got interested and
looked it up again. I found two links that helped me understand What are
microservices? And examples from Amazon company.

 

What are microservices? 

Microservices (microservice architecture) – is an
architectural method that structures an application as a collection of services
that are

  • Highly maintainable and testable
  • Loosely linked 
  • Individually deployable
  • Organized around business capabilities
  • Owned by a small team

The microservice architecture makes applications easier
to scale and faster to develop, enabling innovation and accelerating
time-to-market for new features to reduce complex applications. It even allows
an organization to evolve its technology stack.

The pattern language guide 

The microservice architecture isn’t perfect; It has
several problems. Moreover, when using this architecture, many issues must
address.

The microservice architecture pattern language is a set
of patterns for applying the microservice architecture. It has two goals:

  • The pattern language allows whether microservices are a good place for application.
  • The pattern language allows the microservice
    architecture favorably.

Characteristics of Microservices

  • Autonomous – Each element set in a
    microservices architecture can be developed, deployed, operated, and scaled
    without affecting the functioning of other benefits. Services don’t need to
    share any code or implementation with other services. Any connection between
    individual components happens through APIs. 
  • Specialized – Each service is designed
    for a collection of capabilities and focuses on solving a specific problem. 

Benefits of Microservices

  • Agility – promote an organization of small and
    independent teams that take ownership of their services. Groups work in a small
    and well-understood context and are allowed to work independently and fast. It
    helps to shorten construction cycle times. It benefits significantly from the
    throughput of the organization.
  • Flexible Scaling – Each service is to be
    independently scaled to meet the demand for its support application. It enables
    teams to support requirements, precisely measure the cost of a feature, and
    manage availability if a service experiences a spike in demand.
  • Easy Deployment – Enable continuous combination
    and delivery, helps try out new ideas, and rolls back if something doesn’t work.
    The low cost of failure enables experimentation to update code and stimulates
    time-to-market for new features.
  • Technological Freedom – It doesn’t follow a
    “one size fits all” plan. Teams have chosen the best tool to solve
    specific problems.
  • Reusable Code – Dividing software into small
    modules, which enables teams to use functions for multiple purposes.
  • Resilience – Service independence increases an
    application’s stand to failure. With microservices, applications handle
    complete service failure by discrediting functionality and not crashing the
    entire application.

From the blog Andrew Lam’s little blog by Andrew Lam and used with permission of the author. All other rights reserved by the author.

week-7

Hello, I want to write this
blog after looking over some class activities again and seeing any questions to
review, but something caught my attention. I read the word
“microservices” in some class-work exercises; I got interested and
looked it up again. I found two links that helped me understand What are
microservices? And examples from Amazon company.

 

What are microservices? 

Microservices (microservice architecture) – is an
architectural method that structures an application as a collection of services
that are

  • Highly maintainable and testable
  • Loosely linked 
  • Individually deployable
  • Organized around business capabilities
  • Owned by a small team

The microservice architecture makes applications easier
to scale and faster to develop, enabling innovation and accelerating
time-to-market for new features to reduce complex applications. It even allows
an organization to evolve its technology stack.

The pattern language guide 

The microservice architecture isn’t perfect; It has
several problems. Moreover, when using this architecture, many issues must
address.

The microservice architecture pattern language is a set
of patterns for applying the microservice architecture. It has two goals:

  • The pattern language allows whether microservices are a good place for application.
  • The pattern language allows the microservice
    architecture favorably.

Characteristics of Microservices

  • Autonomous – Each element set in a
    microservices architecture can be developed, deployed, operated, and scaled
    without affecting the functioning of other benefits. Services don’t need to
    share any code or implementation with other services. Any connection between
    individual components happens through APIs. 
  • Specialized – Each service is designed
    for a collection of capabilities and focuses on solving a specific problem. 

Benefits of Microservices

  • Agility – promote an organization of small and
    independent teams that take ownership of their services. Groups work in a small
    and well-understood context and are allowed to work independently and fast. It
    helps to shorten construction cycle times. It benefits significantly from the
    throughput of the organization.
  • Flexible Scaling – Each service is to be
    independently scaled to meet the demand for its support application. It enables
    teams to support requirements, precisely measure the cost of a feature, and
    manage availability if a service experiences a spike in demand.
  • Easy Deployment – Enable continuous combination
    and delivery, helps try out new ideas, and rolls back if something doesn’t work.
    The low cost of failure enables experimentation to update code and stimulates
    time-to-market for new features.
  • Technological Freedom – It doesn’t follow a
    “one size fits all” plan. Teams have chosen the best tool to solve
    specific problems.
  • Reusable Code – Dividing software into small
    modules, which enables teams to use functions for multiple purposes.
  • Resilience – Service independence increases an
    application’s stand to failure. With microservices, applications handle
    complete service failure by discrediting functionality and not crashing the
    entire application.

From the blog Andrew Lam’s little blog by Andrew Lam and used with permission of the author. All other rights reserved by the author.

week-7

Hello, I want to write this
blog after looking over some class activities again and seeing any questions to
review, but something caught my attention. I read the word
“microservices” in some class-work exercises; I got interested and
looked it up again. I found two links that helped me understand What are
microservices? And examples from Amazon company.

 

What are microservices? 

Microservices (microservice architecture) – is an
architectural method that structures an application as a collection of services
that are

  • Highly maintainable and testable
  • Loosely linked 
  • Individually deployable
  • Organized around business capabilities
  • Owned by a small team

The microservice architecture makes applications easier
to scale and faster to develop, enabling innovation and accelerating
time-to-market for new features to reduce complex applications. It even allows
an organization to evolve its technology stack.

The pattern language guide 

The microservice architecture isn’t perfect; It has
several problems. Moreover, when using this architecture, many issues must
address.

The microservice architecture pattern language is a set
of patterns for applying the microservice architecture. It has two goals:

  • The pattern language allows whether microservices are a good place for application.
  • The pattern language allows the microservice
    architecture favorably.

Characteristics of Microservices

  • Autonomous – Each element set in a
    microservices architecture can be developed, deployed, operated, and scaled
    without affecting the functioning of other benefits. Services don’t need to
    share any code or implementation with other services. Any connection between
    individual components happens through APIs. 
  • Specialized – Each service is designed
    for a collection of capabilities and focuses on solving a specific problem. 

Benefits of Microservices

  • Agility – promote an organization of small and
    independent teams that take ownership of their services. Groups work in a small
    and well-understood context and are allowed to work independently and fast. It
    helps to shorten construction cycle times. It benefits significantly from the
    throughput of the organization.
  • Flexible Scaling – Each service is to be
    independently scaled to meet the demand for its support application. It enables
    teams to support requirements, precisely measure the cost of a feature, and
    manage availability if a service experiences a spike in demand.
  • Easy Deployment – Enable continuous combination
    and delivery, helps try out new ideas, and rolls back if something doesn’t work.
    The low cost of failure enables experimentation to update code and stimulates
    time-to-market for new features.
  • Technological Freedom – It doesn’t follow a
    “one size fits all” plan. Teams have chosen the best tool to solve
    specific problems.
  • Reusable Code – Dividing software into small
    modules, which enables teams to use functions for multiple purposes.
  • Resilience – Service independence increases an
    application’s stand to failure. With microservices, applications handle
    complete service failure by discrediting functionality and not crashing the
    entire application.

From the blog Andrew Lam’s little blog by Andrew Lam and used with permission of the author. All other rights reserved by the author.

week-7

Hello, I want to write this
blog after looking over some class activities again and seeing any questions to
review, but something caught my attention. I read the word
“microservices” in some class-work exercises; I got interested and
looked it up again. I found two links that helped me understand What are
microservices? And examples from Amazon company.

 

What are microservices? 

Microservices (microservice architecture) – is an
architectural method that structures an application as a collection of services
that are

  • Highly maintainable and testable
  • Loosely linked 
  • Individually deployable
  • Organized around business capabilities
  • Owned by a small team

The microservice architecture makes applications easier
to scale and faster to develop, enabling innovation and accelerating
time-to-market for new features to reduce complex applications. It even allows
an organization to evolve its technology stack.

The pattern language guide 

The microservice architecture isn’t perfect; It has
several problems. Moreover, when using this architecture, many issues must
address.

The microservice architecture pattern language is a set
of patterns for applying the microservice architecture. It has two goals:

  • The pattern language allows whether microservices are a good place for application.
  • The pattern language allows the microservice
    architecture favorably.

Characteristics of Microservices

  • Autonomous – Each element set in a
    microservices architecture can be developed, deployed, operated, and scaled
    without affecting the functioning of other benefits. Services don’t need to
    share any code or implementation with other services. Any connection between
    individual components happens through APIs. 
  • Specialized – Each service is designed
    for a collection of capabilities and focuses on solving a specific problem. 

Benefits of Microservices

  • Agility – promote an organization of small and
    independent teams that take ownership of their services. Groups work in a small
    and well-understood context and are allowed to work independently and fast. It
    helps to shorten construction cycle times. It benefits significantly from the
    throughput of the organization.
  • Flexible Scaling – Each service is to be
    independently scaled to meet the demand for its support application. It enables
    teams to support requirements, precisely measure the cost of a feature, and
    manage availability if a service experiences a spike in demand.
  • Easy Deployment – Enable continuous combination
    and delivery, helps try out new ideas, and rolls back if something doesn’t work.
    The low cost of failure enables experimentation to update code and stimulates
    time-to-market for new features.
  • Technological Freedom – It doesn’t follow a
    “one size fits all” plan. Teams have chosen the best tool to solve
    specific problems.
  • Reusable Code – Dividing software into small
    modules, which enables teams to use functions for multiple purposes.
  • Resilience – Service independence increases an
    application’s stand to failure. With microservices, applications handle
    complete service failure by discrediting functionality and not crashing the
    entire application.

From the blog Andrew Lam’s little blog by Andrew Lam and used with permission of the author. All other rights reserved by the author.

week-7

Hello, I want to write this blog after looking over some class activities again and seeing any questions to review, but something caught my attention. I read the word “microservices” in some class-work exercises; I got interested and looked it up again. I found two links that helped me understand What are microservices? And examples from Amazon company.

 

What are microservices? 

Microservices (microservice architecture) – is an architectural method that structures an application as a collection of services that are

  • Highly maintainable and testable
  • Loosely linked 
  • Individually deployable
  • Organized around business capabilities
  • Owned by a small team

The microservice architecture makes applications easier to scale and faster to develop, enabling innovation and accelerating time-to-market for new features to reduce complex applications. It even allows an organization to evolve its technology stack.

The pattern language guide 

The microservice architecture isn’t perfect; It has several problems. Moreover, when using this architecture, many issues must address.

The microservice architecture pattern language is a set of patterns for applying the microservice architecture. It has two goals:

  • The pattern language allows whether microservices are a good place for application.
  • The pattern language allows the microservice architecture favorably.

Characteristics of Microservices

  • Autonomous – Each element set in a microservices architecture can be developed, deployed, operated, and scaled without affecting the functioning of other benefits. Services don’t need to share any code or implementation with other services. Any connection between individual components happens through APIs. 
  • Specialized – Each service is designed for a collection of capabilities and focuses on solving a specific problem. 

Benefits of Microservices

  • Agility – promote an organization of small and independent teams that take ownership of their services. Groups work in a small and well-understood context and are allowed to work independently and fast. It helps to shorten construction cycle times. It benefits significantly from the throughput of the organization.
  • Flexible Scaling – Each service is to be independently scaled to meet the demand for its support application. It enables teams to support requirements, precisely measure the cost of a feature, and manage availability if a service experiences a spike in demand.
  • Easy Deployment – Enable continuous combination and delivery, helps try out new ideas, and rolls back if something doesn’t work. The low cost of failure enables experimentation to update code and stimulates time-to-market for new features.
  • Technological Freedom – It doesn’t follow a “one size fits all” plan. Teams have chosen the best tool to solve specific problems.
  • Reusable Code – Dividing software into small modules, which enables teams to use functions for multiple purposes.
  • Resilience – Service independence increases an application’s stand to failure. With microservices, applications handle complete service failure by discrediting functionality and not crashing the entire application.

From the blog Andrew Lam’s little blog by and used with permission of the author. All other rights reserved by the author.

week-7

Hello, I want to write this
blog after looking over some class activities again and seeing any questions to
review, but something caught my attention. I read the word
“microservices” in some class-work exercises; I got interested and
looked it up again. I found two links that helped me understand What are
microservices? And examples from Amazon company.

 

What are microservices? 

Microservices (microservice architecture) – is an
architectural method that structures an application as a collection of services
that are

  • Highly maintainable and testable
  • Loosely linked 
  • Individually deployable
  • Organized around business capabilities
  • Owned by a small team

The microservice architecture makes applications easier
to scale and faster to develop, enabling innovation and accelerating
time-to-market for new features to reduce complex applications. It even allows
an organization to evolve its technology stack.

The pattern language guide 

The microservice architecture isn’t perfect; It has
several problems. Moreover, when using this architecture, many issues must
address.

The microservice architecture pattern language is a set
of patterns for applying the microservice architecture. It has two goals:

  • The pattern language allows whether microservices are a good place for application.
  • The pattern language allows the microservice
    architecture favorably.

Characteristics of Microservices

  • Autonomous – Each element set in a
    microservices architecture can be developed, deployed, operated, and scaled
    without affecting the functioning of other benefits. Services don’t need to
    share any code or implementation with other services. Any connection between
    individual components happens through APIs. 
  • Specialized – Each service is designed
    for a collection of capabilities and focuses on solving a specific problem. 

Benefits of Microservices

  • Agility – promote an organization of small and
    independent teams that take ownership of their services. Groups work in a small
    and well-understood context and are allowed to work independently and fast. It
    helps to shorten construction cycle times. It benefits significantly from the
    throughput of the organization.
  • Flexible Scaling – Each service is to be
    independently scaled to meet the demand for its support application. It enables
    teams to support requirements, precisely measure the cost of a feature, and
    manage availability if a service experiences a spike in demand.
  • Easy Deployment – Enable continuous combination
    and delivery, helps try out new ideas, and rolls back if something doesn’t work.
    The low cost of failure enables experimentation to update code and stimulates
    time-to-market for new features.
  • Technological Freedom – It doesn’t follow a
    “one size fits all” plan. Teams have chosen the best tool to solve
    specific problems.
  • Reusable Code – Dividing software into small
    modules, which enables teams to use functions for multiple purposes.
  • Resilience – Service independence increases an
    application’s stand to failure. With microservices, applications handle
    complete service failure by discrediting functionality and not crashing the
    entire application.

From the blog Andrew Lam’s little blog by Andrew Lam and used with permission of the author. All other rights reserved by the author.

week-7

Hello, I want to write this
blog after looking over some class activities again and seeing any questions to
review, but something caught my attention. I read the word
“microservices” in some class-work exercises; I got interested and
looked it up again. I found two links that helped me understand What are
microservices? And examples from Amazon company.

 

What are microservices? 

Microservices (microservice architecture) – is an
architectural method that structures an application as a collection of services
that are

  • Highly maintainable and testable
  • Loosely linked 
  • Individually deployable
  • Organized around business capabilities
  • Owned by a small team

The microservice architecture makes applications easier
to scale and faster to develop, enabling innovation and accelerating
time-to-market for new features to reduce complex applications. It even allows
an organization to evolve its technology stack.

The pattern language guide 

The microservice architecture isn’t perfect; It has
several problems. Moreover, when using this architecture, many issues must
address.

The microservice architecture pattern language is a set
of patterns for applying the microservice architecture. It has two goals:

  • The pattern language allows whether microservices are a good place for application.
  • The pattern language allows the microservice
    architecture favorably.

Characteristics of Microservices

  • Autonomous – Each element set in a
    microservices architecture can be developed, deployed, operated, and scaled
    without affecting the functioning of other benefits. Services don’t need to
    share any code or implementation with other services. Any connection between
    individual components happens through APIs. 
  • Specialized – Each service is designed
    for a collection of capabilities and focuses on solving a specific problem. 

Benefits of Microservices

  • Agility – promote an organization of small and
    independent teams that take ownership of their services. Groups work in a small
    and well-understood context and are allowed to work independently and fast. It
    helps to shorten construction cycle times. It benefits significantly from the
    throughput of the organization.
  • Flexible Scaling – Each service is to be
    independently scaled to meet the demand for its support application. It enables
    teams to support requirements, precisely measure the cost of a feature, and
    manage availability if a service experiences a spike in demand.
  • Easy Deployment – Enable continuous combination
    and delivery, helps try out new ideas, and rolls back if something doesn’t work.
    The low cost of failure enables experimentation to update code and stimulates
    time-to-market for new features.
  • Technological Freedom – It doesn’t follow a
    “one size fits all” plan. Teams have chosen the best tool to solve
    specific problems.
  • Reusable Code – Dividing software into small
    modules, which enables teams to use functions for multiple purposes.
  • Resilience – Service independence increases an
    application’s stand to failure. With microservices, applications handle
    complete service failure by discrediting functionality and not crashing the
    entire application.

From the blog Andrew Lam’s little blog by Andrew Lam and used with permission of the author. All other rights reserved by the author.

week-7

Hello, I want to write this
blog after looking over some class activities again and seeing any questions to
review, but something caught my attention. I read the word
“microservices” in some class-work exercises; I got interested and
looked it up again. I found two links that helped me understand What are
microservices? And examples from Amazon company.

 

What are microservices? 

Microservices (microservice architecture) – is an
architectural method that structures an application as a collection of services
that are

  • Highly maintainable and testable
  • Loosely linked 
  • Individually deployable
  • Organized around business capabilities
  • Owned by a small team

The microservice architecture makes applications easier
to scale and faster to develop, enabling innovation and accelerating
time-to-market for new features to reduce complex applications. It even allows
an organization to evolve its technology stack.

The pattern language guide 

The microservice architecture isn’t perfect; It has
several problems. Moreover, when using this architecture, many issues must
address.

The microservice architecture pattern language is a set
of patterns for applying the microservice architecture. It has two goals:

  • The pattern language allows whether microservices are a good place for application.
  • The pattern language allows the microservice
    architecture favorably.

Characteristics of Microservices

  • Autonomous – Each element set in a
    microservices architecture can be developed, deployed, operated, and scaled
    without affecting the functioning of other benefits. Services don’t need to
    share any code or implementation with other services. Any connection between
    individual components happens through APIs. 
  • Specialized – Each service is designed
    for a collection of capabilities and focuses on solving a specific problem. 

Benefits of Microservices

  • Agility – promote an organization of small and
    independent teams that take ownership of their services. Groups work in a small
    and well-understood context and are allowed to work independently and fast. It
    helps to shorten construction cycle times. It benefits significantly from the
    throughput of the organization.
  • Flexible Scaling – Each service is to be
    independently scaled to meet the demand for its support application. It enables
    teams to support requirements, precisely measure the cost of a feature, and
    manage availability if a service experiences a spike in demand.
  • Easy Deployment – Enable continuous combination
    and delivery, helps try out new ideas, and rolls back if something doesn’t work.
    The low cost of failure enables experimentation to update code and stimulates
    time-to-market for new features.
  • Technological Freedom – It doesn’t follow a
    “one size fits all” plan. Teams have chosen the best tool to solve
    specific problems.
  • Reusable Code – Dividing software into small
    modules, which enables teams to use functions for multiple purposes.
  • Resilience – Service independence increases an
    application’s stand to failure. With microservices, applications handle
    complete service failure by discrediting functionality and not crashing the
    entire application.

From the blog Andrew Lam’s little blog by Andrew Lam and used with permission of the author. All other rights reserved by the author.

week-7

Hello, I want to write this
blog after looking over some class activities again and seeing any questions to
review, but something caught my attention. I read the word
“microservices” in some class-work exercises; I got interested and
looked it up again. I found two links that helped me understand What are
microservices? And examples from Amazon company.

 

What are microservices? 

Microservices (microservice architecture) – is an
architectural method that structures an application as a collection of services
that are

  • Highly maintainable and testable
  • Loosely linked 
  • Individually deployable
  • Organized around business capabilities
  • Owned by a small team

The microservice architecture makes applications easier
to scale and faster to develop, enabling innovation and accelerating
time-to-market for new features to reduce complex applications. It even allows
an organization to evolve its technology stack.

The pattern language guide 

The microservice architecture isn’t perfect; It has
several problems. Moreover, when using this architecture, many issues must
address.

The microservice architecture pattern language is a set
of patterns for applying the microservice architecture. It has two goals:

  • The pattern language allows whether microservices are a good place for application.
  • The pattern language allows the microservice
    architecture favorably.

Characteristics of Microservices

  • Autonomous – Each element set in a
    microservices architecture can be developed, deployed, operated, and scaled
    without affecting the functioning of other benefits. Services don’t need to
    share any code or implementation with other services. Any connection between
    individual components happens through APIs. 
  • Specialized – Each service is designed
    for a collection of capabilities and focuses on solving a specific problem. 

Benefits of Microservices

  • Agility – promote an organization of small and
    independent teams that take ownership of their services. Groups work in a small
    and well-understood context and are allowed to work independently and fast. It
    helps to shorten construction cycle times. It benefits significantly from the
    throughput of the organization.
  • Flexible Scaling – Each service is to be
    independently scaled to meet the demand for its support application. It enables
    teams to support requirements, precisely measure the cost of a feature, and
    manage availability if a service experiences a spike in demand.
  • Easy Deployment – Enable continuous combination
    and delivery, helps try out new ideas, and rolls back if something doesn’t work.
    The low cost of failure enables experimentation to update code and stimulates
    time-to-market for new features.
  • Technological Freedom – It doesn’t follow a
    “one size fits all” plan. Teams have chosen the best tool to solve
    specific problems.
  • Reusable Code – Dividing software into small
    modules, which enables teams to use functions for multiple purposes.
  • Resilience – Service independence increases an
    application’s stand to failure. With microservices, applications handle
    complete service failure by discrediting functionality and not crashing the
    entire application.

From the blog Andrew Lam’s little blog by Andrew Lam and used with permission of the author. All other rights reserved by the author.

What is YAGNI?

     Just like my post from last week, YAGNI is another acronym in computer science. It’s an acronym for “You Aren’t Gonna Need It”. Which translate to only having features added when they are required. It’s another type of principle that is heavily followed in computer science. This is a large part of development since it trims away any excess and inefficient part of the program.

     The YAGNI principle tells you to mainly focus on current tasks. This however does not mean you cannot work on future steps but if it’s something that doesn’t need to be done currently, then you shouldn’t spend time doing it now since you can be working on something that will be more valuable now. A real-world example that I found can be that a client orders a kayak but is given a yacht. They both float on the water, but the yacht is like a luxury house on the water, where as the kayak is a simple vessel used to travel on water. In this case the yacht isn’t necessary as the client only wanted to travel or even just float on the water. This is considered “over-engineering”. This is a term that can be define as making something more complex instead of simplifying things

     There are many advantages to YAGNI. First, you will be saving time which also means you are saving money. Without having complex code, it makes it easier for others to understand the code. Without all the unnecessary coding, the code itself is better quality and allows developers to focus more on what the code is about instead of having to figure out what everything does. Following the YAGNI principle allows developers to not waste time on creating extraneous elements that may not be necessary or slow the development process.

     The reason why I chose to write about the YAGNI principle is because it is a part of our curriculum. Since I am planning to become a developer, I need to learn the different principles when it comes to programming. Learning about the YAGNI principle will help me become a better programmer as I will know to only work on the current tasks and not try to implement more complex code that will not be used until a later date or when it is necessary.

Here are some blogs I recommend to those who want to learn more about the YAGNI principle.
https://codibly.com/news-insights/yagni-how-to-do-things-when-you-actually-need-them-to-be-done/
https://whatis.techtarget.com/definition/You-arent-gonna-need-it

From the blog CS@Worcester – Michael's Developer Blog by michaelchaau and used with permission of the author. All other rights reserved by the author.