SEARCH KEYWORD -- rationale
A possible way to recover deleted files on Linux
Last week I was generating a MD5 sum for an virtual machine image on one OpenNebula server: # ls -l test.img -rw-r--r-- 1 root root 10486808576 Oct 12 02:21 test.img # md5sum test.img At the same time I was clearing the files on the server on another terminal and deleted the above image file mistakenly with : # rm test.img Since this image file is 10GB, it took some time to remove this file from the server, so I used the Ctrl+Z command to suspend the remove command. [1]+ Stopped ...
The use of Erlang in Facebook chat
Erlang is a general-purpose concurrent, garbage-collected programming language and runtime system. It stays strong while building concurrency programs. Erlang provides language-level features for creating and managing processes with the aim of simplifying concurrent programming. It has large application in many chat service well known now such as Whatsapp and initial version of Facebook chat. Previously we have written an article Use of Erlang in WhatsApp. In this post, we will talk about...
The Death of File Sharing
Last week’s violent government attack on the hugely popular site Megaupload — the U.S. government arresting Belgian citizens in New Zealand, of all places, and stealing at gunpoint servers bank accounts and property — has sent shock waves through the entire digital world. The first shock was the realization that the gigantic protest against legislative moves (SOPA and PIPA) that would smash the Internet turned out to be superfluous. The thing everyone wanted to prevent is al...
File sharing,Death,Trend,Cloud 2012-02-01 04:44:06
Permutation implementation in Java
Permutation is a very basic and important mathematic concept we learned in school. It has very practical applications in real world. For example, in football. In simple, permutation describes all possible ways of doing something. For example, there are six permutations of the set {1,2,3}, namely: (1,2,3), (1,3,2), (2,1,3), (2,3,1), (3,1,2), and (3,2,1). In general, for n items, there are n! number of permutations to arrange these items. How can we implement this algorithm in programming programm...
Permutation,Implementation,Java,Sample 2015-03-26 02:18:14
Remove browse button from input type=file
In Web 2.0 era, many websites will ask the user to upload their avatar when creating their profile. In HTML, the input control we should use is input="file". This is a file control provided by the browser vendor and it should be ran in a sandbox for security consideration. Browsers don't provide ways to choose file from local and upload to the remote server without the input="file" control. There is one annoying part about the input="file", which is a default button named "Choose File" or...
file,html,browse,remove browse button 2015-07-12 05:17:51
Windows Security Improvements
Traenk is still upset by his recent dive into Windows security. So much more was promised when the merger of Windows 9x and NT lines was announced, so long ago. I honestly expected better.Long ago, Microsoft announced that it would merge the then NT and Windows 9x lines of products. Wow! That means a file access control system, logging, different accounts and filespaces for accounts! Finally! We would have a secure version of Windows for our homes!And we do hav...
Windows,Security,Improvement,Windows NT 2011-09-02 11:54:50
Undefined property or variable in JavaScript
JavaScript is a weak type language, and also you can use a variable or property where it's undefined. If we don't have correct ways to check whether a property or variable is defined, we may get unexpected results when we try to access the,. How can we check whether a property or variable is undefined? This is actually a somewhat tricky question. Let's start off with some facts about undefined and then see what kind of function is consistent with the ones we care about. JavaScript attaches type...
Property,Undefined,Array,JavaScript 2014-07-24 06:56:07
A simple example of git bisect command
git bisect is a very powerful command for finding out which commit is a bad commit when bug occurs. The rationale behind this command is that it pin locates the bad commit by divide and conquer. It divides the commit history into two equal parts, then determines whether the bad commit is at the first half or at the other half. This process will continue until the bad commit is located. Here is a really good example created by bradleyboy, this is a simple git repository which demonstr...
GITHUB,GIT,GIT BISECT 2019-07-12 10:31:51
The hidden risk of passing slice as function parameter
In Go's source code or other open source libraries, there are lots of cases where a slice pointer is passed to function instead of slice itself. This brings up a doubt why not passing slice directly as its internal is backed by an array pointer to point to underlying data? For example, in log package, the formatHeader function takes a parameter buf as type *[]byte instead of []byte. func (l *Logger) formatHeader(buf *[]byte, t time.Time, file string, line int) {} Let's understand the r...
GOLANG,SLICE,SLICE POINTER 2020-12-13 06:11:14
Password-less login
Most websites need user login in order to provide personalized content to visitors. The usual way is to request user to register an user account. Actually, this is not so appealing since if we need to remember one password for each website, it's troublesome, while for developers, it's their responsibility to protect password, once password is leaked, then it's a big headache to a website's business and reputation. So long time ago people started thinking about password-less login, this is a big ...
Password-lesslogin,Authentication 2012-11-05 12:29:55
RECENT
- Tips for Socializing With Friends During College
- Proximity Cards Do More Than Just Open Doors
- How to choose quality painted auto parts
- Oval engagement rings from MoonOcean: Elegance of form and individual approach
- Hologres vs AWS Redshift
- GoLand connect to Hologres
- A journey to investigate a goroutine leakage case
- Understanding Slice Behavior in Go
- Breaking Barriers: How 3D Printing is Democratizing Product Development
- The Power of Efficiency: 10 Practical Energy-Saving Tips for Tech Startups
- more>>