Relying on short-circuit evaluation instead of using the IF control structure Examples of where I've started migrating to short-circuit evaluation:

PHP

$id=0;//initialized in case of no result
$r=mysql_query(SQL);
if($r &amp;&amp; mysql_num_rows($r)&gt;0){
  list($id)=mysql_fetch_row($r);
}


becomes

$id=0;
$r=mysql_query(SQL);
$r &amp;&amp; mysql_num_rows($r)&gt;0 &amp;&amp; list($id)=mysql_fetch_row($r);


JavaScript

var Req=jQuery.ajax(OBJECT);
//Something has happened and now i want to abort if possible
if(Req &amp;&amp; Req.abort){
  Req.abort();
}


becomes

var Req=jQuery.ajax(OBJECT);
//Something has happened and now i want to abort if possible
Req &amp;&amp; Req.abort &amp;&amp; Req.abort();


I'm familiar with the short if style of 

if(Req &amp;&amp; Req.abort) Req.abort();


but it feels clunkier than short-circuit evaluation.
This is an abuse of short-circuit evaluation.  It's not immediately obvious what the intent is.  Sure, i can eventually see that you're getting an ID, calling Req.abort(), whatever.  But i shouldn't have to decipher a line of code first to figure out what it does.
Conciseness never trumps readability in source code.  (Sure, minifying/packing JS has its benefits.  But you don't write packed/minified code; you start out with decent code and then run a tool on it.)

Since your intent is to do the one thing if the other stuff is true, the code should say that.