Comment by swader999

12 hours ago

The one I get constantly is we want "custom reporting". Well what the hell is that really? Why, why, why do you need that? Then I just build a new feature they will actually use and defer "custom reporting" for another month.

I worked with a guy who specialized in custom reporting tools and pipelines. He said that a majority of the time people are asking for custom reporting tools, it’s because the app’s built-in tools for sorting/filtering/aggregating data aren’t answering the questions they are asking.

Now whenever someone brings that up, I ask “What question are they wanting the answer to?”. It usually leads to either a new feature or just clarifying where that question can be answered. Looks like you’ve caught onto that same school of thought.

Sometimes people just want to feed data into their own warehouse so they can query data across different pieces of software, or they are too stubborn to get to the bottom of what question they’re trying to answer.

  • Sometimes "reporting" / "monitoring" is how someone does an end-run around normal product and engineering, and we skip adding what ought to be a feature or domain concept.

    For example, suppose someone wants special logging whenever a certain field is edited... And then you find out their real goal is to be able to copy-paste old values back in when someone calls up support and says "oops something went wrong." Now the reporting tool is an intermittent part of our customer support.

    In contrast, imagine if there was a real "settings events" table that recorded changes in the app and users could go see them. Or a new concept of "revisions", instead of single mutable field.

    • This is absolutely the reality. Previous company my first project was on team "improving reporting", and chasing all kinds of gnarly performance tuning to make queries and sorting faster, etc. Once we did all this after a few months, come to find out the PM requesting all this missed that what users wanted was one number in hundreds of rows, and sorting so it would show on top...

      The team did not like that I pointed out we could have added the number to the home page in a few minutes...

  • My experience is always "we have a standard SQL server datamart. We just need to put a good reporting tool on that. You're a business analyst and product manager, go analyze some products."

    "But can't you just make something exactly like we imagine? We're already paying you and buying stuff is paperwork".

I see this all the time... custom reporting, reports... I have seen this so many times in so many places and I wonder why the fuck are people asking about it. Most of the time they have little clue of what they want reported, or how they want the data to look like. Nearly 100% of the time what they mean by reporting is "join all the tables that have a foreign key, force join all the ones that do not have a foreign key by using a union against some arbitrary value picked at most-likely-to-be-the-right-one and dump everything on an "excel spreadsheet". This is the golden standard most people go by.

Give them an API with the data so they can get create their own reports. Maybe even charge them per hour to create the custom reports.

Personally I think that means they want access to the raw data so they can load it in excel or whatever and run their own reports.