Slashdot Mirror


User: SimHacker

SimHacker's activity in the archive.

Stories
0
Comments
1,231
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 1,231

  1. Re:Not so much on Choice of Language for Large-Scale Web Apps? · · Score: 2, Interesting
    Good Lisp code is zen-like in the way it uses white space and indentation to express structure, instead of cluttering the code up with a bunch of punctuation. Lisp macros let you program with meaningful words and phrases, which are much easier to understand than punction.

    Lisp doesn't require excessive punctuation to write understandable code, because it has a real macro system. Lisp's macro system is vastly more powerful than "syntactic sugar" or string substitution macros like the C preprocessor. It enables you to deeply customize the language for the task at hand (including extend the surface syntax by adding punctuation, if you insist).

    Throwing in a bunch of punctuation marks doesn't automatically increase readability. But at least the base Lisp lanuage doesn't use up all the punctuation marks itself like Perl, and it even allows you to define your own for application specific purposes. All that and a kick-ass macro system: What more could you ask for?

    The problem with messy, nuanced, ambiguous, punctuation-heavy "Do What I Mean" languages like Perl is that it's much more difficult to figure out exactly what the code is doing just by looking at it, because there are so many special context sensitive rules and special cases (like scalar versus list context, etc), which intricately interact with each other.

    Perl has a much higher "syntactic surface area" than Lisp (they're at different ends of the spectrum). High syntactic surface area makes a language hard to learn and understand. All of the effort pointlessly wasted struggling with Perl's fractally complex syntax would be much better spent solving real problems that weren't solved decades ago by Lisp.

    Many Perl evangelists actually prefer to program in Perl because it allows them to show off how studly and ingenious they are to handle such a pointlessly complex language, and it gives them job security because it's so impossible for anyone else to understand or maintain their code. So of course those people hate Lisp for its simplicity, and spread misinformation about it like "too many parenthesis".

    -Don

  2. A Lisp Machine is the best Fortran dev tool on Choice of Language for Large-Scale Web Apps? · · Score: 1
    If you really want to develop Fortran code, then you should get an old Lisp Machine, compile your Fortran code into Lisp, and debug it with the most advanced software development tools of the time.

    -Don

  3. You'r dead wrong about Lisp on Choice of Language for Large-Scale Web Apps? · · Score: 2, Informative
    Lisp code is extremely easy to read and maintain -- it's just the opposite of Perl, not "more so".

    Are you going to trot out the "parenthesis are hard to read" argument? Well take a look at XML: that has TWICE THE NUMBER OF PARENTHESIS, only they're pointy instead of curved. That old "I'm afraid of parenthesis" argument is bullshit.

    Now look at Perl code: instead of seeing the explicit, unambiguous parenthesis in the code, you have to remember and resolve all of the implicit and complex special syntax rules, punctuation, precidence order, left/right evaluation, contextual quirks and special cases, etc.

    If you think Lisp is harder to read than Perl, then you obviously don't know either language, and you're just basing your beliefs on rumors you heard ignorant people distort and repeat, without learning those languages for themselves.

    -Don

  4. Orders of magnitude are base 2 in assembly lang. on Choice of Language for Large-Scale Web Apps? · · Score: 2, Funny
    Orders of magnitude in assembly language are measured in base 2, not base 10. So four orders of magnitude more than 7 days would be only 112 days (a bit more than 1/3 of a year), not 70,000 days (almost 192 years).

    Of course you also have to adjust for a few orders of magnitude in the other direction, now that registers are larger.

    Here's how to add two 32 bit numbers on the 8 bit 6502 (C = A + B):


    CLC
    LDA A
    ADC B
    STA C
    LDA A+1
    ADC B+1
    STA C+1
    LDA A+2
    ADC B+2
    STA C+2
    LDA A+3
    ADC B+3
    STA C+3

    Oh man, that was exhausting.

    -Don

  5. BSML: Bull Shit Markup Language on Google Maps Creator Takes Browsers To The Limit · · Score: 1
    Flash is just the natural evolution of BSML's tag extension.

    (At time I wrote this, Director ruled and Flash didn't exist yet, so the limit number 48 was a dig at Macromedia's bold move of increasing the number of layers that Director supported from 24 to 48.)

    -Don

    BSML: Bull Shit Markup Language

    Bull Shit Markup Language is designed to meet the needs of commerce, advertising, and blatant self promotion on the World Wide Web.

    New BSML Markup Tags
    CRONKITE Extension
    This tag marks authoritative text that the reader should believe without question.

    SALE Extension
    This tag marks advertisements for products that are on sale. The browser will do everything it can to bring this to the attention of the user.

    COLORMAP Extension
    This tag allows the html writer complete control over the user's colormap. It supports writing RGB values into the system colormap, plus all the usual crowd pleasers like rotating, flashing, fading and degaussing, as well as changing screen depth and resolution.

    BLINK Extension
    The blinking text tag has been extended to apply to client side image maps, so image regions as well as individual pixels can now be blinked arbitrarily. The RAINBOW parameter allow you to specify a sequence of up to 48 colors or image texture maps to apply to the blinking text in sequence.

    The FREQ and PHASE parameters allow you to precisely control the frequence and phase of blinking text. Browsers using Apple's QuickBlink technology or MicroSoft's TrueFlicker can support up to 65536 independently blinking items per page.

    Java applets can be downloaded into the individual blinkers, to blink text and graphics in arbitrarily programmable patterns.

    See the Las Vegas and Times Square home pages for some excellent examples.

  6. PHIGS called. on Google Maps Creator Takes Browsers To The Limit · · Score: 1
    Oh yeah, I almost forgot: you have another message from 1986. They'd like you to check out PHIGS, for all your interactive 3d graphics rendering and advanced user interface needs. They said something about it being a standard X11 extension, supported by all major vendors. I assured them you'd call back right away.

    -Don

  7. Re:VRML is not VML on Google Maps Creator Takes Browsers To The Limit · · Score: 1
    It was just so hillarious to see somebody bring up VRML, that I had to say something. How about rephrasing it: 1995 called, they want their sucky 3d graphics format back.

    -Don

  8. Re:Not frozen enough (Mozilla broke XP/COM rules) on Google Maps Creator Takes Browsers To The Limit · · Score: 1
    You can program Adobe's SVG plug-in in JavaScript, and access SVG elements through the DOM, just fine. Adobe's SVG plug-in includes its own JavaScript interpreter. On Internet Explorer, it can optionally use Microsoft's JavaScript interpreter instead of Adobe's.

    The problem with Mozilla is that the big-mouthed over-optimistic software "evangelists" convinced Adobe to use a half-baked plug-in API that Mozilla decided to chang just before they released Mozilla 1.0. The Mozilla programmers should have changed the GUID of the interface when they changed the API, but they didn't obey the terms of the software contract they agreed to by using XP/COM, so the Mozilla programmers screwed Adobe and SVG.

    The result is that Adobe's SVG plug-in used to work fine, but now it crashes Mozilla, which would not have happened if Mozilla programmers stuck to their own rules and used XP/COM the way it was intended to be used (to prevent just this from happening). Adobe will never trust Mozilla evangelism again after that episode. Anyway, SVG is dead because Adobe bought Macromedia.

    -Don

  9. The operational word here is "LIMIT". on Google Maps Creator Takes Browsers To The Limit · · Score: 1
    Taking browsers to the limit means you can't take then any further -- that's the nature of a LIMIT.

    -Don

  10. The reason to use Flash is that it's consistent on Google Maps Creator Takes Browsers To The Limit · · Score: 1
    Flash is totally consistent across all platforms (and it's installed on 95% of all systems), plus it has nice graphics and networking.

    Using AJAX with JavaScript and Dynamic HTML is like repeatedly hitting your head against a cement wall, because it doesn't solve any of the inconsistencies between browsers, so you have to deal with them directly, and drastically limit what you can do, and resort to horrible kludges and work-arounds to accomplish the simplest things (like drawing diagonal lines), so the quality of your application drastically suffers across all platforms.

    AJAX: I'm impressed that your dog can talk, but I rather not listen to it sing christmas carols.

    -Don

  11. Not converting between scripted SVG and VML. on Google Maps Creator Takes Browsers To The Limit · · Score: 1
    Try converting any SVG or VML file that uses JavaScript to perform animation or data driven graphics, and the converter will definitely fail.

    The whole point of SVG and VML are that they are dynamic scriptable graphics formats, not just that they're represented by XML. Like Flash, you can use them to write user interfaces and games and data driven interactive graphical displays of dynamic XML documents.

    It's impossible to automatically convert dynamic SVG or VML documents that use JavaScript, which covers most interesting uses of those technologies. Otherwise you might as well be using GIF.

    -Don

  12. Can't translate between scriptable XML formats on Google Maps Creator Takes Browsers To The Limit · · Score: 1
    It's easy to transform one XML document to another format, UNLESS the XML includes JavaScript which refers to particular tags and properties of the XML, as is often the case with SVG/XML. There is simple no way to automatically translate JavaScript code that manipulates SVG or VML graphics through the DOM (for animation, dynamic data driven graphics, etc), except by hand. Therefore it's impossible to write a general purpose VML/SVG/Flash converter. Because all the interesting uses of VML/SVG/Flash involve scripting.

    -Don

  13. Fasteroids game in VML on Google Maps Creator Takes Browsers To The Limit · · Score: 1
    Sure, lots of people have been using VML for many years. It's an old technology that's been around for a while. Here's a game I wrote in VML a long time ago, called "Fasteroids", which is actually an experiment that demonstrates how pie menus are faster and less error prone than linear menus.

    -Don

    What are these Fasteroids, anyway???

    The goal of Fasteroids is to help the space ship blast away the asteroids. But its real purpose is to compare the selection speeds and error rates of directional "pie menus" versus traditional "linear menus". The actual point of the game is to give you a fun and fair way to test drive and compare pie menus and linear menus for yourself.

    When you click the left button in the black space, a pie menu or a linear menu will pop up. You should select the bright yellow item with four stars, and it will fire four blasts, which will help destroy the asteroids. But if you select any of the other items, that is considered an error, so it will only fire one blast.

    The menu style changes every round. Some rounds, the menu will be a pie menu, and other rounds it will be a linear menu. Some rounds, the menu items will be randomized, and other rounds they will be constant.

    If you would like to share your results, please press the "Send Statistics to PieMenu.com" button, and your selection times and error rates will be reported to PieMenu.com. It will show the overall results and how you results compare. Don't worry -- it doesn't send any personal information, just the details of the measurements summarized in the table, including the selection count and time for each test type, menu type and menu item.

    And What are Pie Menus???

    Pie Menus are a naturally efficient user interface technique: directional selection of pie slice shaped targets. The cursor starts out in the center of the pie, so all targets are large, nearby, and in different directions. Fitts' Law explains the advantages of pie menus, relating fast selection speed and low error rate to large target size and small distance. Pie menus are easy for novice users, who just follow the directions, and efficient for experienced users, who can quickly "mouse ahead" once they know the way.

    To learn more about pie menus, please visit Pie Menu Central!

    For the complete credits, as well as some swell entertainment, please don't forget to read the fine print.

  14. SVG is a descendent of VML on Google Maps Creator Takes Browsers To The Limit · · Score: 1
    Microsoft published VML before SVG was conceived. SVG is a standard that was designed to merge the work that Microsoft did with VML, with the work other companies were doing on another xml based web graphics standard whose name I can't remember. A lot of the good ideas in SVG came from VML, for example the compact representation of lines as attributes with lists of numbers, instead of representing each coordinate as a separate XML element. (Naive XML programmers and RAM manufacturers who want you to buy more memory would prefer the use of separate XML nodes per coordinate, but it's much more efficient to represent them as compact attribute strings.)

    But it's a moot point, because Flash kicked SVG's ass in the market, and now that Adobe has bought Macromedia, SVG is dead.

    -Don

  15. AJAX is NOT a new approach! on Google Maps Creator Takes Browsers To The Limit · · Score: 1
    AJAX is only new if you're wet behind the ears. And AJAX is only a magic bullet if you're never actually tried to use it. There's nothing wrong with the approach, but it's been around for a LONG time.

    -Don

  16. SVG is dead since Adobe bought Macromedia on Google Maps Creator Takes Browsers To The Limit · · Score: 1
    Adobe buying Macromedia was the last nail in SVG's coffin. Adobe was only supporting SVG becaused they were trying compete against Flash, and now that that's no longer the case, there is no reason for them to continue to support SVG. If you have been paying attention, you will have noticed that Adobe has already totally forgotten about SVG for more than a year now.

    Yes, I love SVG and have written some nifty applications with it, and I wish it won against Flash, but it didn't. But flash is already installed on 95% of all computers, and SVG doesn't come anywhere near that.

    It's so sad that there is no other standard way to draw a diagonal line on the computer's display, except for Flash. But that's the way it is.

    -Don

  17. VRML is not VML on Google Maps Creator Takes Browsers To The Limit · · Score: 2, Funny
    You have confused VRML and VML. There are completely different technologies. Look at the way they're spelled. They're different: VML. VRML. See? One uses four letters, and the other uses three. That's different! Now if you take a closer look at the letters, you will notice that one uses the letter R, while the letter R is conspicuously missing from the other. I think it's safe to say that "VML" != "VRML", and even that strcmp("VML", "VRML") != 0. (That's becauxe strcmp returns 0 if the two strings are equal, and they aren't. Now don't get me started in their relative alphabetical merit.)

    -Don

  18. Re:happens everywhere on Open Solaris Derivative Available · · Score: 2, Funny
    It looks something like this:

    switch (postscript_primitive) {

    [10 pages of code]

    }

    -Don

  19. Re:happens everywhere on Open Solaris Derivative Available · · Score: 2, Interesting
    I still have my old copy of the NeWS sources, but I don't think anyone at Sun does. But "open sourcing" NeWS would be a waste of time. Just because people are still using an inferior obsolete window system like X-Windows doesn't mean we need to revive another old obsolete window system to replace it. It's better to make something new with current technology, than to use X-Windows or NeWS.

    -Don

  20. Re:The Goatse Gourmet on CueCats vs. Common Sense Marketing · · Score: 1
    Of course I've used TkInter with Python, but it's a pain in the wazoo and results in ugly limited guis. I've heard WxWindows for Python is nice but I haven't used it. If you're using Java, then SWT is the way to go. But I require rich data driven graphics and direct manipulation interfaces, so I've been programming applications as xml web services, and using OpenLaszlo to implement cross platform rich web based graphical user interfaces that run in the Flash player (like NeWS and AJAX: implementing local interaction in the client, talking to the server asynchronously over the network). It works quite nicely, and it's open source. The web services themselves can be implemented in any language convenient for web server programming, like Python or Java. They just produce and consume XML, instead of being tied to one particular gui, so you can implement all kinds of different independent user interfaces in html, flash or whatever you like, as well as exposing the API of your application as a web service for other programs to use.

    Here's a simple example of a Laszlo gui for browsing and ordering stuff from Amazon via their web services API:

    Blueprint Music

    Here's the source code.

    -Don

  21. Re:So Flash is good now? on The Return of GPLFlash · · Score: 1
    That's exactly what you're doing: inventing your own meanings for English words. It's hillarious that you're so wrapped up in your own twisted meanings, that you would claim that the "standard" meanings of words aren't part of the English language. Can you show me a dictionary definition that says "standard" means "ratified by an independant body"?

    Flash is certainly a standard, according to many definitions in the dictionary:

    A conspicuous object (as a banner) formerly carried at the top of a pole and used to mark a rallying point especially in battle or to serve as an emblem.

    Something established by authority, custom, or general consent as a model or example.

    A structure built for or serving as a base or support.

    In technical use, a standard is a concrete example of an item or a specification against which all others may be measured.

    Open standards are publicly available specifications for achieving a specific task.

    Though the Flash SWF format is an ostensibly "open" format (i.e. it is published), Macromedia retains control of it. Since Flash files do not depend on a truly open standard such as SVG, this reduces the incentive for non-commercial software to support the format (although there are several third party tools which utilize and generate the SWF file format).

    -Don

  22. Re:good riddance on Jamie Zawinski Switches to Mac OS X · · Score: 1
    >Don't you mean the X Windows System? Get it right.
    >Actually the X-Windows System and X11 mean the same thing.

    Technically, it's The X-Windows Disaster.

    If you think "AJAX" is a new idea, then read the description of how NeWS downloads interactive code to avoid client/server round trips, compared to the horrible inefficiency of X-Windows.

    -Don

  23. Re:The Goatse Gourmet on CueCats vs. Common Sense Marketing · · Score: 1
    Hey, I used to be a big proponent of TCL/Tk, but I can't believe anyone's still wasting their time with it now, more than 10 years later. It's not like your only other choice is Motif, any more.

    I'm going to show first the X11 version [of multi player SimCity], which is on top of TCL/Tk, and that's a free toolkit that's available, written by John Ousterhaut at Berkeley. There's a book that's coming out describing it, and you can just get TCL/Tk and use it to make products for free. You don't have to pay anything for it, and it's actually very good code. It really beats the pants off of Motif, and we were able to modify it in order to support things like colormaps and multiple displays the way we needed to, and add things to it like a sound server to make sound effects, and pie menus for quickly selecting city editing tools. TCL/Tk made alot of sense for SimCity [in 1992].

    -Don

  24. Hello Kitty Vibrator on CueCats vs. Common Sense Marketing · · Score: 1, Troll
    Here's an idea for an interesting CueCat mod. Mmmmmmmmmmmmmmmmmmmmmmmeow!

    -Don

    The History of the Hello Kitty Vibrator

    Peter Payne

    Sanrio is one of the top character licensors in the world, having more or less created the business model of doing business by creating something that doesn't really exist and licensing its use to other companies. Sanrio produces nothing -- all their characters, like the Little Twin Star, Minna no Ta-bo, Bad Batz-Maru, exist as legal entities and nothing more. Their most successful character, Hello Kitty, or Kitty-chan as she's known in Japan, is now now thirty years old.

    One of the many companies that license Sanrio's characters for their products was a Japanese company called Genyo Co. Ltd. Genyo made a wide variety of products, from bento boxes to children's toys to chopsticks, many with the Hello Kitty character on them. They scored big in the late 1990's with an off-the-wall hit, a series of Hello Kitty toys which featured a different Kitty figure from each of Japan's 47 prefectures, each representing something the prefecture was famous for. (The figure from Gunma Prefecture, where we live, represented a wooden kokeshi doll.)

    In 1997, Genyo designed a product that would live in infamy: the Hello Kitty vibrating shoulder massager, which really is a shoulder massager (trust us -- it says so on the package). Sanrio approved this design without batting an eye, and the product enjoyed modest sales in toy shops and in family restaurants like Denny's and Coco's. It wasn't until 1999 or so that people began to catch on to the fact that the Hello Kitty massager had other potential uses, and with amazing speed, they started popping up in adult videos in Japan. The next thing anyone knew, they had changed into a cult adult item, sold in vending machines in love hotels -- after all, what self-respecting man wouldn't buy his girl a Hello Kitty vibrator when she asked him for one?

    The emergence of the Hello Kitty vibrator as a cult adult item caused friction between Sanrio and Genyo, and Sanrio ordered the company to stop making the units. Genyo refused, since it had paid a lot of money to license Kitty for their products. There seemed nothing Sanrio could do, since they had approved the item for sale (see the official Sanrio sticker on the boxes). The answer came when the Japanese tax authorities raided Genyo on suspicion of tax evasion. It seems that some creative accounting was going on between the president of the company, a Mr. Nakamura, his vice president, and the owner of the factory in China where the units were made. All three were arrested, and Sanrio had the excuse needed to yank Genyo's license. They seized the molds used to make the vibrators and destroyed them.

    And so, the sad, weird chapter of the Hello Kitty vibrator is at an end. In a short time, the last of the Kitty vibes will be gone, and then what will the world do for wacky comic -- and sexual -- relief?

    (c) 2004 J-List. Not to be reproduced without prior permission.

  25. Re:The Goatse Gourmet on CueCats vs. Common Sense Marketing · · Score: 0, Flamebait
    But you just wasted all the time you saved by posting all those messages about what you did to slashdot. So in net, you're a loser.

    Oh wait: you're using TCL/Tk, and it's not 1993 any more. You're definitely a loser.

    -Don