Slashdot Mirror


User: David+Leppik

David+Leppik's activity in the archive.

Stories
0
Comments
120
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 120

  1. Re:Book Code != Professional Code on Building Java Enterprise Applications, Volume I · · Score: 1
    One last thing: I know it's minor, but why the insistence on importing explicitly?
    So that readers can see the exact dependencies of the class you're writing. In fact, I often write imports explicitly in production code as a form of documentation, but usually not for packages like java.io or packages where nearly every class is needed.

    At a place where we used to work, the development team argued a lot over explicit/implicit includes. The C/C++ folks loved implicit includes. The Ada people hated them. The Ada folks won.

    As much of a pain as it was at first, I became a convert. You may have more "Class not found" errors up front, but it makes it much easier to track down missing .jar files when you go to install, since the runtime knows the full name of the class you're trying to find.

    I also don't worry any more about name collisions. I work for a usability testing company, so of course one of our crucial classes is named "Test". We use JUnit to unit test all over the place, and that has a "Test" class as well. These sorts of things can't be avoided without everyone ignoring Java's convenient naming heirarchy and redundantly calling everything "com.mycompany.foo.MyCompanyFoo". Of course, it's a pain when you spell things out explicitly from java.util, but on production code it's always better to have a little up-front pain than to set yourself up for surprises down the road when you really don't have the time to deal with them. (I should note that Emacs' m-x sort-lines makes it easy to wrangle the list, and vim has a similar feature.)

    My only exception to this rule is in JSP pages, where you don't have the package-level include, so I choose one package to include implicitly. Any more than one and there's a potential for name conflicts.

  2. Bogus on Parity Code And DNA · · Score: 1

    I forwarded this to my wife, who is an Expert in All Things (other husbands will understand...) Her reply:

    This article fails to mention that Thymine and Adenine would have a code of 01,1 and 10,0, which breaks the "parity". Actually, I didn't like this argument even before I got to this problem. Assigning a 0 to purines is absolutely arbitrary, and is not needed to differentiate a C from a G. It is inherent in the first 3 numbers, that 100 is the mirror inverse of 011, and that pyrimidines only have two values, which are mirror inverses as well.

    How could an enzyme "add" these together? DNA correction enzymes work by looking for parts of the DNA strands where the physical conformation is not normal. You could say that the error correction mechanism is encoded in their physical structure, but I don't see how the parity concept could be involved.

    This sounds like someone who has learned the vocabulary without the information theory behind it. I'm suprised that Nature published it.

  3. I don't think so... on Are 99.9% of Websites Obsolete? · · Score: 1

    Funny, I visited this page just this morning, and despite it being "Best of the Web '94" and written in ancient HTML (without even <html> or <body> tags), I don't think it's completely out-of-date.

  4. Re:The truth on "Fastest Browser On Earth" Cuts Crud · · Score: 2, Interesting
    Actually, I.E. will always be the best browser. Say what you will about Microsoft, they make a damn fine internet browser.


    Okay, this was flamebait, but I have to say that IE on Windows is good enough for everyone...

    ...until you accidentally hit a porn site, it sets your startup page to that site, launches a gazillion pop-ups, disables the window decorations for those pop-ups, and uses reload-on-close Javascript in case you figure out how to close the window without its decorations. This is especially bad if you happen to be in a place like a libary where they disable the standard defaults editing, so nobody in the building has both the know-how and access to change it back.



    I don't speak from personal experience, since I don't use Windows. I was teaching a class recently where Windows was the only working desktop OS. My students, relative computer novices, ran into these awful pop-ups all the time. When I had them try Opera or Netscape, these same pop-ups were far less devistating.

  5. Re:Upstart on USA Today says "Linux waddles from obscurity" · · Score: 1

    Webster's Revised Unabridged Dictionary (1913) [web1913]

    Upstart \Up*start"\, v. i.
    To start or spring up suddenly. --Spenser. Tennyson.

    Upstart \Up"start`\, n.
    1. One who has risen suddenly, as from low life to wealth, power, or honor; a parvenu. --Bacon.

    2. (Bot.) The meadow saffron. --Dr. Prior.

    Upstart \Up"start`\, a.
    Suddenly raised to prominence or consequence. ``A race of upstart creatures.'' --Milton.

    WordNet (r) 1.7 [wn]

    upstart
    adj : characteristic of someone who has risen economically or socially but lacks the social skills appropriate for this new position [syn: nouveau-riche, parvenu, parvenue, upstart(a)]
    n 1: an arrogant or presumptuous person
    2: a person who has suddenly risen to a higher economic status but has not gained social acceptance of others in that class [syn: parvenu, nouveau-riche]

    Sounds like a reasonable description to me.

  6. Re:isochronous? on Motorola, Nintendo, & Sony Towards Wireless Gaming · · Score: 2, Informative

    "Isochronous" means that there are fixed time guarantees for packets within a stream. That is, you can reserve a stream with a particular bandwidth, with guarantees that your packets will be delivered within a specific amount of time.

    This is not, as some have suggested, the same as "synchronous," which means that a fixed time slot is reserved for a particular host. The problem with synchronous networking is that the host has tiny window of opportunity to broadcast, and if the host doesn't use it then the bandwidth goes unused.

    FireWire is another example of an isochronous protocol. It's also common in telecom networking protocols.

    What's interesting to me about this is that it's an isochronous networking format with a mesh topology-- presumably hosts get added on an ad hoc basis, with real-time guarantees extended to streams that need to be forwarded.

  7. Re:Safety? on Fuel-Cell Power With Methanol · · Score: 1
    Take for example a standard Dell laptop with a front loadable battery and modular drive that can have a second battery inserted. What if a extension battery were purchased then had the Li core removed, replaced with an explosive of some sort and inserted into the expansion slot. The cursory examinations that laptops are subject to in most security conscious situations (airports, court rooms, etc.) involve simply turning it on - well, if a standard battery is installed next to the explosive, this test will pass.


    Last time I went through airport security, they put my laptop through a bomb sniffer. My sense was that they did it for everyone who walks through with a laptop. This may not be in every airport, but it probably will be in all the major ones soon.

  8. What use is fiber? on Wiring A New House? · · Score: 1

    I thought about this a few years ago, and despite what people presume is a Moore's Law equivalent for bandwidth, I remain skeptical.

    Assuming a 100BaseT switched network (i.e. one room contains the switch, wires fan out from there), that's 100Mbits/s to each node. Assume about 40% efficiency. What would you use that for? Maybe watching movies-- figure a 5MB/s stream (a lot for MPEG-2)-- that's five simultaneous movies on each computer! And you'll probably be using MPEG-4 in a few years, which makes 5MB/s ludicrous. Mind you, full-screen video conferencing can't compress well, but I still can't imagine it using all that bandwidth.

    There are only two uses I can think of that would need fiber-- real-time volumetric data and transferring really bloated software. I can't think of a household use for volumetric data transfer (if you need it real time you can probably reduce it to video and polygons.) And I'm skeptical that programs you need to transfer all the time will bloat that much.

    Chances are, 90% or more of your network usage will be to and from the outside internet. Thus, you aren't any faster than your ISP. Until you have the equivalent of dedicated fiber to your home-- not just fiber to the neighborhood-- you won't get much use out of fiber within the home. As it is, good old 10Base-T is overkill for DSL or cable. And I don't expect the situation to get any better any time soon.

    So not only aren't there any applications right now that require fiber, there won't be any in the foreseeable future. You're better off taking the money you would spend on fiber, put it in a conservative investment, and spend it when you need fiber. Since applications follow availability, when you have an application for fiber you'll also have really cheap fiber.

    I started wiring my home for Ethernet four years ago. Two years ago Wi-Fi (in the form of Apple's AirPort) came out. I haven't finished wiring, nor do I plan to. Wireless is just too convenient. You don't want to drag cables across the back yard every time you wander around with the laptop.

  9. Just plug in this $10000 HyperCard... on 10th Anniversary of Quicktime · · Score: 2, Insightful

    Converting a single three-minute music video from videotape to a digital video could literally take several days... It required an expensive video editing system, that included a $10,000 professional video card called a HyperCard, a Macintosh and a laser disc player.

    Admittedly, I originally presumed Apple's graphical programming language (based on an index card metaphor) was hardware, but that was when I was in Jr. High. These guys could use some fact checking.

  10. Will this impact Linux? on Enhanced Carnivore To Crack Encryption Via Virus · · Score: 1

    First off, this is a trojan horse, not a virus, since they are target a specific computer.

    The article doesn't mention which systems this will impact. My guess would be that it will follow the pattern of commercial software: first Windows, then MacOS, then possibly other OSes. But it depends on the demographics of their targets. I could be wrong, if organized crime prefers Linux or BSD (for all the reasons picky paranoid people pick *n?x).

    My guess is that they are targeting the software at people who just install PGP on their machines and think that's good enough. Folks who install tripwire, inspect their kernel source, or even just regularly install vendor patches will require a personal visit to bug the keyboard.

    In itself, this software is no different from them tapping your phone, bugging your house, or other activities they can get a court order to do. It does have a number of side effects, though. First off, any tech-savvy person receiving this bug would (1) know (s)he is under investigation, and (2) come into possession of sophisticated snooping software. I wonder if the FBI is considering how to limit the use of this software by the people they distribute it to!

    Finally, the real problem with this and other snooping technology is the problem with all software-- verifying that it does what you think it does. Even the most tech-savvy judge won't have the sophistication to verify that the code only captures PGP passwords. Then again, they also give warrants to snoop a house without knowing for sure that the agents will just look at person A's stuff and ignore roommate B's.

  11. Apple really introduced an MP3 player on Apple iWalk: Mac OS-X based PDA? · · Score: 1

    See http://www.apple.com/ipod/

    An MP3 player with a 5GB hard disk, FireWire, and good Mac integration.

  12. Re:Thanks, but....no thanks. on Monitor One-Upmanship From IBM · · Score: 1
    What i'm talking about falls more along the lines of...... You have a virtual display of 3200x3200, anti-aliased and scaled down on the fly to fit within 1600x1600 at 60-90 FPS..You accomplish the same effect in a smaller piece of real-estate.

    If you want to see an example of what you are talking about, try using a LCD projector with a larger resolution than it supports. The result is ugly and unreadable.

    Scaling is just another way to do antialiasing, and it's not the best way. If you take a look at MacOS X, programs written with the "Carbon" (old Mac/QuickDraw) APIs use antialiased fonts that are rendered at double size and scaled down. They look awful. Programs written with "Cocoa" (NeXT-derived/Display PostScript) are antialiased using a smarter technique, and they are gorgeous.

    I've noticed that MacOS X and Windows XP have started using bigger fonts and icons. Maybe this is just considered more "user-friendly" especially when screen real estate is larger. Maybe they want to better support people with bad eyesight. Or maybe they actually want the state of the art to progress beyond the current 75-90dpi range where it's stayed since the original Mac in 1984. Even when we've had the technology to produce really small pixels, the GUIs we have tend not to support them, so they don't sell except in very specialized markets.

  13. The letter I sent on W3C Looking for More Patent Feedback · · Score: 2, Informative

    This is the letter I sent. I considered saying "RAND SUCKS, you are EVIL, and W3 is a PUPPET of M$!!!!!" but this seemed more appropriate, true, and likely to be considered intelligently.

    The Working Draft was brought to my attention today, so please excuse what has been a rather hasty reading of the document. I applaud your efforts to have a clear process for discovering and handling patents as part of the W3 Process. However, I have some serious disagreements with the RAND licensing terms. The problem with RAND as it is currently written is that it does not allow for open source implementations.

    As a developer, I find open source tools to often be the most important ones I bring to a project. This is due to the ease with which they can be evaluated and brought into a project as well as the guarantee that I will be able to deploy them no matter what happens to the creator of the tools. They also place an unchanging floor on the deployment cost of that component and allow me to deploy without waiting for license negotiations to finish. In particular, Apache.org is usually the first place I and my coworkers go when we need third-party software. It is valuable to be able to prototype all parts on Linux and deploy on Linux, Solaris or Windows, depending on my client's needs.

    While I recognize the argument that RAND is tolerable for application layer services, I have to disagree. When I'm writing an application, I use components at all levels. Application layer software has a tendency to creep into server software for various purposes. For example, a graphics reader may be needed to convert an image to a different format or to modify the image.

    I am also concerned about developing standards which are usable world-wide. Users in many parts of the world do not have the money to pay for commercial software. Many countries do not have the legal infrastructure to enforce patent laws. Open source software allows them to be first-class citizens on the World Wide Web, both as content producers and consumers. It can also allow them to localize software. If all the software which uses a particular W3 standard is produced by a few primarily American companies, many languages and cultures will be shut out because localization wouldn't be cost effective. This makes the standard less of a world-wide standard and more of an industry consortium.

    I recommend one of the following changes:

    1. Explicitly spell out the situations under which a RAND license is acceptable. I think the license is acceptable when all components have RF alternatives. For example, a PNG file may be written or read using RAND algorithms-- and the best compression algorithms may even be proprietary-- but PNG files can be written using RF algorithms, while RF PNG readers can read any PNG file.

    2. Require that all RAND licenses allow anyone to create a royalty-free open source implementations of the Recommendation, or to release an implementation under such a license.

    My second recommendation is probably the more workable. Commercial, closed-source software would still require license payments. By using a restrictive license such as GPL, patent holders could maximize the use of royalty-paying implementations. It would, for example, allow me to prototype my software with a GPL-based library but only sell it using a commercial library. Care must be taken, however, to make sure that the licenses RAND would allow are truly open source and compatible with other open source software.

    Again, I thank you for your efforts to make a sound, workable patent policy and wish you luck.

    David Leppik

  14. Re:What about identity theft? on A Number For Everything · · Score: 1

    It isn't entirely uncommon for duplicate SSN's to exist. See http://www.cpsr.org/cpsr/privacy/ssn/SSN-addendum. html

  15. Do a little of both on Industry or Research Internship? · · Score: 1

    As someone with a MS in Computer Science, and who contemplated a Ph.D., my experience is that you cannot do relevant CS research without at least one foot in the private sector. The reason is that the value of the research rests on its real-world utility rather than its potential utility. CS research is littered with exotic UI paradigms, protocols, etc. which for various reasons (expense, marketing, not sufficiently better than the status quo) don't catch on as well as more mundane solutions.

    This tendency to overengineer exists both in the public and private sector, but in the private sector the need for sales keeps you honest. A lot of professors I know will moonlight in the private sector to test the relevancy of their theories.

    If your goal is (as it sounds) to maximize your value to society, it's hard to argue against education and research. (Education and research go hand-in-hand: each one improves your ability to do the other.) In education, you are guaranteed to improve at least some people's lives on a regular basis. These people, thanks to you, have an opportunity to improve the world in all the ways you are currently contemplating. Since you are in a third-world country, this is especially important since the limiting factor for future economic growth through technology is likely to be the number of skilled workers.

    In the private sector, you have a small chance to have a huge impact on society, but most of the time you will end up working on either mundane projects or change-the-world projects which usually never see the light of day (or do see the light of day but for various reasons go nowhere.)

    The private sector can make up for its apparent world-improvement shortcomings in one important way: money. The private sector is likely to pay far better than a university, and you can have just as powerful an effect on society through philanthropy as through educating people. What's more, donating money can be done all the time whereas choosing a career can be done far less frequently.

  16. At least one really good review on Dune Miniseries Airs Tonight · · Score: 3
    The Minneapolis & St. Paul Star Tribune gave it 4 out of 4 stars. The longer format, better visual effects, and great director of photography (Vittorio Storaro, from The Last Emperor), give it a leg up on the movie.

    Mind you, 3 4-hour segments isn't much longer than the 4-hour "director's other cut" version of the movie, but this one was intended to be long. The problem with the movie was cramming such a huge, complex story in such a short time.

    I just hope they don't sanitize the ending, but they probably will. Yay war for the sake of genetic diversity!

  17. Better than MPEG4? Huh? on Tighter Video Compression With Wavelets · · Score: 4

    They are comparing polygon mesh compression with video compression. Sounds like apples-to-oranges to me. Also sounds like it will have no effect on video compression, and it will have limited impact on rendering time.

    I say limited, because you still need to draw those polygons. However, one nice feature of wavelets (at least for images) is that you can easily extract just enough data for displaying at a particular resolution. If that property holds for polygon meshes, then you should be able to draw only as many polygons as are useful for your display resolution.

  18. Re:yes, but which Kerberos? on Kerberos Loophole May Be Closed/Apple Getting Kerberos · · Score: 1

    I've had the same questions about Apple's support for Java, especially since that was the hot issue when the Apple/M$ deal was announced. Since the details of the deal were private, I suspected that Apple might be required to use M$'s Java. (Of course, Apple is not allowed by Sun to use non-Sun-compatible Java. That would put Apple in a real bind.)

    As it turns out, Apple's current Java runtime is a variation on Sun's 1.1.8, and the OS X runtime will be Sun's HotSpot. IE on MacOS doesn't have it's own Java, rather it uses Apple/Sun's. Unfortunately, this makes IE better than Netscape for running applets.

  19. Re:Whats next after Darwin? on Apple Builds Darwin For Intel · · Score: 1

    Having spent much of last year working on NeXT/OS X at a company which used NeXT-based technologies extensively, I have some ideas (hopes, perhaps) as to what Steve Jobs will pull out of his sleeve next.

    Before Apple bought it, NeXT was in the business of selling software development tools primarily for NT and Solaris (although it also sold NeXTStep for x86.) After Apple bought it, NeXT was renamed Apple Enterprise and continued to do the same thing.

    Apple's WebObjects is a little bit of web development tool over the complete NeXT development platform, including the badly named Enterprise Object Framework (EOF), a very mature OO database access tool. The NT version also lets you write NT apps that are (or were, at least in the last version) 100% source compatible with their NeXT/ MacOS X counterparts.

    What I was using this technology for was to build things on a desktop (OS X or NT) and then compile them for Solaris (without the GUI). I suspect that once MacOS X has gotten a hold in the marketplace, Apple will start to push its cross-platform development tools.

    I don't think Mac-on-Intel is going to show up any time soon from Apple, since it likes being able to set the hardware rules ("you WILL use USB") but I do think they want to give PC software vendors no excuse to not port to the Mac. Their solution: use Apple's object classes and put Java or fat-binaries on your CD-ROM.

  20. Re:Compilers, Project/Interface Builder? on Mac OS X, XML, and Aqua · · Score: 1

    NeXT used gcc as their compiler, and have continued that tradition into OS X. In fact, Objective-C support has been used and mantained over the years largely by NeXT Inc. and NeXTSTEP developers.

    I might add that Project Builder makes nice clean makefiles that build into separate Debug and Release directories so the .o files don't get mingled.