
Why work doesn’t happen at work
Intro to Agile Scrum in Under 10 Minute
Learn Scrum in under 10 minutes. This video is an introduction to the Scrum software development methodology. By the end of this fast-paced video, you’ll practically be a scrum master. You’ll know about burn down charts, team roles, product backlogs, sprints, daily scrums and more. You’ll also be ready to start implementing Scrum in your own team.
“XMLHttpRequest” => “HttpRequest”
“XMLHttpRequest” => “HttpRequest”. Make sense. news.dartlang.org/2012/08/breakiā¦
— Lim Chee Aun (@cheeaun) August 17, 2012
Using OneAuth with Sentry Auth Bundle
OneAuth by default utilize Laravel\Auth
for user authentication, however if you need to use other authentication bundle such as Sentry, following snippet shows exactly all you need.

Preview of Orchestra Platform
Getting Started with OneAuth Bundle
Anyone who has dealt with OAuth, OAuth2, XAuth and OpenID would agree that it’s a great approach but hard to code with. For example, if I choose to integrate my application with Twitter OAuth I probably can choose 1 out 5 libraries. What if I now need to integrate with Facebook? or Github? Would you want to have a library for each provider?
The problem has later solved in Rails, with OmniAuth and now ported over to PHP (FuelPHP) Land as NinjAuth Package. This is great! However since I already moved from FuelPHP to Laravel I figure Laravel need some OAuth love too and decide to port NinjAuth Package into OneAuth.
Using set_time_limit(0);
Set set_time_limit(0);
and run a shitload of queries, that sir is not a way to write a code.
You can do set_time_limit(0); so that the script will run forever – however this is not recommended and your web server might catch you out with an imposed HTTP timeout (usually around 5 minutes).
http://www.php.net/manual/en/function.set-time-limit.php#84563
That awkward code
<script type="text/javascript">
<!--
function MM_swapImgRestore() { //v3.0
var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_swapImage() { //v3.0
var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->
</script>
That awkward moment when you browse a prospect employer and you see this on their website.
Just crashed a browser today
Check out the code below, a simple JavaScript code:
var Lists = ['hello'];
for (var i = (Lists.length - 1); i--; ) {
console.log(Lists[i]);
}
Working fine? Yes but what happen when we change var Lists = [];
. It seem that for (var i = length; i--;)
would only stop at zero ONLY when the length is greater than zero.
Lesson learn, always test your code and assuming is root of evil.
dispatchMethod() WTF!
It might just be me but I really don’t find the logic of these code.
Taken from https://github.com/cakephp/cakephp/blob/master/lib/Cake/Core/Object.php#L115-133.
public function dispatchMethod($method, $params = array()) {
switch (count($params)) {
case 0:
return $this->{$method}();
case 1:
return $this->{$method}($params[0]);
case 2:
return $this->{$method}($params[0], $params[1]);
case 3:
return $this->{$method}($params[0], $params[1], $params[2]);
case 4:
return $this->{$method}($params[0], $params[1], $params[2], $params[3]);
case 5:
return $this->{$method}($params[0], $params[1], $params[2], $params[3], $params[4]);
default:
return call_user_func_array(array(&$this, $method), $params);
break;
}
}