• (disco)

    Search problems? Ruby?

    So basically Discourse?

    Filed Under: frist

  • (disco)
  • (disco)

    :wtf:

    "I need to filter images that are actually images."

  • (disco) in reply to boomzilla

    Presumably, as opposed to the videos somebody wanted add to the CMS.

  • (disco) in reply to HardwareGeek

    Aren't videos just bundles of pictures that happen to be in sequence?

  • (disco) in reply to Tsaukpaetra

    What about multi-frame GIFs? Should those be filtered as images or videos? Or do they need their own "special" filter?

  • (disco) in reply to HardwareGeek

    Or even APNGs?!?! To those lacking support from them, it just looks like a normal picture, but in fact might be something.... more.....!!!!!

  • (disco)

    What about disk images?

    What about photos of disks?

    What about frisbees?

  • (disco) in reply to Tsaukpaetra
    Tsaukpaetra:
    Aren't videos just bundles of pictures that happen to be in sequence?

    Which inspired the next feature request: "Can we sort the frames of a video by mean or peak chroma value?"

    I'm not sure this is really much of a WTF though - she produced a product, then the users wanted a bunch of extra features. Unless the product you produce is truly trivial, when has that ever not happened?

    Now, when I put out a freeware NTFS filename searcher, and got a bug report recently that my last update had broken Win2k support - yes, Win2k, well over a decade old, just before extended support for its successor got shut off - that might have qualified as a WTF...

  • (disco) in reply to jas88

    I'm inclined to agree with @jas88. This isn't a wtf. You implemented a feature and now people are asking for further improvements. Some of them are outlandish but the bread and butter of this industry is incremental evolution of a feature to cater to a users need. She is going to get the exact same thing everywhere she does. Its just that its such a forward facing feature that it got more.

  • (disco) in reply to DogsB

    And I agree with both jas88 and DogsB. She's not much of a software developer if she doesn't see this sort of thing coming down the road to meet her before pressing her first key.

    The fact that she has so many requests for enhancements suggest that the users like this new filter feature. Here comes the opportunity to design something that will make the users happy. This is the sort of thing that turns into a flagship product.

  • (disco)

    Seriously now, the actual WTF here is that scope creep need not result in large blobs of bad code. Denise was clearly not competent enough to know to refactor the code as she went along.

  • (disco)

    Hey, Denise! Can you filter down this 48" high pressure pipeline and get me just enough to give me a dribble through this 1/8" latex tubing?

  • (disco) in reply to bernhardush
    bernhardush:
    Seriously now, the actual WTF here is that scope creep need not result in large blobs of bad code. Denise was clearly not competent enough to know to refactor the code as she went along.
    Sort of. The huge problem is also Denise's fault, and can be summed up as: Incompetent change management is incompetent.

    That there are change requests is not a WTF, as Quite pointed out, and might within reason be a good thing, but one of the main causes of scope-avalanche is excessive blind yessing of change requests.

    It is also suggestive of inadequate requirements gathering.

  • (disco) in reply to Steve_The_Cynic

    I agree, developers have to know when to say no, not now, this can be solved on the user side, etc.

    Still, regarding not making a blob, it can be difficult not to start off with a monolith when you have chaotic requirements like this and no proper design process.

    I tend to make a cleanly coded blob that later gets broken up once it is clear what is actually desired. Some patterns can be applied to adapt to change better and increase flexibility, however some patterns that try to be too flexible are an anti-pattern themselves.

    I would prefer reviewing this blob over a ten times larger mass of scaffolding to be honest. It's not that big.

    To be fair though, going to an epic one-liner is also an anti-pattern. Maybe it's a ruby poet thing.

    Edit...

    { recurring: 0 } & (start_date < time) & (end_date > time) ) | ( { recurring: 1 } & ( ( (to_char(end_date, 'MMDD') >= to_char(start_date, 'MMDD')) &

    This should clearly be broken up.

    It's like only allowing and hard coding... 1 0 1 0 1 1 0 1 0

    When you can just allow for the full 2^3 gamut.

  • (disco)

    TBH, management is the WTF..

    • First, users should NEVER ask for changes without some sort of screening first between them and the developers.
    • Second, there is a reason for version numbers in the software business.
    • She's not at fault for not optimizing her code. Anyone who lives in the real world knows that when you have to deal with that kind of management and get pressured for code to go out, you end up with that kind of things.. Heck, ain't that what this website is all about? :smile:
  • (disco)

    TRWTF are obviously Active Records. (Not really, but I don't like them for whatever reason)

  • (disco)

    TRWTF is that between articles like this and all of the recent ones about contests, it's obvious that this site is out of source material.

  • (disco) in reply to chubertdev

    That complaint shows up every couple of months or so for the last decade. These things happen. And they also demonstrate why the FP << Forums.

  • (disco)

    At least they haven't asked for the filter to have the ability to send email

  • (disco) in reply to Tsaukpaetra
    Tsaukpaetra:
    Aren't videos just bundles of pictures that happen to be in sequence?

    Didn't Apple just invent that?

  • (disco) in reply to Slapout
    Slapout:
    At least they haven't asked for the filter to have the ability to send email

    Yet.

  • (disco) in reply to Tsaukpaetra
    Tsaukpaetra:
    Didn't Apple just invent that?

    Ah yes, the groundbreaking new live photos feature for the iPhone. I heard through the grapevine that they have even bigger plans coming up: something about letting two people from all the way across the planet talk to each other; live. They call it far speaking, don'tcha know?

  • (disco) in reply to Ragnax

    Lol, I didn't say that precise line. Discoquoting, amirite?

  • (disco) in reply to CoyneTheDup
    CoyneTheDup:
    filter down this 48" high pressure pipeline and get me just enough to give me a dribble through this 1/8" latex tubing
    <!-- Top quoting, yes, indeed. Now it is what one does, tho --> This sounds like a reasonably common use case in heavy industry.
  • (disco)

    This reminds me of my current task: a parental control PIN input.

    At first it was a single field with a pop-up keyboard (SmartTV mind you). Then 4 separate fields without popup keyboard but you can use the remote control numbers. Then add arrows on top/bottom so users with remote controls without numbers can use them as spinners. Hiding the numbers is too fast/slow. Now I'm going crazy with the navigation of the focus within other controls. For example, in a dialog, with the OK/Cancel buttons. From the cancel/ok button go back to the nearest arrow. Better, to the first input.

    Ugh! such a simple thing is turning into a big PITA.

  • (disco) in reply to Mario_Levesque
    Mario_Levesque:
    TBH, management is the WTF..
    • First, users should NEVER ask for changes without some sort of screening first between them and the developers.
    • Second, there is a reason for version numbers in the software business.
    • She's not at fault for not optimizing her code. Anyone who lives in the real world knows that when you have to deal with that kind of management and get pressured for code to go out, you end up with that kind of things.. Heck, ain't that what this website is all about? :smile:

    I'm not sure I agree with the "never", though. It all depends on how formal the situation is. Clearly, at this point, they should have had a screening. I see the reason for most problems like this is that the programmers have been taught not to speak up. Maybe in the past, either on that job or a previous one, she had been punished for speaking up. A competent manager always has the attitude, "You're the professional actually doing the work. If you want to say something, please feel free." And it is extremely easy for a boss to fall into a pattern where (s)he says that because it sounds good, but nevertheless punishes employees for speaking up. "Who are you?!? I'm your boss! That's all you need to know that I'm smarter than you!" is the implicit message at a lot of places.

  • (disco) in reply to Tsaukpaetra
    Tsaukpaetra:
    Lol, I didn't say that precise line. Discoquoting, amirite?

    Something like that - since that was my quote in reply to your post!

  • (disco) in reply to Gribnit
    Gribnit:
    CoyneTheDup:
    filter down this 48" high pressure pipeline and get me just enough to give me a dribble through this 1/8" latex tubing
    This sounds like a reasonably common use case in heavy industry.

    And in the software industry, the requirements state that we must accomplish this with no additional hardware and throughput of the 48" pipe must not be restricted even if we have the only connection.

  • (disco) in reply to dcon
    dcon:
    requirements

    No, you're supposed to figure that out without being told. Nobody actually gives you requirements, even if you talk to them face to face; you're supposed to figure it out by a mixture of ESP and being more knowledgeable about the details of the client's business than the client themselves.

  • (disco) in reply to dkf

    You're right. I should have "quoted" that word.

  • (disco)
    .where {
        (
          { recurring: 0 } &
            (start_date < time) &
            (end_date > time)
        ) |
          (
            { recurring: 1 } &
              (
                (
                  (to_char(end_date, 'MMDD') >= to_char(start_date, 'MMDD')) &
                    (to_char(start_date, 'MMDD') <= time.strftime('%m%d')) &
                    (to_char(end_date, 'MMDD') >= time.strftime('%m%d'))
                ) |
                  (
                    (to_char(end_date, 'MMDD') < to_char(start_date, 'MMDD')) &
                      (
                        (to_char(start_date, 'MMDD') <= time.strftime('%m%d')) |
                          (to_char(end_date, 'MMDD') >= time.strftime('%m%d'))
                      )
                  )
              )
          )
      }
    

    Lessee, in order to match the where clause:

    • If recurring: 0 then time must be in the interval (start_date, end_date). Reasonable enough, I suppose.
    • Else If recurring: 1 then we have two options, and we only care about the month and day:
      • If start_date is before or the same as end_date, then time must be in the interval [start_date, end_date]
      • Else if start_date is after end_date, then time must be in (-∞, end_date] ∪ [start_date, ∞)

    Wait, :wtf::question: They're switching on the order of the (so-called) start and end dates?

  • (disco) in reply to dcon
    dcon:
    Tsaukpaetra:
    Aren't videos just bundles of pictures that happen to be in sequence?

    Didn't Apple just invent that?

    Funnily enough, a few weeks (months?) ago I discovered that Google photos/picasa/whatever will automatically recognize images taken in close sequence with each other and turn them into a gif for you. Meaning I took some pictures of a chicken on the job site and ended up with this: [image]

  • (disco) in reply to Tsaukpaetra
    Tsaukpaetra:
    Yes, I know the article called it an avalanche, but usually avalanches don't keep coming back for more, do they?

    Actually, are you sure this isn't just single instance of avalanche that is yet to end?

  • (disco) in reply to Tsaukpaetra

    Que after some time:

    Can we have OCR-ed the image to autofill customer information if we uplaoded the image of a namecard?

  • (disco) in reply to Dreikin
    Dreikin:
    Wait, They're switching on the order of the (so-called) start and end dates?
    It's for appointments that go over a year boundary. So that if you have a recurring appointment that goes from MMDD values, say, 1103 to 0221, you have to be on or after 1102, or no later than 0221. As long as no recurring appointments can be made for a year or more in duration, it works.

    Of course TRWTF is not using dates with years and an implementation along the lines of "start_date <= time and end_date >= time".

  • (disco) in reply to cheong
    cheong:
    Que

    Que?

    https://beyondtheflow.files.wordpress.com/2015/04/que1.jpg?w=625

Leave a comment on “Filter Overflow”

Log In or post as a guest

Replying to comment #:

« Return to Article