5. Get your shots. The night-time masquitos carry malaria. The daytime versions carry yellow fever. I might have that backwards, but really, does it matter when you contract which disease?;~)
There are some pills that decrease the chances of getting malaria, and a shot for yellow fever (two shot series, if I recall correctly). Malarone is what I was provided for malaria 'prevention', and was told by a gal I met in the plane (who looked like hell, as she had just been in the clinic BECAUSE OF malaria) that it was the best (and she wished that she had had it).
For instance, a mathematician can do great things with a Euler's equation, but if he/she cannot remember the formula in the first place, they are not going to get anywhere.
I actually tend to define intelligence as being able to find an answer if you know/believe an answer exists. E.g., to manipulate the above, an intelligent person could get quite far by simply knowing that Euler's equation existed (and what it means), even if the cannot recall the exact equations.
It got me through college anyway...;~)
But yeah. I agree with your main point. How many humans in the history of humankind have had 'original' thoughts?
Hmmm. Slightly more than the number of primates who taught the locals cool things like 'how to poke a stick into a termite hill for a delicious snack' and 'breaking things open with rocks, 101'.
For the most part human action is totally dictated by learned behavior. A very very few people are able to go beyond the learned and 'connect it' to some action, which, later, seems totally obvious. E.g. Archimedes principal (buoyancy), or newtons equations of motion, Einstein's equations etc.
It is these very few historical intellectual 'jumps' which humanity as a whole grasps and uses to lay claim to the species being 'special' and unique. Yet almost every individual operates on a day-to-day basis as an automaton. To the point that the behavior of masses of people can be mathematically modeled rather well. And I do mean myself as well.
Brain size has nothing to do with it. Organization, surface area, and the RATIO of brain-volume to body-mass all show trends towards how 'intelligent' we will perceive a SPECIES to be. On individual levels these things don't show us squat.
You are to a goat as a parrot is to a chicken. It is actually a very good parallel. The mass of your body is about the same as (some types) of goats, but your brain is bigger. The size of a parrots brains is about the same size as a chickens, but the parrot weighs a lot less.
On the other hand, I've never liked the ratio argument; too many variables get ignored. Still a good analogy though - as good as any other anyway.
You are sincere and not being an ass, so I am happy to answer; these are all reasons of my own, and I don't think they should apply to everyone. They are just my own reasons.
Why do you care how I extend your library to suit my own individual/corporate needs, of which you are likely completely unaware when coding the original library? Assuming I am in compliance with whatever licensing terms you have attached to the library, why on earth would it matter how I use it?
This is not about arbitrary protection/privacy of class elements, it's about the simple unmistakable fact that no developer (or group of developers) is all knowing and can possibly forsee every single potential need/use that exists. Why would you want to limit another downstream developer? In the name of ego?
These two paragraphs have basically the same answer: I protect methods that I don't want to have to support. It really is almost that simple. If I make a method/function public, it HAS to behave a particular way for all possible cases. But sometimes I don't feel like making sure I catch every single bloody thing that some idiot who thinks he's gods gift to programming may throw at it. And I promise, if 500 people use your code more than one of them will use it in some ungodly way that is 100% NOT SUPPORTED and blame you for it throwing some exception that took them five minutes to figure out.
So the second paragraph of yours kind of answers the first: when I release a function that says it will take 'x' and return 'y' and will throw such-and-such exceptions if you give it bad data somehow, then I *have* to make sure it *always* does that. But if I protect the function, I can relaxe a lot, because *I* know *every single case* that will go into that function. It is a contract. In this sense literally, but in the general sense as well ('lalala function header is your contract with the developer lalala' you probably got the same thing in some class somewhere).
No, it doesn't mean someone can break your code, it means someone can break their own code. Unless they (a) have your source and (b) have modified it, they cannot alter your code. They can only break their own.
Sorta? I don't know. I would agree with you for anything I released open-source, as I would take a very relaxed view of bullet-proofing my code. I would be more likely to create a 'you should only be using this for 'x', and I promise it will work for 'x', but if you want to use it for 'y' just please look through the code and make sure it will work!
But I don't, and will never, write an API like that for a closed-source package. Period.
If someone is using your library in an unsupported fashion, the only reprocussion this has on you is that you don't have to support it. Other than that, I fail to see how it's really any of your business (or my business if I were the developer of said library).
If it is public, people expect to be able to use it. And if they expect to use it, you as the developer have to assume that they will. Which means catching exceptions. Were it only exceptions, fine. But dealing with bad results and such. As a general rule, I don't make recursive functions public. I am very careful about functions which seem innocuous but can easily jump into infinite loops. To be 100% honest, any function which I slap together to make things work that I don't want to write doc for!
In support of your argument for demarcation-without-dictatorship, I also hide very many functions which I admit COULD be useful to someone, but I hide them because they exist only to support some operation within a class wherein it resides. Random example: some quick sort that is highly optimized for the situation at hand, such as sorting by first-name/last-name. I may only need to do the sorting at one particular time, so I just dump the function in the body of the class that uses it. But nobody would expect to find a nice sort function in a GUI oriented class, so I make it private to avoid overloading t
There are many things that are wrong with Java. This is not one of them. It is simply one of the differences between Java and other languages. *shrug*.
Any programmer who does anything 'arbitrarily' is by definition a bad coder.
Private and protected constructors make a lot of sense. If I am selling you a library of classes, and I want to do stuff that you should NOT be allowed to touch, I make it private. If you don't understand when to use them... well, bummer. It is hard to say -- you may or may not know what you are talking about. If you do, it doesn't show 100% in your text -- but there is enough there that I don't want to ignore you outright. You know the drill: it is simply very hard to tell from the limited amount we are willing to type;~)
The ability to create final methods and private constructors is there for a VERY good reason: so that a particular subclass of a superclass is 100% CERTAIN to behave in a certain fashion when a particular method is called. Private constructors allow for particular 'special' instantiation code to be run 100% every time.
What you describe as modifying the superclass rather turns my stomach: it means that some idiot can come along and break my code. If a class constructor is declared protected, it should be for a good reason. You shouldn't be trying to 'unprotect' it. If you don't like that it is protected, make your own, or if it is open source figure out WHY they protected it.
Also, protection prohibits 'viral' code from pretending to be a class of type 'x' and then doing something that 'x' would NEVER do -- like randomly delete files when someone calls 'toString()'. As a few of my programs do allow users to load 3rd party classes which extend my own code, this is somewhat important to me.
I use such things all the time. If you look at Xerces you will see it EVERYWHERE.
(almost) Everything on the Xerces tree inherits from Node. You can do a bunch of useful stuff on any tree item without needing to figure out what actual type it is -- since all of the superclasses of Node use or override 'getLocalName()' you can call the function with confidence on any Superclass of Node which comes your way:
Element ComplexType SimpleType Attribute
and other which I don't recall.
Another use which you don't hear about much in any computer class is that you can create a base class (or interface, if you want to force Superclasses to create their on instantiation), then you create a default implementation (often you will see 'MyClass' as the base and 'MyClassImpl' as the implementation.
Then, when you realize what nappy code exists in MyClassImpl, you can create a new class called 'MyLessSuckyClassImpl' and modify your own base code to point to the new class. Any 'outsider' should have been using 'MyClass' and thus will never know that when he updated from version 0.9 to version 1.0 that an completely different class was actually being passed through his functions. Except that it crashes less often or is faster or something.
This assumes the user has no business creating such classes on his own -- generally constructors would be given protected or private access for such cases, and a static 'createXX()' function inside the Class which returns a new instance of the proper superclass of itself. Consider the java.util.Calendar() class an example.
There was a test done once, the details of which I cannot recall exactly as I don't know that I ever knew them. The gist of it was that they set of some high explosives far below a ship. A large ship. The point was to see if the 'bubbles' would do any damage to and/or sink the ship.
Well, the surface of the ocean turned to massive frothing abyss, and the ship disintegrated. I don't know if that means the test was a success or a failure;~)
Anybody has details I'd love to hear about 'em -- this is third hand 'knowledge', and may be BS.
Yup. Speed of sound for some particular gas mixture 'x' is related only to temperature folks. That is, T is the only variable that changes, if you hold the gas mixture constant.
a = sqrt(gamma*R*T)
where R is the universal gas constant (R' = 8.3143kJ/(kmol*K)) divided by the molecular weight of the reaction gases.
T is the absolute temperature, and gamma is the ratio of specific heats (~1.4 for air, god only knows for comet dust).
I understand that Cp and Cv are constants with respect to temperature, pressure and volume. At any rate, I use damned near the same gamma (Cp/Cv) in rocket engine calculations at 300PSI as I do in an engine running at 3000PSI -- the slight difference being because of different species being created at the higher temperature and pressure.
Temperature isn't low in space, either. It is just HIGHLY insulative -- like living inside a thermos;~). If you are in the sun (by which I mean, the sun is shining on you), you are HOT HOT HOT. So the speed of sound may actually be very, very high.
I don't think it did, at least within the past 10-15 years. The US telecom structure is incredible to behold. I worked as a consultant for a small, startup phone company for a while. We were putting together a billing system, cursing up a storm when I realized something:
The phone system as designed by people who were told 'Make it work!'. Not "We want to bill by the minute!".
The phone system is highy distributed. For a brief example: pick any 10 digit NPANXX (North american numbering plan number). Tell me: is it a valid phone number? By which I mean, is it in use?
You can't know until you dial it. Period. Goes from your phone to your local switch. Your local switch looks at the area code and says 'this is for an interstate call' and sends it up to the regional telco. Regional telco routes it to the appropriate Other region. They look at the next three digits and say 'ah, this goes to Local area transport company xyz' and they send it to that companies switch. The switch then looks at the last four (subscriber ext) and says 'wtf you talking about, we don't use that number!' and it all forwards back through the system, where you get a happy operator message saying 'pfff, get lost buddy.'
I am *not* generally qualified to speak on the subject of 'how to land a great job', as I am self-employed and rather happy about it: HOWEVER, I had a great experience once, back in my college days (not so long ago) when I was looking.
I was contacted by a headhunter.
Not just some random dumbass headhunter, a guy who knew his stuff.
He had looked over my resume, and called me about my 'skills'. When I asked him what he was looking for, in particular, he said 'well, I've a client that says they need someone with 5 years of Swing experience. Now, we both know they have no clue what they are talking about, and anyway, it is my belief that if you don't know it after two years, you just aren't going to get it, period.' (paraphrased, of course).
The start date was before I graduated, so I declined. But AFTER I declined we talked for another 20-30 minutes, and kept in touch for some time after words -- until I managed to gain financing for my first solo-project, actually.
My advice, if you aren't a salesman, is to FIND A GOOD HEADHUNTER. You might not be able to sell yourself, but you can probably shop pretty well. And you will know damned good and well when someone is BSing you. Do they take a cut? HELL YES! Does it suck? HELL YES! Does it matter? HELL NO! Because they screw the company that highers through them -- you get paid according to some random principal, and the agency takes a cut from the company, not out of the salary you are quoted.
But you probably know this already. Or have a job. Or don't care. Anyway. FWIW, which isn't much at all, there ya go:~)
My question, which I am attempting to form into a coherent argument still, is generally this:
Will the new network actually be a distributed network, or will it be a massive, bottlenecked POS like we have now?
I refer, of course, to the 12 major DNS servers which control our access: Internet health report. One of these goes down and those of us still up see a super-slow internet. Two go down and pages fail to load as often as not. I've yet to see three go down completely, but it is bound to happen.
The above are stateside only, to my knowledge. And yes, I know that we *CAN* use raw IP addresses to bypass the DNS, however the world wide web DIES when a few DNS servers go down. I guess that means the above is a complaint about the WWW, not TCP/IP in general.
Bah. Now I realize that I don't really know enough about the guts of the current TCP/IP stack to be able to defend any arguement I might make. I suppose I need to pick up that tome I have lying around here somewhere....
Was just thinking: one solution might be to create a form of 'GPS' for the langrange point (the point itself moves too, so you can't just use star-positioning) and then have everybody know where everybody else is, and onboard computers sophisticated enough to know when to adjust their orbit.
It would be incredibly complex -- there would have to be notifications e.g. 'I'm about to fire to avoid you, so please don't move too'.
It isn't so much that each object exerts a significant force upon the other; it is the *highly* non-linear and chaotic nature of the orbits about any of the three unstable Langrange points.
I flubbed when I said my prof did the orbits for SOHO (*cringe*) -- she may have worked on that too, but what she DID do, and talked about in class, was the Genesis mission. To rub in just how little we poor bastards knew about orbital dynamics, she took great pains to point out that the amount of delta V used to get the Genesis craft from the langrange point back into an Earth bound orbit was SIX meters per second. Six. I think the smallest delta we ever calculated was like 50m/s, and that was for something stupid like am apogee boost. Note that that is craft based deltaV -- e.g. supplied by the crafts thrusters. Did some nifty magic using the moon etc. that made me feel like a child amoung giants.
if for no other reason than to remind ourselves of how hard they really are.
I like. And also to show that we really are capable of greatness, should we care to prove it to ourselves.
If that's really a problem, then use a large number of smaller objects in orbit around L1. (SOHO does this already, so you can't tell me its impossible.)
Actually, I was a student of one of the primary engineers of the SOHO orbit. She discussed it in class, and showed us the orbits and the fuel estimates etc. I assure you that we DO NOT have the ability to model a large number of objects around L1. We certainly could create this capability, but you are talking worse-than-realtime calculation times in our current state of technology (for many-multiple objects that aren't allowed to collide). The problem is already 'intractable' in the sense that it is multi-body dynamics -- no solution, must model via iteration.
The SOHO craft's orbit looks like a seriously drunk dolphin chasing a drunk fish. Just looking at it made me fear going for a masters in orbital mechanics (which I didn't end up doing...hmmm;~)).
Thanks for the distances, had forgotten them. I really should do the math on the visual arc of the sun and compare to some random object at distance 'x', but I am really really lazy;~)
I agree: it could be done. Iff we needed it. I just think that a better idea, in terms of preserving the human race, would be to get some people the hell off of Earth! Eggs in one basket and all of that.:~). Not trying to be some cynical asshat shooting down what you say, although I do admit I probably come across that way in text mode. Technology like this *is* fun to consider:~)
The '100 years' thing I tossed out was related to your statement re: space-elevator: in 100 or so years, doing this will be stupid cheap/easy compared to trying it today. Not actually cheap, nor easy: just in comparison to today:~)
It is dynamically unstable: once it STARTS going away from the point of equilibrium, it continues to do so at an accelerating rate.
Think of the + signs as gravity:
++++++++++++++
If you are in the middle, you are great. If not, you are going to go faster and faster in either direction.
The amount of solar pressure would be incredible on an object large enough to do anything; as would the size. Movable anything would be nigh impossible.
Also, I think that the Sun-Earth L1 is so far out there that it is completely pointless to consider trying to 'block' anything from there. I don't know where the 'ideal' (focal?) point would be, so I could easily be wrong here.
As a whole, the idea is pretty high on the list of stupidest F#$^&ing things I've ever heard presented as serious considerations. (Not your statement, the idea of blocking the sun instead of cleaning up our act.)
However, at SOME POINT we will probably have such technology, simply to protect againts the variable output of the sun: varying solar activity is about 30% responsible for varying (long term) weather conditions, IIRC. 'Some point' being an arbitrary number no less than 100 years in the future.
Not joining the pitched battle, just wanted to say that Borlands JBuilder will compile swing apps. I tend not to use it out of paranoia -- Why introduce the possibility of errors, esp. when I have no desire to add the additional testing to the mix?
But I have tried it for small apps, and never had a problem. Again *NOT A HEAVY USER*.
Nope. Freenet is not unlinking objects -- not technically a memory leak, but same effect. Essentially, freenet is saying 'hey, Garbage collector! I'm still using this stuff, don't delete it for me, 'k?'
There are cases where you must explicitly set objects to null if you want them to die; for instance, in a persistent object which spawns many children. Or in a complex object that has children of its own were parent is a member of child and child is a member of parent (something that simple will be found, usually, but it is the idea of 'ghost references' (correct term? someone?)).
The easiest way to create something that looks like a memory leak is to keep adding stuff to a buffer or hashtable of some sort. I've crashed a prog by reading a file into a string buffer without worrying about size -- well, read in three files that are 20 megs in size and *poof* your JVM kisses you goodnight.
Keep adding objects into a collection and don't delete them when you are done with them and guess what? It looks like a memory leak.
This is a super highly simplistic explination of a very complex issue. There was a very wonderful -- and LONG -- 'tutorial' on memory management in Java on the sun site... but I don't have the link anymore. If someone reposts it I would be oh-so-very-happy:~)
Options -> Preferences -> [x] Remember Last Category.
Thanks -- read through the manual a couple of times, didn't see it. WOuldn't swear that it isn't there, the manual is 200 some pages of mostly worthless pratter. Also, for reference, unlike the majority of the screens, touching the top of the screen with the stylus doesn't bring down the File menu -- I didn't figure anyone would make up the options -> prefs thing so I took the time and managed to discover that pushing the menu button DOES bring down a menu. So, thanks a bunch.
"Swap Call" til you're on the call you want to end. Not described in the manual, and I have NEVER seen a 'hang up' option while connected under three way, and I've swapped a few times. Always shows 'hang up all' on screen, and the hang up key (red phone) does exactly that. No matter what, I hang up on both callers. It is broken to the point that I no longer utilize call waiting:~/ Yes, it is the Piece of Crap System (PCS) ala sprint.
The lag issue may be the same -- a GSM/PCS thing. The Register mentioned having it happen to them as well in their review.
Given that the processor is more powerfull than that of my first PC -- A pentium 90 with 16mb ram and a 1GB HD (my 650 has a GB SD card in it), I think it could have better software. I am extremely disappointed that such a SWEET piece of hardware was abused by the programming department into a 100% average piece of kit. With a below average phone. The ONLY complaint I have on the hardware was that they used a micro-plug instead of the standard stereo mini-plug for the headset/headphones. Okay, and that they, also, are victims of the 'must...have....blinky lights...' syndrome. But the screen is so pretty! and the keyboard so nice! I mean, you have to make sure not to trim your nails too close, but it really is nice!
BUT! If you (original request person) do buy it, make sure to check out Pocket Tunes. Very nice. I never even tried Real Player, which comes installed on the Sprint version. Some sort of personal hatred on my part. Many out there will understand.....
The software? Well, I am also in awe, but in the sense that it is the most disgusting abuse of good hardware I've ever seen in my life.
Usability was not a feature the software guys cared about, it would seem.
One example: Say you get a call while you are already on the line, and you take said call: There is no way to end only one of the calls. You can FLASH over, from one to the other, but you cannot 'end current call'. Even the $%&&*$#^* POS manual says 'for your convienence, the Treo 650 will automatically call back the last active number when you select 'Hang up all' so that you may continue the conversation'. Not an exact quote, but close.
This is the Sprint phone, can't imagine that software for others is very different.
There is also a lag when you answer. If you answer your ringing phone and immedietly say 'Hello?' or '(name) speaking:' the person who called you WILL NOT HEAR IT. You must pause for about a second or two before saying anything after answering.
Menus do not 'remember' anything. Want to go to your contacts list? Always defaults to 'All' -- never remembers a subcategory. Voice dial? Subscription feature.
Frankly, I'm super pissed about the treo 650. Buy a PDA and a cheap-ass phone and you will save 300 bucks and be far happier.
no Wal-mart to speak of here in Oregon -- Fred Meyer whups its... anyway.
Starbucks actually increases local coffee stores' business. Hard to belive, but true. No linky, sorry.
As to the 'concentrated at top, less to go around': What do you think rich people do with their money? Stuff it under the bed? I know this next sentence is basically screaming 'trickle down economics!, but rich people invest their money. Many rich people invest in startups. Others put money in the stock market or real estate. Etc. Nobody puts it under their mattress. The money stays out in the system.
But yeah -- pure capitalism is NOT the answer. What is even worse is our own form of government/economics where the regulations are quickly becoming the OPPOSITE(!) of government regulated capitalism: the govenernment is supposed to regulate the companies for the benifit of the people, not the other way around!
I don't know the answer either:~(. I like coops though.
Positioned conveniently at eye level when driving south.
5. Get your shots. The night-time masquitos carry malaria. The daytime versions carry yellow fever. I might have that backwards, but really, does it matter when you contract which disease? ;~)
There are some pills that decrease the chances of getting malaria, and a shot for yellow fever (two shot series, if I recall correctly). Malarone is what I was provided for malaria 'prevention', and was told by a gal I met in the plane (who looked like hell, as she had just been in the clinic BECAUSE OF malaria) that it was the best (and she wished that she had had it).
For instance, a mathematician can do great things with a Euler's equation, but if he/she cannot remember the formula in the first place, they are not going to get anywhere.
;~)
I actually tend to define intelligence as being able to find an answer if you know/believe an answer exists. E.g., to manipulate the above, an intelligent person could get quite far by simply knowing that Euler's equation existed (and what it means), even if the cannot recall the exact equations.
It got me through college anyway...
But yeah. I agree with your main point. How many humans in the history of humankind have had 'original' thoughts?
Hmmm. Slightly more than the number of primates who taught the locals cool things like 'how to poke a stick into a termite hill for a delicious snack' and 'breaking things open with rocks, 101'.
For the most part human action is totally dictated by learned behavior. A very very few people are able to go beyond the learned and 'connect it' to some action, which, later, seems totally obvious. E.g. Archimedes principal (buoyancy), or newtons equations of motion, Einstein's equations etc.
It is these very few historical intellectual 'jumps' which humanity as a whole grasps and uses to lay claim to the species being 'special' and unique. Yet almost every individual operates on a day-to-day basis as an automaton. To the point that the behavior of masses of people can be mathematically modeled rather well. And I do mean myself as well.
Brain size has nothing to do with it. Organization, surface area, and the RATIO of brain-volume to body-mass all show trends towards how 'intelligent' we will perceive a SPECIES to be. On individual levels these things don't show us squat.
You are to a goat as a parrot is to a chicken. It is actually a very good parallel. The mass of your body is about the same as (some types) of goats, but your brain is bigger. The size of a parrots brains is about the same size as a chickens, but the parrot weighs a lot less.
On the other hand, I've never liked the ratio argument; too many variables get ignored. Still a good analogy though - as good as any other anyway.
You are sincere and not being an ass, so I am happy to answer; these are all reasons of my own, and I don't think they should apply to everyone. They are just my own reasons.
Why do you care how I extend your library to suit my own individual/corporate needs, of which you are likely completely unaware when coding the original library? Assuming I am in compliance with whatever licensing terms you have attached to the library, why on earth would it matter how I use it?
This is not about arbitrary protection/privacy of class elements, it's about the simple unmistakable fact that no developer (or group of developers) is all knowing and can possibly forsee every single potential need/use that exists. Why would you want to limit another downstream developer? In the name of ego?
These two paragraphs have basically the same answer: I protect methods that I don't want to have to support. It really is almost that simple. If I make a method/function public, it HAS to behave a particular way for all possible cases. But sometimes I don't feel like making sure I catch every single bloody thing that some idiot who thinks he's gods gift to programming may throw at it. And I promise, if 500 people use your code more than one of them will use it in some ungodly way that is 100% NOT SUPPORTED and blame you for it throwing some exception that took them five minutes to figure out.
So the second paragraph of yours kind of answers the first: when I release a function that says it will take 'x' and return 'y' and will throw such-and-such exceptions if you give it bad data somehow, then I *have* to make sure it *always* does that. But if I protect the function, I can relaxe a lot, because *I* know *every single case* that will go into that function. It is a contract. In this sense literally, but in the general sense as well ('lalala function header is your contract with the developer lalala' you probably got the same thing in some class somewhere).
No, it doesn't mean someone can break your code, it means someone can break their own code. Unless they (a) have your source and (b) have modified it, they cannot alter your code. They can only break their own.
Sorta? I don't know. I would agree with you for anything I released open-source, as I would take a very relaxed view of bullet-proofing my code. I would be more likely to create a 'you should only be using this for 'x', and I promise it will work for 'x', but if you want to use it for 'y' just please look through the code and make sure it will work!
But I don't, and will never, write an API like that for a closed-source package. Period.
If someone is using your library in an unsupported fashion, the only reprocussion this has on you is that you don't have to support it. Other than that, I fail to see how it's really any of your business (or my business if I were the developer of said library).
If it is public, people expect to be able to use it. And if they expect to use it, you as the developer have to assume that they will. Which means catching exceptions. Were it only exceptions, fine. But dealing with bad results and such. As a general rule, I don't make recursive functions public. I am very careful about functions which seem innocuous but can easily jump into infinite loops. To be 100% honest, any function which I slap together to make things work that I don't want to write doc for!
In support of your argument for demarcation-without-dictatorship, I also hide very many functions which I admit COULD be useful to someone, but I hide them because they exist only to support some operation within a class wherein it resides. Random example: some quick sort that is highly optimized for the situation at hand, such as sorting by first-name/last-name. I may only need to do the sorting at one particular time, so I just dump the function in the body of the class that uses it. But nobody would expect to find a nice sort function in a GUI oriented class, so I make it private to avoid overloading t
Now they just bill it to the Credit card they require you to put on file with them when you create a new account.
Suffice it to say, I didn't finish that application.
erm... good for python?
;~)
There are many things that are wrong with Java. This is not one of them. It is simply one of the differences between Java and other languages. *shrug*.
Any programmer who does anything 'arbitrarily' is by definition a bad coder.
Private and protected constructors make a lot of sense. If I am selling you a library of classes, and I want to do stuff that you should NOT be allowed to touch, I make it private. If you don't understand when to use them... well, bummer. It is hard to say -- you may or may not know what you are talking about. If you do, it doesn't show 100% in your text -- but there is enough there that I don't want to ignore you outright. You know the drill: it is simply very hard to tell from the limited amount we are willing to type
The ability to create final methods and private constructors is there for a VERY good reason: so that a particular subclass of a superclass is 100% CERTAIN to behave in a certain fashion when a particular method is called. Private constructors allow for particular 'special' instantiation code to be run 100% every time.
What you describe as modifying the superclass rather turns my stomach: it means that some idiot can come along and break my code. If a class constructor is declared protected, it should be for a good reason. You shouldn't be trying to 'unprotect' it. If you don't like that it is protected, make your own, or if it is open source figure out WHY they protected it.
Also, protection prohibits 'viral' code from pretending to be a class of type 'x' and then doing something that 'x' would NEVER do -- like randomly delete files when someone calls 'toString()'. As a few of my programs do allow users to load 3rd party classes which extend my own code, this is somewhat important to me.
I use such things all the time. If you look at Xerces you will see it EVERYWHERE.
(almost) Everything on the Xerces tree inherits from Node. You can do a bunch of useful stuff on any tree item without needing to figure out what actual type it is -- since all of the superclasses of Node use or override 'getLocalName()' you can call the function with confidence on any Superclass of Node which comes your way:
Element
ComplexType
SimpleType
Attribute
and other which I don't recall.
Another use which you don't hear about much in any computer class is that you can create a base class (or interface, if you want to force Superclasses to create their on instantiation), then you create a default implementation (often you will see 'MyClass' as the base and 'MyClassImpl' as the implementation.
Then, when you realize what nappy code exists in MyClassImpl, you can create a new class called 'MyLessSuckyClassImpl' and modify your own base code to point to the new class. Any 'outsider' should have been using 'MyClass' and thus will never know that when he updated from version 0.9 to version 1.0 that an completely different class was actually being passed through his functions. Except that it crashes less often or is faster or something.
This assumes the user has no business creating such classes on his own -- generally constructors would be given protected or private access for such cases, and a static 'createXX()' function inside the Class which returns a new instance of the proper superclass of itself. Consider the java.util.Calendar() class an example.
Oh man, you almost made me cry.
Some of us have to deal with programs that were written in COBOL. Don't joke about that stuff man!
... or the gravitational anomaly... ;~)
I think you might be right about the source of the story I mentioned, after looking at some pics (thanks be to the AC child-post on this level).
Can you imagine going over that in a ship?
;~)
There was a test done once, the details of which I cannot recall exactly as I don't know that I ever knew them. The gist of it was that they set of some high explosives far below a ship. A large ship. The point was to see if the 'bubbles' would do any damage to and/or sink the ship.
Well, the surface of the ocean turned to massive frothing abyss, and the ship disintegrated. I don't know if that means the test was a success or a failure
Anybody has details I'd love to hear about 'em -- this is third hand 'knowledge', and may be BS.
Yup. Speed of sound for some particular gas mixture 'x' is related only to temperature folks. That is, T is the only variable that changes, if you hold the gas mixture constant.
;~). If you are in the sun (by which I mean, the sun is shining on you), you are HOT HOT HOT. So the speed of sound may actually be very, very high.
a = sqrt(gamma*R*T)
where R is the universal gas constant (R' = 8.3143kJ/(kmol*K)) divided by the molecular weight of the reaction gases.
T is the absolute temperature, and gamma is the ratio of specific heats (~1.4 for air, god only knows for comet dust).
I understand that Cp and Cv are constants with respect to temperature, pressure and volume. At any rate, I use damned near the same gamma (Cp/Cv) in rocket engine calculations at 300PSI as I do in an engine running at 3000PSI -- the slight difference being because of different species being created at the higher temperature and pressure.
Temperature isn't low in space, either. It is just HIGHLY insulative -- like living inside a thermos
I don't think it did, at least within the past 10-15 years. The US telecom structure is incredible to behold. I worked as a consultant for a small, startup phone company for a while. We were putting together a billing system, cursing up a storm when I realized something:
;~)
The phone system as designed by people who were told 'Make it work!'. Not "We want to bill by the minute!".
The phone system is highy distributed. For a brief example: pick any 10 digit NPANXX (North american numbering plan number). Tell me: is it a valid phone number? By which I mean, is it in use?
You can't know until you dial it. Period. Goes from your phone to your local switch. Your local switch looks at the area code and says 'this is for an interstate call' and sends it up to the regional telco. Regional telco routes it to the appropriate Other region. They look at the next three digits and say 'ah, this goes to Local area transport company xyz' and they send it to that companies switch. The switch then looks at the last four (subscriber ext) and says 'wtf you talking about, we don't use that number!' and it all forwards back through the system, where you get a happy operator message saying 'pfff, get lost buddy.'
Or someone answers the phone
I am *not* generally qualified to speak on the subject of 'how to land a great job', as I am self-employed and rather happy about it: HOWEVER, I had a great experience once, back in my college days (not so long ago) when I was looking.
:~)
I was contacted by a headhunter.
Not just some random dumbass headhunter, a guy who knew his stuff.
He had looked over my resume, and called me about my 'skills'. When I asked him what he was looking for, in particular, he said 'well, I've a client that says they need someone with 5 years of Swing experience. Now, we both know they have no clue what they are talking about, and anyway, it is my belief that if you don't know it after two years, you just aren't going to get it, period.' (paraphrased, of course).
The start date was before I graduated, so I declined. But AFTER I declined we talked for another 20-30 minutes, and kept in touch for some time after words -- until I managed to gain financing for my first solo-project, actually.
My advice, if you aren't a salesman, is to FIND A GOOD HEADHUNTER. You might not be able to sell yourself, but you can probably shop pretty well. And you will know damned good and well when someone is BSing you. Do they take a cut? HELL YES! Does it suck? HELL YES! Does it matter? HELL NO! Because they screw the company that highers through them -- you get paid according to some random principal, and the agency takes a cut from the company, not out of the salary you are quoted.
But you probably know this already. Or have a job. Or don't care. Anyway. FWIW, which isn't much at all, there ya go
My question, which I am attempting to form into a coherent argument still, is generally this:
Will the new network actually be a distributed network, or will it be a massive, bottlenecked POS like we have now?
I refer, of course, to the 12 major DNS servers which control our access: Internet health report. One of these goes down and those of us still up see a super-slow internet. Two go down and pages fail to load as often as not. I've yet to see three go down completely, but it is bound to happen.
The above are stateside only, to my knowledge. And yes, I know that we *CAN* use raw IP addresses to bypass the DNS, however the world wide web DIES when a few DNS servers go down. I guess that means the above is a complaint about the WWW, not TCP/IP in general.
Bah. Now I realize that I don't really know enough about the guts of the current TCP/IP stack to be able to defend any arguement I might make. I suppose I need to pick up that tome I have lying around here somewhere....
Cheers,
Was just thinking: one solution might be to create a form of 'GPS' for the langrange point (the point itself moves too, so you can't just use star-positioning) and then have everybody know where everybody else is, and onboard computers sophisticated enough to know when to adjust their orbit.
It would be incredibly complex -- there would have to be notifications e.g. 'I'm about to fire to avoid you, so please don't move too'.
It isn't so much that each object exerts a significant force upon the other; it is the *highly* non-linear and chaotic nature of the orbits about any of the three unstable Langrange points.
I flubbed when I said my prof did the orbits for SOHO (*cringe*) -- she may have worked on that too, but what she DID do, and talked about in class, was the Genesis mission. To rub in just how little we poor bastards knew about orbital dynamics, she took great pains to point out that the amount of delta V used to get the Genesis craft from the langrange point back into an Earth bound orbit was SIX meters per second. Six. I think the smallest delta we ever calculated was like 50m/s, and that was for something stupid like am apogee boost. Note that that is craft based deltaV -- e.g. supplied by the crafts thrusters. Did some nifty magic using the moon etc. that made me feel like a child amoung giants.
if for no other reason than to remind ourselves of how hard they really are.
I like. And also to show that we really are capable of greatness, should we care to prove it to ourselves.
If that's really a problem, then use a large number of smaller objects in orbit around L1. (SOHO does this already, so you can't tell me its impossible.)
;~)).
;~)
:~). Not trying to be some cynical asshat shooting down what you say, although I do admit I probably come across that way in text mode. Technology like this *is* fun to consider :~)
:~)
Actually, I was a student of one of the primary engineers of the SOHO orbit. She discussed it in class, and showed us the orbits and the fuel estimates etc. I assure you that we DO NOT have the ability to model a large number of objects around L1. We certainly could create this capability, but you are talking worse-than-realtime calculation times in our current state of technology (for many-multiple objects that aren't allowed to collide). The problem is already 'intractable' in the sense that it is multi-body dynamics -- no solution, must model via iteration.
The SOHO craft's orbit looks like a seriously drunk dolphin chasing a drunk fish. Just looking at it made me fear going for a masters in orbital mechanics (which I didn't end up doing...hmmm
Thanks for the distances, had forgotten them. I really should do the math on the visual arc of the sun and compare to some random object at distance 'x', but I am really really lazy
I agree: it could be done. Iff we needed it. I just think that a better idea, in terms of preserving the human race, would be to get some people the hell off of Earth! Eggs in one basket and all of that.
The '100 years' thing I tossed out was related to your statement re: space-elevator: in 100 or so years, doing this will be stupid cheap/easy compared to trying it today. Not actually cheap, nor easy: just in comparison to today
It is dynamically unstable: once it STARTS going away from the point of equilibrium, it continues to do so at an accelerating rate.
Think of the + signs as gravity:
++++++++++++++
If you are in the middle, you are great. If not, you are going to go faster and faster in either direction.
The amount of solar pressure would be incredible on an object large enough to do anything; as would the size. Movable anything would be nigh impossible.
Also, I think that the Sun-Earth L1 is so far out there that it is completely pointless to consider trying to 'block' anything from there. I don't know where the 'ideal' (focal?) point would be, so I could easily be wrong here.
As a whole, the idea is pretty high on the list of stupidest F#$^&ing things I've ever heard presented as serious considerations. (Not your statement, the idea of blocking the sun instead of cleaning up our act.)
However, at SOME POINT we will probably have such technology, simply to protect againts the variable output of the sun: varying solar activity is about 30% responsible for varying (long term) weather conditions, IIRC. 'Some point' being an arbitrary number no less than 100 years in the future.
Not joining the pitched battle, just wanted to say that Borlands JBuilder will compile swing apps. I tend not to use it out of paranoia -- Why introduce the possibility of errors, esp. when I have no desire to add the additional testing to the mix?
But I have tried it for small apps, and never had a problem. Again *NOT A HEAVY USER*.
Nope. Freenet is not unlinking objects -- not technically a memory leak, but same effect. Essentially, freenet is saying 'hey, Garbage collector! I'm still using this stuff, don't delete it for me, 'k?'
:~)
There are cases where you must explicitly set objects to null if you want them to die; for instance, in a persistent object which spawns many children. Or in a complex object that has children of its own were parent is a member of child and child is a member of parent (something that simple will be found, usually, but it is the idea of 'ghost references' (correct term? someone?)).
The easiest way to create something that looks like a memory leak is to keep adding stuff to a buffer or hashtable of some sort. I've crashed a prog by reading a file into a string buffer without worrying about size -- well, read in three files that are 20 megs in size and *poof* your JVM kisses you goodnight.
Keep adding objects into a collection and don't delete them when you are done with them and guess what? It looks like a memory leak.
This is a super highly simplistic explination of a very complex issue. There was a very wonderful -- and LONG -- 'tutorial' on memory management in Java on the sun site... but I don't have the link anymore. If someone reposts it I would be oh-so-very-happy
And it should electrocute the user when he does something wrong... like type.
Options -> Preferences -> [x] Remember Last Category.
:~/ Yes, it is the Piece of Crap System (PCS) ala sprint.
Thanks -- read through the manual a couple of times, didn't see it. WOuldn't swear that it isn't there, the manual is 200 some pages of mostly worthless pratter. Also, for reference, unlike the majority of the screens, touching the top of the screen with the stylus doesn't bring down the File menu -- I didn't figure anyone would make up the options -> prefs thing so I took the time and managed to discover that pushing the menu button DOES bring down a menu. So, thanks a bunch.
"Swap Call" til you're on the call you want to end.
Not described in the manual, and I have NEVER seen a 'hang up' option while connected under three way, and I've swapped a few times. Always shows 'hang up all' on screen, and the hang up key (red phone) does exactly that. No matter what, I hang up on both callers. It is broken to the point that I no longer utilize call waiting
The lag issue may be the same -- a GSM/PCS thing. The Register mentioned having it happen to them as well in their review.
Given that the processor is more powerfull than that of my first PC -- A pentium 90 with 16mb ram and a 1GB HD (my 650 has a GB SD card in it), I think it could have better software. I am extremely disappointed that such a SWEET piece of hardware was abused by the programming department into a 100% average piece of kit. With a below average phone. The ONLY complaint I have on the hardware was that they used a micro-plug instead of the standard stereo mini-plug for the headset/headphones. Okay, and that they, also, are victims of the 'must...have....blinky lights...' syndrome. But the screen is so pretty! and the keyboard so nice! I mean, you have to make sure not to trim your nails too close, but it really is nice!
BUT! If you (original request person) do buy it, make sure to check out Pocket Tunes. Very nice. I never even tried Real Player, which comes installed on the Sprint version. Some sort of personal hatred on my part. Many out there will understand.....
The hardware... well, I am in awe.
The software? Well, I am also in awe, but in the sense that it is the most disgusting abuse of good hardware I've ever seen in my life.
Usability was not a feature the software guys cared about, it would seem.
One example: Say you get a call while you are already on the line, and you take said call: There is no way to end only one of the calls. You can FLASH over, from one to the other, but you cannot 'end current call'. Even the $%&&*$#^* POS manual says 'for your convienence, the Treo 650 will automatically call back the last active number when you select 'Hang up all' so that you may continue the conversation'. Not an exact quote, but close.
This is the Sprint phone, can't imagine that software for others is very different.
There is also a lag when you answer. If you answer your ringing phone and immedietly say 'Hello?' or '(name) speaking:' the person who called you WILL NOT HEAR IT. You must pause for about a second or two before saying anything after answering.
Menus do not 'remember' anything. Want to go to your contacts list? Always defaults to 'All' -- never remembers a subcategory. Voice dial? Subscription feature.
Frankly, I'm super pissed about the treo 650. Buy a PDA and a cheap-ass phone and you will save 300 bucks and be far happier.
no Wal-mart to speak of here in Oregon -- Fred Meyer whups its... anyway.
:~(. I like coops though.
Starbucks actually increases local coffee stores' business. Hard to belive, but true. No linky, sorry.
As to the 'concentrated at top, less to go around': What do you think rich people do with their money? Stuff it under the bed? I know this next sentence is basically screaming 'trickle down economics!, but rich people invest their money. Many rich people invest in startups. Others put money in the stock market or real estate. Etc. Nobody puts it under their mattress. The money stays out in the system.
But yeah -- pure capitalism is NOT the answer. What is even worse is our own form of government/economics where the regulations are quickly becoming the OPPOSITE(!) of government regulated capitalism: the govenernment is supposed to regulate the companies for the benifit of the people, not the other way around!
I don't know the answer either