SEARCH KEYWORD -- POINT ON SALE MACHINE



  Singleton Pattern in Golang

Singleton pattern is the simplest design pattern in software design. It ensures that only one instance of an object exists globally, regardless of how many times the object is instantiated. Based on the characteristics of the singleton pattern, it can be applied to scenarios such as global unique configuration, database connection objects, file access objects, etc. In Go language, there are multiple ways to implement the singleton pattern. Today, let's learn together about some of these approach...

   GOLANG,SINGLETON PATTERN,TUTORIAL     2023-08-18 23:52:05

  Redis Cluster and Common Partition Techniques in Distributed Cache

In this post, I will discuss a few common partition techniques in distributed cache. Especially, I will elaborate on my understanding on the use of Redis Cluster. Please understand that at the time of writing, the latest version of Redis is 4.0.10. Many articles on the same topic have a different idea from this post. This is mainly because, those articles are probably outdated. In particular, they may refer to the Redis Cluster implementation in Redis 3. Redis Cluster has been improved...

   REDIS,DISTRIBUTED CACHE,CLOUD COMPUTING     2019-01-17 08:10:37

  Big file transfer in Linux

It's very common that we need to transfer files between two different hosts such as backups. It is also an very simple task, we can use scp or rsync to complete the task well. But what if the file is very big, it may take some time to transfer it. How can we transfer a big file with high speed? Here we propose one solution. Copy file If we copy one uncompressed file, then we should follow below steps: Compress data Send it to another host Uncompress the data Verify the data integrity This will...

   Linux, SCP,ZIP     2013-01-10 05:55:50

  Some tips for writing proper emails

Email is now becoming one necessity of working. We may receive hundreds of emails everyday, they may from our colleagues, friends or clients. We need to exchange ideas, arrange meetings , asking for help etc though email in our work. A proper email can help us achieve what we want to achieve. Here we share some tips for writing a proper email.At the beginning of an email : Thank the reader is a good way to start the email, thank the reader may make the reader feel happy, especially when you ask ...

   EMAIL,TIP,FORMAT,TEMPLATE     2012-07-02 12:26:32

  How to Understand and Use nil in Golang Correctly?

In Golang, nil is a predefined identifier that carries different meanings in various contexts, but typically represents "none", "empty" or "zero value". It can be assigned to variables of pointer, slice, map, channel, function, and interface types. Understanding the significance of nil is crucial for writing robust Go programs, as mishandling nil can lead to unexpected issues. nil in Pointers In Go, pointers are a fundamental type that stores the memory address of a variable. When a pointer is d...

   FUNCTION,SLICE,MAP,CHANNEL,GOLANG,NIL     2024-01-05 05:19:40

  10 reasons why I "hate" working in Facebook

To me, the past two years in Facebook is simply a nightmare, To celebrate the upcoming 2 year anniversary, I decided to jump out of it. Facebook, I have so many reasons to hate you. However, for fear that readers find me too annoying, I take my complaints to be condensed into the top ten reasons.1. Why should submit so much code? In the past two years, the number of Facebook engineers is doubled, and the amount of code submitted by each engineer is also increased with the increase of the number ...

   Facebook,Hate,Leave     2012-08-17 13:34:05

  How to write your own DSL in Ruby

DSL(Domain Specific Language) is a language defined to fulfill some domain specific requirements to ease people's work. It can be used to define attributes and actions of a domain easily and cleanly. And it is often created based on some common observations or micro patterns of some domain. In Ruby world, there are quite a few places people can find DSL. For example, Ruby itself, Chef recipes. To create a class in Ruby, the traditional OOP way would look like. class User @name = nil @email =...

   RUBY,DSL,TUTORIAL     2017-03-04 09:40:34

  How Cloud Computing is changing the Face of Business

The world of information is getting bigger and bigger and so does the need for cloud computing is felt broadly across various industries and platforms. The ever growing popularity and adoption are due to the fact that cloud computing is efficient, reliable and secure than any other business model. However, the way cloud computing is adopted across different enterprises may vary. How cloud computing has been adopted worldwide by companies- let us have a look at few statistics that would blow you...

   CLOUD COMPUTING,SOFTWARE DEVELOPMENT,CLOUD SERVICES,CLOUD SOLUTION,SOFTWARE SOLUTIONS     2017-08-22 02:49:53

  Microsoft Interview Riddle Questions

Every year, many people will send their resume to Microsoft and Google. So how do these IT companies hire people? What kind of interview questions will they ask. Let's see what Microsoft asked before in this article. These questions are more focusing on how you are reasoning, not necessary your technical skills. 1.  You’ve got someone working for you for seven days and a gold bar to pay them. The gold bar is segmented into seven connected pieces. You must give them a piece of gold at...

   Microsoft,Interview question,Riddle questions,Answer     2012-03-10 04:56:48

  Be careful when running knife vault command

While using Chef, one would frequently use knife commands which are used to manage resources on the Chef server. One can list all nodes, data bags, vault items and many other stuff on the Chef server. In this post, we would cover one command which may need your attention when using it -- knife vault. On Chef server, one can store data to data bags which can be accessed by registered clients. These data bags usually store the data in plain text format. In some cases, one would need to store data ...

   KNIFE VAULT,KNIFE DATA BAG,CHEF-VAULT,CHEF     2017-08-19 00:26:54