Slashdot Mirror


User: MrSteveSD

MrSteveSD's activity in the archive.

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

Comments · 803

  1. Kids pressing all the buttons... on Space Elevators Face Wobble Problem · · Score: 5, Funny

    is surely the biggest problem :)

  2. Re:Veto Powers Abused too! on US Ignores Unwelcome WTO IP Rulings · · Score: 1

    Before the 1980's, the USSR generally held the record on uses of vetos.

    Correct, so I was careful to say the 80s.

    Most of what the US has vetoed has to do with preventing any condemnations of Israeli actions (I'm not implying any judgment about whether that was justified, just pointing out the fact).

    Also true. Often the resolutions also have text condemning Palestinian actions as well so it's not like they are just against Israel either. Another issue is hidden Vetoes and they have been used in all sorts of areas, like the Rwanda crisis.

    Of course at the General Assembly there is no veto or hidden veto, so it's interesting to look at the voting record there too. The US is often completely isolated in General Assembly votes with just a couple of subordinates like Israel and the UK backing them. This was true most recently when the General Assembly voted for an immediate Ceasefire during the Lebanon conflict. The US, UK and Israel were opposed to it because they wanted to give the IDF time to cripple Hezbolla (and perhaps the Lebanese infrastructure in general).

    The US and Israel were the only two countries to vote against A/RES/42/159, which was a resolution condemning international terrorism. The reason they voted against it was because aside from condemning terrorism, the resolution said...

    Reaffirming also the inalienable right to self-determination and independence of all peoples under colonial and racist regimes and other forms of alien domination, and upholding the legitimacy of their struggle, in particular the struggle of national liberation movements...
  3. Re:Remind me again, why does China have MFN status on China's Battle to Police the Web · · Score: 3, Interesting

    Or this football match between England and Germany in Berlin in 1938. http://news.bbc.co.uk/nol/shared/spl/hi/pop_ups/03/magazine_enl_1064218142/img/1.jpg

    Can you guess which team is doing the Nazi salute? It's the England team.

  4. Re:Veto Powers Abused too! on US Ignores Unwelcome WTO IP Rulings · · Score: 3, Insightful

    The US has used the Veto the most times, at least since the 80s. Of course all 5 permanent dictators of the UN Security Council have the veto power. Even the threat of Veto (Hidden Veto) is enough to stop resolutions from even being proposed. That's what happened with Rwanda. France and the US threatened to veto anything that had the word "Genocide" in it, because it would have required immediate action. Yet it is not France and the US that people blame for Rwanda. Instead people look at Rwanda and say the UN is to blame (the US and France must be quite relieved at that).

    The will of the world is expressed through General Assembly Resolutions, but perversely they are non binding, whereas the UN Security Council dictatorship resolutions are binding. Then again, it wouldn't really matter if the General Assembly resolutions were binding, because powerful countries like the US, Russia, China etc would just ignore them. Since the major powers clearly have no interest in obeying the rules, it comes down to who is militarily powerful, and that is a very poor lesson to teach the rest of the world. The result of all this is that more and more countries will try to develop nuclear weapons in an attempt to join this "power club".

  5. Re:Veto Powers Abused too! on US Ignores Unwelcome WTO IP Rulings · · Score: 3, Insightful

    Imagine if the same philosophy was adopted by everyone. Suddenly I could decide that the law doesn't apply to me and opt out. I could rob banks at will and have a lot of fun. The Banks would want me stopped, but because I've opted out, they would not be able to use the law to stop me. Instead they would have to opt out of the law as well and take matters into their own hands, probably violently.

    That's the kind of situation that currently exists internationally and it's not a good thing.

  6. Powerful Countries often ignore the rules on US Ignores Unwelcome WTO IP Rulings · · Score: 5, Interesting

    Back in the 80s the US even ignored a ruling from the World Court to cease it's terrorist activities in Nicaragua, which included mining the harbours and putting civilian shipping in great danger. It even ignored the two subsequent UN General Assembly resolutions demanding that it observe the World Court Ruling.

    It basically comes down to this. If you are powerful, you can ignore the rules. If you are not, you may well be in serious trouble.

  7. Re:Who cares? on Blizzard Sues Creator of WoW Bot · · Score: 1

    I really hate all that gradual building up of levels stuff. It all seems so artificial. I mean, imagine you had a Star Trek Holodeck and you were playing in some Conan-type world. Whether you win or lose a sword fight would depend on how skillfull you actually were with the sword, not on some artificial dexterity rating.

    So I think instead of artificial levels, they need to somehow let people express skills in games. I think that in a swordfight you should have much more control over the sword, as close to really holding it as can be. In Oblivion you just click an attack button, so it comes down to levels again, but I think it would be better if the mouse really controlled the position of the sword. That way it would be more about real skill than some dexterity rating.

  8. Re:Maybe i should start a WoW account.. on Blizzard Sues Creator of WoW Bot · · Score: 1

    I agree. It doesn't appeal to me. I really like Oblivion though. I wish that was Massively Multiplayer.

  9. Parachutes? on Aerial Drones To Help Cops In Miami · · Score: 1

    Perhaps they can fit them with little Parachutes in case of power failure.

  10. Re:Nosecones? on Nuclear Nose Cones Mistakenly Shipped to Taiwan · · Score: 1

    It is sort of a case of accidental nuclear proliferation. Of course the Nuclear powers are obligated to disarm under the NPT but it's a topic the media refuses to touch. They would rather focus on countries that don't have nukes, like Iran.

  11. Re:And the BBC blocked... on China Unblocks the BBC (In English) · · Score: 5, Insightful

    The BBC also refused to show the Star Trek Next Gen episode "The High Ground" because Mr Data mentioned that terrorism sometimes works and that Northern Ireland became independent. Also a while back the BBC had an open discussion on Google's collaboration with censorship in China. A few people pointed out that the BBC also engages in censorship and the BBC deleted their comments. In the end they had to give up as a torrent of people started to complain. If you look at the BBC's "Have Your Say" today, you will see that all discussions are totally locked down and pre-moderated despite the BBC's initial promise of an open discussion system.

    The more general issue though is that the BBC (and other outlets) engage in widespread self-censorship. Just look at the way the BBC handles the official statements of different governments. When it comes to Russia the BBC treat them with suspicion and try to second guess them and look at all the possible ulterior motives. When it comes to the US or UK, there is no such analysis and the arguments become confined within the narrow parameters laid out by those governments. So BBC discussion of Iraq becomes an analysis of how our good intentions have gone wrong, or why we messed up with the intelligence, rather than trying to look at any possible ulterior motives etc.

  12. Re:Duh? on More Interest In Parallel Programming Outside the US? · · Score: 1

    I think that while we are still just on a handful of cores, there isn't so much to gain. Software will already generally be a bit faster due to the OS juggling different applications around on the cores. When we have lots of cores e.g. 20, then writing for parallelism will be a lot more important.

    That said, applications (particularly in the business area) tend to stick around for years. So although you might not gain much now by writing a parallel app for a 2 core system, in 5 years time your single threaded application could look quite stupid. It's a bit of a dilemma for small software houses. Do you tear your hear out and spend lots of money trying to write a parallel app now, even though there won't be much speed gain yet. Or do you take it easy and spend less money now writing a single-threaded app, but risk having your application looking totally useless as the number of cores keeps increasing.

  13. Re:Net Neutrality on IT Workers Split For McCain, Obama · · Score: 1

    Clinton is also pro net neutrality (I'm sure Nader is too). But Nader is also against software patents. I have no idea of the other three candidates stance on software patents or any other IT issues. Is there an IT policy matrix anywhere?

  14. IT Policy Matrix? on IT Workers Split For McCain, Obama · · Score: 2, Interesting

    Is there an IT Policy matrix to compare the candidates? I know that both Clinton and Obama are in favour of net neutrality, and McCain opposes it, but what of the other issues? I know Ralph Nader is against software patents, but I don't have a clue about the other candidates stance on that.

  15. Re:Not as low energy as you think on A Super-Efficient Light Bulb · · Score: 3, Interesting

    but there's no mention in the video about scalability or low-power use

    Well they say in the video that it is almost 10 times as efficient in terms of Lumen's per watt (140 vs 15 for a normal bulb). I assume what you mean though is that the new argon bulb might not be able to run at lower powers. So if you just wanted a 60 Watt bulb equivalent, it might not be possible. Is that what you mean?
  16. Free Cars For All RIAA Employees, Click Here :) on FBI Posts Fake Hyperlinks To Trap Downloaders of Illegal Porn · · Score: 1

    Now that would be a better joke. A huge FBI raid on the RIAA.

  17. Re:Room temperature superconductors? on Scientists Create Room Temperature Superconductor · · Score: 1

    He might be at room temperature now, but he used to be at body temperature :)

  18. Re:Wow, that's a big fat ASS^H^HPI on Visualizing the .NET Framework · · Score: 1

    I hear what you're saying, but I kinda disagree with the "people don't expect it". For me, and I'm sure a few others...half the joy of coding is finding out new things. "Oh, I didn't know you could do that!"

    I haven't really looked at it a great deal, but it's just one of those features that sets alarms bells ringing in my head.

    For me, when you have comparison operators, I like to knwo what its doing, at the comparison line. I don't see it fitting to have to sort through objects to figure out that we're really doing a glorfied "between" check.

    I think "Range.IsWithin(EnteredDate)" has a pretty clear meaning. The whole point of object oriented design is to identify concepts and encapsulate logic. Granted, a comparison between a couple of dates is fairly simple logic, but it's still logic than can be very well encapsulated. I mean imagine you had a vector class and you wanted to do a cross product between two instances. You could just do the cross product by accessing properties, then you would be able to see exactly what is happening. But doesn't it make a hell of a lot more sense to have a CrossProduct method that encapsulates that logic? If you wanted to see what was happening in a cross product operation, it would be quite trivial just to take a look inside the method.

    On a side note, creating a class that has two properties, and a method for comparison is by most standards "bad design" as all classes should try to achieve a 2:1 ratio of methods to properties. When you are setting more properties than methods, you really just creating a container class with a function.

    That's kind of an arbitrary rule, but I'm sure that given a moments thought you will see that there are a whole lot of possible methods for a range class. For example, it might be useful to be able to check whether one range completely contains another "Range.Contains(SomeRange) or whether a range occurs before or after another range "Range.IsBefore(SomeRange)", "Range.IsAfter(SomeRange)". There are all sorts of useful possibilities.

    I took my example from the T-SQL "BETWEEN" word, it makes logical sense and I personally think its more readable that way.

    Writing a specific check like you have done misses the general concept of a range which of course goes far beyond dates. You should always be trying to identify reusable concepts. For example, imagine that in most of your application you need to be doing certain checks on the strings that users enter. You might generally have to check a few things e.g.

    • That the string is not zero length
    • That the string is not too long (this will vary of course)
    • That the string does not contain certain characters (e.g. question marks etc)


    So in in your Employee Class, you could just perform all of these checks in your FirstName property, and your LastName property and in all of the other string properties of dozens of other classes. If you did this you would be repeating lots of the same logic all over the place. An alternative would be to create a general function that can be called from anywhere, and you would have to pass all of the restrictions (lists of allowable characters, min length, Max length etc) as parameters when you call it. So you would have data (the restrictions) and logic (the rules using the restrictions). In the days before object oriented languages, you would probably do something very much like that but in modern object oriented languages doesn't this seem like a good time to consider putting this stuff together in some new class? You could easily create a StringValidator class to help you with all of this. You set it's properties and it does all of the checking logic for you. The FirstName and LastName properties would probably just use the same StringValidator instance, so you have already saved on coding just in one class in your project!
  19. Re:This is bigger than you think on New BigDog Robot Video · · Score: 1

    It's certainly impressive, but imagine how much more impressive a biped would look. Boston Dynamics have actually created a few difference types of bots. The RHex looks a lot simpler than this walker robot, but is very impressive. It's "wheels" are sort of a cross between wheels and legs. It can climb over all sorts of terrain and even go up stairs with ease. I think it would make a pretty good toy as well.

  20. Re:Wow, that's a big fat ASS^H^HPI on Visualizing the .NET Framework · · Score: 1

    I really don't like the idea of slapping methods onto a class using these new Extension Methods, but that is a whole other argument for another day. To me it looks more confusing because people don't expect DateTime to have this new method you have created.

    Anyway, the other issue is that whenever you want to check whether a date is within range, you have to pass in both boundary dates. This is unnecessary with a range type. The more you have to type, the more mistakes you are going to make. This whole "hiding variables" argument is spurious because they are only hidden compared to the case of using hard coded values (generally a poor idea). As soon as your boundary dates are variables rather than hard-coded values, there is really no difference between a range class and the separate variables. If you want to know what the range is at runtime, you can just inspect the range class and use Range.StartDate and Range.EndDate.

    The other issue, which I didn't talk about before is that identifying the concept of a range leads you in new and interesting directions. For example, you may suddenly realise that aside from a Date Range, a double range or Integer range would be really useful. The code for all these different kinds of range is pretty much the same and it's easy to implement using Generics.

  21. Re:.NET is OOP gone stupid. on Visualizing the .NET Framework · · Score: 1

    Honestly, I think 90% of the actual value of a .NET cert is that you're at least exposed to all the major features of the framework.

    I've never really been a big fan of trying to learn absolutely everything, especially when the things you are trying to learn are as transient as those of a particular Microsoft technology. If Microsoft kept completely changing physics every few years, I really wouldn't have bothered doing a physics degree. These Certification courses tend to be quite expensive and I know that the companies that do the training promise students (who fork over thousands) the Earth.
  22. Re:Wow, that's a big fat ASS^H^HPI on Visualizing the .NET Framework · · Score: 1

    I do agree that over abstraction can be a hindrance to code maintainability and efficiency

    I'm not sure I've seen many cases of "over abstraction". Can you think of a good example you have seen? Normally what I see is under-abstraction. People repeating the same logic again and again all over the place and failing to see that it can be abstracted away.
  23. Re:Wow, that's a big fat ASS^H^HPI on Visualizing the .NET Framework · · Score: 5, Insightful

    So instead of being able to see both the variable AND the range it is being tested against IN THE SAME LINE, I now have to go trawling back through the code looking for the place where you created the Range object to find the low and high boundaries of it.

    You seem to be assuming that there would be a hard coded range. The allowable range may be defined in a database or elsewhere. Checking against the same range may occur in many different places, so you certainly would not want to have the range hard-coded in every routine you need to do such checking.

    Imagine that the Date range object was intended to check the date of birth of new employees (e.g. You want prevent mistakes like they were born 200 years ago or 50 years in the future). If you are smart you will have created some kind of Employee class, and this Date Range checking object could just be a static variable of the class itself. It would be pretty easy to see where it was set.

    So yet more jumping all over the place hunting for stuff, when the original version was completely fit for purpose, clear, and most importantly, IN ONE BLOODY PLACE.

    The whole point is to reduce the unnecessary repetition of logic. Imagine if you wanted to do something more complex like check if one date range was contained within another. Suddenly you start repeating quite a lot of logic without a Range object.

    Of course, it get's even "better" ... not all range checking will use the same ranges ... so then some bright spark will create Range2, Range3, Range4 objects with different ranges in each one.

    Of course there will be different ranges. What does that have to do with anything? If anyone names variables "Range1, Range2" etc, they need some quick re-education.

    You see how this function does nothing for either readability or speed of debugging, but simply hides information that a programmer NEEDS to know in the context of the line he is looking at ?

    It's interesting that you think information is being hidden. This would only be the case if you compare it to the situation of hard coding things everywhere, which is generally a very bad practice. The information in a Range object is no more hidden that the case where your limits are two separate variables called "StartDate" and "EndDate" (Variables which might be initialized when the application first starts). What is really being hidden is logic. That's what object oriented programming is really all about, i.e. trying to abstract away complexity into new types.

    You can keep your Range object thanks.

    It's not really mine. Martin Fowler wrote about it in Analysis Patterns, although I'm quite sure it was being used long before it occurred to him.
  24. Re:.NET is OOP gone stupid. on Visualizing the .NET Framework · · Score: 1

    Their class libraries have become so utterly huge that it becomes damn near impossible for an individual developer to suitably grasp anything more than a small portion of them.

    The funny thing is, they (and unfortunately some employers) think it is great to try to learn it all rather than look it up when needed. They call it Microsoft Certification. You can never learn it all in any sufficient depth and even if you could, by the time you did, they would have changed everything anyway.

    I think the reason it's so big is because they have tried to address so much. They haven't necessarily done it stupidly, but they have addressed a huge problem domain so there are huge numbers of classes.
  25. Re:Wow, that's a big fat ASS^H^HPI on Visualizing the .NET Framework · · Score: 4, Insightful
    I'm not saying that .NET isn't too complex, but having a large number of types does not necessarily increase complexity. In fact having less types often leads to more complexity.

    Creating a new type abstracts away complexity and makes code easier to read. For example, you will often find that business software does a lot of comparing of dates. e.g. Checking whether a date is within a given range. More often than not you will find that programmers have just written things like...

    If (EnteredDate >= StartDate) and (EnteredDate <= EndDate)
    {
    //Do stuff
    }
    else
    {
    //Tell the user they have entered an invalid date.
    }


    The logic of checking that dates are in a range is repeated all over the place and the more you have to type, the more likely it is that you will make mistakes. This is where adding a new type, a "Range" type will help. With a Range type you can just say something like...

    If (AllowedRange.Contains(EnteredDate))
    //blah blah


    So adding a Range class actually reduces complexity rather than increasing it. There are plenty of examples of this sort of thing. Imagine writing a car ordering system without having a Car class to abstract away details about cars. You could do it, but the code would probably be a lot more sprawling and complex.