Forgot your password?
typodupeerror

Comment: Re:Wake up (Score 3, Insightful) 383

by Charan (#33153348) Attached to: Steve Furber On Why Kids Are Turned Off To Computing Classes

Yeah. Why teach the applications practical to 95% of white collar jobs instead of programming, which most kids won't be interested in, fewer will 'get' and hardly any will ever do professionally?

You could say the same about cellular biology, chemistry, quantum mechanics, calculus, and music taught at the high school level. Most people won't professionally develop those skills, but they're better off for having been exposed to the fundamentals. Any maybe out of the breadth of subjects you throw at a young student, they'll find their passion and stick with it. Why exclude programming from that mix?

Comment: Re:Now YOU may be on to something.... (Score 1) 742

by Charan (#31888752) Attached to: Why Linux Is Not Attracting Young Developers

While servers may be "old hat," the new breed of social networking and cloud computing sites are still innovating in this area. The traditional idea of large, fast machines running big relational databases is dying. Check out the recent rise of Bigtable, MapReduce, Memcached, and especially NoSql among service providers.

There's real innovation happening on the server side to enable the current generation of mobile devices. The handheld clients may be the sexy part of computing right now, but they couldn't do much without data centers backing them up.

Comment: Re:Since I actually read the article (Score 1) 410

by Charan (#31483876) Attached to: How To Guarantee Malware Detection

Well, to quote their tech report:

The malware detection algorithm involves the following steps on the client machine:... (5) Policy: Execute the verification policy. This could involve reporting the memory contents of the client device to the verifying party, or the execution of any task that should preferably be run in a safe environment. This may be done using whitelisting or blacklisting approaches, and may involve the use of heuristics to scan the swap space and secondary storage in general. The implementation of the policy is beyond the scope of this paper, as we only deal with how to assert the absence of active malware herein. [orig. in italics]

So you're right, their technique really only catches against one thing: a malicious (or infected) operating system that guards its dirty bits from an OS-level verifier by playing tricks with the verifier's address space. You still need another checker to catch all the conventional viruses out there that don't play this particular game.

Comment: Re:Strange limitation (Score 4, Insightful) 407

by Charan (#31477230) Attached to: Good Language Choice For School Programming Test?

I'm sure the CPU time limit would be generous enough that it won't matter if your programming language is interpreted 10x slower than hand-tuned assembly. They want to make sure you aren't using a brute-force O(n^3) algorithm when a linear one would work well enough.

Plus, the judges need a rule to allow them to terminate programs that may be stuck in infinite loops. Otherwise, a contestant could delay the results of a competition indefinitely.

(Imagine: "This competition was rigged! The judges killed my program before it had a chance to finish. It was working fine, and I was the first one to submit answers to all the problems. What? So it has a long start up time. You don't have a rule against 100-hour programs.")

Comment: Re:Editors and Debuggers (Score 1) 310

by Charan (#30836572) Attached to: What Tools Do FLOSS Developers Need?

SLIME looks very useful, so long as the only thing I need to debug is Emacs itself. I can't find the part in the SLIME manual where it helps me write and debug programs written in any of the languages supported in Visual Studio. The one I care about is C.

If SLIME really can help me, I'd love to use it. It does look quite nice.

As an aside, if you believe that open source developers write tools to scratch their own itches, does this mean that more people need to debug Emacs than need to debug any other program? ;)

Comment: Re:Single computer and single monitor!? (Score 1) 628

by Charan (#30074520) Attached to: At My Computer Desk, I Use...

My main computer with its 24-inch monitor is where I get my coding done. Specs: Core 2 Duo 3GHz w/ 4GB RAM. Its normal workload: xterm and a few emacs windows, with an occasional compile.

For everything else, the laptop on the side (with 12-inch display) runs my email, IM, IRC, RSS, iTunes, and calendar. Specs: 667 MHz PowerPC, 640 MB RAM. Yes, my workload is backwards :)

Comment: Re:6%?? Of what system? (Score 4, Informative) 168

by Charan (#30063970) Attached to: Scientists Unveil Lightweight Rootkit Protection

Reading the research paper, the 6% overhead looks like it comes from having the kernel call into the hypervisor every time it allocates or frees an object that contains a kernel hook (a.k.a. function pointer). The designers explicitly state that they use non-paged memory to store the protected kernel hooks.

Comment: Re:Use the OS video libraries (Score 1) 392

by Charan (#28631521) Attached to: HTML 5 should support ...

To display an image, at some point in some program, you'll see, if image is PNG, send it to libpng; if image is jpeg, send it to libjpg; .... We're just arguing about where that code belongs.

You could put it in the browser. Then you get a program that links directly with libfoo to display all the images it wants. My guess is that browsers do this now. It'd be the same thing to have Firefox link directly to x264 and libogg to display movies.

The alternative is to use another layer of indirection. Have a new library/system service that a browser can throw a buffer at and say "go render this." The service then discovers its type and calls libpng, libavg, .... This would be something like linking with VLC.

Comment: Re:Death knell (Score 3, Insightful) 361

by Charan (#28278749) Attached to: Apple Removes Nearly All Reference To ZFS

What good is a fault tolerant file system if it isn't tolerant of faults?

Any time you read about a product that guarantees perfect fault tolerance, there is always a list of constraints that must be met for that claim to hold. You probably won't ever see this list marketed, but it's there somewhere.

I haven't looked into this, but it sounds like ZFS is fault-tolerant given a system model where data can change once it's on-disk, but otherwise system components are fail-stop. So if you ask a hard disk to perform a write barrier and flush its data to disk, the disk will either do so and report success, it will issue an I/O error, or it will catch on fire. Any way, ZFS will handle the situation correctly.

Of course, the immediate next question is whether that failure model is realistic. Turns out it isn't. Some hardware will report 'write barrier complete' when it still has unwritten data in its buffer.

If you can't count on your hard disk to flush its caches or even order writes correctly, I don't think it's possible to build any fault-free file system on top of the drive.

Comment: Re:why get one of these when (Score 1) 246

by Charan (#27748521) Attached to: USB-Based NIC Torrents While Your PC Sleeps

As far as I understand it, wake-on-lan would let me SSH into one computer so I can send a magic packet to my real to computer to wake it up, and then I can SSH in to the computer I wanted to in the first place.

Somniloquy gives the same functionality transparently, without needing that extra step, without any other network user being aware that the computer was asleep in the first place.

If you read the referenced paper, they do talk about why they don't like wake-on-lan in section 6.

nohup rm -fr /&

Working...