News for hackers. Stuff that matters.

igorw

Re: on Tuesday March 10, 2026 @05:29AM (#47320901)
While Postgres did introduce skip scan in 18, it only works for equality matching: https://www.crunchydata.com/blog/get-excited-about-postgres-...
Re:Time-Travel Debugging: Replaying Production Bugs Locally on Saturday February 28, 2026 @04:42AM (#47192928)
Another approach is to record at a lower level and then reconstruct the series of events, eg.g. https://engineering.fb.com/2021/04/27/developer-tools/revers...
Re:I made my own Git on Tuesday January 27, 2026 @07:45AM (#46779251)
Random but y'all might enjoy. Git client in PHP, supports reading packfiles, reftables, diff via LCS. Written by hand.

https://github.com/igorwwwwwwwwwwwwwwwwwwww/gipht-horse

Re:Stack Machines: Notation Polish Reverse calculator on Tuesday December 03, 2013 @05:40AM (#6839561)
Re:Stack Machines: Notation Polish Reverse calculator on Monday December 02, 2013 @11:01AM (#6834433)
Hi, author here. Shunting-yard is actually what the next post in the series will be about. ;-)
Re:Flynn - Open Source PaaS powered by Docker on Wednesday July 17, 2013 @01:54PM (#6059092)
Without knowing too much about docker, service discovery over dns-sd and potentially mdns (aka bonjour/zeroconf) generally works quite well in a contained private network. And I would love to see a platform that supports it.
Re:Javascript SetInterval With Context on Saturday November 12, 2011 @10:14AM (#3227940)
The reason why `this` is set to the window is because of the way the `this` keyword is bound in JavaScript. It is bound at call time.

If at call time it is being called on an object, it will have the value of that object. Otherwise it will have the value of window.

    var obj = { f: function () { return this; } };
    
    // returns the object
    obj.f()

    // returns window
    var f = obj.f;
    f();
What is happening here is that the setTimeout() calls the lambda at some later point, and it's no longer in the context of the object.

An alternate fix for the issue would be:

    var obj = (function () {
        var that = {};

        that.doSomethingLater = function () {
            setTimeout(function () { console.log(that); }, 1000);
        };

        return that;
    })();

    obj.doSomethingLater();
An article on the subject (that also talks about call and apply): http://www.robertsosinski.com/2009/04/28/binding-scope-in-ja...
You've never tried to integrate two PHP projects, eh? As in: Whoops, you guys also have a class named "user"?
Re:Poking a sleeping giant on Tuesday November 01, 2011 @12:11PM (#3182718)
API?
Re:Can PostgreSQL pickup where MySQL left off? on Monday August 29, 2011 @06:51AM (#2936703)
Actually, phpBB 2.0.0 which was released in 2002 supported: IBM DB2, MS Access, MS SQL, MySQL3, MySQL4, Oracle... and Postgres 7.

But you are right, many of the other popular projects did not make this effort.

Next up: "text-align: centaur" (http://textaligncentaur.com).
> In JavaScript, there are two different ways to define a function: using the function expression and the function declaration statement, the latter having subtle restrictions. Move only has function expressions.

Except using named functions will also make your stack traces useful. Because function names tell you more than line numbers.