Anonymous methods: typically will be used to simplify writing callback/event handling code. Providing closure support also provides useful capabilities that lisp/ruby/etc programmers are familar with.
Iterators: They provide a language feature to supply the values or implementation of the iterator. So, instead of hand-coding an implementation of java.util.Iterator or the C# equivalent of IEnumerator, the language simplifies it by allowing you to "yield" the sequence of values for the iterator.
Partial classes: Allows breaking a type definition like a class into multiple files. For a developer doing all the coding for a given class, they really are not that useful and likely should be frowned upon. Where they become useful is in cases where the developer codes part of the class and the remaining part is code generated. Example: a web page.
Nullable types: When working with value types, there is traditionally no way of representing the absence of the value. Nullable types allows you to specify the full range of the value type (for ex, integer) AND deal with the absence of that value. Usefulness? Interacting with databases.
(This post was written hastily and not reviewed for spelling/grammar.)
Yes, heavy influence from C/C++, but funny thing is that the Java camp has avoided introducing these features until C# made a lot of them popular again.
New Features in Java 5: - Generics (C# 2.0) - Enumerated types (C# 1.0) - Static import (not available in C#) - Formatted output / input (C# 1.0) - Varargs (C# 1.0) - for loop changes (C# 1.0, equiv foreach) - autoboxing (C# 1.0) - metadata (C# 1.0)
In C# 2.0, it will have features that Java 5 does not support:
- iterators - anonymous methods (includes support for closures) - nullable types - partial classes (good for code generators)
Not saying C# is the be all end all... in fact, I'm more partial to languages like Ruby.;)
"but I'm betting a lot of people just don't know how"
Reading most of the responses to this story, seems to suggest most Windows and Linux users really don't know much about fixing problems in a Windows box. Even the ones that are in defense of Windows still don't suggest the best solutions or mispeak of how to fix it.
You're one of the few to suggest that its possible. You give me hope.;)
Most failures in applications and operating system services can be fixed, as you correctly pointed out, without a reboot and often without even logging the current user off. It requires the exact same set of strategies a knowledgeable linux user would to recover their desktop or server from a problematic application.
A good example is that if explorer has a problem, people reboot. Little do they realize that it will usually fix itself and come back. If it doesn't, all you typically have to do is bring up task manager and run explorer.exe and it will come right back up. If explorer.exe locks up or starts behaving funky (i.e. doesn't crash) you can kill it and then restart it without logging off. Lastly, most don't know there's a configuration setting that allows you to run two explorer.exes -- one for the desktop, the other for the taskbar. The side benefit of doing that? Makes your system more stable and increases the likelihood of doing the other explorer recovery tips.
I rarely have to reboot my laptop or workstations. My laptop, in particular, usually has an uptime of months with rock solid stability. (Yes, I usually hibernate or go into standby instead of shutting down.) Meanwhile, most other people reboot their Windows machines simply because they do not know any different.
I've used Windows, Linux, and FreeBSD. In general, my uptimes are about the same. I will say Linux/FreeBSD do get a slight nod in the favor, but that's less of stability issue as for other stupid implementations -- Windows requiring reboots after driver/operating system updates/etc. Oh that brings up another good point. Most Windows programs either ask you to restart or force you to restart when they're installed. That's more of a holdover that the magical reboot makes everything work better than something that is actually necessary.
A lot of the mobility in gravel really comes to down to the wheels, imo. For ex, my chair uses the rollerblade style front casters. Well, obviously, that's a pita when you're on grass or gravel. However, the turning radius and overall mobility is excellent on more solid surfaces.
The backwheels also play a part in it. I run a solid rubber "kik" tire which has the advantage of long life and never getting flat. The disadvantage is that they offer a rougher ride and in gravel/sand, they sink. On the other hand, tubular tires especially knobby tires, they handle much better on those surfaces. Downside, they're not particular keen for agility and have the inconvenience of narrowing your clearance indoors.
I use to keep two sets of wheels for these very issues.
Enums do not implicitly convert to a string. To convert an enum value to a string, you must call the ToString method. When you pass it to a method like Console.WriteLine, the enum gets boxed into in object which the WriteLine calls the ToString on. To avoid the box, one could call the ToString directly on the enum value.
Implicit conversion would mean the following would be possible:
You, as the instructor, could have filled in those gaps. It would be better if you didn't depend solely on the Visual Quickstart Guides. If that's all you had to work with in the course, you could have fleshed out the course more with your own instructional material and knowledge.
I teach Microsoft developer courses (MOCs). The materials are often plagued with similar issues that you find with "teach by example" systems. That's where I fill in the gaps using the whiteboard, demonstrations, online references, hand-outs, and other resources.
The most important resource that's available to students should be our own knowledge developed over the years. It should not be coming strictly from a book.
ASP.NET does not force the developer to use those features. You can very well write pages much in the same way one use to write pages for ASP/JSP/PHP. The IDE, Visual Studio.NET, pushes the concept of code behind pages and using controls.
Regardless of the tool involved, you do not have to work with those features.
If the CLR was a "C# language runtime", wouldn't you think that I would be able to exercise all the functionality of that runtime through C#? There are handfuls of functionality put into the CLR that C# the language DOES NOT SUPPORT, but other languages such as VB.NET, JScript, and J++ do support. On top of that, there's functionality that as far as I can tell none of them support.
Contrast that with the JVM which foremost only supported Java. Every other language has had to conform itself onto the JVM. There is some conformity required by the CLR, but not as much.
Going forward Microsoft has atleast put forward the intent (both in words and Microsoft research projects) to keep moving the CLR in the direction of "Common Language". Sun and the JCP have no such intent with the JVM.
I would say the majority of stolen CC #s are probably not on the net. Atleast personal ancedotal evidence seems to point in that direction. I've known atleast five cases, one of which being my parents who are generally anal in protecting their credit cards / bank accounts, in which the number was stolen and used. One interesting thing to note about these cases were that they all were either proven or most likely stolen at restaurants.
The next time you're at a restaurant, receive the bill, and you're about to give the credit card to the waiter or waitress you may just want to consider how much trust is required for that transaction. The waiter takes your card, walks off and runs the card, and comes back with your receipt and card. In that amount of time out of your posession, the number, name, expiration date, and the bank information on the back of the card could all be easily copied.
Re:Duh. Its called reflection
on
Hijacking .NET
·
· Score: 2, Interesting
The least obfuscated? On a line by itself, sure! When used in an expression, the same doesn't hold.
Most programmers that understand the difference between pre/post inc/dec operators still tend to answer the following code snippet incorrectly:
int x = 0; int y = 0;
int z = (--y + x++);
By no means am I suggesting they should be done away with, but I would not hold them up for display as the one "best" way especially when it would take only an extra two lines of code where there would be no uncertainty as to the intent.
So, I'm suppose to not enjoy a strategy game because the gee-whiz graphics and animations are not available. The very same gee-whiz graphics that I typically turn off after the first or second time seeing them?
In every computer strategy game I have played, the animations have always been turned off with few exceptions where it may have enchanced actual game play. The latter has rarely been the case.
I and I'm sure others are looking for detailed, relatively complex game that will grow and be more enjoyable over the long haul -- not just for the first few hours and weeks. The reason I have purchased few games in the last few years is that most games are just that -- geewhiz things that get old after not much time.
If MOO3 doesn't meet your appetite, there will be GalCiv which sounds like what you're after.
The guy should've googled for it. There's a few sites covering how to get installed on U1/U3 laptops. The biggest problem is caused by chipset detection routines in default 2.4 kernels. If you either rebuild 2.4 or use an older/newer kernel the install goes much smoother.
Heck, a site that sells Japanese marketed products (http://www.conics.net) even has a link to one of those sites for getting Linux on the U1.
C# has more in common with C++ than Java. The main similarities with Java relate to a simpler syntactical structure than C++, garbage collection, and an intermediate bytecode. Actual language features are borrowed more from C++.
Oh, right... Because all the crap programmers would be able to write better, more secure, and simpler systems than what already exist.
In some cases, I would agree with this quote, but its also the reason why there's millions of different versions of collections, print methods, string manipulation routines, parsers, etc -- all with their own quirks, holes, and other issues.
Most of the benchmarks thrown around have not been apples-to-apples comparisons even when comparing J2EE app servers.
Oracle showed how much faster their app server were compared to other vendors, but they used ORMI not RMI-IIOP or JRMP. Yep, that's apples-to-apples. Then you had companies that provided their own localized EJB implementations before the EJB specs included Locals.
Right. Apples to apples.
Even if there was a true apples to apples comparison between the J2EE vendors and Microsoft, people would still bitch, whine, and foam at the mouth that their platform is better.
Most people don't like to see their side lose. And less people will ever admit that their side lost.
then came the MS petstore for.Net. a design clearly aimed at performance and competition
Before Microsoft came out with their version, it was the J2EE vendors that were making performance comparisons for Petstore. Oracle was the first company to start this whole benchmark mess. It was only until the benchmarks were thrown back and forth between numerous J2EE vendors (Oracle, IBM, BEA) did Microsoft get involved.
J2EE vendors have no one to blame for these bad PR and marketing snafus, but themselves.
I'm surprised and apalled that Mozilla cannot automatically upgrade or import prior user configurations without a lot of grief. (I would link to Bugzilla, but links to Bugzilla that come from Slashdot are rejected. Why am I not surprised by that?)
So, what is the best way to manually import prior user configurations?
As an athlete, I can attest to the fact that as my abilities improved I've spent more and more time focusing on the mind-related aspects of performance. The physical training is important, but the mind aspect takes it to a much higher level. In some ways, I think the lack of this keeps quite a few athletes from truly achieving their physical limits.
Its not some unknown fact that through physical training in a sport, athletes develop more connections -- both in their brains and in the nerves controlling the muscles.
Then, of course, there's "the zone". There's nothing like being so relaxed and in tune to what you're doing. When I've been in the zone, there's a lot less "noise". I never think about my friends, family, work, or any other extraneous thoughts. Not only that, the actions for the sport barely seem to register. Its quite an amazing "meditative" state to be in.
IMO, I would not be surprised if the overall activity in the brain is lower especially when an athlete is in the zone. All the sports psychologists I've come across have been very supportive of visual imagery / meditative exercises for athletes even when not performing the exercise. If I remember the literature correctly, visual imagery has been shown to continue to improve the connections an athlete uses while the athlete is at rest.
If this is capable for athletes, I don't see why other activities such as video gaming would not have the potential for similar effects. It won't make video gamers more social or have more physical prowess, but for their specific activity they'll be well adapted.
I've hit the zone coding, but no where near as often or deep when compared to my experiences with hitting the zone in sport training/competition.
Re:Java UI doesn't have to be slow
on
Eclipse 2.0 Released
·
· Score: 3, Insightful
I use to be a proponent of IDEA, but a combination of it's huge memory usage, lack of speed, and cost has outweighed its great features -- i.e. excellent refactoring support.
If anything is a sure sign that there's a problem with speed/memory is the fact that IDEA has a status area showing the current memory usage. A click on it will force a garbage collection. THAT shows you what is wrong with most Java designs built around Swing.
This is not to say all programs designed with Swing suck, but you do need a strong knowledge of the architecture and design built around it to do it well.
But if you have lost the use of your legs, you need to rebuild the car controls.
Many hand control solutions do not require modification of the original car parts such as the pedal, etc. In fact, some of them are mobile in that you can take them from one car to another if needed. Handy for rental systems.
Of course, this all depends on the physical capabilities of the user. If the user has a severe enough (but not so much not to drive) physical disability, they may not be able to readjust the hand controls or the hand controls may need a design that would require a modification to the car.
Typically, the more drastic changes to a car are more for access to the car itself -- i.e. a lift or ramp to get into a van.
Typing is not as important to programmers as is readability, debuggability and all the other stuff that makes maintaining code easier. If you for a second think that writing the code takes the longest, you have a lot to learn about software development.
what's up with the static cache in the InetAddress.GetByName????
This issue has been addressed years ago (where have you been?) by Sun for their implementation. There is a property, sun.net.inetaddr.ttl, for setting the value to something useful in dynamic situations such as 0 (i.e. never cache).
The JDK 1.4 release also addresses the issue. From the candidate release notes:
Prior to J2SE 1.4 if InetAddress.getByName if a lookup to the name service failed then all subsequent lookups of that hostname would fail for the lifetime of the virtual machine. This arose because negative lookups were always cached. This has changed in 1.4 so that by default if a lookup fails it's possible for a subsequent lookup to succeed. This is particularly important in dial-up environments or environments where the name service is not reliable.
Lastly, InetAddress.getAllByName() apparently has never had these issues, but you will have to implement any round robin code yourself.
Verizon is known for having excellent wireless service especially the ability to get a signal in more places than the other big wireless players. And this applies to most of the areas they provide service. So, it's not just as NY/NJ or Virginia folks who have had good results with Verizon.
It makes me wonder if the editor Michael knew anything about Verizon's wireless service or if he was simply taking a pot shot at Verizon because they're Verizon and it's the Slashdot thing to do.
If people want to bitch about Verizon, bitch in regards to their Internet service or customer service. Unlike their wireless service, there's a lot more problems with those other services.
Anonymous methods: typically will be used to simplify writing callback/event handling code. Providing closure support also provides useful capabilities that lisp/ruby/etc programmers are familar with.
Iterators: They provide a language feature to supply the values or implementation of the iterator. So, instead of hand-coding an implementation of java.util.Iterator or the C# equivalent of IEnumerator, the language simplifies it by allowing you to "yield" the sequence of values for the iterator.
Partial classes: Allows breaking a type definition like a class into multiple files. For a developer doing all the coding for a given class, they really are not that useful and likely should be frowned upon. Where they become useful is in cases where the developer codes part of the class and the remaining part is code generated. Example: a web page.
Nullable types: When working with value types, there is traditionally no way of representing the absence of the value. Nullable types allows you to specify the full range of the value type (for ex, integer) AND deal with the absence of that value. Usefulness? Interacting with databases.
(This post was written hastily and not reviewed for spelling/grammar.)
Yes, heavy influence from C/C++, but funny thing is that the Java camp has avoided introducing these features until C# made a lot of them popular again.
;)
New Features in Java 5:
- Generics (C# 2.0)
- Enumerated types (C# 1.0)
- Static import (not available in C#)
- Formatted output / input (C# 1.0)
- Varargs (C# 1.0)
- for loop changes (C# 1.0, equiv foreach)
- autoboxing (C# 1.0)
- metadata (C# 1.0)
In C# 2.0, it will have features that Java 5 does not support:
- iterators
- anonymous methods (includes support for closures)
- nullable types
- partial classes (good for code generators)
Not saying C# is the be all end all... in fact, I'm more partial to languages like Ruby.
"but I'm betting a lot of people just don't know how"
;)
Reading most of the responses to this story, seems to suggest most Windows and Linux users really don't know much about fixing problems in a Windows box. Even the ones that are in defense of Windows still don't suggest the best solutions or mispeak of how to fix it.
You're one of the few to suggest that its possible. You give me hope.
Most failures in applications and operating system services can be fixed, as you correctly pointed out, without a reboot and often without even logging the current user off. It requires the exact same set of strategies a knowledgeable linux user would to recover their desktop or server from a problematic application.
A good example is that if explorer has a problem, people reboot. Little do they realize that it will usually fix itself and come back. If it doesn't, all you typically have to do is bring up task manager and run explorer.exe and it will come right back up. If explorer.exe locks up or starts behaving funky (i.e. doesn't crash) you can kill it and then restart it without logging off. Lastly, most don't know there's a configuration setting that allows you to run two explorer.exes -- one for the desktop, the other for the taskbar. The side benefit of doing that? Makes your system more stable and increases the likelihood of doing the other explorer recovery tips.
I rarely have to reboot my laptop or workstations. My laptop, in particular, usually has an uptime of months with rock solid stability. (Yes, I usually hibernate or go into standby instead of shutting down.) Meanwhile, most other people reboot their Windows machines simply because they do not know any different.
I've used Windows, Linux, and FreeBSD. In general, my uptimes are about the same. I will say Linux/FreeBSD do get a slight nod in the favor, but that's less of stability issue as for other stupid implementations -- Windows requiring reboots after driver/operating system updates/etc. Oh that brings up another good point. Most Windows programs either ask you to restart or force you to restart when they're installed. That's more of a holdover that the magical reboot makes everything work better than something that is actually necessary.
A lot of the mobility in gravel really comes to down to the wheels, imo. For ex, my chair uses the rollerblade style front casters. Well, obviously, that's a pita when you're on grass or gravel. However, the turning radius and overall mobility is excellent on more solid surfaces.
The backwheels also play a part in it. I run a solid rubber "kik" tire which has the advantage of long life and never getting flat. The disadvantage is that they offer a rougher ride and in gravel/sand, they sink. On the other hand, tubular tires especially knobby tires, they handle much better on those surfaces. Downside, they're not particular keen for agility and have the inconvenience of narrowing your clearance indoors.
I use to keep two sets of wheels for these very issues.
Johnson & Johnson have a wheelchair that is part manual / part powered called the iGlide.
;)
You may want to check it out depending on your level of ability. Unless you really insist on the DIY approach....
Enums do not implicitly convert to a string. To convert an enum value to a string, you must call the ToString method. When you pass it to a method like Console.WriteLine, the enum gets boxed into in object which the WriteLine calls the ToString on. To avoid the box, one could call the ToString directly on the enum value.
:)
Implicit conversion would mean the following would be possible:
MyEnum x = MyEnum.Foo;
string s = x;
Fortunately, that does not work.
You, as the instructor, could have filled in those gaps. It would be better if you didn't depend solely on the Visual Quickstart Guides. If that's all you had to work with in the course, you could have fleshed out the course more with your own instructional material and knowledge.
I teach Microsoft developer courses (MOCs). The materials are often plagued with similar issues that you find with "teach by example" systems. That's where I fill in the gaps using the whiteboard, demonstrations, online references, hand-outs, and other resources.
The most important resource that's available to students should be our own knowledge developed over the years. It should not be coming strictly from a book.
ASP.NET does not force the developer to use those features. You can very well write pages much in the same way one use to write pages for ASP/JSP/PHP. The IDE, Visual Studio.NET, pushes the concept of code behind pages and using controls.
Regardless of the tool involved, you do not have to work with those features.
If the CLR was a "C# language runtime", wouldn't you think that I would be able to exercise all the functionality of that runtime through C#? There are handfuls of functionality put into the CLR that C# the language DOES NOT SUPPORT, but other languages such as VB.NET, JScript, and J++ do support. On top of that, there's functionality that as far as I can tell none of them support.
Contrast that with the JVM which foremost only supported Java. Every other language has had to conform itself onto the JVM. There is some conformity required by the CLR, but not as much.
Going forward Microsoft has atleast put forward the intent (both in words and Microsoft research projects) to keep moving the CLR in the direction of "Common Language". Sun and the JCP have no such intent with the JVM.
I would say the majority of stolen CC #s are probably not on the net. Atleast personal ancedotal evidence seems to point in that direction. I've known atleast five cases, one of which being my parents who are generally anal in protecting their credit cards / bank accounts, in which the number was stolen and used. One interesting thing to note about these cases were that they all were either proven or most likely stolen at restaurants.
The next time you're at a restaurant, receive the bill, and you're about to give the credit card to the waiter or waitress you may just want to consider how much trust is required for that transaction. The waiter takes your card, walks off and runs the card, and comes back with your receipt and card. In that amount of time out of your posession, the number, name, expiration date, and the bank information on the back of the card could all be easily copied.
Here's a juicier example for Java...
"hi there".equals("cheers !") == true
Not only does Heinz Kabutz demonstrate accessing private members, he shows how one can alter the behavior of interned Java strings!
The least obfuscated? On a line by itself, sure! When used in an expression, the same doesn't hold.
Most programmers that understand the difference between pre/post inc/dec operators still tend to answer the following code snippet incorrectly:
int x = 0;
int y = 0;
int z = (--y + x++);
By no means am I suggesting they should be done away with, but I would not hold them up for display as the one "best" way especially when it would take only an extra two lines of code where there would be no uncertainty as to the intent.
So, I'm suppose to not enjoy a strategy game because the gee-whiz graphics and animations are not available. The very same gee-whiz graphics that I typically turn off after the first or second time seeing them?
In every computer strategy game I have played, the animations have always been turned off with few exceptions where it may have enchanced actual game play. The latter has rarely been the case.
I and I'm sure others are looking for detailed, relatively complex game that will grow and be more enjoyable over the long haul -- not just for the first few hours and weeks. The reason I have purchased few games in the last few years is that most games are just that -- geewhiz things that get old after not much time.
If MOO3 doesn't meet your appetite, there will be GalCiv which sounds like what you're after.
The guy should've googled for it. There's a few sites covering how to get installed on U1/U3 laptops. The biggest problem is caused by chipset detection routines in default 2.4 kernels. If you either rebuild 2.4 or use an older/newer kernel the install goes much smoother.
Heck, a site that sells Japanese marketed products (http://www.conics.net) even has a link to one of those sites for getting Linux on the U1.
C# is java, with M$ extensions
Ignorance is bliss, eh?
C# has more in common with C++ than Java. The main similarities with Java relate to a simpler syntactical structure than C++, garbage collection, and an intermediate bytecode. Actual language features are borrowed more from C++.
Oh, right... Because all the crap programmers would be able to write better, more secure, and simpler systems than what already exist.
In some cases, I would agree with this quote, but its also the reason why there's millions of different versions of collections, print methods, string manipulation routines, parsers, etc -- all with their own quirks, holes, and other issues.
Most of the benchmarks thrown around have not been apples-to-apples comparisons even when comparing J2EE app servers.
Oracle showed how much faster their app server were compared to other vendors, but they used ORMI not RMI-IIOP or JRMP. Yep, that's apples-to-apples. Then you had companies that provided their own localized EJB implementations before the EJB specs included Locals.
Right. Apples to apples.
Even if there was a true apples to apples comparison between the J2EE vendors and Microsoft, people would still bitch, whine, and foam at the mouth that their platform is better.
Most people don't like to see their side lose. And less people will ever admit that their side lost.
then came the MS petstore for .Net. a design clearly aimed at performance and competition
Before Microsoft came out with their version, it was the J2EE vendors that were making performance comparisons for Petstore. Oracle was the first company to start this whole benchmark mess. It was only until the benchmarks were thrown back and forth between numerous J2EE vendors (Oracle, IBM, BEA) did Microsoft get involved.
J2EE vendors have no one to blame for these bad PR and marketing snafus, but themselves.
I'm surprised and apalled that Mozilla cannot automatically upgrade or import prior user configurations without a lot of grief. (I would link to Bugzilla, but links to Bugzilla that come from Slashdot are rejected. Why am I not surprised by that?)
So, what is the best way to manually import prior user configurations?
As an athlete, I can attest to the fact that as my abilities improved I've spent more and more time focusing on the mind-related aspects of performance. The physical training is important, but the mind aspect takes it to a much higher level. In some ways, I think the lack of this keeps quite a few athletes from truly achieving their physical limits.
Its not some unknown fact that through physical training in a sport, athletes develop more connections -- both in their brains and in the nerves controlling the muscles.
Then, of course, there's "the zone". There's nothing like being so relaxed and in tune to what you're doing. When I've been in the zone, there's a lot less "noise". I never think about my friends, family, work, or any other extraneous thoughts. Not only that, the actions for the sport barely seem to register. Its quite an amazing "meditative" state to be in.
IMO, I would not be surprised if the overall activity in the brain is lower especially when an athlete is in the zone. All the sports psychologists I've come across have been very supportive of visual imagery / meditative exercises for athletes even when not performing the exercise. If I remember the literature correctly, visual imagery has been shown to continue to improve the connections an athlete uses while the athlete is at rest.
If this is capable for athletes, I don't see why other activities such as video gaming would not have the potential for similar effects. It won't make video gamers more social or have more physical prowess, but for their specific activity they'll be well adapted.
I've hit the zone coding, but no where near as often or deep when compared to my experiences with hitting the zone in sport training/competition.
I use to be a proponent of IDEA, but a combination of it's huge memory usage, lack of speed, and cost has outweighed its great features -- i.e. excellent refactoring support.
If anything is a sure sign that there's a problem with speed/memory is the fact that IDEA has a status area showing the current memory usage. A click on it will force a garbage collection. THAT shows you what is wrong with most Java designs built around Swing.
This is not to say all programs designed with Swing suck, but you do need a strong knowledge of the architecture and design built around it to do it well.
But if you have lost the use of your legs, you need to rebuild the car controls.
Many hand control solutions do not require modification of the original car parts such as the pedal, etc. In fact, some of them are mobile in that you can take them from one car to another if needed. Handy for rental systems.
Of course, this all depends on the physical capabilities of the user. If the user has a severe enough (but not so much not to drive) physical disability, they may not be able to readjust the hand controls or the hand controls may need a design that would require a modification to the car.
Typically, the more drastic changes to a car are more for access to the car itself -- i.e. a lift or ramp to get into a van.
Typing is not as important to programmers as is readability, debuggability and all the other stuff that makes maintaining code easier. If you for a second think that writing the code takes the longest, you have a lot to learn about software development.
The poster who has the math degree has it right.
what's up with the static cache in the InetAddress.GetByName????
This issue has been addressed years ago (where have you been?) by Sun for their implementation. There is a property, sun.net.inetaddr.ttl, for setting the value to something useful in dynamic situations such as 0 (i.e. never cache).
The JDK 1.4 release also addresses the issue. From the candidate release notes:
Prior to J2SE 1.4 if InetAddress.getByName if a lookup to the name service failed then all subsequent lookups of that hostname would fail for the lifetime of the virtual machine. This arose because negative lookups were always cached. This has changed in 1.4 so that by default if a lookup fails it's possible for a subsequent lookup to succeed. This is particularly important in dial-up environments or environments where the name service is not reliable.
Lastly, InetAddress.getAllByName() apparently has never had these issues, but you will have to implement any round robin code yourself.
Verizon is known for having excellent wireless service especially the ability to get a signal in more places than the other big wireless players. And this applies to most of the areas they provide service. So, it's not just as NY/NJ or Virginia folks who have had good results with Verizon.
It makes me wonder if the editor Michael knew anything about Verizon's wireless service or if he was simply taking a pot shot at Verizon because they're Verizon and it's the Slashdot thing to do.
If people want to bitch about Verizon, bitch in regards to their Internet service or customer service. Unlike their wireless service, there's a lot more problems with those other services.