Blizzard is owned by, and distributed by Vivendi Universal Games. The thing with Blizzard is, they have *alot* of star power. They've acquired that power because of the success, both financial and critical, of their games. Its because of that power that Blizzard is essentially in control of the developer/publisher relationship, Vivendi does what Blizzard wants them to do, not the other way around (as is the case with 99% of developer/publisher relationships).
Who says? Americans need to do what is best for Americans. And who are you to decide what is fair?
To answer your question (Who says that Americans need to compete fairly with off-shore developers? ) The executives running corporations, thats who. Its not really your choice, you have to live with what the coporations (where you have zero input) and the government (where you have some input) want. Seems to me there are three options:
1. Stick your head in the sand and hope the problem goes away.
2. Wait for the government to pass some laws and/or tax breaks that give American business' incentive to keep jobs here.
3. Compete on the same field as the off-shore developers.
Obviously (1) isn't a very appealing option, and personally I wouldn't trust the current administration to do anything that gets interferes with what people running large (or even mid-size) corporations want to do, so I don't find (2) that attractive.
That leads to (3), and as the author of the article states, its not unrealistic for Americans (at higher wages) to compete with cheaper off-shore developers.
Reading the comments here, I'm wondering if people read the linked-to Yahoo article, or just read the reporter's comments. The Yahoo article actually makes some interesting arguments to support what alot of people are saying here (essentially, that is in an open market, and Americans need to compete fairly with the off-shore developers).
The author cites several ways in which current American development costs are actually on-par with off-shore costs. Sure the actual cost of a single programmer is higher in the US, but when you factor in 'hidden costs' (more project management, risk of legal issues with IP, etc), the overall cost of the project can not only be the same in the US, but it can be alot more hassle free (and less hassle has value too).
I thought it was particularly interesting at how these factors can really hit a small company hard, since small companies generally lack strong legal teams, and strong internal development processes, and these are two areas where off-shore development has some risk.
I only wish I could mod this higher, very well said.
The unforunate thing is, a mutually loyal company/employee relationship is better for all parties, but its so often an "all take and no give" relationship by my employer that I get fed up and end up with the completely mercenary attitude.
I'd probably get more done if I thought my company cared about me, but once they make the choice to treat me as nothing more than a resource, my morale declines and so does my efficiency.
If a company really wanted you to stay, and thought you were worth 50% more than they are paying you, why didn't they pay you 50% more to begin with and prevent you from looking. They were mistreating you, if they were willing to pay you 50% more, and didn't until you quit. They will only do it again.
Your value to your company increases over time. As a new employee, especially a new tech employee, you have to go through a ramp up period where you learn the ins and outs of a companies process and code. Once you learn that, start contributing your own code, and implementing your own processes, your value goes way up, since it becomes that much harder to replace you.
Granted it would be nice if companies had some foresight and paid better up front for talented people, but in my experience, that rarely happens.
Why *not*?
- abbreviate variables.
This enables naming collisions. For example: AddressInformation ai and AssertionInclude ai. If a maintainer has recently been in the assertion portion of the application logic, and is dropped into the user component (and comes across ai), they may make a mistake
A better reason to not abbreviate...abbreviation leads to less readable code, any programmer that has to maintain your code later (yourself included), will have a much easier time figuring out what the code does if you use longer, more explicit variable names.
- define your variables at the top of the method
Defining (and instantiating) variables only before the blocks of code where they are required adds extra meta-information to those variables. Blindly defining them at the top can lead to situations where blocks of code are removed from a method, but variables are not removed because they are defined and instantiated many lines above the block of code that was removed.
I'd prefer to see smaller functions/methods so that they do less. Instead of having blocks and blocks of code inside a function/method definition, break it into smaller, more atomic functions/methods.
Sounds like the congressional version of the bratty kid on the playground saying "its my ball and I'm going home" when his team is losing.
What irks me is that (from the NYTimes article at least), Lott didn't need any reason other than some stupid senate rule about convening for 2 hours to stop the vote. The interesting thing will be to see what he comes back with when the bill comes up next time.
Re:I Cancelled My Earthlink Account
on
Disconnecting
·
· Score: 1
I've subscribed (and subsequently cancelled) earthlink accounts about 3 or 4 times over the last couple of years. I sign up for dialup when I move into a new place, then cancel as soon as my broadband is hooked up.
I've never had any problems disconnecting service and in fat the last time I disconnected (a few weeks ago), I did it online through earthlink's customer support chat system. I've always found earthlink to have among the best customer service reps, they've always been helpful and friendly.
If you want a challenge, try dealing with DirecTV DSL, one of the worst companies I've ever had to deal with.
I agree that none of the current batch of engines is likely to be sold, but I think once these companies start to release 2nd and 3rd generation titles, the time for selling the engines will come.
Its similar to what happened with single player games...when cutting edge (at the time) games like Doom and Descent came out, nobody sold their engines because everything was highly tuned for those titles. As time goes on and the 2nd and 3rd generation of FPS came out, engines like Unreal and Quake became more generalized and hence became commodities that developers could sell.
Always get annoyed when a writer spits out an article that attempts to solve a problem, basically points out the obvious, and ultimately says "Well, its hard to figure out, everyone has to decide for themselves".
As for C being powerful, you might like to do a little more research about that
Well it depends on your definition of powerful, to me the power of the language lies its flexibility, adaptability, and even learning curve. C does pretty well on those tests, even though, as you pointed out, those attributes can come at the costs of development time.
There are plenty of other languages out there that are, in their element, far superior to C++. The fact that some are not more widely used is more due to managerial incompetence and the laziness of the average software development professional in researching their craft than anything else.
I agree that there are better languages (in terms of pure design), but I don't think the blame lies with incompetant managers or lazy programmers. I'm a C++ developer and when I tried to switch over to Java during a job last year, I found the tools and general support for the language were no where near what they were/are for C++. A good debugger and compiler is just as valuable in the development process as the language IMO.
I can't see how starting from a *very* popular programming language can be a bad thing. Sure C has its faults, but its also powerful and flexible enough for just about any task. IMO it makes perfect sense to start with C, then attempt to patch its weaknesses (as these guys are attempting).
If they had written an entirely new language from scratch, the result may have been better, but it also would have had a much bigger chance of being ignored by everyone. The development and evolution of C++ is a good example of how leveraging off an existing language makes alot of sense.
I feel bad for any programmers that you have to work with. Commenting is a common courtesy, save your co-workers some time and give them some comments on how the code is supposed to work.
What I don't get is how last weeks attacks were aided by the use of encrypted communications. I haven't seen a single report that would lead me to believe that the attackers were technologically sophisticated.
Absolutely time to go, sounds like you're avoiding the inevitable if you don't leave now. I've been in the position of not bailing when I should have, wound up getting laid off and then had to go without pay while I looked for another gig, and thats definately not a good position to be in.
Asking someone to take an exam with 40 or 50 questions is asking alot. For one thing, the candidate will very likely feel at least a little insulted, and there will be plenty of other companies where they won't have to jump through that many hoops to land a job. The company I now work for does a semi-technical phone call, followed by a test that we send out via email (has 5 questions, and 1 problem to solve). Then if the candidate looks good, we bring them in for a more rigorous interview.
Speaking from experience, I get very turned off my companies that ask me to do too much for an interview.
IMO, the biggest reason for sucky software (and a reason that I haven't seen mentioned yet), is the *lack* of market pressure for quality software. Lets face it, users are at a point of almost expecting their apps to crash. Thanks to the lack of robustness of widespead OSes like Win95, the average user has had to deal with enough crashes/inconsistencies and general oddities, that they don't expect much, so thats what alot of companies deliver.
I realize this is a bit of a Catch22, but if users were exposed to more quality (which I think we're starting to see with the stability of Linux being spread to the desktop), then their expectations will rise, and they will begin to demand better software, at which point the software industy will be forced to provide it.
I had a telocity account in Brookline and it was super easy to get set up (less than 2 weeks from start to finish, nobody had to come to my residence), and their service was always up.
I recently moved to the west coast and have ordered service with them again, this time it seems like my wait will be considerably longer, but I think the problem is with PacBell, not telocity.
Personally I'm more interested in the ability to turn off all the UI special effects (i.e. fading menus, bouncing icons, genie effect window shading etc). I can deal with annoying colors because they don't affect my interaction with the machine, but all those annoying effects slow down the responsiveness of the UI.
The question I have is, how much can we reasonably expect out of this "beta"? I have DP4 running on my Powerbook, and its fairly stable, but there are *lots* of features that would appear to be missing (at least I hope they're missing). I'll be curious exactly how close to the final product this "beta" is...
Hmm, who distributes Blizzard's games?
Blizzard is owned by, and distributed by Vivendi Universal Games. The thing with Blizzard is, they have *alot* of star power. They've acquired that power because of the success, both financial and critical, of their games. Its because of that power that Blizzard is essentially in control of the developer/publisher relationship, Vivendi does what Blizzard wants them to do, not the other way around (as is the case with 99% of developer/publisher relationships).
Who says? Americans need to do what is best for Americans. And who are you to decide what is fair?
To answer your question (Who says that Americans need to compete fairly with off-shore developers? ) The executives running corporations, thats who. Its not really your choice, you have to live with what the coporations (where you have zero input) and the government (where you have some input) want. Seems to me there are three options:
1. Stick your head in the sand and hope the problem goes away.
2. Wait for the government to pass some laws and/or tax breaks that give American business' incentive to keep jobs here.
3. Compete on the same field as the off-shore developers.
Obviously (1) isn't a very appealing option, and personally I wouldn't trust the current administration to do anything that gets interferes with what people running large (or even mid-size) corporations want to do, so I don't find (2) that attractive.
That leads to (3), and as the author of the article states, its not unrealistic for Americans (at higher wages) to compete with cheaper off-shore developers.
Which option would you prefer?
Reading the comments here, I'm wondering if people read the linked-to Yahoo article, or just read the reporter's comments. The Yahoo article actually makes some interesting arguments to support what alot of people are saying here (essentially, that is in an open market, and Americans need to compete fairly with the off-shore developers).
The author cites several ways in which current American development costs are actually on-par with off-shore costs. Sure the actual cost of a single programmer is higher in the US, but when you factor in 'hidden costs' (more project management, risk of legal issues with IP, etc), the overall cost of the project can not only be the same in the US, but it can be alot more hassle free (and less hassle has value too).
I thought it was particularly interesting at how these factors can really hit a small company hard, since small companies generally lack strong legal teams, and strong internal development processes, and these are two areas where off-shore development has some risk.
I only wish I could mod this higher, very well said.
The unforunate thing is, a mutually loyal company/employee relationship is better for all parties, but its so often an "all take and no give" relationship by my employer that I get fed up and end up with the completely mercenary attitude.
I'd probably get more done if I thought my company cared about me, but once they make the choice to treat me as nothing more than a resource, my morale declines and so does my efficiency.
At least I can still {my} use slashdot to {boss} send {is} super sneaky {a} encrypted {bozo} posts.
If a company really wanted you to stay, and thought you were worth 50% more than they are paying you, why didn't they pay you 50% more to begin with and prevent you from looking. They were mistreating you, if they were willing to pay you 50% more, and didn't until you quit. They will only do it again.
Your value to your company increases over time. As a new employee, especially a new tech employee, you have to go through a ramp up period where you learn the ins and outs of a companies process and code. Once you learn that, start contributing your own code, and implementing your own processes, your value goes way up, since it becomes that much harder to replace you.
Granted it would be nice if companies had some foresight and paid better up front for talented people, but in my experience, that rarely happens.
Why *not*? - abbreviate variables. This enables naming collisions. For example: AddressInformation ai and AssertionInclude ai. If a maintainer has recently been in the assertion portion of the application logic, and is dropped into the user component (and comes across ai), they may make a mistake
A better reason to not abbreviate...abbreviation leads to less readable code, any programmer that has to maintain your code later (yourself included), will have a much easier time figuring out what the code does if you use longer, more explicit variable names.
- define your variables at the top of the method Defining (and instantiating) variables only before the blocks of code where they are required adds extra meta-information to those variables. Blindly defining them at the top can lead to situations where blocks of code are removed from a method, but variables are not removed because they are defined and instantiated many lines above the block of code that was removed.
I'd prefer to see smaller functions/methods so that they do less. Instead of having blocks and blocks of code inside a function/method definition, break it into smaller, more atomic functions/methods.
Microsoft can have HN, it sucks, nobody should be proud to claim it as their own.
Sounds like the congressional version of the bratty kid on the playground saying "its my ball and I'm going home" when his team is losing.
What irks me is that (from the NYTimes article at least), Lott didn't need any reason other than some stupid senate rule about convening for 2 hours to stop the vote. The interesting thing will be to see what he comes back with when the bill comes up next time.
I've subscribed (and subsequently cancelled) earthlink accounts about 3 or 4 times over the last couple of years. I sign up for dialup when I move into a new place, then cancel as soon as my broadband is hooked up.
I've never had any problems disconnecting service and in fat the last time I disconnected (a few weeks ago), I did it online through earthlink's customer support chat system. I've always found earthlink to have among the best customer service reps, they've always been helpful and friendly.
If you want a challenge, try dealing with DirecTV DSL, one of the worst companies I've ever had to deal with.
I agree that none of the current batch of engines is likely to be sold, but I think once these companies start to release 2nd and 3rd generation titles, the time for selling the engines will come.
Its similar to what happened with single player games...when cutting edge (at the time) games like Doom and Descent came out, nobody sold their engines because everything was highly tuned for those titles. As time goes on and the 2nd and 3rd generation of FPS came out, engines like Unreal and Quake became more generalized and hence became commodities that developers could sell.
Agreed.
Always get annoyed when a writer spits out an article that attempts to solve a problem, basically points out the obvious, and ultimately says "Well, its hard to figure out, everyone has to decide for themselves".
Duh. Could you be less insightful?
As for C being powerful, you might like to do a little more research about that
Well it depends on your definition of powerful, to me the power of the language lies its flexibility, adaptability, and even learning curve. C does pretty well on those tests, even though, as you pointed out, those attributes can come at the costs of development time.
There are plenty of other languages out there that are, in their element, far superior to C++. The fact that some are not more widely used is more due to managerial incompetence and the laziness of the average software development professional in researching their craft than anything else.
I agree that there are better languages (in terms of pure design), but I don't think the blame lies with incompetant managers or lazy programmers. I'm a C++ developer and when I tried to switch over to Java during a job last year, I found the tools and general support for the language were no where near what they were/are for C++. A good debugger and compiler is just as valuable in the development process as the language IMO.
I can't see how starting from a *very* popular programming language can be a bad thing. Sure C has its faults, but its also powerful and flexible enough for just about any task. IMO it makes perfect sense to start with C, then attempt to patch its weaknesses (as these guys are attempting).
If they had written an entirely new language from scratch, the result may have been better, but it also would have had a much bigger chance of being ignored by everyone. The development and evolution of C++ is a good example of how leveraging off an existing language makes alot of sense.
I feel bad for any programmers that you have to work with. Commenting is a common courtesy, save your co-workers some time and give them some comments on how the code is supposed to work.
What I don't get is how last weeks attacks were aided by the use of encrypted communications. I haven't seen a single report that would lead me to believe that the attackers were technologically sophisticated.
Absolutely time to go, sounds like you're avoiding the inevitable if you don't leave now. I've been in the position of not bailing when I should have, wound up getting laid off and then had to go without pay while I looked for another gig, and thats definately not a good position to be in.
No language is bozo-proof. Don't blame the language, blame the bozo.
Asking someone to take an exam with 40 or 50 questions is asking alot. For one thing, the candidate will very likely feel at least a little insulted, and there will be plenty of other companies where they won't have to jump through that many hoops to land a job. The company I now work for does a semi-technical phone call, followed by a test that we send out via email (has 5 questions, and 1 problem to solve). Then if the candidate looks good, we bring them in for a more rigorous interview.
Speaking from experience, I get very turned off my companies that ask me to do too much for an interview.
IMO, the biggest reason for sucky software (and a reason that I haven't seen mentioned yet), is the *lack* of market pressure for quality software. Lets face it, users are at a point of almost expecting their apps to crash. Thanks to the lack of robustness of widespead OSes like Win95, the average user has had to deal with enough crashes/inconsistencies and general oddities, that they don't expect much, so thats what alot of companies deliver.
I realize this is a bit of a Catch22, but if users were exposed to more quality (which I think we're starting to see with the stability of Linux being spread to the desktop), then their expectations will rise, and they will begin to demand better software, at which point the software industy will be forced to provide it.
Whats funny is that Mozilla is listed as a known user of this garbage collector, I guess that means they found the leaks but didn't fix them...
I had a telocity account in Brookline and it was super easy to get set up (less than 2 weeks from start to finish, nobody had to come to my residence), and their service was always up.
I recently moved to the west coast and have ordered service with them again, this time it seems like my wait will be considerably longer, but I think the problem is with PacBell, not telocity.
Personally I'm more interested in the ability to turn off all the UI special effects (i.e. fading menus, bouncing icons, genie effect window shading etc). I can deal with annoying colors because they don't affect my interaction with the machine, but all those annoying effects slow down the responsiveness of the UI.
The article says the Beta won't be available for download, only available on CD for a "nomimal" charge.
The question I have is, how much can we reasonably expect out of this "beta"? I have DP4 running on my Powerbook, and its fairly stable, but there are *lots* of features that would appear to be missing (at least I hope they're missing). I'll be curious exactly how close to the final product this "beta" is...