Humanities is religion for people who don't believe in a deity.
This may be the case in 101 classes. This is definitely not the case in upper level humanities classes. I majored in Philosophy and Computer Science. My Philosophy courses were much more rigorous in terms of logic and discrete mathematics than anything I learned in CS. My senior thesis was in the field of genetics, and it had nothing to do with ethics or other periphery issues. I studied under a man who was the protege of Thomas Kuhn, who if you were not aware, was a pretty big deal in science... as a philosopher.
Stability is huge, but I would also add configurability. I tend to think MS has a big leg up there as well. At the same time, the web allows you to mash loads of services together (with a development team, which these businesses generally have), which is something enterprise desktop users have wanted since forever. Plugging into something like Salesforce tends to be far cheaper than plugging into something like SalesLogic (desktop/server CRM).
This is defined in your contract with the client. It is common for the developer to retain ownership of the code, but to grant an unlimited license to the client. This is common practice, since it prevents a client from suing you when you use similar code or techniques in a future project (perhaps on of their competitors). If a potential client wants me to actually hand over ownership, then they get a different price.
If my typical software clients were ordering a car from me, I guarantee that every single one of them would end up living in a house accessible only by bike path.
Designing a car is not even close to designing software. The requirements of a car are extremely static. The requirements of most software are constantly changing. An api gets deprecated. A data provider goes out of business. A new set of laws change how XYZ business calculations are made. A 10 year old legacy software needs to be brought up to date. Imagine a car designer "bringing up to date" every '92 Civic on the road... without disrupting the users. I am not saying one is better/harder than the other, they are just completely different problem domains.
any failed "Agile" project must have been doing Agile wrong, because by definition, Agile processes deliver useful working software at frequent intervals
Of course, due to the fact that they leave all of their 9.x docs in place, they come up at the top of a web search, so you might be on 9.x docs anyway!
Of course, agile does not excuse lack of design. Design should be an actual deliverable and might be the only deliverable for an entire sprint (especially in the beginning).
"World's biggest" and "agile" don't really go together. One of the core tenants to agile is to break things down into small chunks. Multi year contracts for a predetermined end product are waterfall by definition. Either way, I have seen waterfall work just fine and I have seen True Agile[tm] fail hilariously miserably (to which most Agilistas respond with some form of the "No True Agile" fallacy). The most important thing is tight iterations. If a 2 week sprint fails, then it is not that big of a deal. If a 2 year death march fails? Someone's getting fired, since its the equivalent in agile-land of failing 52 sprints straight.
As a developer, I hope business analysts start churning out loads and loads of scripts. In ten years, my business will be through the roof! Automating one small task is easy. Creating a scalable and maintainable system... not so much.
Do not go into too much internal detail. Focus on visualization of outputs. Make a powerpoint with these visualizations that walk through some real world problems. Get your elevator pitch down pat. Profit!
It would help with code styling issues (note: styling is important but not MOST important). For people who downvoted the OP for being slashvertisement, here are a few FOSS alternatives for other platforms:
JSHint (aka Crockford Enforcement Enforcer)
JSLint (aka Crockford-lite)
PyLint (PEP8 compliance tool)
I am sure there are loads of others, but I work with js and python, so that is what I know.
Humanities is religion for people who don't believe in a deity.
This may be the case in 101 classes. This is definitely not the case in upper level humanities classes. I majored in Philosophy and Computer Science. My Philosophy courses were much more rigorous in terms of logic and discrete mathematics than anything I learned in CS. My senior thesis was in the field of genetics, and it had nothing to do with ethics or other periphery issues. I studied under a man who was the protege of Thomas Kuhn, who if you were not aware, was a pretty big deal in science... as a philosopher.
There are lot of computers out there that need saving.
Stability is huge, but I would also add configurability. I tend to think MS has a big leg up there as well. At the same time, the web allows you to mash loads of services together (with a development team, which these businesses generally have), which is something enterprise desktop users have wanted since forever. Plugging into something like Salesforce tends to be far cheaper than plugging into something like SalesLogic (desktop/server CRM).
This is defined in your contract with the client. It is common for the developer to retain ownership of the code, but to grant an unlimited license to the client. This is common practice, since it prevents a client from suing you when you use similar code or techniques in a future project (perhaps on of their competitors). If a potential client wants me to actually hand over ownership, then they get a different price.
It actually says they define all military age males in a strike zone as militants, which is a little bit different.
This is effectively the same thing. Any military male becomes a military male in a strike zone upon being "struck"
more like:
select * from emails where text like '%Allah%'
If my typical software clients were ordering a car from me, I guarantee that every single one of them would end up living in a house accessible only by bike path.
Designing a car is not even close to designing software. The requirements of a car are extremely static. The requirements of most software are constantly changing. An api gets deprecated. A data provider goes out of business. A new set of laws change how XYZ business calculations are made. A 10 year old legacy software needs to be brought up to date. Imagine a car designer "bringing up to date" every '92 Civic on the road... without disrupting the users. I am not saying one is better/harder than the other, they are just completely different problem domains.
any failed "Agile" project must have been doing Agile wrong, because by definition, Agile processes deliver useful working software at frequent intervals
I like to call this the "No True Agile Fallacy".
Of course, due to the fact that they leave all of their 9.x docs in place, they come up at the top of a web search, so you might be on 9.x docs anyway!
Get a new SSB out and it will sell like hot cakes.
whoooosh
Of course, agile does not excuse lack of design. Design should be an actual deliverable and might be the only deliverable for an entire sprint (especially in the beginning).
"World's biggest" and "agile" don't really go together. One of the core tenants to agile is to break things down into small chunks. Multi year contracts for a predetermined end product are waterfall by definition. Either way, I have seen waterfall work just fine and I have seen True Agile[tm] fail hilariously miserably (to which most Agilistas respond with some form of the "No True Agile" fallacy). The most important thing is tight iterations. If a 2 week sprint fails, then it is not that big of a deal. If a 2 year death march fails? Someone's getting fired, since its the equivalent in agile-land of failing 52 sprints straight.
After you hit the usage cap on the sex bot, it starts crying and asking you why you don't ever want to talk about having kids.
1-click [FOR_EV_ERRRR] shopping ^tm
Somalia is a great example of libertarianism, minarchism, etc. in action.
http://www.youtube.com/watch?v=BEq_o9xwbPw&feature=endscreen&NR=1
CGI will help Fox & Friends[tm] to visualize humans riding dinosaurs, jesus performing magical miracles, and humans NOT evolving from monkeys.
$('body').append('PWEEEEZ!')
As a developer, I hope business analysts start churning out loads and loads of scripts. In ten years, my business will be through the roof! Automating one small task is easy. Creating a scalable and maintainable system... not so much.
This. Age is not excuse for 40,000 line spaghetti files.
How is that anywhere nearly as bad as internment camps!?! I am not saying it was not bad, but that does not seem even close.
Do not go into too much internal detail. Focus on visualization of outputs. Make a powerpoint with these visualizations that walk through some real world problems. Get your elevator pitch down pat. Profit!
It would help with code styling issues (note: styling is important but not MOST important). For people who downvoted the OP for being slashvertisement, here are a few FOSS alternatives for other platforms:
JSHint (aka Crockford Enforcement Enforcer)
JSLint (aka Crockford-lite)
PyLint (PEP8 compliance tool)
I am sure there are loads of others, but I work with js and python, so that is what I know.