On Designing and Deploying Internet-Scale Services →
The system-to-administrator ratio is commonly used as a rough metric to understand administrative costs in high-scale services. With smaller, less automated services this ratio can be as low as 2:1, whereas on industry leading, highly automated services, we’ve seen ratios as high as 2,500:1. Within Microsoft services, Autopilot  is often cited as the magic behind the success of the Windows...
Bash process substitution | Arabesque →
Introduce the operator <() and >() in BASH.
This article introduces the architecture of Evernote services and the synchronization model of Evernote.
Bash shell expansion | Arabesque →
Operations in the shell very often involve repeating yourself or working with sets or ranges of information. This is where the various kinds of expansion in the shell are most useful, for generating a large number of shell tokens using a compact syntax. I’ll discuss two types here: filename expansions, which will be familiar to most shell users; and brace expansions, which seem to be in...
A Complete Guide to Mastering Eshell →
There are several shells for Emacs, but none can match the versatility and integration with Emacs like Eshell. Eshell is a shell written entirely in Emacs-Lisp, and it replicates most of the features and commands from GNU CoreUtils and the Bourne-like shells. So by re-writing common commands like ls and cp in Emacs-Lisp, Eshell will function identically on any environment Emacs itself runs...
10 Tools To Add Some Spice To Your UNIX Shell... →
There are some misconceptions that shell scripts are only for a CLI environment. You can easily use various tools to write GUI and/or network (socket) scripts under KDE or Gnome desktops. Shell scripts can make use of some of the GUI widget (menus, warning boxs, progress bars etc). You can always control the final output, cursor position on screen, various output effects, and so on. With...
Low Level Bit Hacks You Absolutely Must Know →
Low level bit hacks.
Series: Unix as IDE →
In this series of posts, I will be going through six major features of an IDE, and giving examples showing how common tools available in Linux allow you to use them together with ease. This will by no means be a comprehensive survey, nor are the tools I will demonstrate the only options. File and project management — ls, find, grep/ack, bash Text editor and editing tools — vim, awk, sort,...
emacs : hook explained most emacs major modes... →
most emacs major modes have “hooks” mechanism. It means, you can have emacs automatically run some code, whenever the mode is loaded. Here’s a example: (add-hook ‘org-mode-hook ‘soft-wrap-lines) ; make org-mode wrap long lines (defun soft-wrap-lines () “Make lines wrap at window edge and on word boundary, in current buffer.” (interactive) (setq truncate-lines...
10 Caching Mistakes that Break your App |... →
Relying on .NET’s default serializer Storing large objects in a single cache item Using cache to share objects between threads Assuming items will be in cache immediately after storing them Storing entire collection with nested objects Storing parent-child objects together and also separately Caching Configuration settings Caching Live Objects that have open handle to stream, file,...
The Scheduling Problem →
Algorithms for scheduling problems.