Skip to main content
deleted 4 characters in body
Source Link
Doc Brown
  • 222.3k
  • 36
  • 411
  • 631

but I'm wondering if using legs would be better

When one has two alternative data structures representing the same thing, I would recommend against the assumption that one representation could be universally "better" than the other.

Semantically equivalent data structures may behave differently in regards to resource consumption, but often a structure which gives an increased performance for certain processes will do this on the expense of requiring more memory, or vice versa. Or, a data structure which is more performant for a process X might be slower when used for process Y. For many real-world case, however, these differences are completely negligible.

Hence one should pick what works well for their specific use case - if both approaches work well, one may start with the one which appears to be easier to implement, or the one which uses less redundancy (that's often the same, since redundancy can cause inconsistencies, and to deal with those correctly, one has to write and test extra code). If that does not help for a decision, one should flip a coin.

The case you described may probably a case where the differences don't matter. The only use case for the data mentioned in the question was "description of a route" (for the purpose of bidding on it), not even something more complicated like path finding, and you wrote you don't have any real issues with it. Since the current approach seems to work well, I would recommend to stay with it. If you are in doubt, build a prototype using "legs" and evaluate its behaviour in comparison to the existing system.

Said that, I see actually one point here which could make difference: in the comments, you mentioned some requirements for meta data related to "stops" - stop types like "pick up, drop off, pit stop, and others". You did not mention similar meta data for "legs". This might be an indicator that both representations are not really equivalent, and that a "leg" representation may simply may not be sufficient for the situation.

Moreover, these approaches are not mutually exclusive. In case you need also meta data for legs (like an information which road to take), you could implement a model which contains both:

  • stops with location, arrival/departure times and meta data

  • legs as a connection between to two stops, and "leg metadata" (but not with a arrival/departure time & location on their own)

So double check your requirements: are both representations really dual when it comes to meta data? Then it probably does not matter which one to pick. If not, you may not use either the one, or the other, but a combination of both.

but I'm wondering if using legs would be better

When one has two alternative data structures representing the same thing, I would recommend against the assumption that one representation could be universally "better" than the other.

Semantically equivalent data structures may behave differently in regards to resource consumption, but often a structure which gives an increased performance for certain processes will do this on the expense of requiring more memory, or vice versa. Or, a data structure which is more performant for a process X might be slower when used for process Y. For many real-world case, however, these differences are completely negligible.

Hence one should pick what works well for their specific use case - if both approaches work well, one may start with the one which appears to be easier to implement, or the one which uses less redundancy (that's often the same, since redundancy can cause inconsistencies, and to deal with those correctly, one has to write and test extra code). If that does not help for a decision, one should flip a coin.

The case you described may probably a case where the differences don't matter. The only use case for the data mentioned in the question was "description of a route" (for the purpose of bidding on it), not even something more complicated like path finding, and you wrote you don't have any real issues with it. Since the current approach seems to work well, I would recommend to stay with it. If you are in doubt, build a prototype using "legs" and evaluate its behaviour in comparison to the existing system.

Said that, I see actually one point here which could make difference: in the comments, you mentioned some requirements for meta data related to "stops" - stop types like "pick up, drop off, pit stop, and others". You did not mention similar meta data for "legs". This might be an indicator that both representations are not really equivalent, and that a "leg" representation may simply may not be sufficient for the situation.

Moreover, these approaches are not mutually exclusive. In case you need also meta data for legs (like an information which road to take), you could implement a model which contains both:

  • stops with location, arrival/departure times and meta data

  • legs as a connection between to two stops, and "leg metadata" (but not with a arrival/departure time & location on their own)

So double check your requirements: are both representations really dual when it comes to meta data? Then it probably does not matter which one to pick. If not, you may not use either the one, or the other, but a combination of both.

but I'm wondering if using legs would be better

When one has two alternative data structures representing the same thing, I would recommend against the assumption that one representation could be universally "better" than the other.

Semantically equivalent data structures may behave differently in regards to resource consumption, but often a structure which gives an increased performance for certain processes will do this on the expense of requiring more memory, or vice versa. Or, a data structure which is more performant for a process X might be slower when used for process Y. For many real-world case, however, these differences are completely negligible.

Hence one should pick what works well for their specific use case - if both approaches work well, one may start with the one which appears to be easier to implement, or the one which uses less redundancy (that's often the same, since redundancy can cause inconsistencies, and to deal with those correctly, one has to write and test extra code). If that does not help for a decision, one should flip a coin.

The case you described may probably a case where the differences don't matter. The only use case for the data mentioned in the question was "description of a route" (for the purpose of bidding on it), not even something more complicated like path finding, and you wrote you don't have any real issues with it. Since the current approach seems to work well, I would recommend to stay with it. If you are in doubt, build a prototype using "legs" and evaluate its behaviour in comparison to the existing system.

Said that, I see actually one point here which could make difference: in the comments, you mentioned some requirements for meta data related to "stops" - stop types like "pick up, drop off, pit stop, and others". You did not mention similar meta data for "legs". This might be an indicator that both representations are not really equivalent, and that a "leg" representation may simply not be sufficient for the situation.

Moreover, these approaches are not mutually exclusive. In case you need also meta data for legs (like an information which road to take), you could implement a model which contains both:

  • stops with location, arrival/departure times and meta data

  • legs as a connection between to two stops, and "leg metadata" (but not with a arrival/departure time & location on their own)

So double check your requirements: are both representations really dual when it comes to meta data? Then it probably does not matter which one to pick. If not, you may not use either the one, or the other, but a combination of both.

added 24 characters in body
Source Link
Doc Brown
  • 222.3k
  • 36
  • 411
  • 631

but I'm wondering if using legs would be better

When one has two alternative data structures representing the same thing, I would recommend against the assumption that one representation could be universally "better" than the other.

DataSemantically equivalent data structures may behave differently in regards to resource consumption, but often a structure which gives an increased performance for certain processes will do this on the expense of requiring more memory, or vice versa. Or, a data structure which is more performant for a process X might be slower when used for process Y. For many real-world case, however, these differences are completely negligible.

Hence one should pick what works well for their specific use case - if both approaches work well, one may start with the one which appears to be easier to implement, or the one which uses less redundancy (that's often the same, since redundancy can cause inconsistencies, and to deal with those correctly, one has to write and test extra code). If that does not help for a decision, one should flip a coin.

Said that, theThe case you described may probably a case where the differences don't matter. The only use case for the data mentioned in the question was "description of a route" (for the purpose of bidding on it), not even something more complicated like path finding, and you wrote you don't have any real issues with it. Since the current approach seems to work well, I would recommend to stay with it. If you are in doubt, build a prototype using "legs" and evaluate its behaviour in comparison to the existing system.

Said that, I see actually one point here which could make difference: in the comments, you mentioned some requirements for meta data related to "stops" - stop types like "pick up, drop off, pit stop, and others". You did not mention similar meta data for "legs". This might be an indicator that both representations are not really equivalent, and that a "leg" representation may simply may not be sufficient for the situation.

Moreover, these approaches are not mutually exclusive. In case you need also meta data for legs (like an information which road to take), you could implement a model which contains both:

- stops with location, arrival/departure times and meta data

- legs as a connection between to two stops, and "leg metadata" (but not with a arrival/departure time & location on their own)
  • stops with location, arrival/departure times and meta data

  • legs as a connection between to two stops, and "leg metadata" (but not with a arrival/departure time & location on their own)

So double check your requirements: are both representations really dual when it comes to meta data? Then it probably does not matter which one to pick. If not, you may not use either the one, or the other, but maybe a combination of both.

but I'm wondering if using legs would be better

When one has two alternative data structures representing the same thing, I would recommend against the assumption that one representation could be universally "better" than the other.

Data structures may behave differently in regards to resource consumption, but often a structure which gives an increased performance for certain processes will do this on the expense of requiring more memory, or vice versa. Or, a data structure which is more performant for a process X might be slower when used for process Y. For many real-world case, however, these differences are completely negligible.

Hence one should pick what works well for their specific use case - if both approaches work well, one may start with the one which appears to be easier to implement, or the one which uses less redundancy (that's often the same, since redundancy can cause inconsistencies, and to deal with those correctly, one has to write and test extra code). If that does not help for a decision, one should flip a coin.

Said that, the case you described may probably a case where the differences don't matter. The only use case for the data mentioned in the question was "description of a route" (for the purpose of bidding on it), not even something more complicated like path finding, and you wrote you don't have any real issues with it. Since the current approach seems to work well, I would recommend to stay with it. If you are in doubt, build a prototype using "legs" and evaluate its behaviour in comparison to the existing system.

Said that, I see actually one point here which could make difference: in the comments, you mentioned some requirements for meta data related to "stops" - stop types like "pick up, drop off, pit stop, and others". You did not mention similar meta data for "legs". This might be an indicator that both representations are not really equivalent, and that a "leg" representation may simply may not be sufficient for the situation.

Moreover, these approaches are not mutually exclusive. In case you need also meta data for legs (like an information which road to take), you could implement a model which contains both:

- stops with location, arrival/departure times and meta data

- legs as a connection between to two stops, and "leg metadata" (but not with a arrival/departure time & location on their own)

So double check your requirements: are both representations really dual when it comes to meta data? Then it probably does not matter which one to pick. If not, you may not use either the one, or the other, but maybe a combination of both.

but I'm wondering if using legs would be better

When one has two alternative data structures representing the same thing, I would recommend against the assumption that one representation could be universally "better" than the other.

Semantically equivalent data structures may behave differently in regards to resource consumption, but often a structure which gives an increased performance for certain processes will do this on the expense of requiring more memory, or vice versa. Or, a data structure which is more performant for a process X might be slower when used for process Y. For many real-world case, however, these differences are completely negligible.

Hence one should pick what works well for their specific use case - if both approaches work well, one may start with the one which appears to be easier to implement, or the one which uses less redundancy (that's often the same, since redundancy can cause inconsistencies, and to deal with those correctly, one has to write and test extra code). If that does not help for a decision, one should flip a coin.

The case you described may probably a case where the differences don't matter. The only use case for the data mentioned in the question was "description of a route" (for the purpose of bidding on it), not even something more complicated like path finding, and you wrote you don't have any real issues with it. Since the current approach seems to work well, I would recommend to stay with it. If you are in doubt, build a prototype using "legs" and evaluate its behaviour in comparison to the existing system.

Said that, I see actually one point here which could make difference: in the comments, you mentioned some requirements for meta data related to "stops" - stop types like "pick up, drop off, pit stop, and others". You did not mention similar meta data for "legs". This might be an indicator that both representations are not really equivalent, and that a "leg" representation may simply may not be sufficient for the situation.

Moreover, these approaches are not mutually exclusive. In case you need also meta data for legs (like an information which road to take), you could implement a model which contains both:

  • stops with location, arrival/departure times and meta data

  • legs as a connection between to two stops, and "leg metadata" (but not with a arrival/departure time & location on their own)

So double check your requirements: are both representations really dual when it comes to meta data? Then it probably does not matter which one to pick. If not, you may not use either the one, or the other, but a combination of both.

added 941 characters in body
Source Link
Doc Brown
  • 222.3k
  • 36
  • 411
  • 631

but I'm wondering if using legs would be better

When one has two alternative data structures representing the same thing, it is usually a wrongI would recommend against the assumption that one representation could be universally "better" than the other.

Data structures may behave differently in regards to resource consumption, but often a structure which gives an increased performance for certain processes will do this on the expense of requiring more memory, or vice versa. Or, a data structure which is more performant for a process X might be slower when used for process Y. For many real-world case, however, these differences are completely negligible.

Hence one should pick what works well for their specific use case - if both approaches work well, one may start with the one which appears to be easier to implement, or the one which uses less redundancy (that's often the same, since redundancy can cause inconsistencies, and to deal with those correctly, one has to write and test extra code).

If If that does not help for a decision, one should flip a coin.

TheSaid that, the case you described ismay probably a case where the differences don't matter. The only use case for the data mentioned in the question was "description of a route" (for the purpose of bidding on it), not even something more complicated like path finding, and you wrote you don't have any real issues with it. Since the current approach seems to work well, I would recommend to stay with it. If you suspect the other approach brings you benefitsare in resource consumption for a certain processdoubt, build a prototype using "legs" and evaluate its behaviour in comparison to the existing system. But don't expect to find

Said that, I see actually one point here which could make difference: in the comments, you mentioned some requirements for meta data related to "stops" - stop types like "pick up, drop off, pit stop, and others". You did not mention similar meta data for "legs". This might be an indicator that both representations are not really equivalent, and that a striking reason why "stops""leg" representation may simply may not be sufficient for the situation.

Moreover, these approaches are "better" thannot mutually exclusive. In case you need also meta data for legs (like an information which road to take), you could implement a model which contains both:

- stops with location, arrival/departure times and meta data

- legs as a connection between to two stops, and "leg metadata" (but not with a arrival/departure time & location on their own)

So double check your requirements: are both representations really dual when it comes to meta data? Then it probably does not matter which one to pick. If not, you may not use either the one, or vice versathe other, but maybe a combination of both.

but I'm wondering if using legs would be better

When one has two alternative data structures representing the same thing, it is usually a wrong assumption one representation could be universally "better" than the other.

Data structures may behave differently in regards to resource consumption, but often a structure which gives an increased performance for certain processes will do this on the expense of requiring more memory, or vice versa. Or, a data structure which is more performant for a process X might be slower when used for process Y. For many real-world case, however, these differences are completely negligible.

Hence one should pick what works well for their specific use case - if both approaches work well, one may start with the one which appears to be easier to implement, or the one which uses less redundancy (that's often the same, since redundancy can cause inconsistencies, and to deal with those correctly, one has to write and test extra code).

If that does not help for a decision, one should flip a coin.

The case you described is probably a case where the differences don't matter. The only use case for the data mentioned in the question was "description of a route" (for the purpose of bidding on it), not even something more complicated like path finding, and you wrote you don't have any real issues with it. Since the current approach seems to work well, I would recommend to stay with it. If you suspect the other approach brings you benefits in resource consumption for a certain process, build a prototype and evaluate its behaviour in comparison to the existing system. But don't expect to find a striking reason why "stops" are "better" than legs, or vice versa.

but I'm wondering if using legs would be better

When one has two alternative data structures representing the same thing, I would recommend against the assumption that one representation could be universally "better" than the other.

Data structures may behave differently in regards to resource consumption, but often a structure which gives an increased performance for certain processes will do this on the expense of requiring more memory, or vice versa. Or, a data structure which is more performant for a process X might be slower when used for process Y. For many real-world case, however, these differences are completely negligible.

Hence one should pick what works well for their specific use case - if both approaches work well, one may start with the one which appears to be easier to implement, or the one which uses less redundancy (that's often the same, since redundancy can cause inconsistencies, and to deal with those correctly, one has to write and test extra code). If that does not help for a decision, one should flip a coin.

Said that, the case you described may probably a case where the differences don't matter. The only use case for the data mentioned in the question was "description of a route" (for the purpose of bidding on it), not even something more complicated like path finding, and you wrote you don't have any real issues with it. Since the current approach seems to work well, I would recommend to stay with it. If you are in doubt, build a prototype using "legs" and evaluate its behaviour in comparison to the existing system.

Said that, I see actually one point here which could make difference: in the comments, you mentioned some requirements for meta data related to "stops" - stop types like "pick up, drop off, pit stop, and others". You did not mention similar meta data for "legs". This might be an indicator that both representations are not really equivalent, and that a "leg" representation may simply may not be sufficient for the situation.

Moreover, these approaches are not mutually exclusive. In case you need also meta data for legs (like an information which road to take), you could implement a model which contains both:

- stops with location, arrival/departure times and meta data

- legs as a connection between to two stops, and "leg metadata" (but not with a arrival/departure time & location on their own)

So double check your requirements: are both representations really dual when it comes to meta data? Then it probably does not matter which one to pick. If not, you may not use either the one, or the other, but maybe a combination of both.

Cite added
Source Link
Doc Brown
  • 222.3k
  • 36
  • 411
  • 631
Loading
Cite added
Source Link
Doc Brown
  • 222.3k
  • 36
  • 411
  • 631
Loading
added 175 characters in body
Source Link
Doc Brown
  • 222.3k
  • 36
  • 411
  • 631
Loading
Source Link
Doc Brown
  • 222.3k
  • 36
  • 411
  • 631
Loading