Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- memory



  An ex-Mozilla employee's view about Chrome

Chrome now becomes the most popular web browser on the planet because it provides excellent user experience. As a general user, we think it's fast and easy to use. How about those who develop web browsers? How do they think about Chrome? Abhinav Sharma ,an ex-Mozilla employee and now Facebook employee, shared his opinion about Chrome. Mozilla fights an uphill battle given Google's advertising budget and capacity to have some incredibly good engineers and designers work on Chrome. They also came ...

   Chrome,Mozilla,Firefox     2013-07-28 23:09:19

  Some thoughts about competitive programming

Many programmers may have experience in participating different kinds of coding competition while they are in college. Many of them are hired by top IT companies for their excellent performance during these kinds of coding competitions. There are some famous competitions organized by IT companies such as Google Code Jam, Facebook hackathons etc. Coding competitions are places where programmers can show their talents in programming and the skills they have. Usually programmers will solve some to...

   Coding,competition     2014-03-02 07:26:21

  The tips of learning Linux kernel

  As the Linux kernel has become one of the most gigantic and complex software project in the world, its complication scare many novices away. In this post, I will give some personal experience on how to learn Linux kernel, and hope these tips can offer some help to newcomers. (1) Download vanilla kernel and install it. Yes, I suggest you can find a physical machine, or if you really don’t have one at hand, virtual machine is also OK. Download the newest vanilla k...

       2017-07-28 22:53:11

  Data as code

What is a good command line parser API? A good command line parser should consider below 5 aspects: Support convenient help information generation Support sub commands, for example, git has push,pull,commit sub commands. Support single character option, word option, flag option and option with parameter. Support default option, for example, if no -port is set, set it as 5037 Support usage model, for example, tar's -c and -x is mutually exclusive, they belong to different usage models. Here are...

   Command line,API     2013-08-08 22:40:36

  System programming is still there

System programming is the practice of writing system software. System software lives at a low level, interfacing directly with the kernel and core system libraries. Your shell and your text editor, your compiler and your debugger, your core utilities and system daemons are all system software. But so are the network server, the web server, and the database. These components are entirely system software, primarily if not exclusively interfacing with the kernel and the C library. But nowadays more...

   System programming     2014-02-27 05:46:48

  What to put on whiteboard during an interview

As a programmer, you may go through different kinds of programming tests while interviewing for jobs. The most famous and difficult one may be the whiteboard test for lots of people. Usually the interviewer will give the candidate an algorithm problem or case study and ask the candidate to implement the algorithm with his/her favorite programming language. The code to be written is not too much but it requires the candidate to thoroughly consider different edge cases. So wha...

   TIPS,INTERVIEW,WHITEBOARD TEST     2014-08-29 20:34:52

  Misunderstanding about Android UI design

A few days ago I wrote a post trying to correct a lot of the inaccurate statements I have seen repeatedly mentioned about how graphics on Android works. This resulted in a lot of nice discussion, but unfortunately has also lead some people to come up with new, novel, and often technically inaccurate complaints about how Android works.These new topics have been more about some fundamental design decisions in Android, and why they are wrong. I’d like to help people better understand ...

   Android,UI,Priority,Background job,Smooth     2011-12-09 02:30:25

  How to maintain a software project?

For a software engineer, at least from my own experience, maintaining an existing software project would take up a considerable amount of time: adding new features, fixing tricky bugs, and so on. In this post, I will share some some tips about how to become a veteran from a novice quickly when facing a new project. (1) Get familiar with the background knowledge of the project. Every software has its own purposes and users: a device driver serves the specified hardware, whilst a SMS gateway helps...

       2017-08-05 02:20:46

  A Programmer’s Greatest Enemy

A programmer’s greatest enemy is getting stuck. A crucial skill in programming—and one that many of my beginning game programming students lack—is the ability to recognize when they’re stuck, to get out of being stuck, and to avoid getting stuck in the first place.Indeed, it’s a skill I’m still learning myself, although the contexts in which I still get stuck are shrinking with time, study, and experience.This morning, as I downloaded crash reports ...

   Programming,Enemy,Stuck,Game design,Crash     2011-10-15 15:06:46

  Coding tricks of game developers

If you've got any real world programming experience then no doubt at some point you've had to resort to some quick and dirty fix to get a problem solved or a feature implemented while a deadline loomed large. Game developers often experience a horrific "crunch" (also known as a "death march"), which happens in the last few months of a project leading up to the game's release date. Failing to meet the deadline can often mean the project gets cancelled or even worse, you lose your job. So w...

   Tricks,Advice,Gamedesign,Plan     2012-02-12 04:50:30