Please create an account to participate in the Slashdot moderation system


Forgot your password?

Comment Failure to scale worse than crashing (Score 2) 285

We had a program that was doing session matching of RTP streams (via RTCP). We had to be able to handle a potentially very high load.

Things had been going OK - development progressing, QA testing going well. And then one day our scaling tests took a nosedive. Whereas we had been handling tens of thousands of RTP sessions with decent CPU load, suddenly we were running at 100% CPU with an order of magnitude fewer sessions.

I spent over a week inspecting recent commits, profiling, etc. I could see where it was happening in a general sense, but couldn't pin down the precise cause. And then a comment by one of the other developers connected up with everything I'd been looking at.

Turns out that we had been using a single instance of an object to handle all sessions going through a particular server, but that resulted in incorrect matching - it was missing a vital identifier. So an additional field had been added to hold the conversation ID, and an instance was created for each conversation.

Now, that in itself wasn't an issue - but the objects were stored in a hash table. Objects for the same server but different conversations compared non-equal ... but the conversation ID hadn't been included as part of the hashcode calculation. So all conversation objects for a particular server would hash the same (but compare different).

We had 3 servers and tens of thousands of conversations between endpoints. Instead of the respective server objects being approximately evenly spread across the hash map, they were all stuck into a single bucket per server ... so instead of a nice amortised O(1) lookup, we instead effectively had an O(N) lookup for these objects - and they were being looked up a lot.

The effect was completely invisible under low load and in unit tests. The hash codes weren't verified as being different in the unit tests as there was the theoretical possibility that the hashcodes being verified as different could end up the same with a new version of the compiler/library/etc.

Comment Re:VPN (Score 1) 45

What I'm getting is actually irrelevant to how Turnbull has acted, but for full disclosure, I was due to have had FTTP build in progress by now. I'm currently slated to have FTTN build started sometime in the 12 months. And I will be paying the money to apply for FoD and we'll see just how eager they are to follow up with that ...

If I had been in a fixed wireless area I'd have been pretty happy - I probably would have had it by now, and could have been on the 50/20 trial (my ISP is part of the trial).

Comment Re:VPN (Score 1) 45

Nothing Malcolm Turnbull says should be believed. There have been calls by this same government that using a VPN should be illegal, and it wouldn't surprise me in the slightest if they tried to get legislation to that effect passed.

Go read up on exactly what Turnbull (and the current government) promised about the NBN prior to the last election and everything that has gone on since.

Not only has he broken every promise or implied promise that he made before the election, but he's then gone on to make further promises that he's continued to break. Is a country using FTTN? Point at them as a shining example. Does that same country then switch away from FTTN? Either misrepresent what they're doing, or never mention them again!

The man is a consumate politician - never answers a question; immediately attacks all critics; and both claims credit for everything the previous government did (or set up and couldn't be stopped) and blames them for all the failings of the current government in the same breath. And somehow manages to keep a lot of people believing that he actually knows what he's talking about and should be believed.

The only thing he's kept to has been Tony Abbot's directive to "destroy the NBN".

Comment Re:That was the polite version (Score 1) 97

That would be "Golden Arse".

If blood were taken that way, I think you'd probably get a very different type of person doing it. SLAP, SLAP, SLAP - nope, the vein still hasn't risen up, time to get the paddles ;)

On a serious note, many thanks to James and the researchers who discovered this. Wasn't an issue for my family (Dad O-, mum O+, and my sister is O+ so OK for her too) but a literal lifesaver for many other families.

Comment Re:I'm not an encryption expert by any means... (Score 2) 220

If you know the password, your (human) perception would be that it takes slightly longer to open. The actual processing time required though would be significantly greater.

If you don't know the password, it takes that extra processing time *for each password you try* i.e. it's multiplicative. So if you're trying 300 passwords, for the part which takes 300x as long per password, it's now 90000x as long (for that part) to go through the full list.

Comment Re: Two languages (Score 3) 466

So exactly what do you get with Groovy that you don't get with Jython (Python on the Java VM)? Apart from different syntax of course ...

One of the great things about Python is it runs just about anywhere. There are even embedded versions.

The only real problem with Jython is it doesn't implement Python 3 yet.

Comment Working from home changes things a bit (Score 1) 717

I work from home ~95% of the time. I try to stick to a 40-hour week, but quite often I push into 45 or 50 hours.

The thing is, I don't have a commute. I start working almost immediately after waking up; eat breakfast while going through emails from the US; take a few breaks during the day (including for lunch), and usually finish around 3pm.

But if I'm heavily involved in something (I'm a software developer), I might keep working until 5pm, or even dinner. If I do that a couple of times in the week, I've hit 45+ hours.

I had a commute, that would be 40 hours a week *plus* 5-10 hours depending on traffic. Plus as a contractor I'm billing for all the hours I work ...

Comment Re:Political? Shouldn't Be (Score 1) 1010

"here in Australia" - not British ;)

Unfortunately, the voting system in the US (plurality) is heavily biased towards a two-party system (whatever the intentions of the founding fathers). It's better here with an instant-runoff system, but still not ideal (there are still strategies where voting for your preferred candidate is not the best option, but they're much much rarer, and almost impossible to predict where it would be effective).

What does happen in Australian elections (where voting is compulsory - approximately 98% of eligible voters voted) is that a small number of swing voters can have a disproportionately large effect in our lower house. The current government won in a landslide in terms of numbers of representatives (90 to 55), but only had 53.5% of the two-party preferred votes (there are also a couple of independents).

Comment Re:Political? Shouldn't Be (Score 0) 1010

If you mean bipartisan by "center [sic] ground" then I'd agree.

However, I don't think it's left vs right so much as centre-right (Democrats) vs right-extreme right (Republicans). Very few are actually on the left anymore in the US (and it's going that way here in Australia as well unfortunately).

There might even be less bipartisanship here - our current government got in on an "Anything Labor did was bad, we have no policies of our own" platform ... and damn are they delivering on their lack of policies.

Every nonzero finite dimensional inner product space has an orthonormal basis. It makes sense, when you don't think about it.