September 5, 2018 at 1:56 pm
ugh VI... for classes that only had VI as an editor, I actually preferred to dial in remotely, FTP the files I was working on down to my PC, use DOS Edit to make the changes I wanted, and FTP them back up to the server. For me that worked a lot better.
September 5, 2018 at 9:10 pm
Ed Wagner - Wednesday, September 5, 2018 8:30 AMI've seen good development courses before, but never a good one for databases. To be fair, I didn't go to a high-end school either. I did get to hear about a database administration class as one of our developers went through it on the way to his degree. Once a week, he'd come in and share what they covered. My original statement about never hearing of a good database course stands. He said he learned far more from me in an hour than he did in his whole class. In the end, he got his degree and got another job. The education system is what it is.
I never completed high school myself. I was programming in C/C++ with text-based online games when I was a freshmen. The general passion of wanting to learn how to program and actually going out and doing it is what many people lack. You shouldn't be thinking the only reason you can't do something is because there is no class for it or the class you are taking is garbage. That's actually the worst thing you can do for yourself because there is simply too much resources out there to learn and get better such as books, videos and even mentors.
I really put a lot of stock into whether or not people are learning on their own because they are passionate about it or have to depend on a class to learn it. I mean, regardless of whether or not the classes are good enough is not an issue. Who cares? It's really down to you and whether or not you have the juice to learn it or not regardless if you have a class or not. Period.
I mean, I'm not trying to smash those who just do the entire school thing. Just trying to make the point that, in my experience, the good people are typically the ones who have programmed before they walk into a programming class. The same holds true for all the mechanics I know. They were fixing cars in high school before they went off to get certified and trained to work in a shop or whatever.
September 6, 2018 at 5:52 am
xsevensinzx - Wednesday, September 5, 2018 9:10 PMEd Wagner - Wednesday, September 5, 2018 8:30 AMI've seen good development courses before, but never a good one for databases. To be fair, I didn't go to a high-end school either. I did get to hear about a database administration class as one of our developers went through it on the way to his degree. Once a week, he'd come in and share what they covered. My original statement about never hearing of a good database course stands. He said he learned far more from me in an hour than he did in his whole class. In the end, he got his degree and got another job. The education system is what it is.I never completed high school myself. I was programming in C/C++ with text-based online games when I was a freshmen. The general passion of wanting to learn how to program and actually going out and doing it is what many people lack. You shouldn't be thinking the only reason you can't do something is because there is no class for it or the class you are taking is garbage. That's actually the worst thing you can do for yourself because there is simply too much resources out there to learn and get better such as books, videos and even mentors.
I really put a lot of stock into whether or not people are learning on their own because they are passionate about it or have to depend on a class to learn it. I mean, regardless of whether or not the classes are good enough is not an issue. Who cares? It's really down to you and whether or not you have the juice to learn it or not regardless if you have a class or not. Period.
I mean, I'm not trying to smash those who just do the entire school thing. Just trying to make the point that, in my experience, the good people are typically the ones who have programmed before they walk into a programming class. The same holds true for all the mechanics I know. They were fixing cars in high school before they went off to get certified and trained to work in a shop or whatever.
Maybe, but I can see the point initially raised here. If people are programming and they know diddly squat about databases, they need the background, knowledge and skills because pretty much everything these days has a database end point. Websites, SharePoint, code source control solutions... Unless you're using old fashioned pen & paper, there's a database behind everything we do and need access to.
So you get your programming chops before going to school (or not) and then go to school and learn hardly anything about what that programming will be hitting? That's like being taught how to fix a car but no one ever teaching you how to put in the gas and the oil or check the tire pressure & belts to keep the car running. And how good of a mechanic will you be if you don't know that basic stuff?
Not all programmers are aware of the need for some basic (and strong) database theory / skills. Those who are and can access that always end up better programmers than those who are taught badly. Bad teaching can ingrain horrible habits that take decades to break.
September 6, 2018 at 7:15 am
Brandie Tarvin - Thursday, September 6, 2018 5:52 AMxsevensinzx - Wednesday, September 5, 2018 9:10 PMEd Wagner - Wednesday, September 5, 2018 8:30 AMI've seen good development courses before, but never a good one for databases. To be fair, I didn't go to a high-end school either. I did get to hear about a database administration class as one of our developers went through it on the way to his degree. Once a week, he'd come in and share what they covered. My original statement about never hearing of a good database course stands. He said he learned far more from me in an hour than he did in his whole class. In the end, he got his degree and got another job. The education system is what it is.I never completed high school myself. I was programming in C/C++ with text-based online games when I was a freshmen. The general passion of wanting to learn how to program and actually going out and doing it is what many people lack. You shouldn't be thinking the only reason you can't do something is because there is no class for it or the class you are taking is garbage. That's actually the worst thing you can do for yourself because there is simply too much resources out there to learn and get better such as books, videos and even mentors.
I really put a lot of stock into whether or not people are learning on their own because they are passionate about it or have to depend on a class to learn it. I mean, regardless of whether or not the classes are good enough is not an issue. Who cares? It's really down to you and whether or not you have the juice to learn it or not regardless if you have a class or not. Period.
I mean, I'm not trying to smash those who just do the entire school thing. Just trying to make the point that, in my experience, the good people are typically the ones who have programmed before they walk into a programming class. The same holds true for all the mechanics I know. They were fixing cars in high school before they went off to get certified and trained to work in a shop or whatever.
Maybe, but I can see the point initially raised here. If people are programming and they know diddly squat about databases, they need the background, knowledge and skills because pretty much everything these days has a database end point. Websites, SharePoint, code source control solutions... Unless you're using old fashioned pen & paper, there's a database behind everything we do and need access to.
So you get your programming chops before going to school (or not) and then go to school and learn hardly anything about what that programming will be hitting? That's like being taught how to fix a car but no one ever teaching you how to put in the gas and the oil or check the tire pressure & belts to keep the car running. And how good of a mechanic will you be if you don't know that basic stuff?
Not all programmers are aware of the need for some basic (and strong) database theory / skills. Those who are and can access that always end up better programmers than those who are taught badly. Bad teaching can ingrain horrible habits that take decades to break.
Not really a good analogy. I would say gas is closer to data and the gas tank is closer to databases, but not every program needs the same gas tank. Most all programs need some type of data, a means to store and process it. Being it's so easy to buy a gas tank and install it, most do not see offhand that they may need a specialist to help because it's insanely easy to get the car finished without one.
However, most programmers have a pretty good understanding of data, structures, and so forth. The issue is, they are not really given a more comprehensive course on how that relates to databases and even now, data stores and the works. It's pretty basic and they depend on the engine to handle the rest. Of course, in the real world, that engine fails because it needs certain considerations that are never really taught and it does boggle my mind too, why certain universities are not at least not caught up to these considerations for SQL Server, MySQL and Oracle.
But, at the end of the day, it's not exactly rocket science to figure out either. The issue is getting people to care about it more than they do.
September 6, 2018 at 8:49 am
xsevensinzx - Thursday, September 6, 2018 7:15 AMNot really a good analogy. I would say gas is closer to data and the gas tank is closer to databases, but not every program needs the same gas tank. Most all programs need some type of data, a means to store and process it. Being it's so easy to buy a gas tank and install it, most do not see offhand that they may need a specialist to help because it's insanely easy to get the car finished without one.However, most programmers have a pretty good understanding of data, structures, and so forth. The issue is, they are not really given a more comprehensive course on how that relates to databases and even now, data stores and the works. It's pretty basic and they depend on the engine to handle the rest. Of course, in the real world, that engine fails because it needs certain considerations that are never really taught and it does boggle my mind too, why certain universities are not at least not caught up to these considerations for SQL Server, MySQL and Oracle.
But, at the end of the day, it's not exactly rocket science to figure out either. The issue is getting people to care about it more than they do.
They may have a good understanding of data structures but they lack the necessary knowledge about database systems. Many of the full stack programmers where I work are good programmers but when it comes to interfacing and working with a database they suck. All the database is to them is a data store. They rarely concern themselves with data type mismatches or indexing or even normalization. All these things they should know and understand.
September 6, 2018 at 9:52 am
xsevensinzx - Thursday, September 6, 2018 7:15 AMNot really a good analogy. I would say gas is closer to data and the gas tank is closer to databases, but not every program needs the same gas tank. Most all programs need some type of data, a means to store and process it. Being it's so easy to buy a gas tank and install it, most do not see offhand that they may need a specialist to help because it's insanely easy to get the car finished without one.However, most programmers have a pretty good understanding of data, structures, and so forth. The issue is, they are not really given a more comprehensive course on how that relates to databases and even now, data stores and the works. It's pretty basic and they depend on the engine to handle the rest. Of course, in the real world, that engine fails because it needs certain considerations that are never really taught and it does boggle my mind too, why certain universities are not at least not caught up to these considerations for SQL Server, MySQL and Oracle.
But, at the end of the day, it's not exactly rocket science to figure out either. The issue is getting people to care about it more than they do.
But the gas tank is specific to each and every car. No two are the same. Therefore it really isn't that easy to buy and install it. Sure a gas tank might make the engine run but the gas line is too thin to allow enough gas for the car to run efficiently because the mechanic didn't know any better.
_______________________________________________________________
Need help? Help us help you.
Read the article at http://www.sqlservercentral.com/articles/Best+Practices/61537/ for best practices on asking questions.
Need to split a string? Try Jeff Modens splitter http://www.sqlservercentral.com/articles/Tally+Table/72993/.
Cross Tabs and Pivots, Part 1 – Converting Rows to Columns - http://www.sqlservercentral.com/articles/T-SQL/63681/
Cross Tabs and Pivots, Part 2 - Dynamic Cross Tabs - http://www.sqlservercentral.com/articles/Crosstab/65048/
Understanding and Using APPLY (Part 1) - http://www.sqlservercentral.com/articles/APPLY/69953/
Understanding and Using APPLY (Part 2) - http://www.sqlservercentral.com/articles/APPLY/69954/
September 6, 2018 at 10:46 am
Sean Lange - Thursday, September 6, 2018 9:52 AMBut the gas tank is specific to each and every car. No two are the same. Therefore it really isn't that easy to buy and install it. Sure a gas tank might make the engine run but the gas line is too thin to allow enough gas for the car to run efficiently because the mechanic didn't know any better.
Thanks, Sean. Pretty much what I was driving at.
Speaking of which (relevant tangent time), the SO has a project car (Toyota MR2). Our next door neighbor was a kid who was bad at budgeting and therefore had no money for necessities. He actually asked the SO if he could have the project car's alternator to put into his car (which was neither MR2 or Toyota). Because he believed an alternator was an alternator was an alternator.
A lot like some people believe a database is a database is a database.
September 6, 2018 at 3:32 pm
Brandie Tarvin - Wednesday, September 5, 2018 6:16 AMIs it just me or have the Microsoft newsletters (Redmond magazine and MCPMag) become spam the past year?I swear I get 7 or 8 of each daily. I originally signed up to make use of them in my work, but at the rate I get them, I'm about to unsubscribe and tell my email system they're junk mail.
Sean Lange - Wednesday, September 5, 2018 7:12 AMFor heaven's sake Tom. As I said there are of course are exceptions. But have you looked around any of the sql forums in the last decade? The utter garbage assignments people come in with lend plenty of credence to my rant, as you call it. You have listed some of the top professors at some of the top schools. Those are exactly the types of exceptions I was referring to. Those are clearly not the people I was talking about. I was talking about the people at the small universities like DeVry, Phoenix, Hyderabad etc where we see so many people coming in with utterly contrived problems and a required path to a solution. I wasn't lucky or smart enough to have attended a high end school like you clearly did. I went to one of these podunk U schools and witnessed first hand just how truly terrible the degree pumping schools really are. And what I witnessed in school was "professors" who largely were incompetent, often times learning the subject while teaching the class. I meant no disrespect to any of the truly talented individuals who are professors in the field, I meant disrespect to the large number of incompetent ones in schools with far less reputation than any of the ones you mentioned.
What set me off, Sean, was blaming the academics and not pointing out that there is just as big (actually, I think bigger) a proportion of incompetents who work in in industry and misguide people who are trying to learn on the job. In industry, about 90% of those who claim to train or teach are useless: that 90% includes 100% of those working for outfits offering "do it again at no extra charge until you pass the qualification" and just about all the other outfits that teach people to pass MS or Cisco or other qualification tests. In academia, I would guess it's only about 70% in computer science who are incompetent. Maybe I'm a bit sensitive about it because for one year I had the job of teaching programming to physics research students when I worked at UEA and twice I've acted as supervisor/mentor for a research student (although I wasn't an academic at the time) while I worked at ICL.
As for high end school: I went to a state-run comprehensive school, which managed to get maybe 2% of its pupils into a university. I was the first person from that school who ever made it to Oxford University, and the year before that the school had the first person it ever got into Cambrige University. My best friend made Oxford the year after me, and my brother made Oxford the year after him. I think that four year stretch was the only time the school had pupils get into a high end university - and only 4 pupils from a 300 per year intake during the whole life of the school (it was shut down a few decades ago) doesn't indicate a high-end school. I didn't learn computing at school or at university (I played with computers during my year as a research student at Bristol U, but that was playing, not being taught). But i did learn how a lot about to do research and how to learn from experience and how to learn from texts and lectures and seminars and so on during my time as a university student - and that's probably more useful than learning some odd bits and pieces about databases.
I actually learnt learnt computing on the job where I was lucky enough to work for a couple of enlightened outfits that made sure I learnt new things and spent a few weeks at various universities every year I was employed by one of them or attended all the Cambridge maths-lab (computing despite the title) seminars while I was employed by the other (and both provided me with all journals I wanted from the various professional computing institutions (well, IEEE and IEE and ACM and BCS and IMA and LMS). And I learnt a lot from Peter Stocker (who refused to allow a first degree course in CS at UEA because he thought CS was not well enough understood to teach to undergrads- but was perfectly happy to have people do research in CS to get a doctorate) during my one year as an academic at UEA, when he showed me how looking at mechanical or physical models instead of at pure maths was a good way to find a way of solving what I saw as mathematical problems and took me to meet Tony Brooker (whom I had for a year or two regarded as one of the most able computer people in the world because of his Manchester compiler-compiler) when Tony was running CS at Essex University - and I suddenly realised that disagreeing totally with someone (Tony had been instrumental in setting up the first first degree course in CS at any British university a few years before at Manchester, absolute anathema to Peter) didn't have to damage friendship or collaboration - another very valuable lesson from two professors.
And it isn't getting worse, at least not in the sense that the "gimme the answer, I don't need to know why it works" crowd are getting to be more of a majority, because you got that one wrong too: the reason that we might think "the posted questions are getting worse" is that more people are employed in computing and more in the data management end of it, and something like 80% or more of them haven't a clue and have been taught not to try to learn. So we see more questions from the bottom end that we did before, because although the bottom end is still about 80% of practitioners it's 80% of a bigger number each year than the number it was 80% of the year before.
Tom
September 6, 2018 at 5:32 pm
TomThomson - Thursday, September 6, 2018 3:32 PMWhat set me off, Sean, was blaming the academics and not pointing out that there is just as big (actually, I think bigger) proportion of incompetents who work in in industry and misguide people who are trying to learn on the job. In industry, about 90% of those who claim to train or teach are useless: that 90% includes 100% of those working for outfits offering "do it again at no extra charge until you pass the qualification" and just about all the other outfits that teach people to pass MS or Cisco or other qualification tests. In academia, I would guess it's only about 70% in computer science who are incompetent. Maybe I'm a bit sensitive about it because for one year I had teh job of teaching programming to physics research students and twice I've acted as supervisor/mentor for a research student (although I wasn't an academic at the time).As for high end school: I went to a state-run comprehensive school, which managed to get maybe 2% of its pupils into a university. I was the first person from that school who ever made it to Oxford University, and the year before that the school had the first person it ever got into Cambrige University. My best friend made Oxford the year after me, and my brother made Oxford the year after him. I think that four year stretch was the only time the school had pupils get into a high end university - and only 4 pupils from a 300 per year intake during the whole life of the school (it was shut down a few decades ago) doesn't indicate a top school. I didn't learn computing at school or at university, I learnt it on the job where I was lucky enough to work for an emlightened outfit that made sure I learnt new things and spent a few weeks at various universities every year for the 25 years I was emplyed by them.
And it isn't getting worse, at least not in the sense that the proportion of "gimme the answer, I don't need to know why it works" crowd are getting more numerous, because you go that one wrong too: the reason that we might think "the posted questions are getting worse is that more people are employed in computing and more in the data management end of it, and something like 80% or more of them haven't a clue and have been taught not to try to learn. So we see more questions from the bottom end that we did before.
I agree but I've also run into "professors" and other level "instructors" that had regular day jobs in the industry. Very few of them were actually any good at all and so it supports both you and Sean's take on the whole thing.
My boss sent me to a week long class on SQL Server back in the '90's after I had been teaching myself SQL Server from a book provided to me by very part time "mentor" (although he did great in the short time he was available). One of the things that got me started on the early forums was that I needed to be able to do a programmatic check for duplicates using a multi-column key. I asked my instructor near the end of that week long class. His answer? "Well, if you've done everything right, you shouldn't have duplicates". The DA couldn't understand that I was importing data from 3rd party sources because he never heard of being able to do that.
Even though it was a standard course written by the folks at MS, the only thing I learned from that class was that a lot of people that are teaching SQL Server (and databases) simply aren't qualified to do so even if their day job has to do with SQL Server. Along with the interviews I've conducted over the years for Sr. DBAs and Developers, I'm more than just a bit frightened, especially since it's confirmed in the questions a lot of people pose on the forums and, worse yet, a lot of the answers they get. That and some of the bloody "holy grail" articles on something about SQL Server and the fact that not only are they demonstrating that they don't know about it, they can't even write valid test data generators to support their claims and that's IF they take the time to do so.
What's even more frightening is the lack of knowledge about things like what constitute PII and other security measures. I "love" when someone posts a table example and there's an "SSN" column in it, for example.
--Jeff Moden
Change is inevitable... Change for the better is not.
September 6, 2018 at 5:48 pm
Lynn Pettis - Thursday, September 6, 2018 8:49 AMThey may have a good understanding of data structures but they lack the necessary knowledge about database systems. Many of the full stack programmers where I work are good programmers but when it comes to interfacing and working with a database they suck. All the database is to them is a data store. They rarely concern themselves with data type mismatches or indexing or even normalization. All these things they should know and understand.
I'm rather surprised, Lynn. My experience is that I have to educate people to get them the faintest idea about concepts like data structure or type theory - they've mostly fallen down the nasty C and C++ perfect trap, where understanding enough type theory to see that neither C nor C++ is even remotely safe-typed is regarded as insanity (and that in it turn leads to bugs, since no-one tries to avoid it). People (even C++ developers) usually have a better concept of types for SQL than for C/C++..
Tom
September 6, 2018 at 6:04 pm
Jeff Moden - Thursday, September 6, 2018 5:32 PMWhat's even more frightening is the lack of knowledge about things like what constitute PII and other security measures. I "love" when someone posts a table example and there's an "SSN" column in it, for example.
What?! People post tables with SSN columns? Surely they are protected by the table being restricted access and they have somehow made the posted copy similarly restricted? And the column is masked column?
On second thoughts perhaps people are just as stupid in the USA as they are in the UK and everywhere else in the world.? While only 80% of people handling databases are too stupid to handle straightforward data, I guess more than 90% haven't a clue how to handle PII.
Tom
September 6, 2018 at 9:28 pm
Brandie Tarvin - Thursday, September 6, 2018 10:46 AMSean Lange - Thursday, September 6, 2018 9:52 AMBut the gas tank is specific to each and every car. No two are the same. Therefore it really isn't that easy to buy and install it. Sure a gas tank might make the engine run but the gas line is too thin to allow enough gas for the car to run efficiently because the mechanic didn't know any better.
A lot like some people believe a database is a database is a database.
Indeed, this is very true. But, one has nothing to do with the other either in meaning, can't assume they all think this way nor assume you can't get people to start caring about how to use the systems. The main issue I've found is we end up bottlenecking them so much in having to use a specific system or having to use SP's over letting them have freedom with our collaborative effort (i.e.: working with them as opposed to against them) that we shun them from wanting to do it the right way in the first place. At least, that is my experience in my history.
September 7, 2018 at 2:47 am
xsevensinzx - Thursday, September 6, 2018 9:28 PMIndeed, this is very true. But, one has nothing to do with the other either in meaning, can't assume they all think this way nor assume you can't get people to start caring about how to use the systems. The main issue I've found is we end up bottlenecking them so much in having to use a specific system or having to use SP's over letting them have freedom with our collaborative effort (i.e.: working with them as opposed to against them) that we shun them from wanting to do it the right way in the first place. At least, that is my experience in my history.
If a DBA is bottlenecking development by insisting on developers using some arbitrary set of SPs that the DBA invented, the DBA is incompetent. The proper way of determining what SPs are to be available at what security levels must be determined by the goals of the system being developed, not by someone who thinks only of the database but by DBAs and database designers (who are not always the same people,but often are) who work in collboration with deveopers to (a) understand what the system's goals are and what is required to meet them and (b) as a result of (a) determine what SPs will be available at which security levels. Whether the DBA and DB designers then implement those SPs or the developers implement them and submit them to the db team for desk checking before they go into test doesn't much matter - but it's probable that any performance critical SP handling large volumes of data should be written by the DB team. Code review by a panel of developers and DBAs is sometimes useful too.
Tom
September 7, 2018 at 4:19 am
TomThomson - Friday, September 7, 2018 2:47 AMIf a DBA is bottlenecking development by insisting on developers using some arbitrary set of SPs that the DBA invented, the DBA is incompetent. The proper way of determining what SPs are to be available at what security levels must be determined by the goals of the system being developed, not by someone who thinks only of the database but by DBAs and database designers (who are not always the same people,but often are) who work in collboration with deveopers to (a) understand what the system's goals are and what is required to meet them and (b) as a result of (a) determine what SPs will be available at which security levels. Whether the DBA and DB designers then implement those SPs or the developers implement them and submit them to the db team for desk checking before they go into test doesn't much matter - but it's probable that any performance critical SP handling large volumes of data should be written by the DB team. Code review by a panel of developers and DBAs is sometimes useful too.
In my experience a lot of DBA's don't know how to write much SQL at all. They are mostly concerned with install, backup and recovery regimes. I think a specific SQL expert is needed to help C#/Java... developers with their queries.
September 7, 2018 at 4:56 am
Jonathan AC Roberts - Friday, September 7, 2018 4:19 AMIn my experience a lot of DBA's don't know how to write much SQL at all. They are mostly concerned with install, backup and recovery regimes. I think a specific SQL expert is needed to help C#/Java... developers with their queries.
A DBA who doesn't know much SQL is obviously a pure Production DBA and should have nothing to do with development except to set security and integrity requirements for data. Allowing such a person to bottleneck development by insisting on them using SPs which are not right for the job would be pure management idiocy. If a development needs to use a database, there has to be an SQL expert somewhere in the loop, ideally one with a thorough understanding of data security and integrity (including a thorough understanding of legal requirements in that area - especially anywhere in the EU, where the penalties for breach of regulations are potentially very big), and if the SQL expert doesn't understand security and integrity and regulatory then the Production DBA had better join in to cover those aspects of what theSQL expert and the developers must support.
Tom
Viewing 15 posts - 62,131 through 62,145 (of 66,712 total)
You must be logged in to reply to this topic. Login to reply