SEARCH KEYWORD -- Code coverage



  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

  Cracking the Data Lineage Code

What is Data Lineage?  Data lineage describes the life-cycle of data, from its origins to how it is manipulated over time until it reaches its present form. The lineage explains the various processes involved in the data flow of an organization and the factors that influence each process. In other words, data lineage provides data about your data.  Data lineage helps organizations of all sizes handle Big Data, as finding the creation point of the data and its evolution provides valuabl...

   BIG DATA, DATA LINEAGE,BUSINESS     2019-08-08 12:41:42

  Save QWidget as image

Qt library is an excellent GUI library for C++ programmers developed by Nokia and now is an open source project. Often, we may use QPainter to draw strings, lines or images on a QWidget. We can override the QWidget's paintEvent() method when we want to use QPianter object to draw something on a QWidget. If we want to save the items drawn on QWidget as image for later reference, what can we do? We can save a QWidget as an image. Here is the code for achieving this: QPixmap pixmap(this->size())...

   Qt,C++,QWidget,Image     2012-08-19 12:01:18

  CSS and HTML5 responsive images

With the popularity of Retina screen, the requirement of the images in the webpages is higher. How to make sure the image still clear while enlarging twice on retina screen? This brings much trouble to web developers, the good news is CSS3 and HTML5 is trying to change this, we can use response image. What is responsive image? It means user agent loads different images according to different resolutions of output devices, it will not waste bandwidth as well. In addition, it can load respective ...

   CSS3, HTML5,image-set,responsive image     2013-03-10 03:30:07

  How to upload file to FTP server using C# Asp.Net

This post is about uploading files to FTP server in asp.net development. You will learn step-by-step to upload files programmatically to FTP web server. All the examples shared in this post are intended by professionals to make you learn about the subject Here, I will explain you an example of Uploading Files to FTP Server programmatically in C#.Net. Using this approach, the Files will be programmatically uploaded to FTP Web Server. For example, I will create a function in which we will simply p...

   ASP.NET,DEVELOPMENT     2016-06-24 08:45:37

  Java Cipher encryption/decryption example

In Java, Cipher is the API for doing data encryption/decryption. Many cryptographic algorithms such as AES, DES, RC4 etc can be specified when creating Cipher instance. The Cipher instance calls the underlying algorithm specific implementation to do the actual encryption/decryption.  Before doing the encryption/decryption, a key needs to be created and it will be used to do the encryption/decryption. A sample program for performing all these is : import java.security.Key; import javax.cryp...

   Java, Java Security, Cipher, Example, Sample     2015-08-14 07:07:10

  What is good design?

Some quotes about good design from a Germany designer Dieter Rams in documentary "Objectified": Good design should be innovative Good design should make a product useful Good design is aesthetic design Good design will make a product understandable Good design is honest Good design is unobtrusive Good design is long-lived Good design is consistent in every detail Good design is environmentally friendly Good design is as little design as possible This brings up a question -- what...

   METRO,SIMPLICITY,GOOD DESIGN,PRINCIOPLE,UNIX PHILOSOPHY     2012-05-09 06:48:11

  5 Mistakes Developers Should Avoid before Launching Their API

Time is money in the API industry, and everyone wants to be timely for the API’s milestone event: its eventual launch. Delays in this event can be very costly, so the sooner the API can be integrated, the better. Many developers start their work knowing quite well that the clock is ticking. But prioritizing a quick launch—at the cost of everything else—can do a lot of damage in the long run. A rushed launch may result in unstable integration, a host of errors and bugs, lower en...

   TIPS,API DESIGN     2020-05-18 07:08:22

  Understand diff in Unix

diff is an important tool program in Unix. It is used to compare differences of two files, it is the foundation for code version control. If you type : $ diff <file_before_change> <file_after_change> diff will tell you what's the difference between these two files. The result may not be so easy to understand, so now I will show you how to understand diff. 1. 3 formats of diff diff has 3 formats due to historic reasons. normal diff context diff unified diff 2. Demo files For easy d...

   diff,Unix,version control,git     2012-09-03 10:49:36