Forgot your password?
typodupeerror

Comment: Re:That was fast (Score 2) 266

by ChrisLambrou (#35047884) Attached to: Sony Sends DMCA Takedown Notice To GitHub
Thanks to the DMCA, GitHub has no meaningful choice other than to comply with the take-down request, unfortunately. It's now down to the repository owners to ask GitHub to reinstate them, at which point it becomes a legal matter between them and Sony, with GitHub being free of any legal liability to Sony (at least with respect to the DMCA). It's not particularly newsworthy that they caved - it would have been far more newsworthy if they hadn't.

Comment: Re:Is Slashdot for or against copyright today? (Score 4, Insightful) 263

by ChrisLambrou (#28485013) Attached to: Copyfraud Is Stealing the Public Domain
You've painted a very black-and-white, either-or scenario. I think that the anti-copyright sentiment often expressed here on Slashdot is generally targeted against the locking up of our culture by large media organisation with deep pockets used to lobby congress and trample upon individuals with punitive lawsuits.

I believe an insistence that copyright be respected for GPL licenced software sits perfectly well with a desire for a more balanced copyright regime - one with much shorter copyright durations, and where people are free to exercise their fair-use rights without being criminalised by the DMCA.

Comment: Re:Red flags (Score 2, Informative) 435

by ChrisLambrou (#28314461) Attached to: 14-Year-Old Boy Smote By Meteorite
Terminal velocity is somewhat of a red-herring here. If you were to drop a meteorite from a standing start from a high enough point (lets say you're in a hot air balloon), then terminal velocity is the asymptotic speed that the meteorite would approach as the acceleration due to gravity is cancelled out by air-resistance. But an actual meteorite doesn't hit the ground from a standing start. It could have been travelling at many times the speed of sound when it entered the atmosphere. Sure, its trip through the atmosphere would have slowed it down a little, but there's no guarantee that it would have dropped to terminal velocity before striking the ground. I'm sure there are plenty of examples of meteorites leaving impact craters that are many times their size. I'm no expert, but I presume that they would also have had to have been travelling faster than terminal velocity in order to leave such marks on the ground. (Hmm, it's late - anyone know what tense I used in my last sentence? I sure don't!)

Comment: Re:Wrox Press (Score 1) 558

by ChrisLambrou (#24847763) Attached to: Java, Where to Start?

You're right of course. My original description of finalizers was rather simplistic. The best advice I can give to new Java developers (or C# developers, come to think of it), is to completely avoid using finalizers to dispose of non-memory resources such as file streams, sockets and database connections. It's just too easy to introduce bugs this way, and they're often the type of bug that's hard for a new developer to track down the cause.

There are two common alternatives to using finalizers. The first is to avoid retaining references to non-memory resources, wherever possible. As bckrispi mentioned above, it's good practice to close sockets and file streams as soon as you've finished with them (or in the case of database connections, relinquish then to a common pool).

The second is to expose lifecycle management methods on your class, typically by providing a close() or dispose() method, which passes the responsibility of lifecycle management to the code using your class. Needless to say, the first option is definitely preferred over the second.

In 15 years of Java and C# coding, I can honestly say that the only time finalizers have been useful is in trying to detect the case where client code hasn't invoked the relevant close() or dispose() method, in order to issue a debug logging call so that this can be trapped, and then make a final attempt to call close() or dispose() within the finalizer and hope for the best.

Loose bits sink chips.

Working...