SEARCH KEYWORD -- Source map



  Create customized GitHub profile page

How long have you been using GitHub? Have you ever wondered whether one can customize his profile page with some fancy looking? Indeed GitHub allows developers to customize profile page through a secret repository. The secret is to create a repository with the same name as your GitHub username. And you will be granted into the work of customizing your own profile page. In this post, we will show a simple walk through on how to create it. Create secret repository As indicated by the term secret r...

   GITHUB,CUSTOMIZED PROFILE,SECRET REPOSITORY     2020-10-18 03:02:42

  Big Corporate Layoffs Hit Shenzhen IT Manufacturing Business

At 11:00 on March 29, 3 employees were ready to jump from Shenzhen Foxconn's longhua building G14. According to witnesses, those 3 employees were negotiating with company regarding the “Foxconn diversion plan”. Liu Kun, Foxconn public speaker, told reporters that many employees are working negatively to resist this plan, but Foxconn does not agree or support their actions in this way. " Company like Foxconn with large-scale labor-intensive manufacturing enterprises in Shenzhen, is f...

   Layoff,Career,China     2013-04-01 06:44:43

  How does GoLang know how many CPUs to use?

When running lscpu command on Linux, it will list the CPU info on the machine. Take one example where there is one CPU with 2 cores and each core has two threads which indicates there are 4 cores available. Now let's see how many cores GoLang program would identify. From output, NumCPU and GOMAXPROCS both output 4 which is expected. How does go runtime get this info, does it get it through similar command like lscpu or /proc/cpuinfo? Let's dig more in GoLang's source code. In runtim...

   GOLANG,CPU,NCPU     2020-12-29 23:22:15

  A trap about PHP random number

The method to get random number in PHP is very simple, we only need to use rand() function. int rand ( int $min , int $max ) One function call can return the random number in a specified range. But in fact, the random number in computer is actually pseudorandomness, generally to increase the randomness, we may set a random seed before calling rand(). void srand ([ int $seed ] ) According to other language features, we should pass a time value as a parameter to the srand() function, generally...

   PHP,rand,srand,mt_rand     2013-06-07 09:10:10

  Amazon is a good company but doesn't have the best business model

Public opinion about a company is usually based on its performance. If it performs well, people will praise it, otherwise people will blame it. In 1999, Apple was still a broken apple(Steve Jobs's talent and effort was paid off yet). Public opinion about Apple was the closed model caused Apple's failure. They built hardware themselves, developed software themselves and delivered service themselves, this is certainly not sustainable. But Steve Jobs let everyone see this new model. In order to con...

   Business model,Amazon,Apple, Microsoft     2013-07-02 11:34:45

  Understand GoLang WaitGroup internals and how it works

Background Before getting into the main content, let me give a brief introduction to WaitGroup and its related background knowledge. Here, the focus is on the basic usage of WaitGroup and the fundamental knowledge of system semaphores. For those who are familiar with these, you can skip this section directly. WaitGroup WaitGroup is one of the most common concurrency control techniques in Golang, and its function can be roughly compared to the join() in concurrency control of other languages' mul...

   GOLANG,WAITGROUP,SOURCE CODE     2023-04-26 08:02:01

  Resolve SystemStackError issue when resolving IP address in Ruby

In Ruby, Resolv is the default DNS resolution implementation. It can be used to resolve IP address of a hostname. To use it, one just needs to require 'resolv' in the code. But sometimes, a user would want to check /etc/hosts first or some other mechanisms to resolve an IP address. In this case, one can require 'resolv-replace' and then replace the default DNS resolvers with customized DNS resolvers. For example, using resolv-replace, one would write require 'resolv-replace' Resolv::DefaultResol...

   RUBY,RUBY ON RAILS,NETWORK     2017-07-08 09:54:35

  How to play with cross domain request

What is cross domain request In simple, cross domain request is to request resource from other domain in one domain. Note, the "other domain" doesn't just mean domain name only, it includes much more. If the protocol, domain name, port is not the same, two domains will be considered different.  Below example describes what is considered as different domain. http://www.a.com/a.jshttp://www.a.com/b.js               # Same domainhttp://www.a.com/lab/a.js &nb...

   FRONT END,JSONP,CROSS DOMAIN,CROSS ORIGIN,CORS,DOCUMENT.DOMAIN,WINDOW.NAME     2016-11-06 00:48:54

  Use of Erlang in WhatsApp

After many years, people are still discussing whether Erlang is a small language. People have all sorts of doubt about it, but with the appearance of WhatsApp, we may change our mind. What is WhatsApp, from its official website: WhatsApp Messenger is a cross-platform mobile messaging app which allows you to exchange messages without having to pay for SMS. The more funny thing is the main developer of WhatsApp Rick Reed worked in Yahoo and SGI before he joined WhatsApp and he didn't have any know...

   Erlang,WhatsApp,Architecture     2013-06-16 03:03:46

  The magic of go:linkname

When writing Go program, there is frequent need on using time.Sleep() function to pause the logic for some time. And if jumping to the definition of this function, can see below definition: // Sleep pauses the current goroutine for at least the duration d. // A negative or zero duration causes Sleep to return immediately. func Sleep(d Duration) I's strange that there is no function body defined here. What happened? The actual definition of the function body is residing at runtime/time.go&nb...

   TRICKS,GO:LINKNAME,GOLANG     2022-04-10 08:39:00