Slashdot Mirror


User: Pseudonym

Pseudonym's activity in the archive.

Stories
0
Comments
5,184
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 5,184

  1. Re:Minors on Why YouTube Needs the Rights to Your Video · · Score: 1
    Seems like a rather stunning flaw in thier business model.

    My first reaction was: "Woah! YouTube actually has a business model?!"

  2. Re:Old debate on High-level Languages and Speed · · Score: 1
    And that's without getting into features of modern C (variable size arrays, language built-in complex numbers, restricted pointers, etc) that are not in C++ as far as I know.

    Apart from restricted pointers, all of these (or work-alikes) are in C++.

    C++ has std::vector, which is more useful for most applications than C's variable size arrays. There's some trickiness here because of the issue of calling the destructors of array elements when the array goes out of scope. Nevertheless, variable size arrays will most likely be in the next C++ standard.

    Most C++ compilers ship with complex number libraries. For those that don't, Boost has one along with quaternions and octonions. (I have to ask, though: What proportion of programs need complex numbers that it should be built into the language?)

    C++ doesn't have restricted pointers, but it comes close in one respect: Because C++ is more type-safe, the compiler is allowed to assume that pointers with different types don't alias. This does rule out certain types of potentially unsafe (though powerful if it's what you want) pointer hackery. (Yes, this happened to me once. I had a block of memory that I was using as an array of pointers that I knew was junk, and wanted to reuse it as a temporary array of pointer-sized integers. I had to jump through some hoops to convince the compiler.)

  3. Re:Old debate on High-level Languages and Speed · · Score: 1
    a = (int *) malloc(sizeof(int)*10);

    malloc is deprecated in C++. The strict C++ equivalent is:

    int* a = new int[10];

    But a good programmer would be more likely to write:

    vector<int> a(10);
  4. Re:Multiple processes on Should Servers be Mono-Process or Multithreaded? · · Score: 1
    Because there IS interaction between threads -- mutexes handling takes resources, too, and checking i/o status also requires time and syscalls (OS just supplies pending i/o information to its scheduler by itself). And because data access mechanism within your application is likely to be a much worse scheduler than scheduler in the OS.

    One of the worst offenders is memory deallocation.

    Yes, you heard that right: deallocation.

    A decent memory allocator these days has multiple memory arenas. When you allocate memory, the system tries to pick one that currently isn't in use and allocate from that. On deallocation, however, you have no choice: a block of memory must be returned to the arena from which it came. This usually means thread contention.

  5. Re:The First Rule on Deleted Screenplay Fails To Make Money · · Score: 1

    On the contrary, you don't need to lodge a copy at the copyright office to have copyright. On the other hand, it also could result in the story leaking, which is something that studios don't like.

    The right thing to do is to register it with the writers guild.

  6. Re:The First Rule on Deleted Screenplay Fails To Make Money · · Score: 1
    The First Rule of screenwriting is to back up everything on multiple formats, in multiple places.

    Actually, the rule is "always cover your arse" (or "ass" if you're in the US), of which this is a corollary.

    Similarly, why, do you suppose, did this "screenwriter" not lodge a hard copy (and possibly a CD) with his local writer's guild before entering into any negotiation whatsoever? Not only is it a useful offsite backup, it's proof that you had the story at a certain time, should the studio that you negotiate with decide to make a too-similar movie later. This omission alone suggests that this guy knew nothing at all about the business of screenwriting.

  7. Re:Ridiculous, and spreading FUD too... on eBay Bans Google Payments · · Score: 1
    I wonder why eBay believes Google Checkout is unsafe, unreliable and/or inconvenient?

    The stated reason is because Google Checkout doesn't have a proven track record.

    Compare this with PayPal, which has a proven track record. It's just that eBay doesn't want to admit what PayPal's track record proves.

  8. Re:WANTED: Surrogate Corporate Parents on AP Looks at Piracy, Misses the Point · · Score: 1

    Actually, "moral relativism" is what I call you, when you think that a particular moral is relative that I happen to think is absolute.

    And yes, that is definitional relativism.

  9. Re:Its remarkably easy to scam people on Portrait of an Identity Thief · · Score: 1

    If God did not exist, it would be necessary to invent him. -- Voltaire

  10. Re:Editors, please post flamebait stories in the A on Earth's Temperature at Highest Levels in 400 Years · · Score: 1
    Ever heard of the small state of California?

    Ever heard of the tiny freakin' rest of the world? No, of course not. You're all Americans.

    (You want flamebait, you got flamebait!)

  11. Re:Protection on Library Chief Criticized for Requiring Subpoena · · Score: 1
    I'd be far more grateful if my NEIGHBOR showed up, armed to the teeth, to give me a hand [...]

    I know the second amendment says "well regulated militia", but I didn't know that the regulation extended to mandatory training in hostage negotiation. Wow, I'm even more impressed with US gun law, now!

  12. Re:Take My Gun When You Pick Up Yours on Labs Compete to Build New Nuclear Bomb · · Score: 1
    The same could be said about Europe...

    Sure it could. But even during the European colonial period, they managed to convince themselves that they were actually spreading civilisation.

    Just to be clear: I'm not knocking the US. In particular, I'm not suggesting that any other country would do a better job. If the "War on the Latest Vaguely Defined Thing" has taught us nothing else, it's that there is no such thing as "the good guys". Nobody has pure motives, even when they're doing what they believe to be the right thing.

  13. Re:USA technology on Australia's Technological World Cup Advantage · · Score: 2, Interesting

    While the OP is modded as funny, there's actually a grain of truth here.

    (Full disclosure: I work in this area. In Australia. For the AIS. I'm currently working on two software/firmware projects involving rowing and boxing, in fact.)

    Let's suppose you're some researcher who has a new technology (picking an example at random from our group) that they want developed into something useful. Let's further suppose that it could have a number of applications. For example, let's suppose it could have uses in health care, in sports science (which is kind of like health care), or in the military.

    If this researcher were located in the US, they would go straight to the Department of Defense. A lot of that huge military budget that people like to complain about is spent on precisely this sort of thing. Someone has a new technology, they see a military application, so they go to defense to get it developed.

    If this researcher were located in Australia, Defence (with a "c", thankyou very much) is still an option. However, if you want to deal with less bureaucracy, sport is a real competitor. Again, there's an insane amount of money spent on sport, but a lot of it goes to this kind of research project.

    Once the sport or defence application has been developed, that's when you start looking at health. You'll need clinical trials etc, but by then, the technology will have already been proven, so the insane amount of money it takes to trial something for health won't be mis-spent on something that might not work.

    Now thinking about this from the point of view of a non-politically-aligned academic, for a moment, you can see the choice. Do I invest my time in possibly hurting people or possibly making them fitter? On politically tricky wars, or on politically uncontroversial-yet-high-profile gold medals?

    So now you understand the difference between science in the US and science in Australia.

  14. Re:Take My Gun When You Pick Up Yours on Labs Compete to Build New Nuclear Bomb · · Score: 1

    Now I agree with most of what you say (and the little that I disagree with is probably detail). However, there's one glaring omission.

    It's true that the US can't do everything. But it seems to carefully pick and choose what it will do. In fact, it's what the US doesn't do that speaks louder than what it does do.

    For example, the US seems to unconditionally support Israel with pretty much everything it does. Israel and the US are friends, and I have no problem with this in principle. Israel has a right to exist, it has a right to defend itself etc etc. No argument from me there. But being silent or using its security council veto power on every resolution condemning something that Israel has done speaks volumes. Israel has been wronged over the years, but it's hardly acted in a saintly manner in response.

    Perhaps a better example is Iraq. Why invade Iraq over non-existent WMDs and WMD programmes (later change your tune to it all being about human rights) but do nothing when there are other countries (Iran and North Korea being the obvious candidates) which have real WMD programmes and just-as-real, possibly worse, human rights abuses?

    It's not what the US does in these situations that speaks the loudest, but what they don't do, because it suggests quite strongly where the priorities lie.

  15. Re:Take My Gun When You Pick Up Yours on Labs Compete to Build New Nuclear Bomb · · Score: 1
    When Europe can unite and show a willingness to strap on their boots and go kick some ass for democracy [...]

    The US has actively supported dictators over democracies, possibly even acting in the overthrow of democracies, especially in Central America.

    Now don't get me wrong. The US has a better claim to global leadership that pretty much any other country. I'm not even suggesting that all of these US activities were "wrong" in a higher-moral sense. But don't think for a minute that its motives are altruistic, or serve the principle of democracy. It has no qualms about doing nothing or acting against its own stated principles if that would be more self-serving.

  16. Re:2x speedup, not 5% on The End of Native Code? · · Score: 1
    The site uses many (dozens, even) of different algos to make the comparison.

    ...and many of them are biassed. In particular, any "same way" test is going to discriminate against some language. This is especially true of the more declarative languages. In such a language, for example, mutable arrays are usually less elegant and less efficient, but such languages almost always have other higher-level data structures which are more appropriately used in places where you'd use an array in C.

    IMO, a much fairer benchmark is something like Pseudoknot, which takes a nontrivial real-world problem and lets each language solve it in an idiomatic way. Unfortunately, the results are ten years old now. It'd be interesting to see how Java does.

    My application area has almost always been what I would describe as "engine" work. That is, I'm creating huge number-crunching black boxes. Akin to a database. That might help you to appreciate my biases...

    My previous job was on developing a high-performance database server. Believe me, I know where you're coming from.

    Database servers, linear algebra systems, operating system kernels and the like all have several features in common. First, performance almost always really matters. Secondly, and more importantly, they're all useless on their own. A database server is useless without an application, a linear algebra library is useless without client code, and an operating system kernel is useless without user tasks to manage.

    Yeah, your black boxes are, no doubt, very important. But someone, eventually, has to feed information into those boxes and extract and interpret the results. That's a high-level task, for which raw performance may not be as important as flexibility.

  17. Re:Better... on Microsoft Misrepresenting WGA's Functionality? · · Score: 1

    Actually, it's one of the few "free software" arguments that actually flies with business. I get the freedom to change or upgrade what I want, when I want, regardless of whether or not the vendor still supports it. (With FOSS, anyone can support it.) And, I can be more sure that I get no nasty surprises, like phone-home software hidden in a bunch of security patches. Freedom from the vendor is a powerful freedom indeed.

  18. Re:two things on The End of Native Code? · · Score: 1
    I always laugh when I see people point out benchmarks where Java is compared to C in terms of the Linpack benchmark -- entirely ignoring the fact that in both cases, the actual 'work' is being done in neither Java nor C, but in a BLAS library that is written in Fortran. It's hardly suprising they have similar speeds -- they're running the exact same routines, from the exact same Fortran library.

    You're right that the comparison is bogus, but it highlights a very important issue: even in high performance computing, interpreted/JIT/whatever languages still have a place.

    The reason is that the overwhelming majority of reusable nontrivial programs (the "reusable" part is the important part here) are structured as a bunch of highly optimised low-level routines strung together by a domain-specific language, and in many cases the DSL is interpreted, or may as well be.

    Think about it for a moment, and pull some random numbers out of the air. Suppose that 99% of your compute time is spent in low-level numeric code, such as lapack or atlas. Suppose that using an interpret language imposes a 5 times overhead. Then writing the 1% (by time) of the application in an interpreted language adds only 5% to the run time. However, you win the ability to make huge algorithmic changes (which, when they do apply, tend to pay off really big) very cheaply, while still keeping the high performance of the low-level routines, which can pay off more than the 5% performance drop that you lose.

    (Note: Someone may object at this point that Amdahl's Law applies here, in the sense that making the high-level "serial" part of your program slower can severely limit any benefit of parallelisation. Yes, this is true. On the other hand, potential parallelism is (in principle) more easily discovered in a higher-level language. As always, YMMV.)

    In many respects this is no different in principle from the same argument used in other areas of computing. Many web applications are written in interpreted languages (PHP, Perl, Python, Java), but web applications are just very sophisticated glue, linking together, say, a web server with a relational database server. Nobody is arguing that the RDBMS should be written in Java, merely that high-level decisions are better expressed in a high-level language. The difference is that web applications run at the speed of the network, which is usually the slowest component in a distributed system. High-performance numeric code tends to run at the speed of the CPU or, more likely, the speed of L2 cache/RAM.

    In summary, while I'm not disagreeing with anything you said, I would like to point out that just about any domain can benefit from high-level languages, if they're applied intelligently. That's why they pay us the big bucks, right?

  19. Re:2x speedup, not 5% on The End of Native Code? · · Score: 1

    First off, the programming language shootout does not represent real code, and the maintainer knows it. (Sure, my language sucks at writing an MPEG compressor, but look how fast I can do an insertion sort!)

    Secondly, of course it depends on the task. But the general rule applies that the art of software performance is a tradeoff between programmer time and computer time, and programmer time is always more expensive. Qualitatively, any investment of programmer time needs to pay for itself several times over in computer time to be worth it.

    This is why web applications are usually written in interpreted languages. When your application runs at the speed of the network, there is often computer time to spare, so it doesn't pay to invest a lot of programmer time. In such a situation, higher-level languages win on the ROI analysis.

  20. Re:Its inevitable on The End of Native Code? · · Score: 1

    Yeah, I write all of my web apps in High Performance Fortran.

  21. Re:Better... on Microsoft Misrepresenting WGA's Functionality? · · Score: 1

    While I disagree with the flippancy (and impracticality) of the post that you refer to, this is not the freedom that they are talking about.

    TFA points out that nowhere is there anything even close to "informed consent" when it comes to choosing whether or not WGA is installed. What you gain is not the freedom to see, modify, redistribute etc the source code. What you gain is the freedom to decide what gets installed on your computer, and when. That is something that you don't get with Windows.

    And no, I'm not arguing either for or against. Sometimes the tradeoff is appropriate and sometimes it isn't. For the typical slashdotter's personal computer, it probably isn't.

  22. Re:Cease and Desist on The Worst Bill You've Never Heard Of · · Score: 1

    Now that you mention it, do you know which act of congress officially made "incidental copies" legal without requiring extra licences?

    Hint: It starts with "D", ends in "A", and has "MC" in the middle.

  23. Re:and that's why you shouldn't use MySQL on Why the Light Has Gone Out on LAMP · · Score: 1
    A competent coder can always hand-optimize a problem way better than an automated optimizer.

    That's because the biggest savings are to be made in "large" optimisations that a compiler can't do. No optimising compiler has ever replaced an O(N^2) sort with an O(N log N) sort, for example. And nor should it; sometimes the O(N^2) sort is more appropriate (e.g. if the sequence is known to be "almost" sorted already).

    This is why I always tell novices that the best thing you can do for writing efficient code is to write modular code with clean, well-insulated interfaces and lots of unit tests. That way, if you do have to rewrite something for performance reasons, the change is insulated.

    The problem is that we don't teach programmers how to write good APIs. We teach them what to write inside the function body, but not how to write the function "head".

  24. Re:I'm a parent... on ESRB Our Last Defense Against Game Censorship? · · Score: 1

    I'm a parent, too. I live in Australia. Despite some silliness (such as a ban on 18+ games), our rating system makes much more sense, because it's not one-dimensional.

    Rather than merely saying "PG", a rating label says why it's rated PG. Examples of the ratings advice include "Low-level coarse language", "Low-level violence", "Mild sexual references", "Some scenes may scare very young children", "Mild innuendo" etc.

    For a parent, this advice is much, much more helpful than "G" vs "PG" vs "M", because I know what my kids can handle. One example is that I have no problem with my (very young) kids seeing depictions of incidental nudity. It's just the human body in its most natural state, after all. But it would be very hard to explain things like racism, relationship break-up or mental illness to my four-year-old. The Australian ratings advice refers to this sort of thing as "Adult themes". Having this on the cover helps a lot.

  25. Re:My winning entry on Abuses of Science Political Cartoon Contest · · Score: 2, Informative

    Actually, the "celebrity judges" are famous political cartoonists. Even I have heard of Clay Bennett, and I'm not American, so "celebrity" seems an appropriate term.