Actually, TFA made it pretty clear that the author of it was extremely selective about what he considered relevant. To use a quote from the article: "I mean real-world projects with real-world users. There is no excuse for software developers who don’t have a site, app, or service they can point to and say, “I did this, all by myself!”". That was my issue with this to begin with, that there are plenty of us who started early, had a genuine interest in what we did (weren't in it "for the money") and yet we never really "published" anything which in the author's mind made us useless.
Actively working on a personal and/or open-source project is a way to differentiate yourself.
TFA cares more about the personal project at hand having "real users" than it does about you actually working on said project, that is what I and several others dislike about it.
Well, technically you don't need the latest version of Xcode, you can use the version that your copy of OS X shipped with. You can also download various open source compilers and development tools for free although if you want to develop native OS X GUI applications you'll probably want Xcode.
Also, this still doesn't address my original point, the claim that Apple has, since the '80s, charged developers a fee for the privilege of developing for the Mac OS platform.
The main problem with the implementations that are available seems to be that they are very slow for larger files split across multiple rar files. I even remember reading some posting about this somewhere where the gist of the message was "the portable *nix version of rar/unrar was developed to be portable, not efficient. Try using the Windows version if you think it's too slow.".
The problem with RAR files and Bittorrent is "scene snobbery". Basically, people reason that since all scene releases are released in RAR archives then all media distributed should be distributed as multi-file RAR archives. This can be seen on invite-only torrent sites that demand that all upload regardless of origin be split into multiple RAR files.
And should someone point out that it's really only when downloading files using FTP and other non-checksummed protocols that this is necessary then they will be screamed down by the know-nothings. And then there's the whole thing where they seem to insist on using 25 or 50 MB files instead of larger chunks. If you're grabbing files from an FTP/HTTP server dedicated to sharing these large media files chances are that the server is able to push the files to you faster than say, 10 Mbps, and we'll assume that's as fast as your connection is, that means you can grab a 250 MB file in approximately 3m30s if we assume no overhead, if we a assume you have a regular uncapped g.dmt ADSL connection (8/0.8 Mbps) with the typical EoATM and TCP overhead for your transfers then we're still talking less than five minutes for a 250 MB chunk. Contrast this with people splitting things into 5 or 10 MB chunks back when a lot of people were still on modem connections, a single 5 MB chunk would take more than ten minutes on a good day...
Most sites I visit need them since most sites I visit have some form of session handling.
It's not 1995 anymore, these days people don't just use the web to read documents shared by others and not being logged in is often a major hurdle when communicating with others online.
Well, of course there are a few bits of code here and there that I have shared (not to mention that I have a whole bunch of domain names that have little services running on them including an image uploading service, a URL shortener and some other stuff).
However, none of this has really been in related to anything "real" (as in, well-known open source projects and such things) except for maybe one or two minor patches for obvious things that I've written out of frustration and I've had more patches rejected on the basis of the maintainer outright stating that he's rejecting it because he doesn't care about fixing the bug in question than I've had patches accepted, I suppose I just learned early on (as in, mid-'90s) that unless you've worked your way into the core of a project's community it is likely they won't want your patches.
That said, these days I have a decent enough resumé but when I was just out of college I had nothing "real" to show (and most employers seemed to hold anything that wasn't either major contributions to well-known projects or professional experience in very low regard).
Sounds like you had plenty of time to develop an app, or build a web site, or contribute to an OSS project. Could have done the same during school. 'Course, that could have cut into the social scene, or limited the number of nights you could spend playing Halo.
First of all, I never played Halo. When I first saw it I dismissed it as yet another mediocre FPS. Also, if that was your way of implying that I was some sort of "bro" who spends my time playing Xbox games and "kicking back brews" then please try again.
Also, I did write code, from age 8 up until the present I have written plenty of code in a wide variety of languages. What I have not done though is publish the majority of it. The vast majority of it just wasn't worth publishing since I didn't sit down and think "I want to market something to the masses, what kind of application could appeal to the mass market?", I usually just wrote code to "scratch an itch".
Your approach sounds reasonable but that's not how John Evans (who wrote TFA) would go about it. To quote: " I mean real-world projects with real-world users. There is no excuse for software developers who don’t have a site, app, or service they can point to and say, “I did this, all by myself!”". To me that quite clearly means that pet projects at home that haven't been released to the world don't count in his eyes.
Author is suggesting that having taken the interest and time to participate in an actual, real-world programming project is a good metric.
The problem is that the author's definition of a "real-world programming project" has an artificial limitation to its scope. How many developers who coded in their pre-teen and teen years can honestly say that they ever published even 5% of the code they wrote for the world to see? How many could honestly say that they consider even 5% of the code they wrote to be suitable for publication? (much like a lot of in-house code most developers end up working on code for personal projects has a tendency to be a lot less general-purpose than code released for sale or as open source).
Not to mention that if most of what you wrote is some kind of back-end code it's probably not that easy to show it off as a website or a smartphone app...
Actually the interviewer's answer was incorrect since it's just a cheap trick to be able to claim you're right which means that the interviewer is just playing mind games to be able to gauge the interviewee's reaction.
Personally I would've pointed this out and also told them that I had no interest in working for a company where they try to play tricks on me in that fashion.
This means they will have done some coding for open source or made a website for something. Be it the church or their baund or their local pub or whatever.
No it does not mean that. They may very well have a hundred or more pet projects in version control at home but have never once done anything for anyone else. I've known several developers who have had no interest in showing off what they've done other than as a sort of "hey, look at this!" among their peers (peers = other geeks, not mommy or the neighbors), they were perfectly good developers who had no "published" software or sites by the time they left college and most of what they had at home wasn't really the kind of stuff you'd show an interviewer (because to the interviewer it would be a bare-bones prototype of an app with only one or two pieces properly implemented which of course was the point to begin with, to attempt to write those parts and tacking on the rest of the app out of necessity, I know I've written a few of those in C/C++ back when I was in high school, little 2D "games" that were really just code I'd copied from other games I'd written so I could test something like my new map editor and map format, had I shown that one to a potential employer it is very likely that the interviewer would've been very unimpressed since it wasn't a complete program from his/her point of view).
I think the problem is that a lot of people, no matter how skilled and dedicated, may not have had any summer jobs or internships (at least around here those are very hard to come by) that led to them taking part in the creation of "real" applications as well as not really have any "finished" applications to show off (as in, they may have dozens or hundreds of little apps but you rarely want to show an interviewer that 900 line perl script you wrote that has half a dozen required and undocumented parameters and does something extremely specific to your home computing environment.
I was actually in that sort of position after college, I ended up working tech support for over a year because I couldn't find a "real job", the reasons for why I either didn't get an interview or why they didn't find me interesting post-interview were split between no reason given, "You're not quite what we're looking for" and "Please try again when you have at least three years of experience, the ad might've said 'entry-level' but we really meant we were looking for someone with a few years of experience...".
How are those 84 million downloads counted? If they count upgrades then my netbook alone is probably responsible for about a dozen of them (I have to different Firefox setups on it, one "regular" and one that's locked down and running NoScript, AdBlock+ and a couple of other add-ons)...
If the head honchos say "we talked to marketing, they want widget foo to do thing bar when the user hovers his mouse pointer over it" then most of the time the devs can choose between "just do it" even if it means breaking things for those who don't have JS activated or disciplinary action.
It basically boils down to "It's not your website, it's ours, and we want shiny javascript everywhere, now implement it!". And yeah, I'm not a big fan of using JS unless absolutely necessary to get the desired results, but sometimes you have to.
Yes, I just re-read what I've been posting here and I'm not sure what exactly I was trying to argue. I'm going to blame my hangover and the fact that I spent several days last week battling datetime handling in JavaScript (which I will maintain is an abomination simply on the grounds of not supporting ISO-8601 formatted dates in a world where everything else uses ISO-8601).
I'm actually baffled by the fact that I managed to crank out two posts before realizing that I was rambling incoherently. Now I'm going to go drink some water and try to make my headache go away...
Uh, if I create an object in C# then use the "=" operator to create a copy of the object then that is a copy which mean that these are two different identical objects. If I change the data inside one of these objects only this object is changed. With JavaScript the "=" operator just creates a reference to the original object and thus changing data in the "new" object actually changes the original.
Also, the same is true with PHP. Unless you explicitly create a reference to the original object you create a copy of the object which means changing one does not change the other.
I know this may be considered radical and groundbreaking for those who design the language but perhaps putting in some way of letting the developer decide if he/she wants to copy an object or just create a new reference to it when doing assignment?
For those who don't know what I'm going on about:
var myObj = new Object();
myObj.foo = 1;
var newObj = myObj;
newObj.foo = 5;
alert(myObj.foo);
That will display a dialog with "5" in it because newObj and myObj are basically the same object which is the opposite of how it works in most other languages that are commonly used these days.
Oh, and there's no magic "DON'T FUCKING DO THAT!" operator either...
All Windows automation that you might want to do is exposed through a COM interface and there is no programming language targeting the Windows platform that doesn't include support for COM
What about languages that aren't so much targeting Windows but just barely support it?
On a personal note, when decided to switch from command scripts to a programming language, I was afraid that it would be hard. But it turned out that most things are actually easier (if at times a bit more tedious) and it's a lot harder to shoot yourself in the foot in most of them. At the very least you'll never get errors caused by the unpredictable script syntax again.
BASH is basically turing complete. Also, "[...]at times more tedious[...]" is the issue. I do 95% of my work in a Windows environment and a lot of times I long for the simplicity of *nix. Most of the time in Windows I feel like I'm fighting a huge and complex system, trying desperately to make it behave in a sane and rational way in order to produce the desired output. In the *nix world at least it's just my code I'm battling with, not the entire OS and ecosystem. But hey, maybe some people actually like a world where all systems communicate using XML and where character encoding is "enicode" yet in practice can be pretty much anything as long as the marketing division can claim it's all unicode because technically the operating system uses unicode internally...
The only thing to me is that Pakistan is officially a US ally in this, so for them to turn over the remains of the aircraft to anyone else would be... problematic (especially since it's a free market and who has more money to spend than the US?). Random bits that went flying around the neighbourhood, sure, they're gone. But any of the parts big enough to need a vehicle to move I'd guess the US will be wanting back.
From what I've come to understand the main concern isn't that Pakistan as a country would sell this off to China or Russia but rather that less trustworthy elements in the Pakistani military/government (essentially the same thing most of the time) would either use this tech themselves (they are after all a nuclear power even if a lot of people tend to think of them as little more than "towelheads") or have bits of it "disappear" only to have it turn up in Russia or China at about the same time as said official decided to retire early and withdraw to his newly purchased mansion...
[...]including all 8 CELL cores (making the PS3 the world's most affordable supercomputer).
I'm not sure I'd call a PS3 a supercomputer. If you clustered a bunch of them it might qualify but even so there are plenty of rendering and computation clusters out there that could easily beat a cluster of several dozen PS3's without their owners thinking of them as "supercomputers".
Maybe I'm just old-fashioned but to me a supercomputer is something that cost millions of dollars to build and is capable of crunching numbers on a scale that a run-of-the-mill computer is incapable of (and yes, this of course assumes that the run-of-the-mill computer and the supercomputer are of the same era, to compare a Cray from the early '80s with a modern octo-core server with 64+ GiB of RAM wouldn't be fair).
[...]distributing the software, even via downloads. Or do you think the servers are running on puppy farts?
Uh, if people pirate software wouldn't that mean that they're not straining the producer's servers?
Copying isn't stealing. Theft is not copyright infringement from a legal point of view either so the law agrees with me on this one.
Would you consider it wrong to replicate a loaf of bread?
Which was the point of the article.
Actually, TFA made it pretty clear that the author of it was extremely selective about what he considered relevant. To use a quote from the article: "I mean real-world projects with real-world users. There is no excuse for software developers who don’t have a site, app, or service they can point to and say, “I did this, all by myself!”". That was my issue with this to begin with, that there are plenty of us who started early, had a genuine interest in what we did (weren't in it "for the money") and yet we never really "published" anything which in the author's mind made us useless.
Actively working on a personal and/or open-source project is a way to differentiate yourself.
TFA cares more about the personal project at hand having "real users" than it does about you actually working on said project, that is what I and several others dislike about it.
Well, technically you don't need the latest version of Xcode, you can use the version that your copy of OS X shipped with. You can also download various open source compilers and development tools for free although if you want to develop native OS X GUI applications you'll probably want Xcode.
Also, this still doesn't address my original point, the claim that Apple has, since the '80s, charged developers a fee for the privilege of developing for the Mac OS platform.
Uh, since when does Apple charge developers fees for developing for Mac OS (X)?
No really, you're implying that they have been doing so since the '80s, please provide a source for this statement.
No, not iOS, Mac OS.
The main problem with the implementations that are available seems to be that they are very slow for larger files split across multiple rar files. I even remember reading some posting about this somewhere where the gist of the message was "the portable *nix version of rar/unrar was developed to be portable, not efficient. Try using the Windows version if you think it's too slow.".
The problem with RAR files and Bittorrent is "scene snobbery". Basically, people reason that since all scene releases are released in RAR archives then all media distributed should be distributed as multi-file RAR archives. This can be seen on invite-only torrent sites that demand that all upload regardless of origin be split into multiple RAR files.
And should someone point out that it's really only when downloading files using FTP and other non-checksummed protocols that this is necessary then they will be screamed down by the know-nothings. And then there's the whole thing where they seem to insist on using 25 or 50 MB files instead of larger chunks. If you're grabbing files from an FTP/HTTP server dedicated to sharing these large media files chances are that the server is able to push the files to you faster than say, 10 Mbps, and we'll assume that's as fast as your connection is, that means you can grab a 250 MB file in approximately 3m30s if we assume no overhead, if we a assume you have a regular uncapped g.dmt ADSL connection (8/0.8 Mbps) with the typical EoATM and TCP overhead for your transfers then we're still talking less than five minutes for a 250 MB chunk. Contrast this with people splitting things into 5 or 10 MB chunks back when a lot of people were still on modem connections, a single 5 MB chunk would take more than ten minutes on a good day...
Most sites I visit need them since most sites I visit have some form of session handling.
It's not 1995 anymore, these days people don't just use the web to read documents shared by others and not being logged in is often a major hurdle when communicating with others online.
Well, of course there are a few bits of code here and there that I have shared (not to mention that I have a whole bunch of domain names that have little services running on them including an image uploading service, a URL shortener and some other stuff).
However, none of this has really been in related to anything "real" (as in, well-known open source projects and such things) except for maybe one or two minor patches for obvious things that I've written out of frustration and I've had more patches rejected on the basis of the maintainer outright stating that he's rejecting it because he doesn't care about fixing the bug in question than I've had patches accepted, I suppose I just learned early on (as in, mid-'90s) that unless you've worked your way into the core of a project's community it is likely they won't want your patches.
That said, these days I have a decent enough resumé but when I was just out of college I had nothing "real" to show (and most employers seemed to hold anything that wasn't either major contributions to well-known projects or professional experience in very low regard).
Sounds like you had plenty of time to develop an app, or build a web site, or contribute to an OSS project. Could have done the same during school. 'Course, that could have cut into the social scene, or limited the number of nights you could spend playing Halo.
First of all, I never played Halo. When I first saw it I dismissed it as yet another mediocre FPS. Also, if that was your way of implying that I was some sort of "bro" who spends my time playing Xbox games and "kicking back brews" then please try again.
Also, I did write code, from age 8 up until the present I have written plenty of code in a wide variety of languages. What I have not done though is publish the majority of it. The vast majority of it just wasn't worth publishing since I didn't sit down and think "I want to market something to the masses, what kind of application could appeal to the mass market?", I usually just wrote code to "scratch an itch".
Your approach sounds reasonable but that's not how John Evans (who wrote TFA) would go about it. To quote: " I mean real-world projects with real-world users. There is no excuse for software developers who don’t have a site, app, or service they can point to and say, “I did this, all by myself!”". To me that quite clearly means that pet projects at home that haven't been released to the world don't count in his eyes.
Author is suggesting that having taken the interest and time to participate in an actual, real-world programming project is a good metric.
The problem is that the author's definition of a "real-world programming project" has an artificial limitation to its scope. How many developers who coded in their pre-teen and teen years can honestly say that they ever published even 5% of the code they wrote for the world to see? How many could honestly say that they consider even 5% of the code they wrote to be suitable for publication? (much like a lot of in-house code most developers end up working on code for personal projects has a tendency to be a lot less general-purpose than code released for sale or as open source).
Not to mention that if most of what you wrote is some kind of back-end code it's probably not that easy to show it off as a website or a smartphone app...
Actually the interviewer's answer was incorrect since it's just a cheap trick to be able to claim you're right which means that the interviewer is just playing mind games to be able to gauge the interviewee's reaction.
Personally I would've pointed this out and also told them that I had no interest in working for a company where they try to play tricks on me in that fashion.
This means they will have done some coding for open source or made a website for something. Be it the church or their baund or their local pub or whatever.
No it does not mean that. They may very well have a hundred or more pet projects in version control at home but have never once done anything for anyone else. I've known several developers who have had no interest in showing off what they've done other than as a sort of "hey, look at this!" among their peers (peers = other geeks, not mommy or the neighbors), they were perfectly good developers who had no "published" software or sites by the time they left college and most of what they had at home wasn't really the kind of stuff you'd show an interviewer (because to the interviewer it would be a bare-bones prototype of an app with only one or two pieces properly implemented which of course was the point to begin with, to attempt to write those parts and tacking on the rest of the app out of necessity, I know I've written a few of those in C/C++ back when I was in high school, little 2D "games" that were really just code I'd copied from other games I'd written so I could test something like my new map editor and map format, had I shown that one to a potential employer it is very likely that the interviewer would've been very unimpressed since it wasn't a complete program from his/her point of view).
I think the problem is that a lot of people, no matter how skilled and dedicated, may not have had any summer jobs or internships (at least around here those are very hard to come by) that led to them taking part in the creation of "real" applications as well as not really have any "finished" applications to show off (as in, they may have dozens or hundreds of little apps but you rarely want to show an interviewer that 900 line perl script you wrote that has half a dozen required and undocumented parameters and does something extremely specific to your home computing environment.
I was actually in that sort of position after college, I ended up working tech support for over a year because I couldn't find a "real job", the reasons for why I either didn't get an interview or why they didn't find me interesting post-interview were split between no reason given, "You're not quite what we're looking for" and "Please try again when you have at least three years of experience, the ad might've said 'entry-level' but we really meant we were looking for someone with a few years of experience...".
How are those 84 million downloads counted? If they count upgrades then my netbook alone is probably responsible for about a dozen of them (I have to different Firefox setups on it, one "regular" and one that's locked down and running NoScript, AdBlock+ and a couple of other add-ons)...
If the head honchos say "we talked to marketing, they want widget foo to do thing bar when the user hovers his mouse pointer over it" then most of the time the devs can choose between "just do it" even if it means breaking things for those who don't have JS activated or disciplinary action.
It basically boils down to "It's not your website, it's ours, and we want shiny javascript everywhere, now implement it!". And yeah, I'm not a big fan of using JS unless absolutely necessary to get the desired results, but sometimes you have to.
Yes, I just re-read what I've been posting here and I'm not sure what exactly I was trying to argue. I'm going to blame my hangover and the fact that I spent several days last week battling datetime handling in JavaScript (which I will maintain is an abomination simply on the grounds of not supporting ISO-8601 formatted dates in a world where everything else uses ISO-8601).
I'm actually baffled by the fact that I managed to crank out two posts before realizing that I was rambling incoherently. Now I'm going to go drink some water and try to make my headache go away...
Uh, if I create an object in C# then use the "=" operator to create a copy of the object then that is a copy which mean that these are two different identical objects. If I change the data inside one of these objects only this object is changed. With JavaScript the "=" operator just creates a reference to the original object and thus changing data in the "new" object actually changes the original.
Also, the same is true with PHP. Unless you explicitly create a reference to the original object you create a copy of the object which means changing one does not change the other.
Look at that example again. It's not alert(newObj.foo), it's alert(myObj.foo).
I know this may be considered radical and groundbreaking for those who design the language but perhaps putting in some way of letting the developer decide if he/she wants to copy an object or just create a new reference to it when doing assignment?
For those who don't know what I'm going on about:
var myObj = new Object();
myObj.foo = 1;
var newObj = myObj;
newObj.foo = 5;
alert(myObj.foo);
That will display a dialog with "5" in it because newObj and myObj are basically the same object which is the opposite of how it works in most other languages that are commonly used these days.
Oh, and there's no magic "DON'T FUCKING DO THAT!" operator either...
"Set his sites"? really?
All Windows automation that you might want to do is exposed through a COM interface and there is no programming language targeting the Windows platform that doesn't include support for COM
What about languages that aren't so much targeting Windows but just barely support it?
On a personal note, when decided to switch from command scripts to a programming language, I was afraid that it would be hard. But it turned out that most things are actually easier (if at times a bit more tedious) and it's a lot harder to shoot yourself in the foot in most of them. At the very least you'll never get errors caused by the unpredictable script syntax again.
BASH is basically turing complete. Also, "[...]at times more tedious[...]" is the issue. I do 95% of my work in a Windows environment and a lot of times I long for the simplicity of *nix. Most of the time in Windows I feel like I'm fighting a huge and complex system, trying desperately to make it behave in a sane and rational way in order to produce the desired output. In the *nix world at least it's just my code I'm battling with, not the entire OS and ecosystem. But hey, maybe some people actually like a world where all systems communicate using XML and where character encoding is "enicode" yet in practice can be pretty much anything as long as the marketing division can claim it's all unicode because technically the operating system uses unicode internally...
The only thing to me is that Pakistan is officially a US ally in this, so for them to turn over the remains of the aircraft to anyone else would be... problematic (especially since it's a free market and who has more money to spend than the US?). Random bits that went flying around the neighbourhood, sure, they're gone. But any of the parts big enough to need a vehicle to move I'd guess the US will be wanting back.
From what I've come to understand the main concern isn't that Pakistan as a country would sell this off to China or Russia but rather that less trustworthy elements in the Pakistani military/government (essentially the same thing most of the time) would either use this tech themselves (they are after all a nuclear power even if a lot of people tend to think of them as little more than "towelheads") or have bits of it "disappear" only to have it turn up in Russia or China at about the same time as said official decided to retire early and withdraw to his newly purchased mansion...
[...]including all 8 CELL cores (making the PS3 the world's most affordable supercomputer).
I'm not sure I'd call a PS3 a supercomputer. If you clustered a bunch of them it might qualify but even so there are plenty of rendering and computation clusters out there that could easily beat a cluster of several dozen PS3's without their owners thinking of them as "supercomputers".
Maybe I'm just old-fashioned but to me a supercomputer is something that cost millions of dollars to build and is capable of crunching numbers on a scale that a run-of-the-mill computer is incapable of (and yes, this of course assumes that the run-of-the-mill computer and the supercomputer are of the same era, to compare a Cray from the early '80s with a modern octo-core server with 64+ GiB of RAM wouldn't be fair).