SEARCH KEYWORD -- Good code



  Deep clone of JavaScript object

In JavaScript world, it's frequently seen object clone. Normally when creating a clone of an object, it's only the reference being cloned but not all contents. In some scenarioes, it's desired to clone all the content instead of just the reference such that any change made to the cloned object will not change the original object. Differences between shallow clone and deep clone can be as simple as: Shallow clone : Only the object reference is cloned but not the content Deep clone : Clone all co...

   JAAVSCRIPT,DEEP CLONE,DEEP COPY,SHALLOW CLONE,SHALLOW COPY     2016-10-31 00:27:24

  5 Great Hacks to Learn Before Launching a Startup

Maybe months or years have gone planning for a startup and finally you are ready to enter into the world of small business.  Excited enough to hit the “Launch” button. As the bulk of your business is good, so the rest of it must be the same. You think like that, right? But hey, you are wrong there. You may be selling the next big thing, but it does not matter until you have frozen your brand name in the niche market and gained a decent amount of credibility. But you can do that...

   SOFTWARE,STARTUP, ENTREPRENEUR     2016-06-21 09:33:05

  Chrome overtakes IE as the No.1 browser

According to data from market research company StartCounter, by May 2012, Chrome has overtakes IE as the No. 1 web browser globally. Firefox and Safari is following IE to be 3rd and 4th most popular web browser.In May, market share of Chrome is 33%, while IE only gets 32%. Firefox is slowly dropping, which has a share of 25%.  However, with release date of Windows 8 approaching, IE 10 will also be shipped with Win8, at that time, the number of users who use IE may increase because according...

   Chrome,No.1,IE,StatCounter     2012-05-21 06:03:04

  new expression vs operator new in C++

In C++, there is a new mechanism for memory allocation and management. When we want to initialize an object, we can use new expression to get enough memory for storing an object and also initialize the object. When we want to create a new object, we can use new expression, for example: Obj *obj=new Obj; Basically, what the new expression does is to allocate enough memory for storing the obj object, in addition, it will initialize the object with some intial values. Also, there is an operator new...

   C++, new expression, operator new     2012-08-12 11:42:39

  Why should we drop or reduce use of MD5?

MD5 is a frequently used one-way hash algorithm, it is commonly used in following situations: Check data integrity. We take hash of the data stored in two different places and compare them. If the hash results are the same, then there is no need to check the actual data. This utilizes the collision-resistant feature. Two different data block will have little chance that their hash values will be the same. Many data service providers use such technique to check repeated data to avoild repeating...

   MD5,Vulnerability,attack     2012-09-29 04:47:49

  An experience of fixing a memory-corruption bug

During the last 4 months, I was disturbed by a memory-corruption bug, and this bug will cause program crash. Until last Monday, I found the root cause and fixed it. This debug process is a difficult but memorable experience, so I will share it in this article.   My program works as a SMS Hub. When it receives a SMS, it will allocate a structure in heap memory like this: typedef struct { ...... int *a[8]; ...... } info; After processing the SMS, the program will free the m...

   c, debug, unix, solaris, multi-thread     2014-05-04 03:52:43

  Email Modular Design – An Overview

Email is one of the most prevalent forms of business communication. Businesses all over the world send hundreds of email every day to communicate with their customers in a personalized, intimate way, providing useful information, special offers, records of business transactions, official news or messages and much more. Right from one or two-man projects to large Fortune 500 companies, every business entity uses emails on a daily basis to stay in touch with their base of customers. As a company g...

   email     2014-08-14 08:22:03

  10 principles to start your own business

Guy Kawasaki is a Silicon Valley venture capitalist, bestselling author, and Apple Fellow. He was one of the Apple employees originally responsible for marketing the Macintosh in 1984. He is currently a Managing Director of Garage Technology Ventures, and has been involved in the rumor reporting site Truemors and the RSS aggregation Alltop. He is also a well-known blogger.We summarized 10 principles to start a new business from one of his presentations. 1. Make meaning in your companyThe most...

   Business,Guy Kawasaki,Tips     2012-05-18 12:11:20

  Efficiency of code execution

If you want to optimize your program codes, you need to find their Hotspot, i.e, the codes which are executed most frequently. If you can optimize this portion of codes a bit, you may gain much improvement of your code efficiency. Here I give you three examples about efficiency of code execution.1. PHP's Getter and Setter (From Reddit)This example a quite simple, you can skip it if you want.Consider the code below, we can find it's slower when we use Getter/Setter method to read a member variabl...

   Code, Efficiency,Analysis,Trick     2012-07-13 10:59:21

  Permutation algorithm with JavaScript

In secondary school, we have learned permutation. Basically, for n numbers, the number of permutations for these n numbers can be calculated to n! which is called 'n factorial'. But to display all the permutations on the screen, we need to use a recursive function. The problem is how to write this function.  Next I write a program to display the permutations for n numbers with JavaScript. First, we need to understand that from these n numbers, we can first take any one number from it, and t...

   JavaScript,Permutation,Algorithm,Impleme     2011-09-21 12:02:35