|
Thank you for getting to the impracticality of it in an undergraduate degree.
My Degree is Computer Science, and I earned a BSE. The E came from the math and physics of it.
It is earned through the college of Engineering. This was 1992, Michigan State University.
We studied Computer Programming and Software Engineering Concepts. I stress the Concepts.
Software should work repeatably. We learned the Waterfall approach (literally at the time the only approach discussed outside of "ad hoc" which was shunned, but recognized as how we do programming for all of our classes, LOL).
Roughly stated, We had to cover:
- General Programming, algorithms, data structures, theory on problem solving, etc (Pascal)
- Write C/Assembler (Motorola).
- Write an Assembler, in C (literally the next course)
- Write a compiler, DB Engine and/or an AI program (in LISP no doubt)
We had to CARRY our code from trimester to trimester, to teach us a lesson that bad code begets big problems when you add more functionality to it! A valuable lesson in deed!
And then we graduated...
I have absolutely no idea where you would INJECT the 2-3 years it would take to make someone a Professional Software Engineer in that environment. And given the choice, I would rather be a CODER who can actually solve problems, use References (patterns, later, after I graduated) and the like.
Finally, we have an astounding shortage of programmers and programmer/analysts going into and coming out of the Universities. The graduating classes were shrinking as I was graduating. The kids don't have the math and problem solving skills coming out of High School. One of my friends flunked out because he could not get passed the Calculus Based Physics. He writes software without a degree and does a pretty decent job.
We have a MANAGEMENT problem whereby management does not understand that Designers should Design. Engineers should Engineer and Developers should code! Most small companies I see can barely afford ONE of these guys (and I see many who actually TRY TO HIRE the CHEAPEST ONES, LMAO!), much less hire the team.
The owners/managers think that because they can explain it, it can't be that hard. They don't need to pay to have an ENGINEERED solution. Sometimes they are right. Mostly not. Not in the long term. But I don't think 80% of the software written would have been started if the COSTS were known up front!
Everyone wants software that pays for itself immediately these days. Not even a 3 year payback. It reminds me of Hollywood where they build props. They LOOK REAL in the movie, but the metal is really just WOOD with paint. Management wants the cheapest solution they can get. I can't fault the programmers who are not in an environment that practices the proper approaches to software development and engineering...
|
|
|
|
|
|
Collin Jasnoch wrote: This makes me wonder if we the solution providers are in fact part of this problem in that we have explained it too clearly in some cases. On top of that we have undermined ourselves because that seems more natural. In other words, we told them it was easy. While it may have been easy for us that is only because we have had the training and years of experience to make it easy. We need to stop doing that and gloat a little. We should not obfuscate the explanations, be we need them to understand that it was the skill that made it understandable.
My comment was actually before that step. My primary role is a consultant. I go where no IT teams (or small, overwhelmed ones) exist. It is not that the developers have said it is easy. The managers/owners think it can't be that hard, simply because they can explain it. (ie, they ONLY skill they lack is software writing/programming). Ergo, we will hire a programmer to do X.
But X is only what they WANTED, probably NOT what they NEEDED. Certainly not designed to answer any other questions, etc.
It is my fault when I fail to educate the client. My job is to listen. Then to understand. Then to question everything. Then I should show them what they probably need and can usually afford. I try to put this in the clients terms, and I STRIVE to be WRONG OUT LOUD! I want EVERY assumption I am making stated clearly in front of the client, and they have free reign to correct me.
Only after a few iterations can I possibly know what to build. Then it is my job to build it properly... Within their constraints... Or walk away. And I certainly walk away... Sometimes I even RUN! I don't want the client who says "Whatever... I already told you what to build, just go build it".
I know it is hard to say no to the $$$, but at this point in my life, I have enough $$$ to say no to crazy people... It isn't worth the scars!
If businesses treated their software like their other Intellectual Property, developers habits would adjust to reflect that reality...
But Collin I agree with where you are coming from, and almost all of what you said!
|
|
|
|
|
CListCtrl class that would make it possible to dispatch bacon through the usb port.
|
|
|
|
|
|
|
Such as cars, home, hospital, etc...
Voice command everything. On second thought, voice command "almost" everything.
Eventually, as with most technologies, these advancements will drop in price for the consumer; thus promoting more widespread use and integration....and assimilation.
|
|
|
|
|
Why would I want to voice command everything?
Ignoring how annoying that would be in the average office with everybody talking at their computer, phone, tablet, filing cabinet, coffee machine, ... at the same time, how much fun is it going to be to voice control a car? "Left a bit, bit more, bitmore, bitmorereallyquickohgodimgoingtodie BRAKE!!!!"
And backseat drivers will have a feild day.
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
almost all of my media and phone use in my car is voice activated, and it is helpful
I also know that not everything should be voice activated, as you said, at the office or in a busy public environment.
for instance, in my car, all i have to say are these words, and I have instant interaction with that function.
call - wife - mobile
radio - satellite - bpm
OriginalGriff wrote: And backseat drivers will have a feild day.
driver pushes a button to activate. that button is on the steering wheel.
|
|
|
|
|
Yes, the Fraud Fester I drove for a few weeks a year or so ago had that as well, and it was quite handy in selecting music from my MP3 collection.
But there is a limit - voice is too "digital" for actual driving controls, which are mostly very sensitive (feedback controlled) analog devices.
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
OriginalGriff wrote: for actual driving controls,
I agree.
I don't think I would want to tell my car to turn or speed up, etc...
Now if it had auto-pilot and all i had to say was CAR - HOME, then that would be awesome. I could take a cat nap on the way home.
|
|
|
|
|
That we will see.
And it will be a massive benefit, which will be forced upon us whether we like it or not. And most won't - but manual driving is inefficient, dangerous and far too affected by skill level, mental condition, etc.. We will have to relinquish control to the computer by law in the next couple of decades.
There will be many for which this is a step too far...
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
and I include The Lounge in that
Some men are born mediocre, some men achieve mediocrity, and some men have mediocrity thrust upon them.
|
|
|
|
|
PITFOIP has been a requested feature for long before there was such a thing as social media. At a minimum, I'm certain the desire to deliver a punch in the face across the internet has been demanded about 30 seconds after the first spam was sent back in the 80s. I strongly suspect it was desired by users of pre-internet time sharing systems as well.
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, waging all things in the balance of reason?
Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful?
--Zachris Topelius
Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies.
-- Sarah Hoyt
|
|
|
|
|
Great idea!
You can select which "Bob" mode you wanted for the day. i.e. Bob the ninja.
|
|
|
|
|
... is to disable internet/remote access on computers that really shouldn't have it. Like those that control power plants etc.
|
|
|
|
|
...and some QA question setters...
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
because the companies are blackmailing the goverment with taxes and jobs. Or they are bribing.
"Sorry for the truth"
Press F1 for help or google it.
Greetings from Germany
|
|
|
|
|
Regulators who understand the technology.
Perhaps the super annoying and completely useless "this website uses cookies [accept] [deny]" message on Dutch websites would disappear.
And I also wouldn't have to live in fear that a series of tubes, that are supposedly the internet, are getting clogged up[^]!
And Google would probably stay in Spain[^]. Funny stuff, the Spanish media pushed towards this new law, but now Google is going away they're shitting their pants. They're actually lobbying for a new law that makes Google continue its services AND make them pay... Right.
Yes, the world would be so much better if regulators understood the technology.
My blog[ ^]
public class SanderRossel : Lazy<Person>
{
public void DoWork()
{
throw new NotSupportedException();
}
}
|
|
|
|
|
Sander Rossel wrote: Yes, the world would be so much better if regulators understood the technology.
Even better, the world would be better if there were less regulators.
Marc
|
|
|
|
|
Anarchy in the UK! (That's OK, I live in the Netherlands)
My blog[ ^]
public class SanderRossel : Lazy<Person>
{
public void DoWork()
{
throw new NotSupportedException();
}
}
|
|
|
|
|
Me think the issue is with the word "cookies" which does not make sense for 99.99% of the web users.
I'd rather be phishing!
|
|
|
|
|
Yeah, and no one denies cookies!
My blog[ ^]
public class SanderRossel : Lazy<Person>
{
public void DoWork()
{
throw new NotSupportedException();
}
}
|
|
|
|
|