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.
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.
They could just work their way through the EA game archive making each one not suck in exactly the way that EA made each one of them suck. Five years later, one of the two companies would still be alive...
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.
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.
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.
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.
I'm glad they were worried about Trekkies and not, like, Islamic State. Or super AIDS. You know, just one teaspoon of super AIDS in your blood and you're dead in three years. So just remember, intelligence agencies, there's nothing to be afraid of. Except super AIDS.
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.
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.
Sure, and the price will be a bit higher for people who decide to subscribe later. It's still very competitive with the other internet services in the area, especially since none of them actually offers gigabit speeds. I'm pretty sure my uploads to youtube go faster that transfers on corporate networks of any previous companies I've worked for at the moment. I'm also curious to see how I'm faring a couple years from now. The city does seem to feel that it'll be able to maintain these speeds, and they also claim they'll be able to turn a profit with the service.
I can also transfer my founding membership with my house if I ever sell it, which is a pretty sweet deal for anyone who wants to move in here.
Start a petition drive to put a referendum on the ballot to opt out of the state rule on municipal ISPs. The law specifically allows for cities to do that if enough people opt out. I believe a couple of other cities either have done that or are soon going to. It's taken Longmont a couple years to get everything set up to start deploying it, and they already had a fiber ring in place from the '90's. We'll probably be just about finishing up the last neighborhood in Longmont about the time the other cities are ready to start deploying theirs.
Longmont has run the numbers and thinks the municipal broadband can be profitable. I'm curious to see if they can maintain the speeds once 20,000 people are on the network, but I've also heard them say they think they can do that too. People who get on the bandwagon early get discounted rates as long as they keep the service. After a few months the prices will go up a bit for new subscribers, but they're still going to be very competitive with other services.
I live in Longmont, Colorado. Couple years ago we had a referendum and opted out of the state's blocking of municipal broadband services. They're currently rolling the service out in my neighborhood and their guys did an install at my house about a month ago. I'm getting the fastest internet service in the country for $59 a month. My youtube uploads go at around a gigabyte a minute. Too bad about all these state legislators who seem to feel the need to protect their constituents from super-fast internet speeds at affordable rates that the private companies never seem to feel the need to deliver. I guess luckily for them, most people have no idea what they're missing, or a lot of those guys would be getting kicked out of office right now.
Mythbusters tested that. The guy had to be flying something crazy like 1000 feet in order to cause any damage like that. Very few people sane enough to be allowed to fly a supersonic aircraft would ever actually fly one that low at those speeds. Plow into a bird and you wouldn't even know how you died.
Back in the 80's at Robins Air Force Base, the fighter jets would drop a sonic boom on the area every week or so. They weren't any worse than a distant thunderstorm and significantly less bad than a nearby thunderstorm. I'm frequently surprised at all the hysteria over them, especially considering how often they occur over most of the continental USA (Never.) In the top 1000 things to worry about or be annoyed by, that shouldn't even be on the list.
After all the news stories from the past couple of years, it seems like you could just guess "Yeah, that's a penis" and be correct about half the time. Seems like most people if you give them a camera, they're going to take a picture of a penis with it. And subsequently post that picture to the internet somewhere.
In the places I've worked where management was just jumping on the buzzword bingo bandwagon, what was being done wasn't really "agile". It was more like "Let's adopt all the overhead of agile but not actually empower the developers or stop micromanaging them." So you end up with the same work load plus the overhead of a daily standup for a team that is way too big for actual agility (30 people, 26 are doing things that don't directly affect you,) and an iteration planning that is generally ignored because the team is always in firefighter mode anyway. You never see time allocated to write unit tests or refactor the code that keeps the team in firefighter mode constantly. So yeah, if you do it wrong, agile will fail.
I've been watching the idea since the early 00's. I've been on teams that have adapted the processes to work for the team and have been very successful doing so. I've seen a team get a cadence going and become extremely accurate at estimating new work for a product the same 5 people worked on for 5 years. During that time they also dramatically improved the quality of the code, reducing crashes that required weekend coverage to almost 0. Every once in a while they'd adjust their processes if things weren't working smoothly. Teams can work very effectively in an agile environment, if they're actually allowed to.
If you follow the evolution of agile, you see a lot of key concepts that get repeated over and over. The guys who wrote it understood that code is never perfect and never really correct the first time you write it. It pushes unit testing as a core component of the process. As with other things, making mistakes and correct them teaches you something about the problem, and so the whole process is designed around uncovering those mistakes quickly, throwing code away and rewriting it and constantly improving quality. The philosophy of most companies is that the developers should just crap something out that kind of works and then move on.
What it basically comes down to is just because your team is agile doesn't mean you can hire chimpanzees to write your code. Or manage the team. If you're looking for a silver bullet that will fix what's wrong with your company, agile isn't it. It enforces much more discipline than whatever crappy process you were using before that, but you really have to understand what it's about, and most people don't.
Captain Planet Explains.
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.
They usually just buy the up-and-coming company and turn it into shit with their Midas poo-touch.
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.
They could just work their way through the EA game archive making each one not suck in exactly the way that EA made each one of them suck. Five years later, one of the two companies would still be alive...
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.
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.
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.
That's what you get for fucking a pizza. I'm just assuming that no one would actually put Dominoes pizza in their mouth. That would be disgusting.
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.
I'm glad they were worried about Trekkies and not, like, Islamic State. Or super AIDS. You know, just one teaspoon of super AIDS in your blood and you're dead in three years. So just remember, intelligence agencies, there's nothing to be afraid of. Except super AIDS.
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.
Does it stop when you drive out of Oregon?
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 can also transfer my founding membership with my house if I ever sell it, which is a pretty sweet deal for anyone who wants to move in here.
The voting public still has to vote for them, something they often seem to forget.
Longmont has run the numbers and thinks the municipal broadband can be profitable. I'm curious to see if they can maintain the speeds once 20,000 people are on the network, but I've also heard them say they think they can do that too. People who get on the bandwagon early get discounted rates as long as they keep the service. After a few months the prices will go up a bit for new subscribers, but they're still going to be very competitive with other services.
I live in Longmont, Colorado. Couple years ago we had a referendum and opted out of the state's blocking of municipal broadband services. They're currently rolling the service out in my neighborhood and their guys did an install at my house about a month ago. I'm getting the fastest internet service in the country for $59 a month. My youtube uploads go at around a gigabyte a minute. Too bad about all these state legislators who seem to feel the need to protect their constituents from super-fast internet speeds at affordable rates that the private companies never seem to feel the need to deliver. I guess luckily for them, most people have no idea what they're missing, or a lot of those guys would be getting kicked out of office right now.
Mythbusters tested that. The guy had to be flying something crazy like 1000 feet in order to cause any damage like that. Very few people sane enough to be allowed to fly a supersonic aircraft would ever actually fly one that low at those speeds. Plow into a bird and you wouldn't even know how you died.
Well since they're testing for the metabolites of the stuff, probably not unless you're in the habit of eating $100 bills.
Congress will likely forbid this technology in the USA, lest it interfere with their favorite past time.
Back in the 80's at Robins Air Force Base, the fighter jets would drop a sonic boom on the area every week or so. They weren't any worse than a distant thunderstorm and significantly less bad than a nearby thunderstorm. I'm frequently surprised at all the hysteria over them, especially considering how often they occur over most of the continental USA (Never.) In the top 1000 things to worry about or be annoyed by, that shouldn't even be on the list.
They and Greece could convert to the Vietnamese Dong. The people are getting a whole lot of Dong anyway, so they may as well make it official!
After all the news stories from the past couple of years, it seems like you could just guess "Yeah, that's a penis" and be correct about half the time. Seems like most people if you give them a camera, they're going to take a picture of a penis with it. And subsequently post that picture to the internet somewhere.
I've been watching the idea since the early 00's. I've been on teams that have adapted the processes to work for the team and have been very successful doing so. I've seen a team get a cadence going and become extremely accurate at estimating new work for a product the same 5 people worked on for 5 years. During that time they also dramatically improved the quality of the code, reducing crashes that required weekend coverage to almost 0. Every once in a while they'd adjust their processes if things weren't working smoothly. Teams can work very effectively in an agile environment, if they're actually allowed to.
If you follow the evolution of agile, you see a lot of key concepts that get repeated over and over. The guys who wrote it understood that code is never perfect and never really correct the first time you write it. It pushes unit testing as a core component of the process. As with other things, making mistakes and correct them teaches you something about the problem, and so the whole process is designed around uncovering those mistakes quickly, throwing code away and rewriting it and constantly improving quality. The philosophy of most companies is that the developers should just crap something out that kind of works and then move on.
What it basically comes down to is just because your team is agile doesn't mean you can hire chimpanzees to write your code. Or manage the team. If you're looking for a silver bullet that will fix what's wrong with your company, agile isn't it. It enforces much more discipline than whatever crappy process you were using before that, but you really have to understand what it's about, and most people don't.