Slashdot Mirror


User: Estanislao+Mart�nez

Estanislao+Mart�nez's activity in the archive.

Stories
0
Comments
2,270
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 2,270

  1. Those are not the laws of optimization I learned. on Java Urban Performance Legends · · Score: 1
    The laws of optimization that I learned are the following:
    1. Don't do it!
    2. (Advanced programmers only) Don't do it yet.
  2. Re:Michael Dell, standing there with smoking gun on Dell's Open PC Costs More Than Windows Box · · Score: 1
    Frankly, that gives me a very good idea of what winderz is really worth.

    The price of an product is not necessarily a reflection of what it "is really worth." Vendors often do sell some product for less than cost, if they expect it to drive additional sales of other products. This is a practice that's followed by all sorts of businesses, from your neighborhood smack dealer (to get you hooked, and thus secure a future source of regular income), to game system manufacturers (they sell you the console for less than cost, expecting to make profit on games and accessories).

  3. Re:Editorial control on Nitpicking Wikipedia's Vulnerabilities · · Score: 1
    I've known professors who should have their work overwritten by college freshmen.

    How exactly have you "known" this? I'm sorry, but frankly, I've met one too many college kid who thinks they know far more than what they actually do.

  4. Re:Speak for yourself on Nitpicking Wikipedia's Vulnerabilities · · Score: 1
    I'm not sure I see your objection clearly. The "etymology" article does indeed assert that etymology is connected to the field of historical lingusitics. You don't seem to disagree with that statement -- you instead assert that etymology is a rather dull, uninteresting part of lingusitics and really not a central problem of the field as some people seem to think. [my emphasis]

    Good. Now replace "some people" with "most of the people writing the 'linguistics' articles for Wikipedia," and we'll be getting somewhere...

    Oh, and to be fair, what seems to be a reasonable, certaintly non-zero, number of lingustics people don't mind calling etymology an aspect of historical linguistics -- follow up some of the webpages here.

    I looked at the first page of results, and overall, they just confirm my point. The first one is a glossary and bibliography in the pages of a historical linguistics course that includes an online syllable. If you see the syllable, there's no "etymology" to be found in it; if you look at the bibliography, the entries that mention it are about the history of linguistics, not about contemporary linguistics.

    Most of the other results are similar. The only one that stands out is Elizabeth Traugott's CV, which lists an article called "From etymology to historical pragmatics." I happen to know what this article is about; it's about semantic change, an that historical linguistics has traditionally not dealt with. (But of course, Traugott's goal is to find systematic patterns of semantic change, not to list individual examples...)

    I think you point out an interesting problem with wikipedia, which is that a big difficulty exists in the large-scale structures of the information. Generally, a factually incorrect sentence or paragraph gets fixed pretty quickly. But large-scale problems -- involving how various articles are "threaded" together -- are much harder to fix.

    Indeed. I have some ideas of how to fix the sort of problem that I pointed out here with the linguistics entries, which is to classify a lot of articles currently labeled as "linguistics" with another term: "traditional grammar." However, actually doing that would be a lot of work; and potentially most of it would be thankless maintenance work (i.e., explaining time after time to the latest newcomers why they shouldn't prominently label an article on, say, Contraction as "linguistics."

    I would generalize your statement to say that problems in the presentation of fundamentals are hard to fix. "Fundamentals," in this sense, means something like "highly nuanced basics"; the sort of thing that a layperson who skims a couple of textbooks about a topic feels like they've understood, but when they go and paraphrase it for a Wikipedia entry, an expert can easily see that they didn't understand it. How to organize the articles in a category is indeed a fundamental.

  5. Speak for yourself on Nitpicking Wikipedia's Vulnerabilities · · Score: 1
    It's a very common complaint among linguists that linguistics is a very thankless career, because one studies language, an extremely complex phenomenon that nobody understands, but on which every single layperson, down to the very last one, seems to have countless misguided opinions about, which they are not willing to abandon. Or even worse: the countless hordes of layperson language enthusiasts, who know a lot of stuff, but, sadly, stuff that's either (a) not really important in linguistics, (b) wrong, or (c) both.

    Correspondingly, gazillions of Wikipedia entries that have something to do with language are labeled as "linguistics" by their layperson language enthusiast authors. My favorite example: the Etymology entry, which starts: "In historical linguistics, etymology is the study of the origins of words." Sounds reasonable, right?

    Except that historical linguists don't really care about the origins of words; they care about the origin of languages. If you take a course in historical linguistics (and I have taken such a course), you're going to spend your time learning and practicing the comparative method, not researching etymologies of words; and you're going to get the idea drilled into your head that the origins of individual words is not what matters, but rather, systematic structural correspondences between languages. Etymology is not really a subfield of historical linguistics, contrary to what the article states in the first sentence; it's largely trivial, and mostly irrelevant to the real subject matter. The article was evidently written by one of those layperson language enthusiasts, who tend to think of language as a big bag of words (as opposed to structural arrangements of words), and therefore, that the task of historical linguistics must obviously be to list the origin of each word.

    Anyway, astrophysics, just from the name of it, sounds like it's the complete opposite--every non-expert knows that they know zilch about it, and therefore, will defer to any perceived authority. (And that includes false authority, so yeah, you have your problems too.)

    In general, there's some fields which are more like linguistics in that regard, and others which are more like astrophysics. Anthropologists, sociologists and some kinds of psychologist can probably empathize the most with linguists in this regard. I presume historians also have that sort of problem; I do know philosophers have it. Particle physicists, neuroscientists and their ilk probably don't suffer from it.

  6. Re:Editorial control on Nitpicking Wikipedia's Vulnerabilities · · Score: 1

    Yeah, power certainly plays a role in the negotiation of a society's common knowledge, but never forget that being "right" (in some sense yet to be clarified, but which is nicely exhibited by being able to, say, accurately predict the trajectories of projectiles) is a good source of power. I.e., there really is a dilemma here, and people who fixate on one horn of the dilemma just miss the other.

  7. Devil's advocate on Nitpicking Wikipedia's Vulnerabilities · · Score: 1
    I happen to know that BWJones really is a genuine expert in some specialized medical areas. I'm pretty sure he's not just talking about arcana of his favorite musical group. So in a sense, he really should be shown a certain deference in edits. Not an unlimited deference, of course [...]

    I'm going to play Devil's Advocate here, and ask: why not give him unlimited deference?

    The general sort of counterarguments I expect revolve around the notion that he'll make some mistake. My general strategy to respond to particular cases will be to say that sure, he's gonna make mistakes, but given that he's an expert, his mistakes are going to be way more educational than a layperson's. I.e., even if he's wrong about X, you're still going to a lot of insight about X if you copy his error.

  8. Experts are not "uneducated" on Nitpicking Wikipedia's Vulnerabilities · · Score: 1
    If you are not the absolute world's expert on your topic, you are in comparison uneducated to whoever occupies that position.

    That's just wrong.

    Let's think for a moment about what the purpose of granting Ph.D. degrees is. A Ph.D., being the highest degree one can attain is something that's granted to a person by a group of people who are themselves Ph.D.'s, and thus, have a degree no higher than what they're granting. When one is granted a Ph.D., essentially, it's means that other Ph.D.'s have recognized you as a peer in their field. Which would speak against this notion of yours that if one is not "the absolute world's expert on your topic, you are in comparison uneducated to [the person who] occupies this position"--the "absolute world's expert," as a regular part of their career, recognizes new people as peers.

    That's a bit of a formalistic argument, but overall, I think that sentence of yours that I quote is just wrong. Somebody who spends many years studying a topic, and hanging out with experts discussing that topic, is not uneducated compared to the "top scholar" in the topic (if such a thing can be said to exist at all, actually). There is a huge gulf between a layperson and an average expert, but not so between the average expert and the top scholar.

  9. I disagree. on Nitpicking Wikipedia's Vulnerabilities · · Score: 4, Insightful
    Its not the curiosity of a six year old thats the problem. Its the twelve year old that decides to write 'penis' in the middle of the article for no reason.

    That's nowhere nearly as bad as the 20 year old college student who vastly overestimates his understanding of a topic, and the value of what he has to contribute.

    It's easy to notice the handiwork of the twelve-year old and revert it, and there's countless people who can do it. There's relatively few people who can understand why the 20-year old's contribution is very wrong; it takes them considerable effort to demonstrate the guy's errors to a layperson audience; and they're very much outnumbered by the 20 year olds.

    And nothing is worse than a mob of said 20 year olds, independently making small edits to a coherent, cohesive article in order to make small, local "improvements" (without any concern for the overall organization and narrative flow of the article), and thereby rendering the article into an unreadable random shopping list of distorted half-truths.

  10. Ah yes. on Nitpicking Wikipedia's Vulnerabilities · · Score: 1

    This blog entry by Jason Scott made that same point really well, I think.

  11. Except that... on Nitpicking Wikipedia's Vulnerabilities · · Score: 2, Insightful

    All you have to do to fix this problem is take the problem to the discussion page, or the talk page of the user who keeps reverting you. Simple enough. If they persist, get an administrator to help. Except that you have to do it forever, for a neverending sequence of random clueless lusers.

  12. Re:Why design a new language? on LispM Source Released Under 'BSD Like' License · · Score: 1

    #
    # Or in Ruby (if memory serves me right):
    #
    File.open('filename') { |file|
      file.each_line { |line|
        puts "Another line from the file: " + line
      }
    }

  13. Bah, amateurs. on LispM Source Released Under 'BSD Like' License · · Score: 1

    ;;;
    ;;; Use automatically balanced parens, and indent automatically on
    ;;; newline.  Has other tricks up its sleeve, too; for example, if you
    ;;; want to put a parens around the next <number> s-exps after the
    ;;; point, just do C-u <number> (.
    ;;;
    ;;; balanced.el is available at:
    ;;;
    ;;;     http://www.cs.indiana.edu/chezscheme/emacs/balanc ed.el
    ;;;
    ;;; Only tried this in real Emacs, dunno if it works in XEmacs.
    ;;;
    (require 'balanced)

    (add-hook* '(scheme-mode-hook lisp-interaction-mode-hook emacs-lisp-mode-hook)
               (list 'balanced-on
                     (lambda () (local-set-key [13] 'newline-and-indent))
                     ))

    (defun add-hook* (mode-hooks procs &optional append)
      "add each listed procedure to each listed mode hook.

    If append is true, we append the hooks to the end of the list instead
    of consing them on to the beginning."
      (for-each (lambda (mode-hook)
                  (for-each (lambda (proc)
                              (if append
                                  (nconc (eval mode-hook) (list proc))
                                (add-hook mode-hook proc)))
                            procs))
                mode-hooks))

  14. Nope. on LispM Source Released Under 'BSD Like' License · · Score: 1
    The main feature you get from Lisp macros that allow new features to solve specific problems, is a performance enhancement. The vast majority of features that use macros in Lisp, can be implemented via passing around functions in Python (very similar to unevaluated arguments).

    Macros in Lisp and Scheme are way more general than that. They don't just get you performance enhancements (and actually, I'd say that's a minor use for macros); they get you arbitrary evaluation rules, which allow you to do things like define new binding forms, that is, syntax for assigning values to variables within a scope.

    For example, it's pretty simple to define a macro to do ML and Haskell-style pattern matching in Lisp; that is, a binding construct that tests whether arbitrarily complex data matches an arbitrarily complex pattern, and if it does, binds the variables in the pattern to the values that they match in the input.

    I don't think you're going to find any remotely simple way of adding a new binding construct to Python within Python itself.

  15. What a great idea; here's a simple implementation on LispM Source Released Under 'BSD Like' License · · Score: 1

    ;;;
    ;;; delay, force, promise?
    ;;;
    ;;; (delay expression-1 ... expression-n)
    ;;;     => <a promise object>
    ;;;
    ;;; Returns a promise to evaluate the block of code contained within
    ;;; the delay expression.
    ;;;
    ;;; (force p)
    ;;;     => <a value>
    ;;;
    ;;; Forces evaluation of the code delayed by the promise, caching the
    ;;; result.  Forcing a promise a second or more time returns the
    ;;; cached value.  Forcing a non-promise returns the value itself.
    ;;;
    ;;; (promise? p)
    ;;;     => <boolean>
    ;;;
    ;;; True if and only if p is a promise.
    ;;;
    (define-syntax delay
      (syntax-rules ()
        ((delay expression . expressions)
         (cons '*PROMISE-SIGIL*
               (lambda () expression . expressions)))))

    (define (force p)
      (cond ((not (promise? p)) p)
            ((procedure? (cdr p))
             (set-cdr! p ((cdr p)))
             (cdr p))
            (else (cdr p))))

    (define (promise? p)
      (and (pair? p)
           (eq? '*PROMISE-SIGIL*
                (car p))))

    ;;
    ;; Though actually, the Scheme standard already includes these...
    ;;

  16. Hell no. on LispM Source Released Under 'BSD Like' License · · Score: 1
    Python is more like Scheme and its philosophy than Common Lisp.

    Comparing Python to Scheme, no matter what Paul Graham may say, is a really bad comparison. Python supposedly aims to be a really clean imperative OOP language. Guido not only refuses to implement crucial features for functional programming like proper closures and anonymous functions; he's actually seeking to remove some such features, because he thinks they're "confusing." The general culture around Python strongly discourages use of techniques like higher-order functions; Python programmers write a loop in every other function. Python uses flexible arrays as its list datatype, and its list processing operations are built around that sort of datatype. It's never been intended to be self-hosting (i.e. Python has never been seriously implemented in Python, IIRC.)

    Scheme, on the other hand, is an impure functional language that mandates anonymous lexical closures, tail call optimization, first-class continuations and a macro system. Its design is guided by absolute minimalism in terms of features, in favor of extremely general constructs. Most of the syntax called for in R5RS can actually be implemented in Scheme itself, using the macro system, as the language definition itself demonstrates. It uses singly linked lists as its list datatype (though it also provides fixed-size arrays). There is a heavy emphasis on higher-order functions of very general applicability; highly fluent Scheme programmers only need to write loops infrequently, because most of the time there's a higher-order function that does the job for you, like map, fold, or many others from the SRFI-1 list library.

    The popular scripting language that's the most Lisp-like, really, is Ruby, whose pervasive use of code blocks echoes functional programming techniques.

  17. Exactly. on Linus Says No to 'Specs' · · Score: 1
    Linus has a skewed view of the software process because Linux basically has no new designs in it. All the "high level" (or as Linus would say, "theoretical") work behind that OS had already been done by earlier OS designers, most notibly the designers of various Unices. All Linus et al have done is to create new source code to implement these old designs.

    Indeed. My reaction was: "Says the guy whose life's work is, essentially, copying other people's original work."

  18. Of course. on Reuse Engineering for SOA · · Score: 1
    Unfortunately for him generic meant 'solves every problem, even ones I haven't thought of yet'. Hugely complex APIs were designed, filling a bookshelf.

    Indeed. Something generic should be applicable to problems you haven't thought of, but not to everything. And the fewer methods an API demands that you implement, and the less they do, the more problems you can apply it to...

  19. Re:Genericness on Reuse Engineering for SOA · · Score: 1
    The problem I find with trying to make something generic is that every new usage tends to need somewhat different features that have to be added. After a while the generic thing becomes a huge packrat of features, yet the quantify of features used by any one usage stays roughly the same. Thus, the interface and implementation grows too huge to be practical.

    Ah, but then I'd argue that the thing you built is not truly generic. It's factored wrong.

    It's a very common flaw, which one finds all over the place in OO design--interfaces that are just too damn big, do way too many things, and therefore are (at best) a pain to implement when you need a meaningful subset of the functionality.

    One of my favorite examples is the Java Collections API, whose interfaces in general provide too many interaction protocols that a collection class must implement. So God help you if you want your, say, straightforward singly-linked list (à la Lisp), to implement the java.util.List interface. You'll need to implement all sorts of extra stuff to make it work, even though little of it responds to the protocol that is used to interact with such a list (last-in-first-out, direct access only to the head of the list).

    In general, you should only define a generic interface when you have some generic algorithm that doesn't care about the details of the objects it operates on, as long as they provide operations X, Y and Z. And even then, your interface should only require operations X, Y and Z.

    Or another way of putting it: ideally, the argument and return types of public methods in your classes should as a general rule be interfaces that declare only the actual methods that your class's implementation calls, and these latter should be small in number.

    Or even simpler: if it ain't small, it ain't really generic.

  20. Jesus. on BBC Commentator Goes After Software Licensing · · Score: 1
    Yes, a publisher is often held accountable for the stupid actions of a reader (who would be stupid enough to drink sulphuric acid?).

    I hope you did not learn not to drink sulphuric acid from a book, if you're going to call "stupid" somebody who drank sulphuric acid because of what a book said...

  21. "Fruit" is a noun. on A Useful Grammar Checker? · · Score: 1

    And "fruit flies" is a noun-noun compound, not an adjective modifying a noun.

  22. Ah, a good old fallacy. on Bad Science in the Press · · Score: 1
    GOOD scientists don't purposefully make statements that are absolute. Good scientists are guarded and pick their words carefully.

    Ah, the good old no true Scotsman fallacy. It doesn't matter how overwhelmingly anybody manages to demonstrate that science, as a profession and social institution, has some significant shortcomings (many of which we could improve); you will insist on judging it in terms of your fantasy of what a "good scientist" should be, and not in terms of what scientists are in real life.

  23. Optical zoom is also a useless spec on 20 Things They Don't Want You to Know · · Score: 1
    So, some camera tells you in the box that it has "10x optical zoom." What does that mean? That the longest focal lens you can extend the lens to is 10 times the shortest one. So of course, a bigger number is better, right?

    Not really. They've left out a couple important pieces of information:

    1. The actual focal lengths at the extremes of the range, and their 35mm camera field-of-view equivalents. How "far" it can zoom is not necessarily more important than wide-angle capability. Your typical point-and-shoot digital camera has, on the short end of its zoom range, the equivalent of a 38mm lens on a 35mm camera. But that is within the range that photographers call "normal perspective"--that is, neither wide angle nor telephoto. With such a camera, you have a choice between two kinds of perspective: normal, and telephoto. A much more versatile deal is a camera with a lens that can reach the equivalent of 28mm on the short range of the zoom. That way you have the additional choice of a wide-angle perspective, which is very useful in many, many situations, and can be used to create its own range of perspective effects.
    2. Zoom lenses with smaller zoom factors, as a general rule, have better optical performance. Zoom lenses compromise sharpness and contrast for the flexibility of variable focal length--and the more variable the focal length, the more the compromise. In selecting a lens, ideally, you want to seriously evaluate how much of a focal length range you need, and whether the reduced optical performance for that range is acceptable to you.
    3. Zoom lenses on digital cameras can often reach very long focal lengths, but you may not be able to hold the camera steady enough to take a sharp picture at that focal length. There's a term called motion blur, which means the unsharpness in a picture that's due to the fact that the camera wasn't completely stable while the picture was taken. Long focal lengths, such as the ones that many point-and-shoot digital cameras provide, magnify motion blur. Ways to control motion blur involve using a tripod, and increasing shutter speed. The latter means that less light hits the sensor during the exposure, so this means that motion blur limits your ability to use the long end of your zoom in low light.
    In short, you shouldn't blindly assume that a bigger optical zoom factor is better than a lower one. You should evaluate what focal length range is best for you, and buy a camera with that. And I think for most people in that calculation, point (1) above should be a really big one, when it comes to point-and-shoots: wide-angle capability is a really, really big plus that only comes in some cameras, which tend to have smaller zoom factors.
  24. And a developmental psychologist too, apparently on Berners-Lee Says Internet Will Make Kids Creative · · Score: 1

    For those unfamiliar with Tim Berners-Lee, he is the Director of the World Wide Web Consortium. And a developmental psychologist too, apparently. Or so it would seem that he seems to think.

  25. Re:Speaking as someone working on NLP on New Algorithm for Learning Languages · · Score: 1
    Hundreds of corpra of children learning language have shown that the input from the parents is not grammatically correct, but in baby talk, or partial utterences.

    Have you actually looked through hundreds of corpora of parent-child interaction, or are you just parroting something you heard, and embellishing it in the process?

    Sure, there is definitely such a thing as "motherese." And it's a commonplace Chomskian claim that children are exposed to many ungrammatical utterances. But I think you've said a third, blended thing that nobody actually claims: that motherese utterances are, in general, ungrammatical.

    I'll point out that there's a few of the commonplace, parroted claims about child language that are actually wrong.