Recent submissions

Comment · 10 years ago
We eventually tracked this down to some of the stabilisation algorithms – they work fine within the intended time frames, but there's an inefficiency in them that gets worse the longer the wormhole is open and eventually they can't keep up with the shifts.

An allusion to the accumulated rounding bug that caused the Patriot missile incident in 1991? That system was likewise intended to operate for only short periods.

From https://autarkaw.wordpress.com/2008/06/02/round-off-errors-a...

In the Patriot missile, time was saved in a fixed point register that had a length of 24 bits. Since the internal clock of the system is measured every one-tenth of a second, 1/10 expressed in a 24 bit fixed point register is 0.0001100110011001100110011 (the exact value is 209715/2097152).

On the day of the mishap, the battery on the Patriot missile was left on for 100 consecutive hours, hence causing an inaccuracy of 9.5E-8x10x60x60x100=0.34 seconds.

The shift calculated in the range gate due to the error of 0.342 seconds was calculated as 687m. The shift of larger than 137m resulted in the Scud not being targeted and hence killing 28 Americans in the barracks of Saudi Arabia.

Comment · 11 years ago
What are the differences in implementation of the languages that cause some to show a rounding error and others not?
Comment · 12 years ago
Do you find that the message broker makes that implementation easier/better than just using a database table to store the incoming messages until they can be processed?

I've worked on enterprise products, off-the-shelf and in-house, which use message brokers, and every time I could not fathom how the extra complexity was justified. If the messages were just queued in a simple database table instead, the implementations would have been much easier to work with: easier setup and admin (it's just part of the existing database), easier to check and monitor (just select counts from the table), easier to inspect the pending messages and fix problematic messages. In all cases I get the feeling the architects were just looking for an excuse to use a new technology.

I can only see high-load scenarios as a possible justification, where the volume of incoming message data is physically too much for the RDMS.

Comment · 12 years ago
Comment · 12 years ago
Although it's quite a bit older than re-linq, I'll throw a recommendation in for IQToolkit: http://blogs.msdn.com/b/mattwar/archive/2008/11/18/linq-link...

I used it to build a LINQ provider for a legacy mainframe database system, abstracting away the incomprehensible table and column naming, weird date systems, EBCDIC, and other nastiness involved in querying that system using straight-up SQL.

One thing I found is that implementing a custom LINQ provider gives you a better understanding of how Entity Framework runs your queries. You get to see how queries get split up into the parts executed in the CLR versus the parts that get translated, and how expressions get rearranged and rewritten.

Comment · 12 years ago
Internet Explorer doesn't automatically update because every company disables the automatic updates.

Developing for Internet Explorer 8 is my present-day reality too, but if IT departments were instead mandating Firefox 3.0 or Chrome 1.0 I'm not sure how much better it would be.

Comment · 13 years ago
I don't get it. His first example is that since the string replace method takes a callback as its second argument, you can use it to run code. So if you happen to find an app that injects unescaped user input into Javascript, you could enter the string alert(1)".replace(/.+/,eval)// and have it run the alert.

But if the app is injecting unescaped user input into code, wouldn't a simple ";alert(1);// achieve the same thing? Why do you need to be tricky?

The examples seem to be based on the premise that web apps commonly forgo the simple escaping of quotes, and instead implement a complex parsing and analysis of user input as code to identify malicious statements, which can be defeated as long as you obfuscate enough.

Comment · 13 years ago
Why is it such a huge revelation that advertising is created to benefit a business?

You've got a beautifully produced and captivating video, which makes no secret about advertising something. People enjoy it and engage with it, but then suddenly catch themselves: "Oh no! What if this advertisement was created... for profit?"

Of course it was! So what?

Comment · 13 years ago
I set my time zone to +10:00 in settings, and now my web site is "up since -9 hrs, -40 mins".

Other than minor things it's working well so far.

Comment · 13 years ago
To help others decode the acronyms, and to explain the situation...

In 2009, the Australian Labor Party, in power as the federal government of Australia, initiated construction of Australia's National Broadband Network (NBN). The network is replacing copper phone lines across Australia with a new fibre to the home (FTTH), also known as fibre to the premises (FTTP) network, meaning optical fibre will be run around the country, down every street, through every front yard, and into our houses (except some regional areas, where satellite will be used).

Two days ago, a federal election was held. The Australian Labor Party was defeated by the Coalition, an alliance led by the other major political party in Australia - the Liberal Party. The Liberal Party's policy for the NBN is to build fibre to the node (FTTN) instead, meaning optical fibre will be run to cabinets on street corners, which will service small areas, but the existing copper lines will still be used for the "last mile".

The petition is to convince the Liberal Party, now in power, to stick with the original plan of FTTH.

Comment · 13 years ago
Malaysian Prime Minister Najib Razak has weighed in: "The insolent and impudent act by the young couple who insulted Islam showed that freedom of expression and irresponsible opinion can jeopardise the community"

Yet the Malaysian constitution includes "every citizen has the right to freedom of speech and expression".

Comment · 13 years ago
@githubstatus: Working with our upstream providers to mitigate a rather large DDoS at the moment.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton