FAQ

On Wednesday, 18 May 2016 05:03:39 UTC+3, Harry wrote:
Hi guys,

We are developing certain web service for those who use it by paying money.
I'd like to know suitable design pattern for development of Golang.

There are lots of useful packages on Github or another repository.
However our team tends to develop everything by ourself without such outer
packages even if it's useful.
In my opinion, I'd better to use more those useful packages to
work effectively.
To persuade my co-workers, I want to know best practice and that reasons.
Everything part of your system is your problem -- if you include a package,
then you have to maintain it, if there is a bug you need to fix it. If
there are other people using the same package, this means that there is a
bigger chance that the bug gets fixed. Packages also come with an
integration cost -- the better the package, the smaller the cost. For
example the Go standard library has a very small cost for the integration
part.

However those aren't the most important factors. The major question should
be asking yourself is --- *how and why does it provide value to the
customer?*

Basically ask yourselves, is it the most valuable thing that you could be
doing right now.

Sometimes finding a better color scheme for an application is more
important than getting 50ms off the response times. In other cases
optimizing 50ms could increase 10000$ of revenue per day for the customer.

*So,*

*1.* is it the most valuable thing for the customer that you are doing
right now,
*2. *are there better and easier ways of creating the same value
*2.a* is doing it better than everyone else going to make a difference or
*2.b* can you just use some 3rd party library and move onto some other
important thing

Basically decide what you *don't work on*, it makes the question where to
put your effort easier.

I love a quote by Eric Evans:

*"Not all of a large system will be well designed."*


And this interpretation of it: *You need to decide what parts of your
system will be well designed and what parts will be poorly designed, that
way you spend more time on things that make a bigger difference.*

+ Egon

--
You received this message because you are subscribed to the Google Groups "golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Search Discussions

Discussion Posts

Previous

Follow ups

Related Discussions

Discussion Navigation
viewthread | post
posts ‹ prev | 4 of 7 | next ›
Discussion Overview
groupgolang-nuts @
categoriesgo
postedMay 18, '16 at 2:03a
activeMay 19, '16 at 8:18a
posts7
users4
websitegolang.org

People

Translate

site design / logo © 2021 Grokbase