Forgot your password?

typodupeerror
Canada

Open Source could be half the solution to the Quebec's student protests. -> 2

Submitted by
HommeDeJava
HommeDeJava writes "Today, three professionnal associations which are promoting Open Source software join their voices to claim that use of Open Source software could cover half the increase of tuition fees and put and end to the student's crisis in Québec. (http://www.ledevoir.com/politique/quebec/351050/logiciels-libres)

Since more than 100 days Québec, about 150,000 students, roughly one-third of Quebec's post-secondary student population, are boycotting their courses and manifesting against increasing tuition fees and political corruption.
( http://www.vancouversun.com/news/Quebec+student+protests+what+keeping+them+motivated/6684697/story.html)

At the same time, the Charest Liberal government's has announced it will upgrade Microsoft licenses for about 1.4 billion dollars. (http://www.lapresse.ca/actualites/quebec-canada/politique-quebecoise/201203/30/01-4511088-quebec-doit-reduire-sa-dependance-a-microsoft-dit-le-pq.php)"

Link to Original Source

Comment: Re:Paper is ambiguous about what gets dropped (Score 1) 134

by jg (#39940355) Attached to: Controlling Bufferbloat With Queue Delay

AQM's don't usually look at the contents of what they drop/mark.

We expect CoDel to be running on any bulk data queue; voip traffic, properly classified, would be in a independent queue, and not normally subject to policing by a CoDel.

While 10 years ago, a decent AQM like CoDel might have been able to get latencies down for most applications where they should be, browser's abuse of TCP, in concert with hardware features such as smart nics that send line rate bursts of packets from single TCP streams has made me believe we must also do fair queuing/classification to get the latencies (actually, jitter) where they need to be due to these "bursts" of packets arriving.

Comment: Re:Paper is ambiguous about what gets dropped (Score 2) 134

by jg (#39940325) Attached to: Controlling Bufferbloat With Queue Delay

The article's subtitle is: "A modern AQM is just one piece of the solution to bufferbloat." We certainly expect to be doing fair queuing and classification in addition to AQM in the edge of the network (e.g. your laptop, home router and broadband gear). I don't expect fair queuing to be necessary in the "core" of the network.

I'll also say that an adaptive AQM is an *essential* piece of the solution to bufferbloat, and a piece we've had no good solution to (until, we think, now).

That's why this article represents "fundamental progress".

Comment: Re:oversimplified PR noise ignores decade of resea (Score 5, Interesting) 105

by jg (#39498867) Attached to: Linux 3.3: Making a Dent In Bufferbloat?

You are correct that replacing one bad constant with another is a problem, though I certainly argue many of our existing constants are egregiously bad and substituting a less bad one makes the problem less severe: that is what the cable industry is doing this year in a DOCSIS change that I hope starts to see the light of day later this year. That can take bloat in cable systems down by about an order of magnitude, from typically > 1 second to of order 100-200ms; but that's not really good enough for VOIP to work as well as it should. The enemy of the good is the perfect: I'm certainly going to encourage obvious mitigation such as the DOCSIS changes while trying encourage real long term solutions, which involve both re-engineering of systems and algorithmic fixes. There are other places where similar "no brainer" changes can help the situation.

I'm very aware of the research over a decade old, and the fact that what exists is either *not available* where it is now needed (e.g. any of our broadband gear, our OS's, etc.), and *doesn't work* in today's network environment. I was very surprised to be told that even where AQM was available, it was often/usually not enabled, for reasons that are now pretty clear: classic RED and derivatives (the most common available) require manual tuning, and if untuned, can hurt you. As you, I had *thought* this problem was a *solved* problem in the 1990's; it isn't....

RED and related algorithms are a dead end: see my blog entry on the topic: http://gettys.wordpress.com/2010/12/17/red-in-a-different-light/ and in particular the "RED in a different light" paper referenced there (which was never formally published, due to reasons I cover in the blog posting). So thinking we just apply what we have today is *not correct*; when Van Jacobson tells me RED won't hack it (which was originally designed by Sally Floyd and Van Jacobson) I tend to believe him.... We have an unsolved research problem at the core of this headache.

If you were tracking kernel changes, you'd see "interesting" recent patches to RED and other queuing mechanisms in Linux; this shows you just how much such mechanisms have been used, that bugs are being found in this day and age in such algorithms in Linux: in short, what we have had in Linux has often been broken, showing little active use.

We have several problems here:
      1) basic mistakes in buffering, where semi-infinite statically sized buffers have been inserted in lots of hardware/software. BQL goes a long way toward addressing some of this in Linux (the device driver/ring buffer bufferbloat that is present in Linux and other operating systems).
      2) variable bandwidth is now commonplace, in both wireless and wired technologies. Ethernet scales from 10Mbps to 10 or 40Gps.... Yet we've typically had static buffering, sized for the "worst case". So even stupid things like cutting the buffers proportionately to the bandwidth you are operating at can help a lot (similar to the DOCSIS change), though with BQL we're now in a better place than before.
      3) the need for an AQM that actually *works* and never hurts you. RED's requirement for tuning is a fatal flaw; and we need an AQM that adapts dynamically over orders of magnitude of bandwidth *variation* on timescales of tens of milliseconds, a problem not present when RED was designed or most of the AQM research of the 1990's done. Wireless was a gleam in people's eyes in that era.

I'm now aware of at two different attempts at a fully adaptable AQM algorithms; I've seen simulation results of one of those which look very promising. But simulations are ultimately a guide (and sometimes a real improving insight): running code is the next steps, and comparison with existing AQM's in real systems. Neither of these AQM's have been published, though I'm hoping to see either/both published soon and their implementation happening immediately thereafter.

So no, existing AQM algorithms won't hack it; the size of this swamp is staggering.
                                                                                                                  - Jim

Comment: Re:I would (Score 2) 504

This is wrong, in my opinion. Expanding education is a great idea, but do so by teaching yourself new languages or platforms, not by degrees.

Right now, Ruby on Rails is an extremely hot technology. Learn it, and there are tons of rails jobs out there for you to jump in to. I promise that your education level will not matter as long as you can show you are good.

I'm sure the same is true for django, node.js, iOS/Cocoa development, and anything else that is "hot" technology. If anything, focusing on C++ and Java will put you into more competition for job spots, since the market for C++/.NET/Java engineers may indeed be tight right now.

Comment: Re:They are not really new either (Score 1) 435

by GreyWolf3000 (#39274445) Attached to: New Programming Languages Come From Designers

I agree with every statement but the last. Ruby's internal implementation is very different from smalltalk. It's syntax from the ground up is very different from smalltalk. It's syntax isn't even convoluted -- can you qualify what you mean by that? About the only convoluted part of the syntax I've found is the lambda/proc/block syntaxes -- they should seriously cut down the number of ways to create anonymous methods.

Javascript does it right with function(){} syntax, but they don't have any way of creating blocks.

Oh, I get it!! "The BEACH goes on", huh, SONNY??

Working...