Follow Slashdot stories on Twitter


Forgot your password?

Comment: Re:Are you saying that criminals don't exist? (Score 4, Interesting) 155

by Greyfox (#49755471) Attached to: 'Prisonized' Neighborhoods Make Recidivism More Likely
Maybe not now, but if you actually work on fixing broken people, you'd end up with a prison profile more like Norway's. That wouldn't happen overnight, naturally. The system we have now has resulted in an awful lot of broken people, and they just propagate their disorders to their children. Look at violent criminals now and in most cases I think you'll find someone who would not have been violent if they'd received help at an earlier stage of their lives. People don't become criminals for no reason. Someone doesn't just wake up one day and think "What a nice day, I think I'll go out and murder a bunch of people!" We always know about those people in advance.

Of course, my Socialist-Totaltarian regime has a multi-pronged approach to addressing this:

1. All children will be confiscated from their parents and birth and raised in sanitary state-run facilities. Processes will be put in place to insure that no violent or sexual abuse of the children will be possible.

2. All children will be reversibly sterilized at puberty. Anyone wishing to breed will be required to pass a parental competency test.

3. For anyone unable to pass a parental competency test, the state will choose a partner based on specially-designed algorithms designed to insure the happiness of the couple.

4. All religion will be illegal except for the state-run one, which will involve Smurfs. Non-Smurfy behavior will be dealt with harshly.

I predict that my society would reach the "Utopia" stage within three generations.


Comment: Re:Are you saying that criminals don't exist? (Score 4, Insightful) 155

by Greyfox (#49755017) Attached to: 'Prisonized' Neighborhoods Make Recidivism More Likely
Well, if we eliminate all the people who just wanted to get high quietly in the privacy of their own home and provided treatment instead of prison time for all the people who are in there as the result of alcohol and drug abuse, we could probably close all but one existing prison. Funnily many of the examples you provided are driven by the enforcement of white supremacy perpetuated by the anti-drug establishment. Which, by the way, is VERY good for the profits of the privatized prison system. Give someone in a community no opportunities other than being thugs and many of them will be thugs. This ought not to be surprising. Use lies and bad science to enact prohibition-style laws on substances no more harmful than alcohol and you'll see black markets arise, along with the violence associated with those black markets. Most people don't become broken for no reason, either. Address a few simple causes and you could significantly reduce the prison population in the country, the taxpayer burden associated with that population and increase the overall safety of the society. The for-profit prisons would really rather people didn't realize this.

Comment: Re:Not the Issue (Score 4, Insightful) 155

by Greyfox (#49754723) Attached to: 'Prisonized' Neighborhoods Make Recidivism More Likely
This. The prison system is good money for the people who run it. The more people commit crimes again once they get out, the more money the prison system makes. The entire system is designed to encourage recidivism. The entire system is designed to incarcerate more people than any other country on the planet. The entire system is designed to turn a profit.

Comment: Re:So long as you are doing batch processing (Score 1) 376

by Greyfox (#49752581) Attached to: How Java Changed Programming Forever
You mean by using a std::shared_ptr? "Oh but that's inefficient!" I hear you cry! But if you're the kind of programmer who can't learn how to delete objects before they go out of scope, that's a trade off you're going to want to make. Of course, allocating objects on the heap is so 1990s-era C++ programming. You can allocate the object on the stack and if it needs to do any big heap management it can do it within the confines of the object. AND you can properly deallocate it when it goes out of scope and implement a move allocator for it if you want to potentially return it by copy (Returning std::move(object) will promise the compiler you won't use that object any more in the returning function.) If you do it correctly, your stack will only ever grow by the few bytes needed to store a couple of pointers, which it would have done anyway. And you're much more likely to clean up resources with RAII than anything java can manage. Having seen big companies have to reboot java servers every couple of days because their JMS service bleeds file handles, I'm not at all impressed with Java or its automatic GC. I've had C++ servers run on production system for months at a time without the process size ever growing.

Comment: Re:Easier to learn != easier to use (Score 1) 376

by Greyfox (#49752469) Attached to: How Java Changed Programming Forever
I keep having to support jackasses who want to use it for system programming because it's "Write once and run anywhere!" To be fair it was never designed to be a system level programming language, but that really doesn't help you any when someone drops some horrible abomination in your lap and asks you to support it for the next 5 years.

The deeper I get into OO, the more I start to understand that getters and setters are just as bad as exposing members of your object to the public. If you have to expose the working data of your objects that regularly, you're not working at the correct level of abstraction. A lot of the coding style I see in java is geared toward "I'll need this in the future" or "I have no idea what I'm going to need in the future, so I'll make this bit so generic that it can do anything." Both of these habits are incredibly bad practices that have been superseded by refactoring. A lot of inexperienced programmers think that once they've designed and coded some shit, it's carved in stone forever after that. I've seen countless cases of companies wringing their hands and working around problems in code that can be fixed with trivial changes to program design and adjustments to half a dozen or so objects.

I have much the same problem with introspection as I do with getters and setters. People say "Oh we have to use introspection because someone might want to write something new and drop it in there and we don't know how it'll behave!" Again, that's limiting your current design because you don't know what will happen in the future. Design a solid and maintainable interface NOW and if you need to change it in the future, change it in the future. Don't build some twisty maze of introspection that delegates any real work 10 objects away from the functions that initiate it just because someone in the future might want to write something else! And quite frankly, no one EVER WILL, because that would require knowing implementation-level details of the ball of shit you rolled up to support that.

Comment: Re:Yeah right. Then explain COBOL. (Score 1) 407

by Greyfox (#49742891) Attached to: The Reason For Java's Staying Power: It's Easy To Read
Well if there's one thing programmers hate more than unreadable code, it's typing shit, and COBOL was an awful lot of typing shit. And for some reason, even though the individual lines were easy enough to read, something about the language made it very difficult to follow overall. Since the language was so overly verbose, functions usually ended up being pretty long, and it was very easy to get lost in them, in any COBOL code I was exposed to anyway. I'm sure there was probably some clean, well written COBOL code in the industry, but I never got a look at it.

Comment: Re:Does it Stop (Score 1) 825

by Greyfox (#49741419) Attached to: Oregon Testing Pay-Per-Mile Driving Fee To Replace Gas Tax
I drive across country on a pretty regular basis. But yeah, it's probably a net win for me seeing as how Oregon gas always seemed to be 20 or 30 cents higher than Idaho. Probably since they weren't letting you pump it yourself, last time I came through. I don't have a lot of excuse to get back that way these days, as if I want pot or gay marriage I already live in Colorado and if I want really good sushi I'm going to drive to Seattle. Though for the most part, the sushi around Denver can usually satisfy my sushi jones.

Comment: Re:Too Bad For North Carolinians! (Score 1) 289

by Greyfox (#49722323) Attached to: North Carolina Still Wants To Block Municipal Broadband
Interestingly, when I'm booted over to Windows for gaming, I often put my system in sleep mode so that my USB doohickies can keep recharging. While I was on Comcast, my system would wake up and not be able to resolve DNS names for several minutes. This happened no matter what DNS servers I kept it pointed at (Google's or Comcast's.) I could ping IP addresses like the name servers, but I couldn't resolve any names.

All that went away when I switched to Longmont's municipal service. System wakes up, internet's instantly accessible.

I tried CentryLink's 1MB DSL prior to Comcast but the latency was always shit with it. If my room mate was doing anything, I could see ping times in the 1 second range.

I have yet to see any problem, however complicated, which, when you looked at it in the right way, did not become still more complicated. -- Poul Anderson