Slashdot Mirror


User: thomas.galvin

thomas.galvin's activity in the archive.

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

Comments · 595

  1. Re:Suggestion to help SLASHDOT EFFECT on A High-School Hacker's Notebook · · Score: 1

    And defeat the purpose of having a slashcache at all...

  2. Re:It's not funny. on A High-School Hacker's Notebook · · Score: 1

    I agree; /. should be caching these pages, linking ot the cache, and leaving the true address as a non-link for anyone who may want to bookmark the site for future reference.

    I don't even think about what I'm doing when I click a link..."hmm, that sounds interesting...oh well, another dead site." It would be better for the readers to have a cache that we know is reliable, and better for the people whos servers are getting murdered.

    To get around the copyright issues, the cache could be set up to expire in a week or so, and the editors could put a disclamer somewhere basically saying "let us know if you don't want your site cached, and we'll just link directly." Their funeral, after all...

  3. Re:Makes no sense. on Speed of Light Inconstant? · · Score: 1

    Then, when t was 0 (big bang), the speed of light was infinity

    Nope, it means that the speed of light was undefined. If I remember correctly, there are seveal formulas floating around that exhibit this behavior, leading to the following discussion:

    "So, what happened at the moment of the big bang?"
    "Uhh..."

  4. Re:*brr* on Speed of Light Inconstant? · · Score: 1

    The Bible tells me that God created the heavens and the earth. The scientists tell me how He did it. I've never really seen what the big deal was...

  5. Re:Improving Java on 10 Reasons We Need Java 3 · · Score: 1

    You seem to know what you're talking about; you should grab a /. account somor people will hear you.

    Anyway, I've read some of the papers that indicate run-time compilation can actually outperform pre-compilation by about 10 percent, for the reasons you mention above. I can even logically see why this is the case. Where this all falls apart for me, though, is in my catual experience.

    Now that I think about it, I would imagine that a lot of the problems I experience (and honestly, they aren't that big) come from SWING, not the VM. Although SWING has gotten much better, there is still a feeling of sluggishness about it, much like there was with the first release of Netscape 6. It will, however, continue to get better.

  6. Re:Serious features seriously needed on 10 Reasons We Need Java 3 · · Score: 1

    Composition is, IMO, a cludge.
    It represents "has-a" relationships; inheritance represents "is-a" relationships. Two different roles.


    Yes, they are. And thus, composition is insufficient when multiple inheritance is called for.

    If a class really "is-a" child of two other classes, it should inherit from both of those classes. It should not contain those classes and provide accessor methods to the functionality of those classes. I'm not afraid of typing, but I am opposed to it when there is no good reason for it.

    As for the diamond problem you mentioned, the solution is simple; if more than one parent class implements a function, force the child class to implement it's one, even if all it does is call ParentName.func();
    Because that's not excessive work, you mean?


    Exactly, it is not excessive work. I code for a living. I would rather not have to spend time on trivial matters. Pick a solution and implement it. If I were solving this problem, that is the solution I would use.

    Personally I consider MI of implementation to be a cludge around bad design where - as you say - the programmer wants to save typing.

    If the class you are writing needs the functionality of two other classes, there is no good reason to type more than extends foo, bar. If there is an implementation conflict, then have the developer sort it out. Otherwise, get out of their way. Remember, typing is working, and the less time you spend working on old problems, the more time you spend on the important stuff.

  7. Re:AWT!=Advanced Windowing Toolkit on 10 Reasons We Need Java 3 · · Score: 1

    Sorry...just need to clear something up...AWT stands for Abstract Windowing Toolkit, not Advanced as you seem to make out...just thought I'd clear that up.

    Hmm..well I'll be. You're right. Been a while since I've looked. :-/ Good catch.

  8. Re:Serious features seriously needed on 10 Reasons We Need Java 3 · · Score: 2, Interesting

    Multiple inheritance has major problems (if both superclasses have the same function, which one do you use?). A much better answer is often to use "Composition", where the class you are writing contains both of the superclasses that you want to extend, and have your class manually delegate to which ever one of the classes you want to perform the operation. See the "Inheritance versus Composition" section of "Design Pattern" for more details.

    Composition is, IMO, a cludge. One of the promises of OO is code reuse; I shouldn't have to do inordinant ammounts of work to get at functionality I have already written. As for the diamond problem you mentioned, the solution is simple; if more than one parent class implements a function, force the child class to implement it's one, even if all it does is call ParentName.func();

  9. Re:Serious features seriously needed on 10 Reasons We Need Java 3 · · Score: 1

    But GCJ was exactly what I was talking about. :) Interesting.

    Unfortunatly, last I heard, it couldn't complie SWING. They were working on it, though.

  10. Re:Improving Java on 10 Reasons We Need Java 3 · · Score: 1

    And one more thing for my wish list: a byte-code to native code complier that ships with the Java SDK. I've got one laying around somewhere, and I don't even use it that much (it's a trial edition, I can't use it for comercial stuff), but it'd be nice to have one ship with javac. HotSpot already does native compilation, so I don't see why they don't give us access to it.

  11. Re:Forget It on 10 Reasons We Need Java 3 · · Score: 1

    He's not talking about changing the philosophy of Java; he's talking about reworking Java so that it actually conforms to the Java philosophy. Simpler. More Powerful. More Consistant. That is supposed to be Java's mantra, but it doesn't always meet it. I love Java, but I'm also able to see that there is room for imporvment, for progress.

  12. Improving Java on 10 Reasons We Need Java 3 · · Score: 1
    10. Delete all deprecated methods, fields, classes, and interfaces.

    This one is a no-brainer. Just about all of the real programmers I know remove deprecated calls from their code as they are encountered. If something has been deprecated, it was probably for a good reason. Leaving these things in the language only serves to build cruft.

    9. Fix incorrect naming conventions.

    One of the things that I like best about Java is the internal consistency; many times, I can guess the correct method to call simply because simmilar methods exist for other objects, Still, Harold is right; there are a few places here and there where imporvments could be made. Is it String.size() or String.length()? Little things like that should be cleaned up. It's still a far cry better than C++, but it could also be better.

    8. Eliminate primitive data types.

    I disagree with this one. As a semi-interpreted language, performance has always been precieved as one of Java's faults. There is no reason to complicate matters by promoting primitives to objects. There are some cases when this would be useful, especially when using the container classes, but I think this will be better solved by the "auto-boxing" of the upcomming Java release than by defaulting all fields to objects.

    There is no need for primitives to have inheritance; they would almost certainly be final anyway, and providing them with methods such as int.compareTo(int) would just clutter mathematical code. I say leave them as they are, and box them as necessary.

    7. Extend chars to four bytes

    I can see his point; Unicode is getting huge. Still, I'm not sure justifies doubling the space every character takes up; perhaps a new unicode type would be better. Of course, to be of any use, String would have to default to this new type, so I might just be gull of hot air on this one.

    6. Fix threads.

    I'm not a thread expert either, so I'll keep my mouth shut except to say Java's thread support has been sufficient for my needs.

    5. Convert file formats to XML.

    I don't see any problem with this. As Harold indicated with his mention of XMLEncoder/XMLDecoder, Java is already moving in this direction, and since XML is becoming a de facto standard anyway, I say jump on the bandwagon. I would also like to see JEditorPane expanded to include support for an XML file format; if it was compatible with OpenOffice, so much the better.

    4. Ditch the AWT.

    This one gives me nightmares...I have a lot of GUI code laying around, and having to rework all of it...ah well, that's what weekeneds are for, right?

    Harold is right, the AWT is out-dated and poorly named (there isn't very much about the AWT that can be considered advanced), and lacks the functionality for real GUI design. SWING can always be improved, but in general, I like what it provides.

    One thing I do take issue with; converting JFrame etc to Frame. This might be more logical, and is what would have been done if AWT hadn't claimed all of those names already, but I like being able to hit the documentation and look at all of the Jbar, Jfoo classes and know that I'm seeing the SWING stuff.

    3. Rationalize the collections.

    Again, he is right in claiming that consistancy is important, but I don't see any reason to remove Vector or Hashtable; these are the only containers I use with any regularity, and most people coming from a C++ background will be the same way. If I spent the time to investigate ArrayList or HashMap more, I might convert, but for the sake of intuitivness, I still think that the Vector and Hashtable names should be kept if the classes are merged. Also, Vector and Hashtable are synchronized, ArrayList and HashMap are not. Thread safety is almost always nice.

    2. Redesign I/O.

    Ugh. Yep. I have never been a fan the way Java handles IO. Perhaps I was spoiled by C++. Perhaps it was just because I had no idea what classes I should be looking for when I was trying to learn it. In any event, I agree that File needs to be expanded to allow for real file manipulation, and that something has to be done to make sense out of all the streams and readers and writers laying around.

    1. Redesign class loading from scratch, this time with human interface factors in mind.

    Class loading, in usual cases, isn't a problem. I suppose it can get tricky when you start fiddling with CLASSPATH and packages and dynamic loading, but I really haven't seen enough problems with this to comment one way or the other. I've never encountered the bug he mentioned about Class A implementing Class B but not being an insatance of Class B because they were handled by different class loaders, but that at least should be fixed.

    There are a few things I would also like to see done with Java:

    • Multiple Inheritance. I know people complaine about complex code, but there are some things that are just so much easier to do with multiple inheritance. The language can and should have rules built in to avoid the diamond problem.
    • Templates. I think this one is being worked on the the JCP. This might be one of the things planned fo rhte 1.5 release; I don't remember.
    • Better Large and Complex numbmer support. BigInteger and BigDecimal should behave like String; classes that can be mainpulated via mathermatical operators. A ComplexNumber class should also be introduced, and behave the same way. This would make the math people happy, and do a lot to qwell the cry for operator overload.
    • Enums. This is mentioned in the article, and is a great idea. There are a few places where you can learn how to get Java to mimic enumerations; you shouldn't have to cludge it in, it should be part of the language.
    • Better process handling. You cannot reliable execute shell scripts form Java, and getting output from/sending output to spawned (native) processes is difficult. This should be changed.
  13. Re:mass accelleration on Slashback: Boeing, Fraud, Fundage · · Score: 1

    Thus if an object has more mass, it feels more force.

    True, but it also has more inertia, so the net effect is the same. Larger objects pull harder, but are harder to get moving. Smaller objects don't pull so hard, but are easier to get moving.

  14. Re:A little murky here on NeoNapster's NeoAudio Rips Off CDex · · Score: 2, Informative

    Oh, I see. This software is free (as in "I am a sanctimonious prick") until someone tries to use it. At that point you are going to slam all sorts of requirements on it.
    Look. Either the software is free (as in ...) or it isn't. If you are a control phreak, be honest and make your software propriatary.


    The issues are a bit more complex than I want to get into for a /. post, so read the ERS link I provided above.

    Anyway, recognition is the money of the open source culture. recognition is gained through sharing something of value with the community.

    To ensure that the code contributed by people is of maximum value, the GPL allows modification and redistribution; it is truly given to the community. On the other hand, hacker ethic protect's the author's ability to continue to recieve recognition for his/her work. While it is legal to fork a project, rebrand it, etc, it is considered bad form to do so unless the code has been abandoned (i.e. it is no longer activly maintained) or the author fails to make necessary/useful modifications to the code.

    This can be kind of hard to understand if you don't play with these people, but what we are seeing here really is internally consistant behavior. There was no good reason for the fork; NeoNapster just wanted to make money off of someone else's work. They contributed nothing to the community, added nothing of value to the project. Legal, yes, but socially unacceptable.

    As I read the GPL, the CDEX folks have nothing to complain about. They specifically allowed for this in their license. If they didn't want it to happen, they should have gone closed source. (or open source with a restrictive license (Shared source?))

    The GPL is the best compromise I have seen between ensuring a piece of software will remain valueable to the community at large, and protecting the author's right to recognition. I imagine that the CDex team would welcome source modifications that are benificial, but to ensure that anyone can make these modifications, a GPL style license is necessary. This does make NeoNapster's actions legal (unless what I have been reading about their changing of copyright strings is true; I haven't browsed the source), but it does not make them right.

    Whether the users of this software have something to complain about (spyware) is another matter, but very little of this discussion has been about them.

    Watch what happens when someone developes an actuall, useful mod to a program. The reaction is usually "hey, cool" ro "well, lemme incorporate that into the next release." Much of the vehemence is due to the fact that modification to the program is crapware.

  15. Re:Sounds about right.... on NeoNapster's NeoAudio Rips Off CDex · · Score: 2, Funny

    .. Isn't that the way all the big boys started? MS stealing from Apple, AOL from Compuserve, etc...

    At lest MS, apple, et al had to do some work. NeoNapster is basically
    sed /s/CDex/NeoAudio/g *.cc ; make

  16. Re:A little murky here on NeoNapster's NeoAudio Rips Off CDex · · Score: 1

    Check this out for more info on the hacker culture, especially the OpenSource types. It looks like the HTML got eaten, but there's a postscript file there.

  17. Re:A little murky here on NeoNapster's NeoAudio Rips Off CDex · · Score: 2, Insightful

    It seems the GPL community is very antagonistic and overly fanatical to the point of witch hunts. Let's not burn any witches yet until we've without a doubt verified that they're indeed witches!

    For the most part, all a GPL developer gets for opening his/her source is a pat on the back, the kudos from other hackers.

    Because of this, there are a few psuedo-rules that have developed in that culture. Most importantly to this matter, forking a project is generally looked down on, unless there is a demonstrable reason for it, and using someone else's code without giving proper, prominant credit is verboden.

    Also, it is considered only polite to contribute something back to the community; that's why the GPL is "virulent," as MS says. If you want to use my code, go ahead, but you also have to let others use your code. Fair is fair.

    While NeoNapster may have abided by the letter of the GPL, they violated the spirit; all NeoNapster has done is add spyware/adware. The community does not benifit from this at all, and this problem is compounded by the general distaste computer types have for spy/adware.

    So, unsanctioned forking, not giving back to the community, and tossing spy/adware at people will lead to your aforementioned witch hunt, and this is completely reasonable if you understand the culture.

  18. Re:Is Linux Really a Threat? on MS to Implement Some DoJ Settlement Terms Preemptively · · Score: 1

    Many companies (i.e. RedHat, IBM) are attempting to make a profit by selling/supporting linux. MS's actions directly effect their ability to be profitable.

  19. Re:Sure They will Change a few Icons on MS to Implement Some DoJ Settlement Terms Preemptively · · Score: 2, Insightful

    The actual result of the DoJ settlement proposal is more along the lines of allowing people to remove access to these components from everything except those functions that will not work with any other company's replacement (Windows Update is usually a good example of this, since it doesn't seem to work with other browsers). There are a few other points in there, but that's the one that will be most visible to most people (the majority of it has to do with contracts with ISVs, ISPs, and OEMs, so people won't really see the changes there unless their vendors make changes to other developers' software because of the contractual changes).

    And this will prove to be a wonderfully useless "solution." I can just hear all of the customers out there screamning "ooh, ooh, I want fewer features in my copy of windows! No browser? Cool! I have to download the free (10 Meg) media player? Sign me up!"

    Other than that, antitrust law isn't about 'a more level playing field', it's about keeping the biggest player on the field from preventing other players entering the field. Microsoft made contracts with other companies that made it prohibitive for them to use or sell other people's software when it competed with their own, and opening the source code to Office (part of the 9 states' proposal) doesn't address that situation (though both proposals include contractual changes that will address it).

    Exactly right. Telling MS to offer a stripped down version of Windows is sensless, since almost no one will buy it. What the DoJ needs to do is stop MS from keeping other vendors off the desktop, or off the system alltogether. MS doesn't like Java? Fine, don't bundle it. But there are a lot of OEMs that will see the value in having Java on their computers, and MS should not be able to stop them from putting it there.

    They also need to go after all of the price schemes they seem to be hitting vendors with. What MS is charging Dell to put Windows on their boxes should not be a trade secret, and the only price break MS should be allowed to give one OEM over the other should be due to volume discounting; none of this "Don't put Linux on your machine, or you'll loose you 'special discount'" stuff.

  20. Re:Wonderful... on AT-ATs Coming to a Forest Near You · · Score: 1

    Because of course the world certainly needs newer, bigger, and better ways to cut down even more trees.

    There are more trees in our country now than when Columbus hit the shores. Why? Because people buy them, so the logging companies keep planting more.

  21. Re:How many people do check the MD5 checksum? on OpenSSH Package Trojaned · · Score: 1

    What we need is a trusted 3rd party that has all the checksums.

    Until that trusted third party gets rooted. What you really want is a bunch of third parties with checksums; much harder to infiltrate, much more secure.

  22. Re:I'm suprised... on OpenSSH Package Trojaned · · Score: 1

    "Whose motives are clearly defined as breaking everyone else's stuff and planned obsolescence, to name a few."
    You know, before coming to Slashdot, I didn't know that there were religiously fanatical computer users. This really takes the cake. Any company that goes with "Planned obsolescence" will go out of business.


    Planned obsolescence is in the business plan of many (even most) companies. The first lightbulb is still burning; it was made out of horse hair coated with tungsten (not sure on the metal), and won't burn out like today's lightbulbs will. The reason today's lightbulbs aren't made like that? No one would buy any more lightbulbs. Simmilar stories apply to refridgerators, cars, etc.

    The problem with software, from the developers perspective, is that is never wears out, and once you have included all of the features that the user needs, such as in MS Office, no one will want to buy your upgrades. This is the reason for MS's "software as a service" strategy; software never degrades, and no one wants their new "features," but they still have to be profitable. Planned obsolescence doesn't even describe it; it's more like forced obsolescence.

  23. Re:No not about the GPL or the JPEG patent... on Slashback: Assembly, Avoidance, Civility · · Score: 1

    What the person at the front of the church is talking about. They babble on about their current pet theory or whatever and expect the congregation to just sit there and say nothing. A large group of people are held captive to the opinions of one person which ought to be engaged in dialog amongst everyone present.

    You don't go to church to talk, you go to worship and hear the preacher preach. If you want a converation, join a study or home group. Both presentation formats have their uses.

  24. Re: Stallman's response is interesting on Slashback: Assembly, Avoidance, Civility · · Score: 1

    I respect Stallman for what he has done, and for the services he has provided. GCC alone makes him worthy of note, and I am willing to forgive him for unleashing EMACS on us. ;-)

    In general, I agree with Stallman's positions on freedom; people should have the freedom to speak as they wish, when they wish. People should be able to use items that they purchase as they see fit; even if the items are digital in nature. He also values freedom of thought and the ability to manipulate information above profits.

    I do not, however, take it to the extreem that he does. While he does not advocate requiering program authors to release their source code, he is unwilling to use programs to which the source code in not available, modifiable, and redistributable. I use, and am quite happy with, a number of closed-source programs. I write proprietary code for a living. I can also, however, see the value in open software systems.

    Stallman is a complex guy, from what I have read. I don't always agree with him, but I am glad that he is out there making noise.

  25. Re:You don't deserve free speech. on ACLU Files New DMCA Challenge · · Score: 1

    It's not the same as yelling "Fire!" in a crowded theater (which also should be "protected" speech IMHO). Anyone who thinks like that definitely does not belong in the ACLU.

    As I said above, yelling fire and the type of speach that NAMBLA should not be able to engage in are the same in that they pose a real, decernable threat to the life and welfare of other people.

    It is illegal to falsly shout "Fire" in a crowded theater because it is likely to cause a panic and a stampeed, and is thus likely to result in needless harm or death to innocent people.

    Some of NAMBLA's speach is designed to convince people that sexual relations between adult men and underage boys is both normal and positive. This speach, speach designed to sway public opinion, is protected, and always should be. The fact that is is regarded by society at large to be repugnant is, as you said, the chief reason that it needs to be protected.

    Some of their speach, however, is designed to lure underage boys into such relationships. If a web site or online chat is intended not to persuade public opinion, but to facilitate the commission of a crime, it is no longer protected.

    The relations that NAMBLA advocates are medically proven to leave lasting psychological scars. This is why they are illegal, and this is why it is illegal to attempt to entice a young boy into such a relationship.

    Free speech is a principle. Speech either is or is not free. Either you can go to jail for saying something or you can't. Period. It's because of people like you that we need the ACLU and Libertarians in general.

    Ah, it's been a while since someone has said "it's because of people like you" to me...refreshing. Regardless, you seem to miss the reason speach is a protected liberty. This country is founded on the principles of representative democracy. One of the neccesities of such a system of government is the ability to petition the government for the redress of grievences. Also, the founders recognised that for a society to be free and maliable, people would need to be able to discuss the issues of the day. Finally, as government is both capable and likely to get out of control, is is important to be able to voice concerns and outrages without fear of reprise.

    There are other forms of speach, however, that are not protected. Slander is illegal; one cannot knowingly say false things about an individual with the intent to harm their reputation. Soliciting a prostitute, or attempting to buy drugs, though speach, are part of the comission of a crime, and are therefore not protected. Even obscenity is not a protected form of communication.

    Political speach, you see, is protected. Other forms of speach, however, are not, nor have they ever been. In particular, speach that is likely to cause harm or death is verboden, as is communication to falicitate a crime..

    NAMBLA's attempts to legalise sexual relations between men and boys is constitutionally protected. It is political speach. Yelling "Fire!" in a crowded theater, or attempting to solicit sex from an underage boy, are not, nor should they be.

    I look forward to the day when you have to worry about what you say in public for fear of being reported by others to the state. Remember that someone has to decide what speech is legal and what is not. And, that someone is not going to be you. Perhaps one day it will be illegal to spell Microsoft with a "$", or to even speak the word with a negative tone of voice.

    Such scenarios are, unfortunatly, not unthikable. They will not, however, be the result of laws that prohibit homosexuals from preying on children.

    The details of NAMBLA's beliefs are completely irrelevant to this discussion. I don't care even the slightest what they believe. I don't care if they're advocating immediate (meaning right now, before I can even finish writing this sentence) thermonuclear war to fight world hunger, or the release of Ebola-Marburg-Smallpox-Lassa superviruses into the wild to save the rainforests, or having kittens for breakfast to promote healthy skin. The more unpopular and offensive the belief, the more important its defense. Popular beliefs don't need a constitution or a bill of rights to protect them. The Nazis didn't seize power. They were voted in.

    True, the nature of their beliefs is irelivant to whether or not they should be allowed to air those beliefs. It is not, however, irrelivant to whether or not they should be allowed to act on those beliefs. NAMBLA's advocacy of the legalization of sexual relations between men and boys is a political act and thus protected speach. Their attempts to solicit sexual relations from young boys, on the other hand, is not a political act, it is a perdatory act with grave consequences, and is thus not protected.