It might not be just lobbying and and campaign contributions that turn legislators' heads. It could be tax revenue as well. According to this document a lot ff tax revenue is created by car dealerships.
States earn about 20 percent of all state sales taxes from auto dealers, and auto dealerships easily can account for 7–8 percent of all retail employment. The bulk of these taxes (89 percent) are generated by new car dealerships, those with whom manufacturers deal directly.
If States allow direct sales there goes the tax revenue. I am not saying it is a good thing just another incentive for States to keep the franchise laws.
My post is in response to the "Lobbying, is corruption clear and simple" statement and therefore on topic.
about the groups they hate just to score mod points.
Where does it say that I hate those groups? I just picked two groups that are not industry based.
Way to get your irrelevant political points in.
The point, that you seemed to have missed, is that when any representative of any group talks to a politician it is defined as "lobbying". When Tesla talks to a politician it is called lobbying and every group talks to politicians therefore every group lobbies. The issue is that many perceive industry lobbying as bad while ignoring non-industry lobbying.
BTW, "dumb-as-fuck aspies" could be considered an ad hominem attack. Such attacks just weaken your argument. That coupled with the AC posting just shows how you are unwilling to stand up behind a weak argument.
A single person can not compete but groups can and do. Groups like ACLU and AFL-CIO lobby and contribute to campaign on behalf of there members all the time. Tesla does it too.
The thing is that lobbying is necessary as it is the only way to put alternate positions in front of the politicians.
No. By that theory hydraulics that are pressurized by a pump should be called mechanicals. They are called hydroponics because fluid is used to move actuators. It does not matter what produces the pressure.
The article talks about the number of principal investigators with a leading National Institutes of Health grant and the average age of principal investigators who get these grants. To me, there is a very important missing data point; the age distribution of principal investigators submitting grant requests. This will show whether or not the age difference is due to the selection process or the age distribution of the grant requests. It is not a given that the age distribution of grant requests is the same year by year.
Explain please. #NotAllMuslims seems to describe it pretty well to me. It is a tiny minority of Muslims that are radicalized to the point of terrorism. Almost all Muslims are peaceful law abiding citizens who have no control over the radicals. There are 1.6 billion Muslims in the world. If they were all terrorists we would be in big trouble.
By focusing on the fact that Charlie Hebdo "insulted Islam" you're supporting the terrorists.
The focus come from you not the writer. There are two very important parts to the following quote;
"I am not Charlie, I am Ahmed the dead cop. Charlie ridiculed my faith and culture and I died defending his right to do so.
They are "Charlie ridiculed my faith" and "I died defending his right to do so". You chose to focus on the first part. I choose to focus on the second part. The point of the statement is that even if insult occurred the cop chose to die defending the right to make that insult.
It's SJW contrarian bullshit where literally everything offends and we have to focus on how they "offended Islam" instead of the fact that they were killed to silence their free speech.
No one has to focus on what is put in front of them. You have a brain; choose for yourself what to focus on. The point you completely miss is that a Muslim died trying to defend free speech even though the free speech was an insult to his religion. It is just trying to point out that not all Muslims are against free speech.
Using one piece of wood to hammer in a nail in another is perfectly possible.
True but one will damage the wooden hammer in the process. The wooden hammer will become useless very quickly.
If the head of the nail is ten times larger than the pointy end the object you hit the nail with can be as soft as the object you want it to get stuck in.
Sorry but penetration resistance is only one aspect of the effort needed to hammer in a nail. As the nail is inserted the wood presses against the sides of the nail causing significant friction. The more nail in the wood the higher the friction. That is the reason that nails actually hold things together.
Here are some more detailed questions about the hammer. Does hammering a nail into hard close grain wood damage the head? Does the head get dented, cracked, etc? Does hammering require extra effort due to the low weight of the hammer? Can one pull a large nail out of the wood without the handle breaking off? Does the hammer deteriorate in the sun? It may look like a hammer but is it a hammer that I can use like a conventional hammer year after year?
I agree with your assessment of the alternatives and I choose not to expose myself to those issues and therefore choose to own a personal vehicle. This is a choice and not mandatory as the GP stated.
The SRBs were re-used as well as the engines connected to the Shuttle itself. The external tank is jettisoned too high to recover. It was thought that it could be used in space to construct something but that was never done.
Now you are even mixing ids from the database with the idea to instantiate it with different classes.
That is how it is done. You call a factory that creates a Person class. The actual class returned can be any subclass of person. Which class is actually created is dependent on the stored data.
So who knows which id belongs to which class?
By how the data is stored.
And again: how do you manage 'class changes'?
By changing the data.
Person class that has a list of Roles?
How about if you look at roles as classes.
So the Person can be a Student, a Teacher and a Manager in its start up without any instantiation or inheritance problems
You just trade those problems for method selection issues down the road. Every time you call a method it has to check what Role the person has and then call the correct method. Using the class way you just call the method and the class figures out which routine to call.
One of the reasons to have different classes is that different roles have different data connected to them. Every person has demographic data. Every student has a GPA. Every teacher has teacher certificate number Every principal has an assigned school. Now you could put all that data in one class and never use the fields that do not apply but that is very inefficient.
how do you model the fact that I'm a student now and no teacher
For a given id allow instantiation as a Student class but not a teacher
and that I will be a teacher tomorrow and no student
Allow instatiation as a Teacher. The ability to be a Student is still there but not used.
and that in the end of the studies I will be both with inheritance?
Nothing changes in code just start using Student methods again.
Obviously a teacher is not a special student.
In this case a teacher is a student who can also teach. This is an artifact of the restriction of an object having only one class and inheriting from superclasses.
Those are value judgement. Back them up with reasons.
The hierarchy works in that everyone should be able to take classes so everyone is a Student. A subset of those Students can also teach classes therefore Teacher is a subclass of Student. A subset of those Teachers is the Principal with the ability to assign classes therefore Principal is a subclass of Teacher.
same can be said about Go To's.
Sorry but this is very different than goto's. Goto's are a hack to get around poorly designed code.
True, but it doesn't get us anything.
Both Managers and Employees have vacation days. Keeping track of those days can be coded in the Employee class and the Manager class just inherits the code.
One could argue the determination of parking activity should be calculated in one place rather than scattered about different subclasses.
One of the features of OO is the ability to "scatter code". It creates smaller code files with fewer control structure to parse through to figure out what is going on. By having the code in the subclass and looking up the method you get only the code related to that subclass. You are not looking at one monolithic file and trying to figure out what code pertains to the class you are dealing with. It is very easy to get confused and change the wrong code. It took me a while to wrap my head around this code scattering but it makes sense if you can think hierarchically.
How would you put that code in one place? The only way I can see would be a switch statement in the base class based on the type of person. To me that is no longer OO as it breaks compartmentalization. Adding a new subclass should not effect the code in any superclass. If it effects the superclass then I have to test the superclass and everything that uses that superclass. It is much less work to create a subclass and I only need to test the new code that is in the subclass.
I've found variations on Set Theory more flexible than classification hierarchies.
Classification hierarchies are a variation on set theory when each subclass encompasses a subset of the superclass. Look at how I used subsets to explain the Student>Teacher>Principal hierarchy.
OOP tends to push one toward hierarchies.
It is up to the programmer, not the language, when to use OO concepts and when not to. One can write non OO code using OO languages. Remember OO means Object Oriented and not Object Obligated. When OO concepts are applicable use them; when they are not don't.
All class hierarchies are deep. Sometime there are many subclasses of a single superclass. For example, I am writing a system that uses several different payment portals. These payment portals require different protocols and parameters to operate. I will create one base class that contains the methods, such as "submit_invoice" and "refund", needed to complete transactions. For each different payment gateway I will create a subclass of that base class. Even though there are many subclasses they all have only one superclass. This is a very shallow heirarchy. The beauty of this is that I can add new gateways without touching or testing the old gateways.
A teacher in one classroom may be a student in another, for example (especially in college).
Then make Teacher a subclass of student. When the class list, no pun intended, is made the grad student who is taking the course would be instantiated as a Student rather than a Teacher. Problem solved. This would also allow a Principal to take a course. This shows another aspect of OO in that a Person can do completely different things depending on how they are instantiated.
you hard-wire privileged parking to managers,
Hard wiring anything make things less flexible.
The software may be more flexible if privileged parking is an attribute of "person" rather than part of a "manager" subclass.
"Parking" is an attribute of Person. No mater what class there needs to be a method to ask what kind of parking the person gets. In this case the Manager class would always return "privileged" when asked about parking and the Employee class would return "privileged" if the current date is within the privilege period. This could be done even if Manager was a subclass of Employee.
Excess use of hierarchical sub-classing can create maintenance headaches.
Excess use of anything creates maintenance headaches. It is all about balance. In many real word instance two levels of classes is sufficient.
The real world often does not change in a hierarchical way
First I would like to point out that OO and procedural are not so much different. The main difference is that in OO the procedure run is governed implicitly by the class the call is made on and not explicitly by the code that makes the call. Saying OO vs procedural is a false dichotomy. I will refer to "procedural" as non-OO
The example in the blog is overly simplistic and does not show the strengths of OO. It use OO where it is not needed. Here are some issues with the OO implementation; 1. Too few classes. What about teachers. 2. Class specific method; "move_students_to_classrooms" should not be a method it should be "move_people_to_classroom"
By adding teachers, teaching assistants, etc as classes that can all be told to "move" and do what each different class needs to do. Try the following; Class: Person
Abstract method move(cl) Class: Student extends Person
Method move(cl){
Select desk;
remember cl
} Class: Teacher extends Person Method move(cl){
Count students;
Write name on board;
remember cl;
etc.
} Class Principal extends Teacher
Method move(cl){
Super(cl)
Inform secretary;
}
Method move_people_to_classroom(List people){
for_each (person in people)
{
Classroom* cl = reg[student.name()];
person.move(cl);
}
} Notice in this example the Principal would be doing the same thing in the classroom as a teacher plus a bit more. In this example the the method move_people_to_classroom does not care what sub type of person is in the list it just tells them to move to the classroom. In the non-OO method one line of code "person.move(cl) would be replaced by something like the following;
Person_type = getType(person); switch(person_type)(
case "Student":
move_student(student, cl);
break; case "Teacher":
move_teacher(student, cl);
break; case "Principal":
move_teacher(student, cl);
break; default: } Now what happens if a new class of Person gets added and they do something different when they move to the classroom. One would have to remember this code and update it. In the OO implementation the code would be in the new class and much more obvious as the 'move' method is not implemented so the code would not compile. The beauty of OO is the ability ignorant of the type of person, give them the same command and have them do different things.
You don't think the $4,734,809 spent on lobbying and the $32,811,424 in campaign contributions by the ACLU has influence?
You know who doesn't promise politicians lucrative jobs after they leave government? The ACLU.
Citation needed or it is just conjecture. By the way, the ACLU can and does "drive campaign donations".
It might not be just lobbying and and campaign contributions that turn legislators' heads. It could be tax revenue as well. According to this document a lot ff tax revenue is created by car dealerships.
States earn about 20 percent of all state sales taxes from auto dealers, and auto dealerships easily can account for 7–8 percent of all retail employment. The bulk of these taxes (89 percent) are generated by new car dealerships, those with whom manufacturers deal directly.
If States allow direct sales there goes the tax revenue. I am not saying it is a good thing just another incentive for States to keep the franchise laws.
Someone needs to take a chill pill.
make offtopic rants
My post is in response to the "Lobbying, is corruption clear and simple" statement and therefore on topic.
about the groups they hate just to score mod points.
Where does it say that I hate those groups? I just picked two groups that are not industry based.
Way to get your irrelevant political points in.
The point, that you seemed to have missed, is that when any representative of any group talks to a politician it is defined as "lobbying". When Tesla talks to a politician it is called lobbying and every group talks to politicians therefore every group lobbies. The issue is that many perceive industry lobbying as bad while ignoring non-industry lobbying.
BTW, "dumb-as-fuck aspies" could be considered an ad hominem attack. Such attacks just weaken your argument. That coupled with the AC posting just shows how you are unwilling to stand up behind a weak argument.
How can one compete ...
A single person can not compete but groups can and do. Groups like ACLU and AFL-CIO lobby and contribute to campaign on behalf of there members all the time. Tesla does it too.
The thing is that lobbying is necessary as it is the only way to put alternate positions in front of the politicians.
Lobbying and campaign contributions are done by every large group. Take at look at the ACLU or AFL-CIO.
That information vn be found on an SEC filling
No. By that theory hydraulics that are pressurized by a pump should be called mechanicals. They are called hydroponics because fluid is used to move actuators. It does not matter what produces the pressure.
Where do you see hypocrisy in #NotAllMuslims?
The article talks about the number of principal investigators with a leading National Institutes of Health grant and the average age of principal investigators who get these grants. To me, there is a very important missing data point; the age distribution of principal investigators submitting grant requests. This will show whether or not the age difference is due to the selection process or the age distribution of the grant requests. It is not a given that the age distribution of grant requests is the same year by year.
Explain please. #NotAllMuslims seems to describe it pretty well to me. It is a tiny minority of Muslims that are radicalized to the point of terrorism. Almost all Muslims are peaceful law abiding citizens who have no control over the radicals. There are 1.6 billion Muslims in the world. If they were all terrorists we would be in big trouble.
By focusing on the fact that Charlie Hebdo "insulted Islam" you're supporting the terrorists.
The focus come from you not the writer. There are two very important parts to the following quote;
"I am not Charlie, I am Ahmed the dead cop. Charlie ridiculed my faith and culture and I died defending his right to do so.
They are "Charlie ridiculed my faith" and "I died defending his right to do so". You chose to focus on the first part. I choose to focus on the second part. The point of the statement is that even if insult occurred the cop chose to die defending the right to make that insult.
It's SJW contrarian bullshit where literally everything offends and we have to focus on how they "offended Islam" instead of the fact that they were killed to silence their free speech.
No one has to focus on what is put in front of them. You have a brain; choose for yourself what to focus on. The point you completely miss is that a Muslim died trying to defend free speech even though the free speech was an insult to his religion. It is just trying to point out that not all Muslims are against free speech.
Using one piece of wood to hammer in a nail in another is perfectly possible.
True but one will damage the wooden hammer in the process. The wooden hammer will become useless very quickly.
If the head of the nail is ten times larger than the pointy end the object you hit the nail with can be as soft as the object you want it to get stuck in.
Sorry but penetration resistance is only one aspect of the effort needed to hammer in a nail. As the nail is inserted the wood presses against the sides of the nail causing significant friction. The more nail in the wood the higher the friction. That is the reason that nails actually hold things together.
Here are some more detailed questions about the hammer.
Does hammering a nail into hard close grain wood damage the head? Does the head get dented, cracked, etc?
Does hammering require extra effort due to the low weight of the hammer?
Can one pull a large nail out of the wood without the handle breaking off?
Does the hammer deteriorate in the sun?
It may look like a hammer but is it a hammer that I can use like a conventional hammer year after year?
I agree with your assessment of the alternatives and I choose not to expose myself to those issues and therefore choose to own a personal vehicle. This is a choice and not mandatory as the GP stated.
They do, they are called taxis, public transit, van pools, etc. There are many alternatives to personal vehicle ownership.
That just shows how little integrity you have. I sure hope you never do research.
I didn't say "forget the code" I said "forget to set the code". How do you set the code on the lock if you are at work?
The SRBs were re-used as well as the engines connected to the Shuttle itself.
The external tank is jettisoned too high to recover. It was thought that it could be used in space to construct something but that was never done.
Almost makes me wonder if they could make them just that little bit tougher to begin with
Tougher means heavier. Every additional pound used for toughness is one less usable pound for payload.
I still await the day that a multi-stage re-usable comes back, like the Shuttle.
Except that the solid rocket boosters and fuel tanks were not reusable. Only the engines were re-used and that after expensive overhauls.
This coupled with space-mining will hopefully bring a calm to the human race that we haven't seen since, well, ever.
We can not return land or food from space so we will still have conflict on Earth.
I can do that with my current (non internet) code entry door lock.
That works except when one forgets to set the temporary code.
But I don't see the door lock being one of those things due to the more significant security issue.
Letting a repair people in remotely could be very convenient. That way you don't have to be at home to let them in.
Now you are even mixing ids from the database with the idea to instantiate it with different classes.
That is how it is done. You call a factory that creates a Person class. The actual class returned can be any subclass of person. Which class is actually created is dependent on the stored data.
So who knows which id belongs to which class?
By how the data is stored.
And again: how do you manage 'class changes'?
By changing the data.
Person class that has a list of Roles?
How about if you look at roles as classes.
So the Person can be a Student, a Teacher and a Manager in its start up without any instantiation or inheritance problems
You just trade those problems for method selection issues down the road. Every time you call a method it has to check what Role the person has and then call the correct method. Using the class way you just call the method and the class figures out which routine to call.
One of the reasons to have different classes is that different roles have different data connected to them. Every person has demographic data. Every student has a GPA. Every teacher has teacher certificate number Every principal has an assigned school. Now you could put all that data in one class and never use the fields that do not apply but that is very inefficient.
how do you model the fact that I'm a student now and no teacher
For a given id allow instantiation as a Student class but not a teacher
and that I will be a teacher tomorrow and no student
Allow instatiation as a Teacher. The ability to be a Student is still there but not used.
and that in the end of the studies I will be both with inheritance?
Nothing changes in code just start using Student methods again.
Obviously a teacher is not a special student.
In this case a teacher is a student who can also teach. This is an artifact of the restriction of an object having only one class and inheriting from superclasses.
I find that silly and unnatural.
Those are value judgement. Back them up with reasons.
The hierarchy works in that everyone should be able to take classes so everyone is a Student. A subset of those Students can also teach classes therefore Teacher is a subclass of Student. A subset of those Teachers is the Principal with the ability to assign classes therefore Principal is a subclass of Teacher.
same can be said about Go To's.
Sorry but this is very different than goto's. Goto's are a hack to get around poorly designed code.
True, but it doesn't get us anything.
Both Managers and Employees have vacation days. Keeping track of those days can be coded in the Employee class and the Manager class just inherits the code.
One could argue the determination of parking activity should be calculated in one place rather than scattered about different subclasses.
One of the features of OO is the ability to "scatter code". It creates smaller code files with fewer control structure to parse through to figure out what is going on. By having the code in the subclass and looking up the method you get only the code related to that subclass. You are not looking at one monolithic file and trying to figure out what code pertains to the class you are dealing with. It is very easy to get confused and change the wrong code. It took me a while to wrap my head around this code scattering but it makes sense if you can think hierarchically.
How would you put that code in one place? The only way I can see would be a switch statement in the base class based on the type of person. To me that is no longer OO as it breaks compartmentalization. Adding a new subclass should not effect the code in any superclass. If it effects the superclass then I have to test the superclass and everything that uses that superclass. It is much less work to create a subclass and I only need to test the new code that is in the subclass.
I've found variations on Set Theory more flexible than classification hierarchies.
Classification hierarchies are a variation on set theory when each subclass encompasses a subset of the superclass. Look at how I used subsets to explain the Student>Teacher>Principal hierarchy.
OOP tends to push one toward hierarchies.
It is up to the programmer, not the language, when to use OO concepts and when not to. One can write non OO code using OO languages. Remember OO means Object Oriented and not Object Obligated. When OO concepts are applicable use them; when they are not don't.
All class hierarchies are deep. Sometime there are many subclasses of a single superclass. For example, I am writing a system that uses several different payment portals. These payment portals require different protocols and parameters to operate. I will create one base class that contains the methods, such as "submit_invoice" and "refund", needed to complete transactions. For each different payment gateway I will create a subclass of that base class. Even though there are many subclasses they all have only one superclass. This is a very shallow heirarchy. The beauty of this is that I can add new gateways without touching or testing the old gateways.
A teacher in one classroom may be a student in another, for example (especially in college).
Then make Teacher a subclass of student. When the class list, no pun intended, is made the grad student who is taking the course would be instantiated as a Student rather than a Teacher. Problem solved. This would also allow a Principal to take a course. This shows another aspect of OO in that a Person can do completely different things depending on how they are instantiated.
you hard-wire privileged parking to managers,
Hard wiring anything make things less flexible.
The software may be more flexible if privileged parking is an attribute of "person" rather than part of a "manager" subclass.
"Parking" is an attribute of Person. No mater what class there needs to be a method to ask what kind of parking the person gets. In this case the Manager class would always return "privileged" when asked about parking and the Employee class would return "privileged" if the current date is within the privilege period. This could be done even if Manager was a subclass of Employee.
Excess use of hierarchical sub-classing can create maintenance headaches.
Excess use of anything creates maintenance headaches. It is all about balance. In many real word instance two levels of classes is sufficient.
The real world often does not change in a hierarchical way
True, but it sometimes does.
First I would like to point out that OO and procedural are not so much different. The main difference is that in OO the procedure run is governed implicitly by the class the call is made on and not explicitly by the code that makes the call. Saying OO vs procedural is a false dichotomy. I will refer to "procedural" as non-OO
The example in the blog is overly simplistic and does not show the strengths of OO. It use OO where it is not needed. Here are some issues with the OO implementation;
1. Too few classes. What about teachers.
2. Class specific method; "move_students_to_classrooms" should not be a method it should be "move_people_to_classroom"
By adding teachers, teaching assistants, etc as classes that can all be told to "move" and do what each different class needs to do.
Try the following;
Class: Person
Abstract method move(cl)
Class: Student extends Person
Method move(cl){
Select desk;
remember cl
}
Class: Teacher extends Person
Method move(cl){
Count students;
Write name on board;
remember cl;
etc.
}
Class Principal extends Teacher
Method move(cl){
Super(cl)
Inform secretary;
}
Method move_people_to_classroom(List people){
for_each (person in people)
{
Classroom* cl = reg[student.name()];
person.move(cl);
}
}
Notice in this example the Principal would be doing the same thing in the classroom as a teacher plus a bit more.
In this example the the method move_people_to_classroom does not care what sub type of person is in the list it just tells them to move to the classroom. In the non-OO method one line of code "person.move(cl) would be replaced by something like the following;
Person_type = getType(person);
switch(person_type)(
case "Student":
move_student(student, cl);
break;
case "Teacher":
move_teacher(student, cl);
break;
case "Principal":
move_teacher(student, cl);
break;
default:
}
Now what happens if a new class of Person gets added and they do something different when they move to the classroom. One would have to remember this code and update it. In the OO implementation the code would be in the new class and much more obvious as the 'move' method is not implemented so the code would not compile. The beauty of OO is the ability ignorant of the type of person, give them the same command and have them do different things.