@your_average_daemon: Is it really necessary to use vulgar language and resort to personal attacks in response to a simple post about software function? Seriously? (Perhaps using ‘wtf’ in your opinion is not vulgar but every day language for you, but in my book, directing that a stranger IS vulgar, and at a minimum certainly rude and uncalled for). You could have just said ‘I beg to differ, here’ why’. In any case, I will respond to some of your points objectively without personal attacks.
It is important to see the forest through the trees. Whether the actual amount of code or effort to implement said filter feature is great or small was not my focus, the ‘bloat’ I’m referring too is one of philosophy and user perception. Philosophy: what does the dev envision as the path the software should take. User perception: how does the way that users use and perceive the app effect the way they use it or choose not to use it. If you focus on just the immediate technical aspect of feature enhancement, which typically developers do (what’s the effort, how much code does this add) then its very easy to overlook these EQUALLY important questions. That is how ‘feature creep’ starts. That is why in most successful software companies, especially INCs, Marketing dept drives product development, not Development.
In my 40 plus years working in the Si Valley, from a grunt at a startup to C-level of Fortune 50 (that’s fifty, not five hundred), I’ve seen more ideas and fledgling apps fall by the way side and DIE due to over emphasis on the technical (How to do something), and lack of consideration on ‘what are we doing here? what is our plan?’ (WHY are we doing what we are doing, or not doing). You state: “Isn’t it [TF] already aspiring to become like PathFinder, etc.?” Do we know that? HIstorically, it would seem the answer is no. TF has been around years now, and has remained essentially very close to original conception. If you read these forum posts going back many years, Darwin has been asked MANY times to add this or that feature. All of these suggestions taken as a whole, if implemented, would have made TF by now an app approaching Pathfinder or Forklift territory, not equal, but certainly closer that direction than what it is now and remained.
In general, TF has stayed close to its initial mission, as an enhancement to Finder (not a replacement) with the main selling point being dual pane function and being responsive and able to get out of your way (think VISOR mode). This is reflected in the design architecture Darwin has stayed with, using code injection, versus creating a stand alone app like PF or Forklift.
The ‘bloat’ I refer to is one of philosophy and user perception and expectation, as I said, not necessarily if it is ‘a few subroutines or a library dependency’. Again it’s the WHY you must answer first, not the HOW. A feature might require 10 lines of code to implement, does that mean every feature that only requires 10 lines of code should be implemented? I presume even you would say, ‘duh’ of course not, it DEPENDS. Does the feature fit the philosophy or purpose of what the app is intended for, OR PLANS TO BE IN THE FUTURE? Instead of search filter, what if someone said “Hey, I know what would be cool, I really want TF to be able to sync folders, since ‘obviously’ if i have two folders side by side, who wouldn’t want to compare them, and if I’m going to compare them, then the next ‘logical’ step is to be able to sync them.” But why (or can you) stop there? Then the next user comes along and says, “Well, TF can sync local drives, why can’t TF auto connect to my cloud repositories and sync across the cloud? And not just 1 to 1, but 1 to many?” And then the next user says “But I need to be able to define rules, like Chronosync, to manage the syncing…and not just just mirror synching, but differential synching, and bi-directional, with roll back and archiving in case I make a mistake, and … and…”. That’s how the spiral starts for so many apps and companies. THAT is how Pathfinder 1.0 ends up being today what we see in Pathfinder 7.0
Let’s set aside for a moment what is required technically to implement a feature (10 or 10,000 lines of code, whatever). First, you should consider, what does this mean for the future, does it fit the philosophy of what the app is, was meant to fit, what I want it to be? What user EXPECTATION does this meet or not meet AND what does it set up for the future expectations of users if I start adding features without a plan? If I open ‘the door’ I can’t close it, will users expect more and more because I chose to add a few features that at the time seemed easy to do and reasonable, but in hindsight, has now created an expectation that TF is looking to become more than just a dual pane enhancement to Finder (e.g. PathFinder or Forklift.) Only after Devs answer that first, then you look at the technical. “CAn I do that just with code injection?”. Am I headed down a road by taking this seemingly simple ONE step to where I have to reimplement the app as a stand alone app? (Probably, there is limit to what you can do with code injection, and good chance Apple will eventually find a way to kill that back door too for various security reasons.) What is the effort, not just programmatically, but personally to me in time, commitment, SUPPORT, bug fixing, cost, THE PRICE I HAVE TO CHARGE TO MAKE IT ECONOMICALLY MAKE SENSE. There is a reason TF as it is now is $12 and PathFinder is $40. I may GAIN some users, but I may also lose some users. As a dev, those are the questions you need to consider, not just “oh, that’s easy, it just a subroutine, and ‘that would be cool’”
So, I never said there was problem with users requesting features, no problem, I simply said my PERSONAL preference is that TF stay light and focus on its strength. You and others are only looking at it from a technical aspect and that it is just ‘one feature’. After 40+ years, I can tell you, it is NEVER about just ‘one feature’. Everything you do or don’t do impacts and sets up what you do in the future. As i said before, 'Where do you draw the line?" Users are extremely fickle and most have no sense of loyalty, (nor should they, use what fits YOUR workflow, vote with your wallet). If Darwin wants one day that TF should have more PF like features, increases the price to $20- $40 to cover his time and effort, complicate his life 10x over by the need to support all those features, (which no amount of money can compensate for) that’s fine his choice. My choice as a user I would probably stop using it, but that’s me. If the users he gains offsets the users he looses, that’s fine, good for him. Even if it offsets on a monetary basis, I can tell it will not, as an independent dev, offset the increased complexity in Darwin’s personal life.
Look at the Macupdate forum, look how many users TURN on an app and the developer because of perceived ‘slight’ because the developer was ‘stupid’ to not adopt their ‘great’ idea that feature A should be added, or the reverse, feature A is added, but because the developer did not have a clear idea about implementation or usability and where the app was headed, and just reacted to user demands, it is implemented so poorly, they get slammed for making a mess of it. You will never please every user, so consider carefully what you do. In this day of social media and online software reviews, it doesn’t take much for a disgruntled user to bring down an app, even a company. Social media has made it so easy for a user with an axe to grind to bring a small, indie developer to his knees.
Suppose a user posted an opinion that TF sucked because it paled in comparison to PF? Your reaction might be that the user is misguided because TF isn’t supposed to be a PF competitor. But that users opinion and your reaction to it are both determined by your personal bias and perception each of you thinks TF is and supposed to be. Right or wrong is secondary; as developer, Darwin ultimately decides, what user group am I targeting to satisfy. When he decides that or sticks with it, that guides how he markets the app to promote the ‘perception’ he desires, and ‘demote’ the perception he doesn’t desire. It guides his development road map, the price structure. If he decides TF IS meant to grow more complex, then he has to consider the long term business (can he do it alone? will he have to sell the app to a bigger company that has the resources? hire help? What is the impact to his personal life, in time and impact to wife, kids?)
I suspect what you are thinking right now, is that I’m over reacting, adding one little feature doesn’t mean TF is heading down the road of ruin, doesn’t mean it is becoming Pathfinder. That’s not what I’m saying. I’m simply saying, I"ve seen SO MANY ideas and apps that started down the road of “Let’s just add this.” and lost all sense of direction, and ultimate lost users, the market, and their opportunity. Look, I have no problem with Pathfinder or Forklift, I’m a registered user of both. Used Forklift since version 1. At one point when it looked like Darwin was abandoning TF due to problems with SIP, I switched to PF as my daily tool.
I have nothing against adding features to any app, contrary to what you and ylluminate think, but can’t be done in a vacuum just because it’s easy or simple to do or because some users ‘really want it’. For 90% of MY workflow, I use TF because it is seamless and the ‘perception’ of being light, I’m ‘in and out’ it doesn’t get in my way. Any user would be hard pressed to say that PF or Forklift feels ‘light’. If I want WebDav, Amazon S3, folder compare, etc, I’ll fire up PF now and then, but I like falling back to TF for the 90% of what I need. TF fills a niche, PF and Forklift fill a different niche, not better or worse, just different, the price and the level of support reflects that for each. I tried to switch my wife from TF to PF when I thought TF was end of life. She did not like PF because she didn’t need 80% of what it does, too many menu items, too ‘busy’, and preferred TF so much so she’d rather stay on Yosemite or run El Cap with SIP off (in this day and age, security and all, running with SIP off is not what I think average NON-technical users should do. Okay for me, not my wife, can’t look over her shoulder every second or tell her what she apps are safe or not)
So, see the forest through the trees, don’t make this about what it would take programmatically to implement filter or any said feature. You’ve heard the saying, you don’t buy a sports car to drive to the corner grocery store. And you don’t criticize a Toyota Tercel because it doesn’t drive like an Audi sedan, because that isn’t what a Tercel was meant to be. And you don’t criticize the Audi because it costs 10x more than the Tercel, because that isn’t what it meant to be.
Darwin might implement this filter or any xyz feature and it might end there and be okay, OR it might open the barn doors from which there is no going back and start the ‘feature creep’ that has KILLED so many apps and companies. End of the day, his call, I simply expressed an opinion, you expressed yours, (although felt the need to use vulgarisms).
Peace be with you.