"the majority for instance, aren't happy with Apple's App Store approval process"
The majority? Really? "Forty-one percent think it’s a minor issue" and 43% don't think it's an issue at all. So 84% barely care or don't. Chances are the 16% who think it's a major/unacceptable problem are irate developers or people who just hate any kind of controlling authority. And actually it looks like they can't count since about 2-3% had no opinion: 84 + 16 + 3 = 103%
What I read into this is consumers really don't care about the approval process. Why would they? They have 200,000+ apps and more flooding in every day.
If they intend to bring FireFox to the iPhone, they've got to get a handle on it's memory gobbling first.
It has gotten better over the last while, but leave FF open for any length of time and you suddenly have several hundred megabytes of RAM chewed up, especially on OS X where it stays resident even if you close all tabs.
And paying $5 dollars to try out five games is just way too much money, but you'd probably pay that in a heartbeat for a Starbucks frap or whatever. Not to mention that most games have a lite version (or as of this week a free trial version that can be upgraded) and besides that even 10 minutes of research will find you reviews including gameplay videos from which you can make an educated decision. Don't be ridiculous. Most games on the app store are played for very short periods of time. Many are even designed for that. A trial period on all games would kill the app store, or at least force prices to go up dramatically to compensate.
So... as an iPhone game developer the six months of development I spend on a title and then sell for $1 is purely motivated by greed... and the $1 I ask the customer to pay for playing the results of my hard work is asking them to be selfless?
Tell you what. Why don't you go to your boss tomorrow and tell him you decided to stop being greedy and you'd like to work for free from now on.
Oh, and when you go to Walmart to get your groceries just walk out of the store with them without paying. If someone tries to stop you simply explain that you decided not to be completely selfless today.
Then again, maybe Google users have become better at tuning out ads over time. I hardly notice them anymore.
Why I rewrite code...
on
Finding New Code
·
· Score: 3, Interesting
While I certainly would welcome anything that could help me find code, the reason I'd want it is to find reference code, not reusable code. I've been programming for, oh, two decades now and one thing I find myself doing constantly is finding a bunch of libraries or bits of code and coming to the conclusion that I should just write it myself because of one of the following:
1. The library/code is good, but doesn't quite work the way I want it to 2. The library/code is close, but getting it to work the way I want is painful 3. The library/code is bad 4. The documentation is bad/nonexistent 5. The license is prohibitive or annoying (i.e. it's not LGPL or BSD or the like) 6. I enjoy writing code and sometimes I feel I could do it more elegantly, or efficiently (I might just want a very specific and optimized part of it)
More often than than not though I just enjoy coding and I love learning to code by writing new code. The black box thing... eh... I like to tinker under the hood and find out how things work.
But my point is that finding code is not that hard. It's finding code that fits *exactly* what we want. Code is usually just not quite as modular as we'd like to believe and, if we're honest, as programmers we have a certain vanity about writing code so it does things My Way.:)
I think alot of people are missing this guy's point. He isn't saying he doesn't want or intend to go to college, just that maybe over the summer before college he'd like to get a better idea of what he's getting into or get a head start.
A head start is a great idea. College is not where you should learn what you want to do. You should know that before choosing your classes. It's a no brainer.
If you can find an internship go for it, but do also spend some time educating yourself. Read a few books on programming or whatever and actually play around with code. Write, write, write. Nothing will teach you faster than actually coding. I had a professor once who said you learn to code through your fingers not by sitting in his class. If you knock out a few pet projects you not only learn a lot but you'll demonstrate to future potential employers/internship sponsors that you have the drive and interest to code in your spare time. If someone ever came to me wanting to be a programmer I'd ask them what hobby experience they have. If they say none, but show me a college degree I'd seriously doubt their ability to be any good. I graduated from college with a whole class who were, in my humble estimation, incapable of coding. Some of them never wrote a single line of code at home unless it was for a class project.
Coders code. All the time.
Of course this could go for any technology field: graphics, layout and design, networking, engineering, etc.
Okay, there appears to be alot of confusion on how this works. It does NOT work on a packet per keypress basis. Essentially the whole idea is to mask the fact that there IS a keylogger on your system (whether software or built into your keyboard) by not creating additional network traffic. So the keylogger records keystrokes individually, but then during normal network traffic created by whatever is running on your system, web browsing, servers, etc. the network driver, which must also be compromised, will modulate keystroke information onto your standard traffic. The fact that your ssh session, or computer login is long over has no bearing on the matter... they keylogger recorded the information and transmits it over a period of time.
What makes this more devious is that it doesn't have to be sent to any predetermined IP. The receiver simply needs to be able to listen to your outgoing traffic. So of course this isn't going to be transmitting your passwords over the internet in general... but it will let somebody in say your local network or ISP record your keystrokes.
Protection? Use network drivers you can trust. I'm ignorant on how safe signed drivers are. Open source drivers may be safer simply because someone would notice weird code in there.
Okay so politicians aren't generally computer savvy and they do alot of very stupid things, but you can't really blame them for an unsecure voting terminal. Blame the guy they told to design it. Think about it... somewhere out there is a team of engineers (whose job it is to make the right tool for the right job) that received orders to "design a voting station" and they somehow didn't think to make it ultra-secure. And it's not just a little bug you could say was overlooked, it's a fundamental design flaw.
As much as I tend to dislike politicians, it seems to me that blaming them for this is like blaming a CEO for the janitor using the wrong cleaning product on the windows. What about the engineers, the QA officers, the project manager and all the other people involved in creating it?
What is stopping devs from writing for both DX9 *and* DX10? (Vista will support both)
Absolutely nothing. You've just made my point. This is *exactly* what I'm saying is going to happen. That was the entire point of my first post (or do you not understand what an abstraction layer is?) But it shouldn't HAVE to happen. Are you a game developer that has had to deal with this? I am. I'm just putting forward my past experience with this issue.
It's a matter of efficiency. One company could write one for their own product - or - hundreds of other companies have to write one for themselves.
Ergo, one company could delay their product slightly (if at all) - or - hundreds of other companies have to delay their products with extra development and testing on multiple platforms and driver combinations, etc.
I fail to see how this is *any* different, other than MS having, in the past, provided backwards compatibility. They never *backported* a version of DX to support a *new* version.
A new version of DX still ran on the existing platform. That's the issue here, not the backwards compatibility of the library. All a user had to do in the past was download (or install from the game cd) the new DX runtime on their existing Windows installation, not run out and buy a new operating system and possibly upgrade their hardware in the process.
I could be wrong, but as I recall when MS made the jump from Windows 98/ME/2000 to XP DirectX ran on all those platforms, probably a little better on XP, but it ran on old systems.
Lowest common denominator? Hardly. But game developers aren't stupid, and more importantly publishers aren't stupid. It doesn't help having the most cutting edge engine if most of your customers can't play the game. The usual decision is: pick the most widely used platform (right now that's XP) and push it to the limit. 95% of game development companies haven't pushed XP/DX9 to the limit yet. Within two or three years the most widely used platform will probably be Vista and then it's a different story. Of course some of the longer term development projects (2-3 years) might make that decision now with the future in mind and that's okay. Of course those are usually the ones who try to push the absolute limits of technology, but they're a minority. Seriously, how many games do you see out on the horizon that need what DX10 has to offer? A few.
More importantly, I'm NOT saying DX10 should exchange backward compatibility for performance gain, technological advancement, etc. I'm just saying DX10 should support XP. Of course it wouldn't run quite as well on XP as it does on Vista, but that's okay. It means developers can write for the new platform without sacrificing the currently dominant platform, and when their game comes out it won't force people to upgrade. For most developers the slight speed hit won't matter. For the hard-core gamers and Carmack-esque developers out there, Vista will be there.
Essentially Microsoft is forcing developers to spend alot of time writing their own abstraction layers which should be inherent in DX10 in the first place, which delays every major game in development instead of delaying DX10 slightly. Yay. Don't tell me Microsoft doesn't have the money or developers to throw at this project if they had really wanted to get it out in the same timeframe. Heck, they could have had an entire concurrent project team working on it with no impact on the main DX development effort. The entire multimedia framework of your operating system is more than enough justification for this.
That's a noble sentiment, but what's likely to happen is game developers will stick with DX9 until the overwhelming majority of their customers switch to Vista (which could take a while), or they'll have to write their own DX9/DX10 abstraction layer. Either way it's a pain and the responsibility really should be Microsoft's for writing a compatibility layer for XP.
DX10 should be a crossover model, not a throw everything out the window model (no pun intended). Perhaps by DX11 enough people would be using Vista to justify saying it should only run on Vista. Microsoft has been releasing more than one DX version per Windows version, so that's not an unfair way of looking at it.
If anything, Microsoft will be hurting their developers and in fact chasing them toward other solutions like OpenGL for graphics and only using the bare necessities from DX for input, etc. DX was already limited to one (admittedly market majority) platform, but now it's narrowed to a single operating system? Personally I don't need user mode execution for my 3D shaders, thanks all the same.
Wahey! April 1st comes early!
Only an idiot doesn't keep backups. Likewise, only an idiot doesn't sync his iPod/iPhone/iPad to a computer and blames Apple when he loses everything.
"the majority for instance, aren't happy with Apple's App Store approval process" The majority? Really? "Forty-one percent think it’s a minor issue" and 43% don't think it's an issue at all. So 84% barely care or don't. Chances are the 16% who think it's a major/unacceptable problem are irate developers or people who just hate any kind of controlling authority. And actually it looks like they can't count since about 2-3% had no opinion: 84 + 16 + 3 = 103% What I read into this is consumers really don't care about the approval process. Why would they? They have 200,000+ apps and more flooding in every day.
If they intend to bring FireFox to the iPhone, they've got to get a handle on it's memory gobbling first. It has gotten better over the last while, but leave FF open for any length of time and you suddenly have several hundred megabytes of RAM chewed up, especially on OS X where it stays resident even if you close all tabs.
And paying $5 dollars to try out five games is just way too much money, but you'd probably pay that in a heartbeat for a Starbucks frap or whatever. Not to mention that most games have a lite version (or as of this week a free trial version that can be upgraded) and besides that even 10 minutes of research will find you reviews including gameplay videos from which you can make an educated decision. Don't be ridiculous. Most games on the app store are played for very short periods of time. Many are even designed for that. A trial period on all games would kill the app store, or at least force prices to go up dramatically to compensate.
So... as an iPhone game developer the six months of development I spend on a title and then sell for $1 is purely motivated by greed... and the $1 I ask the customer to pay for playing the results of my hard work is asking them to be selfless? Tell you what. Why don't you go to your boss tomorrow and tell him you decided to stop being greedy and you'd like to work for free from now on. Oh, and when you go to Walmart to get your groceries just walk out of the store with them without paying. If someone tries to stop you simply explain that you decided not to be completely selfless today.
Microsoft is not a risk we would recommend our friends and families take.
Then again, maybe Google users have become better at tuning out ads over time. I hardly notice them anymore.
While I certainly would welcome anything that could help me find code, the reason I'd want it is to find reference code, not reusable code. I've been programming for, oh, two decades now and one thing I find myself doing constantly is finding a bunch of libraries or bits of code and coming to the conclusion that I should just write it myself because of one of the following:
:)
1. The library/code is good, but doesn't quite work the way I want it to
2. The library/code is close, but getting it to work the way I want is painful
3. The library/code is bad
4. The documentation is bad/nonexistent
5. The license is prohibitive or annoying (i.e. it's not LGPL or BSD or the like)
6. I enjoy writing code and sometimes I feel I could do it more elegantly, or efficiently (I might just want a very specific and optimized part of it)
More often than than not though I just enjoy coding and I love learning to code by writing new code. The black box thing... eh... I like to tinker under the hood and find out how things work.
But my point is that finding code is not that hard. It's finding code that fits *exactly* what we want. Code is usually just not quite as modular as we'd like to believe and, if we're honest, as programmers we have a certain vanity about writing code so it does things My Way.
I think alot of people are missing this guy's point. He isn't saying he doesn't want or intend to go to college, just that maybe over the summer before college he'd like to get a better idea of what he's getting into or get a head start.
A head start is a great idea. College is not where you should learn what you want to do. You should know that before choosing your classes. It's a no brainer.
If you can find an internship go for it, but do also spend some time educating yourself. Read a few books on programming or whatever and actually play around with code. Write, write, write. Nothing will teach you faster than actually coding. I had a professor once who said you learn to code through your fingers not by sitting in his class. If you knock out a few pet projects you not only learn a lot but you'll demonstrate to future potential employers/internship sponsors that you have the drive and interest to code in your spare time. If someone ever came to me wanting to be a programmer I'd ask them what hobby experience they have. If they say none, but show me a college degree I'd seriously doubt their ability to be any good. I graduated from college with a whole class who were, in my humble estimation, incapable of coding. Some of them never wrote a single line of code at home unless it was for a class project.
Coders code. All the time.
Of course this could go for any technology field: graphics, layout and design, networking, engineering, etc.
I think that's an unfair evaluation. Slashdot is all about garbage collection... this topic proves that. *hides*
Okay, there appears to be alot of confusion on how this works. It does NOT work on a packet per keypress basis. Essentially the whole idea is to mask the fact that there IS a keylogger on your system (whether software or built into your keyboard) by not creating additional network traffic. So the keylogger records keystrokes individually, but then during normal network traffic created by whatever is running on your system, web browsing, servers, etc. the network driver, which must also be compromised, will modulate keystroke information onto your standard traffic. The fact that your ssh session, or computer login is long over has no bearing on the matter... they keylogger recorded the information and transmits it over a period of time. What makes this more devious is that it doesn't have to be sent to any predetermined IP. The receiver simply needs to be able to listen to your outgoing traffic. So of course this isn't going to be transmitting your passwords over the internet in general... but it will let somebody in say your local network or ISP record your keystrokes. Protection? Use network drivers you can trust. I'm ignorant on how safe signed drivers are. Open source drivers may be safer simply because someone would notice weird code in there.
Okay so politicians aren't generally computer savvy and they do alot of very stupid things, but you can't really blame them for an unsecure voting terminal. Blame the guy they told to design it. Think about it... somewhere out there is a team of engineers (whose job it is to make the right tool for the right job) that received orders to "design a voting station" and they somehow didn't think to make it ultra-secure. And it's not just a little bug you could say was overlooked, it's a fundamental design flaw. As much as I tend to dislike politicians, it seems to me that blaming them for this is like blaming a CEO for the janitor using the wrong cleaning product on the windows. What about the engineers, the QA officers, the project manager and all the other people involved in creating it?
What is stopping devs from writing for both DX9 *and* DX10? (Vista will support both) Absolutely nothing. You've just made my point. This is *exactly* what I'm saying is going to happen. That was the entire point of my first post (or do you not understand what an abstraction layer is?) But it shouldn't HAVE to happen. Are you a game developer that has had to deal with this? I am. I'm just putting forward my past experience with this issue. It's a matter of efficiency. One company could write one for their own product - or - hundreds of other companies have to write one for themselves. Ergo, one company could delay their product slightly (if at all) - or - hundreds of other companies have to delay their products with extra development and testing on multiple platforms and driver combinations, etc. I fail to see how this is *any* different, other than MS having, in the past, provided backwards compatibility. They never *backported* a version of DX to support a *new* version. A new version of DX still ran on the existing platform. That's the issue here, not the backwards compatibility of the library. All a user had to do in the past was download (or install from the game cd) the new DX runtime on their existing Windows installation, not run out and buy a new operating system and possibly upgrade their hardware in the process. I could be wrong, but as I recall when MS made the jump from Windows 98/ME/2000 to XP DirectX ran on all those platforms, probably a little better on XP, but it ran on old systems.
Lowest common denominator? Hardly. But game developers aren't stupid, and more importantly publishers aren't stupid. It doesn't help having the most cutting edge engine if most of your customers can't play the game. The usual decision is: pick the most widely used platform (right now that's XP) and push it to the limit. 95% of game development companies haven't pushed XP/DX9 to the limit yet. Within two or three years the most widely used platform will probably be Vista and then it's a different story. Of course some of the longer term development projects (2-3 years) might make that decision now with the future in mind and that's okay. Of course those are usually the ones who try to push the absolute limits of technology, but they're a minority. Seriously, how many games do you see out on the horizon that need what DX10 has to offer? A few. More importantly, I'm NOT saying DX10 should exchange backward compatibility for performance gain, technological advancement, etc. I'm just saying DX10 should support XP. Of course it wouldn't run quite as well on XP as it does on Vista, but that's okay. It means developers can write for the new platform without sacrificing the currently dominant platform, and when their game comes out it won't force people to upgrade. For most developers the slight speed hit won't matter. For the hard-core gamers and Carmack-esque developers out there, Vista will be there. Essentially Microsoft is forcing developers to spend alot of time writing their own abstraction layers which should be inherent in DX10 in the first place, which delays every major game in development instead of delaying DX10 slightly. Yay. Don't tell me Microsoft doesn't have the money or developers to throw at this project if they had really wanted to get it out in the same timeframe. Heck, they could have had an entire concurrent project team working on it with no impact on the main DX development effort. The entire multimedia framework of your operating system is more than enough justification for this.
That's a noble sentiment, but what's likely to happen is game developers will stick with DX9 until the overwhelming majority of their customers switch to Vista (which could take a while), or they'll have to write their own DX9/DX10 abstraction layer. Either way it's a pain and the responsibility really should be Microsoft's for writing a compatibility layer for XP. DX10 should be a crossover model, not a throw everything out the window model (no pun intended). Perhaps by DX11 enough people would be using Vista to justify saying it should only run on Vista. Microsoft has been releasing more than one DX version per Windows version, so that's not an unfair way of looking at it. If anything, Microsoft will be hurting their developers and in fact chasing them toward other solutions like OpenGL for graphics and only using the bare necessities from DX for input, etc. DX was already limited to one (admittedly market majority) platform, but now it's narrowed to a single operating system? Personally I don't need user mode execution for my 3D shaders, thanks all the same.