Eh, true enough. I think that XML is a good thing, but I am always a bit cautious, because I feel that many people use the power of modern computers as an excuse to write poorer quality software.
Storing that much data in plaintext is kind of inefficient anyway, but that's just my point of view. XML is a nice toy, but it's not the answer to all that ails you.
I'm done imagining that. No offence to the supporters of such a UI, but it's a lot quicker for me to look down at my watch and see the time than it is for me to look down, see a teddy bear, ask it the time, and listen for it to tell me the time and that it loves me.
Have you seen these ideas?
on
Fishing for Ideas
·
· Score: 3, Interesting
These aren't ideas for new programs and stuff of that nature. I haven't seen a single idea on the site yet that deals with software.
Perhaps it's not what their aiming for, that they're getting, but then again, with catagories like "self-expression, community, and entrepreneur," I doubt that they are looking to do R&D like this.
Also, look at the ideas, "Go on a mission trip, open a medical practice, pay my bills," I don't know, but if they're getting something that they can sell out of this, I haven't seen it yet.
Not only that, but users on the site get to vote for ideas that they like and don't like. Then again, hiding all of the "long range wireless gigabit ethernet," behind "saving baby sea lions from brutal dinosaurs," might be a good way to keep stealing ideas under the radar... or perhaps I'm too slashdotted.
Ahh, I think that we're a bit more on the same page here.
See, I'm fine with management's efforts to tailor our process. I do put more stock into academia than you do, but perhaps your courses will pick up. I know that they did for me. My experience has been that the freshman year is weed out, program this, if you don't, go home, and that from that point forward theory prevails... but experiences and mileage may vary.
See, I agree on many points. I find myself often cutting my words short so as not to offend colleagues who are less skilled than myself... especially in social settings. I would like to see the bar raised a bit by awarding a title to those who can pass the test.
That said, the methods that you mention are ones that I agree with. Those are strong, theory based engineering practices. What I'm saying, is that I would like a a certification to be created that designates that someone is a software engineer based on strong engineering practices, not every fuzzy idea that comes through the door. I am, by your definition a software engineer. I have my code peer reviewed and approved by a committe of my peers (hence peer review ), I put forth designs, documentation, and have all of this reviewed too. This isn't what I have a problem with.
What I have a problem with is the trend for someone with little knowledge of the topic to write a book on it. This book then gets circulated and companies take on practices that have little ground in anything but the fact that they make the book's authors money.
A fine example of this is the very practice that you mention in your other reply to me, perhaps I should find real software engineers to talk to if my practice involves passing around notecards... but then, this practice is called Extreme Programming, and lots of companies buy into it. I have to admit, this process at least on some abstract level has a level of merit, and I have seen it practiced well (or am I just being polite again), but I certainly don't think that it is a necessity for being a software engineer.
Again, I am agreeing with you in the management aspect too. Managers that try to be programmers often don't know enough about programming to do anything but be a problem. On the flip side, programmers who try to be managers will often end up with their own host of shortcomings. Every now and again, a good one comes along that can do it all, and I tend to think that these are the best to work with (from personal experience), but again, mileage varies for all of us.
BTB, I think that my company does an excellent job at this.
We are currently working out way through to higher eschelons of CMM rating.
We follow a documented, codified, ingrained process that includes documentation, engineering phases, the whole works.
What I'M talking about is the fact that there are about 50 different companies hawking products that supposedly turn you into a software engineer. They don't. Training and knowledge turn you into a software engineer. Book knowledge and the like turn you into one.
I do more than bang on a keyboard, but just because I don't write my ideas on notecards and tape them to blackboards with 2 people sitting at my computer desk doesn't make me less of an engineer.
Are you fully considering the FULL range of practices that you are defending here? There's companies that do this right and companies that do this wrong... but the ones that do it right trust their programmers to be capable of doing their jobs properly.
Nah. I'm not pathetic, I'm just speaking my mind. I often don't.
I can follow the RUP if I need to. I have for several years now. I don't whine or cry about management practices, I just notice flaws in it. One of the flaws is the idea that someone who has never learned to perform my trade can do it better than I.
Believe it or not, I believe in following a strong process. I produce excellent code that is not about to be outmoded any time soon.
What I'm talking about is people who expect me to rely on the quality of shaky methods and buggy tools rather than design methods taught in classrooms. Fuzzy luv-ins instead of good engineering practice.
In it, the concept of a "note card" is developed, that represents a class. On this note card, you write all of the attributes and operations of that class. There are various lines that can be drawn between "note cards" in CASE (Computer Aided Software Engineer) tools that demonstrate inheritance relationships between various classes.
There are also diagrams that document "use cases" wherein "actors" essentially use the software for various reasons.
More info? www.uml.org
Some programmers put a great deal of stock into it, others put very little into it. The difference, between these two groups, in my experience, is how they were exposed to it and what they were required to do with it.
I don't believe so. I am perfectly willing to document my code, and would do so without outside instruction. That said, what does someone with no experience in programming know about my job?
Are you kidding me? You're saying that people who look at high-level diagrams are performing an engineering practice, whereas those who actually implement are not? That's like saying that the guy who decides where the hood ornament should go on a car is a mechanical engineer, but the guy who designs the braking system is not.
I wish that they would make a qualifying exam for software engineers, so that one could get a PE in software engineering. Not so much because I care about the title but because of a few other reasons:
1) People would quit screwing with programmers, telling us we need to evolve into "software engineers." All that that ever does is add paperwork and make my job harder. A bunch of people come in, who don't know how to do our jobs, and tell us to do it differently, because it will make us engineers.
2) It would raise the level of quality within the field. If everyone was held to the same standards when they came into the field, there would be some minimum level of knowledge required to start out. Good. Now I won't have some putz without a clue telling me my code isn't up to snuff.
Why is this not going to happen any time soon:
1) Do you test their coding ability? In what language? 2) Do you test their knowledge of algorithms, or are you, in doing so stepping into the scientific discipline and away from the engineering discipline? 3) Do you test their knowledge of data structures? 4) Do you test their knowledge of UML? Most universities gloss over this, as in academia, this seems to hold little repute, yet many companies stake their claims as engineers on knowledge of UML.
If you want a quick fix on how to wire stuff for parallel port, I believe that there are plans in the book "The Robot Builder's Bonanza" to do this. It's great, it's only about $30, and one of the professional societies on your campus probably already has a loaner copy. It's available on amazon.com. Get super-saver shipping if you're on a budget, reply to this with an e-mail addy and I'll even write software for it if I think that your design is sound;-)
This would be an example of the above principle... by which software developers get screwed because their goods aren't considered valuable in this business model, as the company doesn't sell the software, and execs can watch their machines make money.
1) You COULD use an object-relational database if you wanted to keep an OOD aspect. 2) You COULD load non-object oriented data into RAM with lower overhead. 3) A couple gig's of data into RAM... not really a deployable solution for enterprise, don't you think?
Why being smarter than the average bear is more of a liability than an asset during that stage in life.
I'm a full time software engineer, and I'm not sure that it gets better as you grow up. I'm only in my 20's, but I've never heard a girl at a bar say she really wanted to get with me because of my high IQ.
It works fine at 6x yet crashes at 7x? What the heck is he doing to speed up surfing? The major bottleneck at 56K is download times. So if he's caching data, why would it crash when you tell it to cache more?
Perhaps they're just not interested. I'm sure that they aren't being pushed away from the computer industry, guidance counselors are pushing EVERYONE into the computer industry.
Perhaps... we're just not all the same, and we shouldn't push high school girls into computers merely to even out a statistic and make ourselves feel nice about being "equal."
I wonder what they're doing. I'm sure that programmers at Adobe weren't happy about Skylarov, and Microsoft is the company that the book Microserfs came out of.
They must be doing something right... or Fortune must be interviewing all of the "right" people.
Eh, true enough. I think that XML is a good thing, but I am always a bit cautious, because I feel that many people use the power of modern computers as an excuse to write poorer quality software.
Storing that much data in plaintext is kind of inefficient anyway, but that's just my point of view. XML is a nice toy, but it's not the answer to all that ails you.
I'm done imagining that. No offence to the supporters of such a UI, but it's a lot quicker for me to look down at my watch and see the time than it is for me to look down, see a teddy bear, ask it the time, and listen for it to tell me the time and that it loves me.
These aren't ideas for new programs and stuff of that nature. I haven't seen a single idea on the site yet that deals with software.
Perhaps it's not what their aiming for, that they're getting, but then again, with catagories like "self-expression, community, and entrepreneur," I doubt that they are looking to do R&D like this.
Also, look at the ideas, "Go on a mission trip, open a medical practice, pay my bills," I don't know, but if they're getting something that they can sell out of this, I haven't seen it yet.
Not only that, but users on the site get to vote for ideas that they like and don't like. Then again, hiding all of the "long range wireless gigabit ethernet," behind "saving baby sea lions from brutal dinosaurs," might be a good way to keep stealing ideas under the radar... or perhaps I'm too slashdotted.
Ahh, I think that we're a bit more on the same page here.
See, I'm fine with management's efforts to tailor our process. I do put more stock into academia than you do, but perhaps your courses will pick up. I know that they did for me. My experience has been that the freshman year is weed out, program this, if you don't, go home, and that from that point forward theory prevails... but experiences and mileage may vary.
See, I agree on many points. I find myself often cutting my words short so as not to offend colleagues who are less skilled than myself... especially in social settings. I would like to see the bar raised a bit by awarding a title to those who can pass the test.
That said, the methods that you mention are ones that I agree with. Those are strong, theory based engineering practices. What I'm saying, is that I would like a a certification to be created that designates that someone is a software engineer based on strong engineering practices, not every fuzzy idea that comes through the door. I am, by your definition a software engineer. I have my code peer reviewed and approved by a committe of my peers (hence peer review ), I put forth designs, documentation, and have all of this reviewed too. This isn't what I have a problem with.
What I have a problem with is the trend for someone with little knowledge of the topic to write a book on it. This book then gets circulated and companies take on practices that have little ground in anything but the fact that they make the book's authors money.
A fine example of this is the very practice that you mention in your other reply to me, perhaps I should find real software engineers to talk to if my practice involves passing around notecards... but then, this practice is called Extreme Programming, and lots of companies buy into it. I have to admit, this process at least on some abstract level has a level of merit, and I have seen it practiced well (or am I just being polite again), but I certainly don't think that it is a necessity for being a software engineer.
Again, I am agreeing with you in the management aspect too. Managers that try to be programmers often don't know enough about programming to do anything but be a problem. On the flip side, programmers who try to be managers will often end up with their own host of shortcomings. Every now and again, a good one comes along that can do it all, and I tend to think that these are the best to work with (from personal experience), but again, mileage varies for all of us.
BTB, I think that my company does an excellent job at this.
We are currently working out way through to higher eschelons of CMM rating.
We follow a documented, codified, ingrained process that includes documentation, engineering phases, the whole works.
What I'M talking about is the fact that there are about 50 different companies hawking products that supposedly turn you into a software engineer. They don't. Training and knowledge turn you into a software engineer. Book knowledge and the like turn you into one.
I do more than bang on a keyboard, but just because I don't write my ideas on notecards and tape them to blackboards with 2 people sitting at my computer desk doesn't make me less of an engineer.
Are you fully considering the FULL range of practices that you are defending here? There's companies that do this right and companies that do this wrong... but the ones that do it right trust their programmers to be capable of doing their jobs properly.
Nah. I'm not pathetic, I'm just speaking my mind. I often don't.
I can follow the RUP if I need to. I have for several years now. I don't whine or cry about management practices, I just notice flaws in it. One of the flaws is the idea that someone who has never learned to perform my trade can do it better than I.
Believe it or not, I believe in following a strong process. I produce excellent code that is not about to be outmoded any time soon.
What I'm talking about is people who expect me to rely on the quality of shaky methods and buggy tools rather than design methods taught in classrooms. Fuzzy luv-ins instead of good engineering practice.
Oddly, you seem bitter. Did I strike a nerve?
Actually, I do, which is why I have a certain level of pessimism for when non-software engineers tell me how to become a software engineer.
Ok, so, the guy who says that breaks down a web-browser into its components, based on notions of what components are needed, is the engineer.
On the other hand, the guy who develops algorithms to render the web page on the screen is skilled labor?
I think not.
That's what I'm saying. I don't do the same thing as a person with a 6-month degree.
Universal Modeling Language.
In it, the concept of a "note card" is developed, that represents a class. On this note card, you write all of the attributes and operations of that class. There are various lines that can be drawn between "note cards" in CASE (Computer Aided Software Engineer) tools that demonstrate inheritance relationships between various classes.
There are also diagrams that document "use cases" wherein "actors" essentially use the software for various reasons.
More info? www.uml.org
Some programmers put a great deal of stock into it, others put very little into it. The difference, between these two groups, in my experience, is how they were exposed to it and what they were required to do with it.
I don't believe so. I am perfectly willing to document my code, and would do so without outside instruction. That said, what does someone with no experience in programming know about my job?
Nah:
Are you kidding me? You're saying that people who look at high-level diagrams are performing an engineering practice, whereas those who actually implement are not? That's like saying that the guy who decides where the hood ornament should go on a car is a mechanical engineer, but the guy who designs the braking system is not.
Do I?
I don't mean to sound rude, but there are some of us who write device drivers and complex programs that require strong theoretical knowledge.
This is way out of the ballpark of hashing out some of the lighter coding tasks.
I wish that they would make a qualifying exam for software engineers, so that one could get a PE in software engineering. Not so much because I care about the title but because of a few other reasons:
1) People would quit screwing with programmers, telling us we need to evolve into "software engineers." All that that ever does is add paperwork and make my job harder. A bunch of people come in, who don't know how to do our jobs, and tell us to do it differently, because it will make us engineers.
2) It would raise the level of quality within the field. If everyone was held to the same standards when they came into the field, there would be some minimum level of knowledge required to start out. Good. Now I won't have some putz without a clue telling me my code isn't up to snuff.
Why is this not going to happen any time soon:
1) Do you test their coding ability? In what language?
2) Do you test their knowledge of algorithms, or are you, in doing so stepping into the scientific discipline and away from the engineering discipline?
3) Do you test their knowledge of data structures?
4) Do you test their knowledge of UML? Most universities gloss over this, as in academia, this seems to hold little repute, yet many companies stake their claims as engineers on knowledge of UML.
If you want a quick fix on how to wire stuff for parallel port, I believe that there are plans in the book "The Robot Builder's Bonanza" to do this. It's great, it's only about $30, and one of the professional societies on your campus probably already has a loaner copy. It's available on amazon.com. Get super-saver shipping if you're on a budget, reply to this with an e-mail addy and I'll even write software for it if I think that your design is sound ;-)
This would be an example of the above principle... by which software developers get screwed because their goods aren't considered valuable in this business model, as the company doesn't sell the software, and execs can watch their machines make money.
Nifty.
Couple things.
1) You COULD use an object-relational database if you wanted to keep an OOD aspect.
2) You COULD load non-object oriented data into RAM with lower overhead.
3) A couple gig's of data into RAM... not really a deployable solution for enterprise, don't you think?
Other than that, nifty idea and all.
Why being smarter than the average bear is more of a liability than an asset during that stage in life.
I'm a full time software engineer, and I'm not sure that it gets better as you grow up. I'm only in my 20's, but I've never heard a girl at a bar say she really wanted to get with me because of my high IQ.
Is there a corporate conspiracy to limit recording time of camcorder to about an hour (like DVD-R camcorders)?
Probably, I hear that the RIAA is guilty of price-fixing too *GRIN*
How do they keep the cost going down so much!
The secret is that they do it in bulk!
Go chip manufacturers!
Cradle to Grave perhaps?
It works fine at 6x yet crashes at 7x? What the heck is he doing to speed up surfing? The major bottleneck at 56K is download times. So if he's caching data, why would it crash when you tell it to cache more?
... might I be the first to say, so what?
Perhaps they're just not interested. I'm sure that they aren't being pushed away from the computer industry, guidance counselors are pushing EVERYONE into the computer industry.
Perhaps... we're just not all the same, and we shouldn't push high school girls into computers merely to even out a statistic and make ourselves feel nice about being "equal."
Just my $.02
5 Adobe Systems
20 Microsoft
I wonder what they're doing. I'm sure that programmers at Adobe weren't happy about Skylarov, and Microsoft is the company that the book Microserfs came out of.
They must be doing something right... or Fortune must be interviewing all of the "right" people.