This is a duplicate of a private bug about working with Google. So closing this
one.
That's a very interesting. What other things on mozilla.org are being discussed behind closed forums? I'm just wondering if having 'private' bugs (whether they're bugs or not) goes against the open principle of OSS development. But on the other hand, the license only covers the openness of distribution, not of discussion or development.
Soccer (football everywhere except the USA and a few other places)
Rugby...
...Union (british commonwealth football)
...league (primarily australian football)
Aussie rules (don't ask... it's hard to explain, just ask a melbournian what their religion is)
In my experience The more obscure the topic, often the easier it is to use it as a source of bonding. If you've got people from different area's, they'll have different tastes and interests. If noone is really rabit about Y, then they can't say "I much prefer X over Y, so count me out of whatever's related to Y".
I work at a manufacturing company, and by chance we spent half of last week researching development issues under different OS's. Currently we use a variety of Microsoft OS's in our systems and we want to keep our options as open as possible.
There are as yet unresolved issues with the use of binary software with GPL software in general and linux specifically, despite linus' assurances that userspace code doesn't require GPL license compatibility and that he won't enforce that section of the GPL. Linus is using the GPL license as written by the FSF, albeit fixed to V.2 and with some specific modifications. They (linus and the FSF) disagree on on the details of whether or not using GPL-licensed header files forces the software using them to be be under a GPL-compatible license. Even linus admits there are grey areas and his interpretation has been debated. Until this matter is resolved definitively (probably in court), I don't want to place my company at risk of being forced to release code that we do not want to release, simply because we compiled our software for linux.
What we found, is that the GPL, LGPL and other FSF licenses are very problematic when dealing with the control of code(proprietry or otherwise). The GPL licensing terms are very strict and dangerous in terms of source code-ownership vs binary code-distribution and legal obligations.
The FSF cannot of course, enforce the GPL for software they don't own the copyright for. However, the licensing conditions and restrictions of the GPL automatically come into effect without much influence from the actual copyright holders. We're left to the whims of copyright owners and their good word to decide what is considered a breach and what is 'tolerated'.
As we see more GPL software being used by companies with proprietry code, I think we'll see a nasty side of the GPL rear its head as enforcement starts to kick in from different areas. Boundaries of legality are constantly tested, when they are wide and filled with grey. Just because you don't get charged with doing something illegally as you do it, that doesn't mean that you can't get prosecuted afterwards, if someone feels like going after you.
If a HDD is using micro-magnets to read/write from the platter, wouldn't the presence of a (relatively) giant magnet in the middle of the platter, bounce other magnetic bits around to such a degree that you'd either require a larger, unusable inner section of the platter, or lose the ability to use magnetic methods of storing data on the platter?
I can imagine a magnetically floating CD-ROM drive though, since optical systems aren't (measurably) affected by magnetism.
I thought it was obvious that everyone wants to look like Java... but then java is supposed to look like C++.. which in turn looks like C (or is it C that looks like C++?).
As OO languages go, there will always be similarities in implementation. Having needless variation in the what the time function is called (for instance) isn't in anyone's interest. There are relevant differences in underlying code compilation and running, but when it comes to writing.. a language == a language = a language:= a language.
After using the converter for 5 different VB COM DLL's (with about 10k-15k LOC), I have to say that the converter is a mixed blessing. Syntax is similar between the two languages. Semantics and logic are however completely different at deeper levels. VB.NET has an alien hierarchical structure compared to how VB6 was (un-)structured. The quality of code can improve, but porting large VB6 projects requires re-engineering of the project as a whole. It's a mistake to assume "just" porting the code will simplify things and make for a better program. Simple code sections can be converted without any issue, but there's a certain number of assumptions made about the behaviour of VB6 and the environment, that won't translate properly to.NET. No amount of automated code conversion can account for this logic change. The entire program has to be fully retested to make sure logic still holds, especially when dealing with Empty and Nothing/Null references and the order of execution.
The Code converter isn't super-intelligent in its conversion. It has a lot of complex rules, and it gives you a lot of information about what it's doing, but some of the things it does are a combination of blatantely incorrect and unnecessary. It doesn't so much understand the code or the placement of special functions, but performs "blind" keyword/code structure find/replace activities.
It doesn't help that the converter puts a gazillion "useful" comments in the code, which it recommends I take no action on and have to delete. Luckily Find/Replace accepts regular expressions, which is wonderful (but also very dangerous) for solution-wide alteration of common strings.
The better structured and more encapsulated your VB6 code is, the easier it is to convert the code. Having lots of dependencies makes things very complex and having used non-convertible boiler plate code makes it tedious to convert whole swathes of code by hand.
If you used VB6 in the worst possible way, then it'd be quicker to start from scratch and import specific useful code in minimized segments. If you coded "by the book" (and how any of us can honestly say we do in any language...) you would have very little problems.
I agree that context switching should not be overused. Sticking yields all over the place won't do much for deterministic behaviour or performance. Anyone researching the topic in literature will find this out. It is however still important to understand why a thread should yield and be able to have a thread intentionally wait. It might not be the yield() command specifically, but it will be a thread-related command. join(), sleep(), block(), lock() are all conceptually equivalent to yield() with minor variations in their conditions. This has nothing to do with whether or not the OS supports preemptive multitasking or not.
Your "programming by numbers" you probably picked up in the sixties no longer has any relevance.
I'll ignore the "twinkle in my father's eye" aspect and just wonder why you think threading is no longer relevant in programming today? I'm sure ignorance is bliss, but I for one would like to understand how my program will run before it does so.
With Java, you won't know whether or when the OS is going to yield your thread or not. Synchronization and things like yield() make things a bit more deterministic. Any Java API can document its threading issues in classes almost transparently. With Windows you don't always know it either. To compensate, the.NET API documentation states which functions are threadsafe under what conditions.
I wouldn't have the OS assume complete responsbility for switching, (especially in the case of time-sensitive tasks), as it can be important to make switching as deterministic as possible. With better thread handlers (like there is in linux) it can be less of a pain to manage, but that doesn't mean it shouldn't be be managed at all. It all comes back to understanding what you're doing.
I'm giving up mods for this, but I'm compelled to bite... I feel sorry for the person having to maintain your code.
Someone told me I'm really dumb, because I didn't put a "yield" in my read input loop, but the "comprehensive" documentation in MSDN didn't quite cover that point.
I learnt my multithreading theory using Java 1.1 (by chance at university, but that's not the only place to learn). So far ALL of that knowledge has been perfectly applicable to any language I've written in (C, C++, even VB6, which supposedly doesn't have multithreading).
Yielding is basic thread behaviour and not related to any specific API or OS. If you don't know why you need to specfically yield, then you shouldn't be writing multithreaded applications. Just from your explanation, I can raise issues in basic design. You show a clear lack of understanding on how to accomplish the task. It's scary. It's unfortunate that switching OS "fixed" your problem, since you didn't understand what caused the problem in the first place.
MSDN is not there to teach you how to program properly. It's there so you know how to use the API's that MS supplies. No amount of documentation will allay a dearth of programming skills. In fact, the flexibility and high backwards-compatibility of the windows API is partly to blame for programmers like the parent giving windows a bad name. Bad programming practice gets propagated and continued because it's gotten away with. /rant
If you learned only 2 things from playing that game, then I'm not sure that classifies as "a lot"...
Point 2. applies to me in game. My tally for cars destroyed consists primarily of cars flipped within 10 seconds of their starting position. And yet I've had only one minor parking incident in my 5 years of driving.
If you want to know how violent it could be to drive like a maniac look at Vice City (eg. t-boning a truck on a speeding RJ600 makes me fly very, very far). As for real driving, the best thing I can offer is give your son actual driving experience. Preferably with someone who isn't irrational on the road themselves. I've been lucky to have had little negative result from driving mistakes I've made, but near misses (both experienced and personally observed) have given me infinitely more experience in how to avoid dangerous driving situations than any amount of virtual driving or instruction.
I had a quick look through the list and none of them I've played. I HAVE played Star Ocean 2, and I can tell you, the battles in this game blow me away to this day.
I've never seen spells which actually warp the battlefield. There's nothing like casting "Explode!" and seeing the floor expand in real time to accomodate this massive globe of fire that fills up the screen. I could write a whole article on the crazy effects and combo's you could perform with each of your characters. It may not be the best one, but it's certainly the most underrated strategic RPG game I know. I'm dying to see the Director's cut of 'Until the End of Time'... </geek>
I sat down with a chessboard to solve those two puzzles.
I came across the exact same queen puzzle in my Scheme programming class at university. The horse one, I can't recall if it was placement or movement ( I think it was movement of a horse to the other side of the board), but an actual board was useful for that too.
I would accept those kind of puzzles in a game with a similar format, if the payoff in story was big enough. I like chess!:)
This is proof positive that marketing is everything. Here we have a behemoth of a computer with twenty AMD processors and what are they comparing it to? a single intel processor. It shows how far AMD has yet to go to be bigger than intel when, in the minds of such obvious techheads such as these, measurements of a chip involve comparing to someone only peripherally involved.
The only reason I can think of them consciously doing this is to up the speed numbers, since 30GHz is in our minds not as impressive as 36Ghz, despite the fact we all know AMD is faster per MHz than intel.
When it comes to people who were never taught set theory (which subsets is part of) or the common use of the term 'programs' in computing, then yes; English is a write-only language. People who use english as a second language come to mind as an immediate example.
Using a relatively obscure subset of Perl is akin to using jargon in a paper. Noone but those "in the know" would fully understand what on earth you're on about. When you want to make yourself understandable to a wider audience it is at times (unfortunately) necessary to lower your vocabulary to the lowest common denominator. But with most programmers being less than adept at social interaction, this concept doesn't get applied to writing code very often.
Which brings us back to this periodic table. It's use is to create a common vocabulary. Chemists use the periodic table as a common framework, so people can understand eachother when they're talking about materials. Sodium (English) = Natrium(dutch) = Na. Most chemistry specialists would identify Na. Not many dutch chemists would easily identify "Sodium". If you had to make sure someone understood you, what would you use? I hope that this table gets wider recognition.
if he's an honorary brit, then wouldn't he presumedly have to be an actual something? I mean, being an honorary anything would be meaningless if you weren't able to be anything in actuality, since the whole "honour" part of being honorary anything revolves around the fact that you're not really an actual something... It's like saying the squirrels are honorarily possessed, or something silly like that.
Now if you'll excuse me, I have to study for my triangle-cutting exam...
The placement of earth in its galaxy has no symmetry and the placement of the galaxies on the observable universe is anything but symmetrical
In addition to this, the observable universe has no visible boundaries which could be deemed symmetrical, as what we observe is not so much the universe itself but the contents thereof. Since the contents aren't spread symmetrically or in any particular order for that matter, any observed boundaries can't be symmetrical.
If you can't see where it ends, does that mean it ends where you no longer see it?
It's much more pleasant than books on programming languages.
It all depends on what you find pleasurable. I personally get more pleasure expanding my vision, than expanding my imagination (, which is not to say I don't get pleasure expanding the latter, merely moreso the former).
My point being perception. I get the impression everything development-wise in Java is looking at J2EE. Yes, it's not in the J2SE. But I can't recall the last time I saw J2SE mentioned in any development context. That doesn't mean it hasn't been mentioned, just that it's my impression.
Specifically, the article starts the discussion at the enterprise level. There are a dozen or so references to J2EE (zero to J2SE), and the example deals specifically with running on an application server. What exactly is the standard library of java?
That's a very interesting. What other things on mozilla.org are being discussed behind closed forums? I'm just wondering if having 'private' bugs (whether they're bugs or not) goes against the open principle of OSS development. But on the other hand, the license only covers the openness of distribution, not of discussion or development.
In my experience The more obscure the topic, often the easier it is to use it as a source of bonding. If you've got people from different area's, they'll have different tastes and interests. If noone is really rabit about Y, then they can't say "I much prefer X over Y, so count me out of whatever's related to Y".
if I could mod the above "+1 disturbingly detailed", I would...
There are as yet unresolved issues with the use of binary software with GPL software in general and linux specifically, despite linus' assurances that userspace code doesn't require GPL license compatibility and that he won't enforce that section of the GPL. Linus is using the GPL license as written by the FSF, albeit fixed to V.2 and with some specific modifications. They (linus and the FSF) disagree on on the details of whether or not using GPL-licensed header files forces the software using them to be be under a GPL-compatible license. Even linus admits there are grey areas and his interpretation has been debated. Until this matter is resolved definitively (probably in court), I don't want to place my company at risk of being forced to release code that we do not want to release, simply because we compiled our software for linux.
What we found, is that the GPL, LGPL and other FSF licenses are very problematic when dealing with the control of code(proprietry or otherwise). The GPL licensing terms are very strict and dangerous in terms of source code-ownership vs binary code-distribution and legal obligations.
The FSF cannot of course, enforce the GPL for software they don't own the copyright for. However, the licensing conditions and restrictions of the GPL automatically come into effect without much influence from the actual copyright holders. We're left to the whims of copyright owners and their good word to decide what is considered a breach and what is 'tolerated'. As we see more GPL software being used by companies with proprietry code, I think we'll see a nasty side of the GPL rear its head as enforcement starts to kick in from different areas. Boundaries of legality are constantly tested, when they are wide and filled with grey.
Just because you don't get charged with doing something illegally as you do it, that doesn't mean that you can't get prosecuted afterwards, if someone feels like going after you.
I can imagine a magnetically floating CD-ROM drive though, since optical systems aren't (measurably) affected by magnetism.
That's platypus feet for the Aussies, thank you very much! That way, they'll have a spur to ward off any opposition...
As OO languages go, there will always be similarities in implementation. Having needless variation in the what the time function is called (for instance) isn't in anyone's interest. := a language.
There are relevant differences in underlying code compilation and running, but when it comes to writing.. a language == a language = a language
It's all just syntax in the end.
I hope you're not referring to setting up a shoe-based network. that's so routing in 1986...
The Code converter isn't super-intelligent in its conversion. It has a lot of complex rules, and it gives you a lot of information about what it's doing, but some of the things it does are a combination of blatantely incorrect and unnecessary. It doesn't so much understand the code or the placement of special functions, but performs "blind" keyword/code structure find/replace activities.
It doesn't help that the converter puts a gazillion "useful" comments in the code, which it recommends I take no action on and have to delete. Luckily Find/Replace accepts regular expressions, which is wonderful (but also very dangerous) for solution-wide alteration of common strings.
The better structured and more encapsulated your VB6 code is, the easier it is to convert the code. Having lots of dependencies makes things very complex and having used non-convertible boiler plate code makes it tedious to convert whole swathes of code by hand.
If you used VB6 in the worst possible way, then it'd be quicker to start from scratch and import specific useful code in minimized segments. If you coded "by the book" (and how any of us can honestly say we do in any language...) you would have very little problems.
I agree that context switching should not be overused. Sticking yields all over the place won't do much for deterministic behaviour or performance. Anyone researching the topic in literature will find this out. It is however still important to understand why a thread should yield and be able to have a thread intentionally wait. It might not be the yield() command specifically, but it will be a thread-related command. join(), sleep(), block(), lock() are all conceptually equivalent to yield() with minor variations in their conditions. This has nothing to do with whether or not the OS supports preemptive multitasking or not.
Your "programming by numbers" you probably picked up in the sixties no longer has any relevance.
I'll ignore the "twinkle in my father's eye" aspect and just wonder why you think threading is no longer relevant in programming today? I'm sure ignorance is bliss, but I for one would like to understand how my program will run before it does so.
I wouldn't have the OS assume complete responsbility for switching, (especially in the case of time-sensitive tasks), as it can be important to make switching as deterministic as possible. With better thread handlers (like there is in linux) it can be less of a pain to manage, but that doesn't mean it shouldn't be be managed at all. It all comes back to understanding what you're doing.
The JSyncManager sited doesn't even link to any conduits (let alone any PIM ones.)
I'd suggest what I use, but I'm quite happy with Palm desktop. I think that's mainly because my palm is a bedtime games platform...
Someone told me I'm really dumb, because I didn't put a "yield" in my read input loop, but the "comprehensive" documentation in MSDN didn't quite cover that point.
I learnt my multithreading theory using Java 1.1 (by chance at university, but that's not the only place to learn). So far ALL of that knowledge has been perfectly applicable to any language I've written in (C, C++, even VB6, which supposedly doesn't have multithreading).
Yielding is basic thread behaviour and not related to any specific API or OS. If you don't know why you need to specfically yield, then you shouldn't be writing multithreaded applications. Just from your explanation, I can raise issues in basic design. You show a clear lack of understanding on how to accomplish the task. It's scary. It's unfortunate that switching OS "fixed" your problem, since you didn't understand what caused the problem in the first place.
MSDN is not there to teach you how to program properly. It's there so you know how to use the API's that MS supplies. No amount of documentation will allay a dearth of programming skills. In fact, the flexibility and high backwards-compatibility of the windows API is partly to blame for programmers like the parent giving windows a bad name. Bad programming practice gets propagated and continued because it's gotten away with.
/rant
Point 2. applies to me in game. My tally for cars destroyed consists primarily of cars flipped within 10 seconds of their starting position. And yet I've had only one minor parking incident in my 5 years of driving.
If you want to know how violent it could be to drive like a maniac look at Vice City (eg. t-boning a truck on a speeding RJ600 makes me fly very, very far). As for real driving, the best thing I can offer is give your son actual driving experience. Preferably with someone who isn't irrational on the road themselves. I've been lucky to have had little negative result from driving mistakes I've made, but near misses (both experienced and personally observed) have given me infinitely more experience in how to avoid dangerous driving situations than any amount of virtual driving or instruction.
I've never seen spells which actually warp the battlefield. There's nothing like casting "Explode!" and seeing the floor expand in real time to accomodate this massive globe of fire that fills up the screen. I could write a whole article on the crazy effects and combo's you could perform with each of your characters. It may not be the best one, but it's certainly the most underrated strategic RPG game I know. I'm dying to see the Director's cut of 'Until the End of Time'... </geek>
I came across the exact same queen puzzle in my Scheme programming class at university. The horse one, I can't recall if it was placement or movement ( I think it was movement of a horse to the other side of the board), but an actual board was useful for that too.
I would accept those kind of puzzles in a game with a similar format, if the payoff in story was big enough. I like chess! :)
If Dyson owned that patent, and a tornado destroyed the Dyson factory, would Dyson be able to sue for patent abuse?
The only reason I can think of them consciously doing this is to up the speed numbers, since 30GHz is in our minds not as impressive as 36Ghz, despite the fact we all know AMD is faster per MHz than intel.
Using a relatively obscure subset of Perl is akin to using jargon in a paper. Noone but those "in the know" would fully understand what on earth you're on about. When you want to make yourself understandable to a wider audience it is at times (unfortunately) necessary to lower your vocabulary to the lowest common denominator. But with most programmers being less than adept at social interaction, this concept doesn't get applied to writing code very often.
Which brings us back to this periodic table. It's use is to create a common vocabulary. Chemists use the periodic table as a common framework, so people can understand eachother when they're talking about materials. Sodium (English) = Natrium(dutch) = Na. Most chemistry specialists would identify Na. Not many dutch chemists would easily identify "Sodium". If you had to make sure someone understood you, what would you use? I hope that this table gets wider recognition.
Exactly the same, only with pocket protectors and elbow patches. Come to think of it.. an elbow patch would be handy...
Now if you'll excuse me, I have to study for my triangle-cutting exam...
I'd also assume that if your identity is recyclable, then the unique number assigned to it is as well.
In addition to this, the observable universe has no visible boundaries which could be deemed symmetrical, as what we observe is not so much the universe itself but the contents thereof. Since the contents aren't spread symmetrically or in any particular order for that matter, any observed boundaries can't be symmetrical.
If you can't see where it ends, does that mean it ends where you no longer see it?
It all depends on what you find pleasurable. I personally get more pleasure expanding my vision, than expanding my imagination (, which is not to say I don't get pleasure expanding the latter, merely moreso the former).
Specifically, the article starts the discussion at the enterprise level. There are a dozen or so references to J2EE (zero to J2SE), and the example deals specifically with running on an application server. What exactly is the standard library of java?