Uh huh. Cause Deloitte says you are a contractor. God you're a bad liar. Seriously, who are you trying to fool? Each time you post you look more and more stupid. First you show you don't know what you are talking about, then you try to say 'I published a book' when you just contributed and it had nothing to do with databases which is what the discussion was about and then I call you out on your experience and you say 'I have 10 years experience' when you only graduated a couple years ago.
Oh but thats the beginning. Then you say you lead a team and do hiring, and you're nothing but a contractor. You're pathetic. You're the classic 'NO HIRE' (which explains why you're still contracting). Hell, you have to put the stuff you did while in college on your resume... sad.
Go ahead. Can't wait for the next response. Ought to be a classic like all the rest. Give it up and become the janitor you were always meant to be. Everything else is beyond your intellectual reach.
LOL. Oh really? and how exactly does a contractors get to hire people? Hmmm? Wow. A bad liar as well as a bad developer. You aren't smart in any sense are you?
OMIGOD! Now he's in denial! LOL. What a tard! Did you just pick up that HTML book, read two pages and start posting on Slashdot. Classic. You really should go back and read your posts (we compiled those from your previous posts junior). Is there some elementary school we should be notifying that you're playing hooky from?
Poor child doesn't understand the process. Maybe we should enlighten him. You see in BIG BIG companies, there is a chain and technically HR or uppermanagement does hiring. You'll understand this when you work for someone besides you relatives. How's that going by the way? Get any other jobs designing websites for your mom's friends? LOL.
And to recap, the best of your comments... (and true classics they are), you said:
strings work just as well as integers for keys with no significant loss in query speed. (I believe you used the term 'hogwash')
loss of speed in query loading has no effect on page loads (and in effect no effect on scalability)
keys are managed by outside applications rather than the RDBMS
indexing does not happen on primary keys
I mean seriously... Wow. The company that pays you minimum wage must be lucky to have a 'genius' like you. We're all laughing our butts off here. I really have to thank you for providing our office with hours of enjoyment.
Oh I'm sorry. That was your attempt at asking for a job wasn't it? Well send me your UPDATED resume. I do the interviewing for my team in the corporation where I work. Obviously, you lack the database experience (per your own confession) but I can see if there is a junior position for an HTML person.
Lots of excuses. But I don't expect anything else. And I doubt anyone with any credibility would hire you so why would I care. Keep working on that HTML there juniour.
Like I said AJAX boy, 3 years experience (none of which was fulltime database development) does not make make you a DBA. Go learn something. You aren't worth my time. You are a waste of my time, junior.
LOL. Knew it. Your 'contribution' to the book was on AJAX... had nothing to do with databases. And it's WROX... who pays crap and let's anyone publish. Your resume is bloated and shows your lack of experience (who lists HTML over and over). Case so VERY VERY closed, junior. You aren't even worth my time. This is what qualifies as a professional? I weep for your employers.
For someone who believes database keys are controlled and maintained by an outside application, you sure do think you know alot about databases. Truly sad really.
Sadly, I have answered all your questions; you just are so sadly misinformed (or ignorant) that you fail to see the answers. Keys are always indexed. Look it up. SQL Server doesn't index foreign keys (oddity) so you do have to force that RDBMS to index foreign keys. But in general, all keys are ALWAYS indexed when they are defined as keys. MySQL, DB2, SQL Server, Oracle, etc. I suppose somewhere in the config, you MIGHT be able to turn this off... but why? Whats the point of having keys that aren't indexed. It's like having a cow that doesn't give milk and you can' make hamburgers out of.
The truly sad thing is you think you know something about databases and yet I'm having to explain these beginner concepts to you. You have my sympathy.
You are confusing the point... that integers make better keys than strings. You are NOW talking about an entirely different topic of surrogate keys vs. natural keys wherein a surrogate is usually always the better choice because the database maintains the control over the key and key relationships whereas natural keys are prone to human error, repetition, duplication, etc as they are based on an external system. For example, given your previous example wherein you used a webpage name as the key, can't two web pages have the same name? As such, you're natural key fails (as most do). The surrogate makes your system self contained and controlled.
But I digress. As I mentioned, you confused the original topic which was about whether strings were as good as integers as keys. And they are not.
My suggestion to you is to take a class on database administration. It really helps to round out your experience and I think you will find it helpful in the long run to avoid anymore errors like the ones you are running in to.
Well I don't know how to be any clearer; varchars(strings) have a variable length which causes them to take longer to return as well as requiring pattern matching if using as a key. All RDBMS's (and DBA's) will suggest using integers over anything else as keys as anything else is slower to search, slower to index, slower to return result sets, etc. All keys are indexed and when the RDBMS has to look up a string as a key, it has to do pattern matching which takes longer. An integer just requires the comparison operator. I have seen people use decimals and floats as primary keys as well and due to their variable length, they take longer to return result sets as well.
If you think I am blowing hot air (as you obviously do), google it. I don't think you will find any professional who will tell you that using a string over an integer as a primary key is a good idea.
Don't use strings as keys in databases. They are far slower to index. In general you should never use a string as a key. You CAN do it... you just shouldn't especially on something that gets called that often.
And I'm just impressed with it because I don't see any other framework doing this: Zend, Struts, Rails, Cake. They all use strings and/or XML which are far slower and can't maintain the page relationships.
Well to answer your question in a less snarky way, websites are heirarchical in nature and most frameworks try to use XML to load page data (or some other method based on strings) and to relate pages to one another... but can XML maintain relationships? Is XML reliable in checking key relationships? Not as well as a database. Databases rely on integers and enforce relationships. XML relys on strings and the relationships cannot be enforced.
So the way the creators of PHPulse did it, is they recreate a heirarchical system in the database and use a key to relate to every webpage. This allows the system to dynamically create URL's and breadcrumbs from one key as that key has a parent which in turn has a parent and so on. This also allows a plethora of other functionality like dynamically managing user privileges, generation of sitemaps and so on.
The system doesn't have to read 5 or 6 different XML sheets or parse a whole bunch of strings to get this information. It just queries precached information stored in memory and as a result is 10 times faster than conventional methods.
heh, yes. I was thinking increase numbers of pages loaded and decrease page load at same time. But yeah, the benchmarks are impressive. I even tried testing the system using it with a HEAP database just to see how fast it would be and there was no difference; all the data is indexed and cached so well that HEAP was pointless.
Of course, it's a totally different paradigm that requires a database instead of XML for the page metadata. But what it enables in being able to relate the sections of the site to one another and the pages is a an increase in functionality and speed over conventional methodologies.
The PHPulse framework is a great example of a better way to do it. It uses one variable sent for all pages which it then sends to a database (rather than an XML page) where it stores the metadata of how all the pages interelate. As such, it doesn't need to parse strings, it is easier to build SEO optimized pages and it can increase page load times by 10 times over other MVC frameworks.
You try giving an accountant openoffice calc instead of excel and just watch the fireworks. Openoffice is different enough to cause them significant pain.
We have and there was little problem. We also tried Symphony which was nice as it integrates well with Lotus.
Try that on someone who does graphical work for a living and you won't make it out of the door. GIMP is a great tool for the kind of stuff normal people do but it's at heart a bad photoshop rip-off.
Most graphics people I know use GIMP when they don't want to pay for an Adobe license anyway. Especially 3D artists for some reason. The only whiny ones are newbies and frankly it's the more experienced ones whose opinions really matter to me and they are already familiar with GIMP.
I was an original member of Amazon. Back then our duties were 'whatever you see needs to be done'. Basically, she tried to start taking over our dept and I told her it wasn't her job or her responsibility and she didn't need to be doing that. She got pissed and went to my boss; my boss said 'he's right'. She got even MORE pissed and took it up with Jeff who called my boss and her in to a meeting. They explained the situation and Jeff said' He's right... you shouldn't be messing around in their department and furthermore if I hear anything more on this or hear you trying to get back at him, I'll personally see to it that you're fired'
Regardless, I don't suggest working there. Resume fodder or not, middle management is incredibly stupid and their project managers are clueless liars. Nobody works there for more than 2 years and afterward they come out jaded and stressed beyond belief. I worked with two ex-managers years later (as has my wife at another company) right after they left Amazon and they were total burnouts.
I'm still waiting for him to compensate me on my stock options that I was promised but never received. Still he stuck up for me personally when a VP tried to get me fired and told her she needed to mind her own business or her head would be on the chopping block.
In this situation, a company that could not afford to hire an IT person til this point cannot afford to replace all unlicensed software with licensed versions. They can however replace with similar version; Open Office is very similar to Office. GIMP is very similar to Photoshop. They require little to no additional training and users of those tools can quickly adapt to the open source tools with little to no additional training.
Jeff Bezos once said to me 'you can't take something away from someone without giving something back of equivalent value without them being pissed off'. Obviously you have to take the software away but try to give them an open source equivalent for the time being. They may actually even start using it longterm and save the company money from having to purhcase licenses of the other software.
Uh huh. Cause Deloitte says you are a contractor. God you're a bad liar. Seriously, who are you trying to fool? Each time you post you look more and more stupid. First you show you don't know what you are talking about, then you try to say 'I published a book' when you just contributed and it had nothing to do with databases which is what the discussion was about and then I call you out on your experience and you say 'I have 10 years experience' when you only graduated a couple years ago.
Oh but thats the beginning. Then you say you lead a team and do hiring, and you're nothing but a contractor. You're pathetic. You're the classic 'NO HIRE' (which explains why you're still contracting). Hell, you have to put the stuff you did while in college on your resume... sad.
Go ahead. Can't wait for the next response. Ought to be a classic like all the rest. Give it up and become the janitor you were always meant to be. Everything else is beyond your intellectual reach.
LOL. Oh really? and how exactly does a contractors get to hire people? Hmmm? Wow. A bad liar as well as a bad developer. You aren't smart in any sense are you?
OMIGOD! Now he's in denial! LOL. What a tard! Did you just pick up that HTML book, read two pages and start posting on Slashdot. Classic. You really should go back and read your posts (we compiled those from your previous posts junior). Is there some elementary school we should be notifying that you're playing hooky from?
Poor child doesn't understand the process. Maybe we should enlighten him. You see in BIG BIG companies, there is a chain and technically HR or uppermanagement does hiring. You'll understand this when you work for someone besides you relatives. How's that going by the way? Get any other jobs designing websites for your mom's friends? LOL.
You actually keep track of the time and number of replies? Move out of your moms basement and get a boyfriend already.
Actually, we're having fun laughing at you and taking turns responding.
I mean seriously... Wow. The company that pays you minimum wage must be lucky to have a 'genius' like you. We're all laughing our butts off here. I really have to thank you for providing our office with hours of enjoyment.
Oh I'm sorry. That was your attempt at asking for a job wasn't it? Well send me your UPDATED resume. I do the interviewing for my team in the corporation where I work. Obviously, you lack the database experience (per your own confession) but I can see if there is a junior position for an HTML person.
Lots of excuses. But I don't expect anything else. And I doubt anyone with any credibility would hire you so why would I care. Keep working on that HTML there juniour.
And it shows. Buh-bye
Like I said AJAX boy, 3 years experience (none of which was fulltime database development) does not make make you a DBA. Go learn something. You aren't worth my time. You are a waste of my time, junior.
LOL. Knew it. Your 'contribution' to the book was on AJAX... had nothing to do with databases. And it's WROX... who pays crap and let's anyone publish. Your resume is bloated and shows your lack of experience (who lists HTML over and over). Case so VERY VERY closed, junior. You aren't even worth my time. This is what qualifies as a professional? I weep for your employers.
For someone who believes database keys are controlled and maintained by an outside application, you sure do think you know alot about databases. Truly sad really.
Sadly, I have answered all your questions; you just are so sadly misinformed (or ignorant) that you fail to see the answers. Keys are always indexed. Look it up. SQL Server doesn't index foreign keys (oddity) so you do have to force that RDBMS to index foreign keys. But in general, all keys are ALWAYS indexed when they are defined as keys. MySQL, DB2, SQL Server, Oracle, etc. I suppose somewhere in the config, you MIGHT be able to turn this off... but why? Whats the point of having keys that aren't indexed. It's like having a cow that doesn't give milk and you can' make hamburgers out of.
The truly sad thing is you think you know something about databases and yet I'm having to explain these beginner concepts to you. You have my sympathy.
It obviously wasn't about database development. Good luck with your next childrens book.
You are confusing the point... that integers make better keys than strings. You are NOW talking about an entirely different topic of surrogate keys vs. natural keys wherein a surrogate is usually always the better choice because the database maintains the control over the key and key relationships whereas natural keys are prone to human error, repetition, duplication, etc as they are based on an external system. For example, given your previous example wherein you used a webpage name as the key, can't two web pages have the same name? As such, you're natural key fails (as most do). The surrogate makes your system self contained and controlled.
But I digress. As I mentioned, you confused the original topic which was about whether strings were as good as integers as keys. And they are not.
My suggestion to you is to take a class on database administration. It really helps to round out your experience and I think you will find it helpful in the long run to avoid anymore errors like the ones you are running in to.
Well I don't know how to be any clearer; varchars(strings) have a variable length which causes them to take longer to return as well as requiring pattern matching if using as a key. All RDBMS's (and DBA's) will suggest using integers over anything else as keys as anything else is slower to search, slower to index, slower to return result sets, etc. All keys are indexed and when the RDBMS has to look up a string as a key, it has to do pattern matching which takes longer. An integer just requires the comparison operator. I have seen people use decimals and floats as primary keys as well and due to their variable length, they take longer to return result sets as well.
If you think I am blowing hot air (as you obviously do), google it. I don't think you will find any professional who will tell you that using a string over an integer as a primary key is a good idea.
Don't use strings as keys in databases. They are far slower to index. In general you should never use a string as a key. You CAN do it... you just shouldn't especially on something that gets called that often.
And I'm just impressed with it because I don't see any other framework doing this: Zend, Struts, Rails, Cake. They all use strings and/or XML which are far slower and can't maintain the page relationships.
Well to answer your question in a less snarky way, websites are heirarchical in nature and most frameworks try to use XML to load page data (or some other method based on strings) and to relate pages to one another... but can XML maintain relationships? Is XML reliable in checking key relationships? Not as well as a database. Databases rely on integers and enforce relationships. XML relys on strings and the relationships cannot be enforced.
So the way the creators of PHPulse did it, is they recreate a heirarchical system in the database and use a key to relate to every webpage. This allows the system to dynamically create URL's and breadcrumbs from one key as that key has a parent which in turn has a parent and so on. This also allows a plethora of other functionality like dynamically managing user privileges, generation of sitemaps and so on.
The system doesn't have to read 5 or 6 different XML sheets or parse a whole bunch of strings to get this information. It just queries precached information stored in memory and as a result is 10 times faster than conventional methods.
heh, yes. I was thinking increase numbers of pages loaded and decrease page load at same time. But yeah, the benchmarks are impressive. I even tried testing the system using it with a HEAP database just to see how fast it would be and there was no difference; all the data is indexed and cached so well that HEAP was pointless.
Of course, it's a totally different paradigm that requires a database instead of XML for the page metadata. But what it enables in being able to relate the sections of the site to one another and the pages is a an increase in functionality and speed over conventional methodologies.
The PHPulse framework is a great example of a better way to do it. It uses one variable sent for all pages which it then sends to a database (rather than an XML page) where it stores the metadata of how all the pages interelate. As such, it doesn't need to parse strings, it is easier to build SEO optimized pages and it can increase page load times by 10 times over other MVC frameworks.
I'm still waiting for my mod point stimulus otherwise I'd definitely bail you out. MOD UP!!!
We have and there was little problem. We also tried Symphony which was nice as it integrates well with Lotus.
Most graphics people I know use GIMP when they don't want to pay for an Adobe license anyway. Especially 3D artists for some reason. The only whiny ones are newbies and frankly it's the more experienced ones whose opinions really matter to me and they are already familiar with GIMP.
I was an original member of Amazon. Back then our duties were 'whatever you see needs to be done'. Basically, she tried to start taking over our dept and I told her it wasn't her job or her responsibility and she didn't need to be doing that. She got pissed and went to my boss; my boss said 'he's right'. She got even MORE pissed and took it up with Jeff who called my boss and her in to a meeting. They explained the situation and Jeff said' He's right... you shouldn't be messing around in their department and furthermore if I hear anything more on this or hear you trying to get back at him, I'll personally see to it that you're fired'
Regardless, I don't suggest working there. Resume fodder or not, middle management is incredibly stupid and their project managers are clueless liars. Nobody works there for more than 2 years and afterward they come out jaded and stressed beyond belief. I worked with two ex-managers years later (as has my wife at another company) right after they left Amazon and they were total burnouts.
I'm still waiting for him to compensate me on my stock options that I was promised but never received. Still he stuck up for me personally when a VP tried to get me fired and told her she needed to mind her own business or her head would be on the chopping block.
In this situation, a company that could not afford to hire an IT person til this point cannot afford to replace all unlicensed software with licensed versions. They can however replace with similar version; Open Office is very similar to Office. GIMP is very similar to Photoshop. They require little to no additional training and users of those tools can quickly adapt to the open source tools with little to no additional training.
Jeff Bezos once said to me 'you can't take something away from someone without giving something back of equivalent value without them being pissed off'. Obviously you have to take the software away but try to give them an open source equivalent for the time being. They may actually even start using it longterm and save the company money from having to purhcase licenses of the other software.