Replies: 22 comments 9 replies
-
|
There are only so many ways to display a list of applications and their available updates and make it look like it belongs in macOS using native widgets and design guidelines in a easily understandable, user-friendly way. Even by your own admission, Updatest essentially used the App Store layout. You could argue that other updater apps like Latest also look relatively the same. Why is it that almost every spreadsheet program looks nearly identical? Why do nearly all word processors look the same? Why are nearly all messaging apps following the same basic design? Sometimes, certain designs just work. |
Beta Was this translation helpful? Give feedback.
-
|
@Xarius86 while I get where you're coming from, you missed the point. PearCleaners UI was much, much different before this update. Latest's UI also uses a sidebar, sure, but if you compare the two apps, other then the sidebar they look almost nothing alike. PearCleaner is directly using our exact UI layout with only minor color tweaks and alignment, version display, button formatting and our metadata row. While yes, these were inspired by the Mac App Store (which is where Updatest is trying to aim for UI wise) there was absolutely no reason for PearCleaner to implement this UI almost 1:1 to display updates. I'd argue there are at least a dozen ways to display this type of data, and you've already seen 3: Updatest, Latest and PearCleaner. PearCleaner's latest update is the only time I've seen such excessive level of copying to the point it doesn't make sense. Edit: To be clear, I'm not talking about the sidebar implementation. I'm talking about the detail screen for apps. |
Beta Was this translation helpful? Give feedback.
-
|
updatest should create their own algorithm instead of charging for packing up a few open sourced utilities |
Beta Was this translation helpful? Give feedback.
-
|
@suchsu that's not all Updatest does, nor is the point of this feedback that was raised. |
Beta Was this translation helpful? Give feedback.
-
|
Sorry, I was away yesterday for a family occasion and I rarely pay attention to github/coding stuff on weekends. No disrespect to you or your app Jared but I've never even looked at Updatest until this screenshot you posted, let alone copy it on purpose. First time I heard of it was that recent reddit post you made promoting it where I asked about the private frameworks blurb in your post. The goal for Pearcleaner has always been to lay down the core functionality with a basic GUI and then update everything UI/UX related once a feature is stable. I even mentioned that recently to someone on reddit specifically about my Updater page:
For example, in the near future, most of my other pages in Pearcleaner will also move to a sidebar style as well. This has always been my goal. I'll address this in two portions, the sidebar and detail view:
Unrelated, but interesting you bring this up since I provided a fix/workaround to the Look, I don't want any bad blood between us because you seem like a decent person, but I just don't know where to go with this. If it was some super unique UI that nobody has done before, I could totally understand where you're coming from. But this is generic native Apple UI to me. |
Beta Was this translation helpful? Give feedback.
-
|
Hey @alienator88, While I appreciate the response, there's a couple of things here we can correct.
It's funny you bring that up since I also helped you too, at no benefit to myself when PearCleaner could run rogue rm -rf commands on a users system which caused one users system to break. Also, to try and say I'd directly benefit from your contribution when you only shared a solution, not committed a PR (and let's take a look at MAS CLI's actual implementation to see how close it even is to yours) is a bit baffling to me.
If you want to argue app looks, let's get one thing straight. You directly copied Updatest and did not get your inspiration from the Mac App Store. In fact you were (by your own admission) one of the first people to reply on my thread when Caskly switched to Updatest, and you commented on the private frameworks stuff. Which means you saw the UI in the Reddit thread, as that was the first thing in the post. Acting like you've never seen Updatest's UI is a silly argument. I don't expect you to have used the app, but to pretend you never saw the UI when you were active in the thread on first post is just a blatant lie my friend.
But let's get to the point here. Why would PearCleaner ever want to use the Mac App Store as design UI inspiration? That's the complete opposite of the design language you use in your app, and Updatest has advertised it's UI to be App Store inspired from day one for ease of transition (it's also why our app icon looks similar to the Mac App Store, too). You decided to magically mishmash the App Store UI into yours? Hmm. Taking a look at the commit history such as: you're not even using native apple design language, you're manually creating buttons with specific padding which isn't how native SwiftUI handles these types of buttons. But yet you say this is "Generic Native Apple UI" when it's not.Taking a look at your row below the app details, you directly copied Updatest's data presentation (this doesn't exist in the Mac App Store, nor does it in Latest) such as presenting source how it is (which Updatest did, not the Mac App Store). However this is minor and just one example of many. While the App Store itself does have a metadata row, it's meant for data around the apps specific information such as Rating, Age, etc. It has nothing to do with update data. Seems like you didn't come up with this on your own to me. I'm just saddened by the fact that you and I had a pretty peaceful relationship, and when you saw the success of Updatest/Caskly you instantly decided to:
I don't own the App Store UI, nor would I want to. And everyones free to take inspiration from it for sure, but my community and I have seen the direct copying that's been happening lately and while I'm all for healthy competition, the UI was sort of the last straw for me. You really couldn't come up with your own unique UI? This would have been a completely different response if you came in here and said "Hey man, yeah the UI was lightly/sort of inspired by Updatest and the App Store among other things" but to outright make claims such as "never seeing the UI" and "taking inspiration from the Mac App Store" when your apps design language isn't anywhere near it, baffles and saddens me. This is an open source project. Everyone can see the commit history and line up the dates of your changes to when Updatest was released. Our UI hasn't changed since transition from Caskly to Updatest. |
Beta Was this translation helpful? Give feedback.
-
|
Personally I don't want PearCleaner to be an installer and updater I think its absolutely prefect as it is as an uninstaller personally I would focus on more cleaning features. Unix philosophy do one thing, but do it really well. |
Beta Was this translation helpful? Give feedback.
-
|
Me and @alienator88 could probably argue forever, so I'm going to end it with this to try and set the record straight. It isn’t about any single UI element being “owned” by Updatest. Apple uses lists, grids, metadata rows, icons, and pill-style labels... these are standard macOS design patterns. The issue is the pattern and the timing. Piece by piece shortly after Updatest, Pearcleaner added:
Individually, none of these are exclusive to Updatest (other than our manual app to Brew adoption, we were first!) Apple uses grids; Apple uses labels; Apple uses split-view navigation. But Apple does not combine these pieces in the specific pattern that Updatest uses. And importantly: So the concern isn’t that you “copied Apple,” or that any element is proprietary. It’s that the combination of features, layout choices, and timing aligns with Updatest. Not with Apple’s patterns. Create your own UI. Compete in the same space... that’s completely fair! But shipping feature-for-feature clones shortly after Updatest releases them is widely recognized as poor developer form. It hurts trust, it discourages originality, and it erases the effort that went into establishing it. I’m not trying to stop anyone from building update tools. That’s fair game. I’m asking for originality and respect for the work and design that went into Updatest. If you want to compete, compete. Don’t replicate. |
Beta Was this translation helpful? Give feedback.
-
|
I appreciated you jumping in when I wasn't able to be at the computer. And so what if I didn't commit a PR, I even said to rgoldberg use it IF it helps. I don't know his codebase to know if that would've worked with his setup so left it up to him. But up to that point nobody had an idea of how to work around that bug yet. Where do you get off telling me that I didn't get inspiration from the App Store and I directly copied your app? Just because you say something doesn't make it true man. A lot of what you're saying is a bunch of strawman arguments. Why would Pearcleaner want to use App Store as design inspiration? Just because my current design language doesn't match it, doesn't mean I can't update the UI. I already mentioned before that I like to get the base down all fleshed out first and then I work on the UI. And I'm not sure what you'd think someone would be able to put in a metadata row with columns for an updater app, besides app update related properties. I'm not going to put ratings, charts, etc. and whatever other stuff an App Store has, am I? There is only so many ways you can display this information. Seems like you didn't come up on your own with this either since you just copied the App Store and also just put different metadata in there. Even the app size column copied 1:1 and even how the App Store has 3 text views stacked in each column with varying sizes. You didn't deviate at all from what they did over there, did you? And for you to jump to the conclusion that I added this feature because I saw how popular your app is? As I said, I didn't even know of your app until 27 days ago. So in the last 27 days I built a whole Updater for my app because of you? Not because of the other requests I've gotten from users?
I'm not sure what you mean about me adding an Updater to Pearcleaner after you posted about Updatest (27 days ago), but I released the Updater view in Beta stage on October 14th: https://github.com/alienator88/Pearcleaner/releases/tag/5.2.4
The adoption thing came from a feature request here recently: #464
I've addressed this ad nauseam, but it seems that what I say you won't believe.. And I'm not trying to compete with anyone, I don't make money from this app. I have only posted one time on reddit about Pearcleaner on day 1 when it was released almost 2 years ago. If I was trying to get a bigger user base or "compete", I'd be posting monthly updates on reddit. I can understand where you're coming from, I do, but if the whole thing that separates your app from another is the GUI, that doesn't seem like a good longterm plan to me. And if your whole schtick is not the GUI, then what separates your app from the others? In my initial response I tried to ask you what would make you happy if I changed something in Pearcleaner's Updater and you completely flew right past that. So if you're not looking to work on a solution and just point fingers back and forth, I suppose the conversation will end here and you have a good rest of your day. As you said, we could probably argue forever. |
Beta Was this translation helpful? Give feedback.
-
this is a homebrew function, not a your function |
Beta Was this translation helpful? Give feedback.
-
|
Thanks for taking the time to write all that. Genuinely. But I want to clarify something important, because most of your response focuses on points I never argued. This isn’t about whether any individual UI element is unique to Updatest. Collectively, everything I outlined matches Updatest’s structure and flow.. not the App Store’s, and not Pearcleaner’s previous design. Regardless of it being minimal and to be improved later. And this combination didn’t exist in Pearcleaner until after Updatest shipped these features. That is the core concern. About the points like “I didn’t see your post, I use a third-party Reddit app,” etc... that doesn’t really address the pattern. This isn’t me claiming you copied a PNG pixel-for-pixel. It’s about how you adopted the same layout patterns, metadata structure, visual hierarchy, and feature set in very close sequence. That’s the definition of derivative work and it's frowned upon in the dev community ethically. Why this mattersAnd why it’s widely viewed as poor developer formWhen one developer releases UI/UX patterns or features, and another app in the same space adopts:
shortly after each release, it creates the impression of feature-for-feature cloning rather than independent design. This is widely seen as poor developer form in the indie dev community because:
About the “App Store inspiration” argumentYou also glossed over the major point: What does Pearcleaner do that aligns with the App Store UI? Other than what mirrors the structure Updatest introduced? For the record, Caskly (the original name of Updatest) existed long before your October 14th PR for the updater view, and it already implemented the same systems Pearcleaner added afterward. Your app never previously followed Apple’s design language and even now, it doesn’t. For example:
About feature timingYou keep saying things like “it was a feature request” or “I was already working on it.” But by that logic, Updatest could claim a “feature request” and then suddenly ship a built-in cleaning utility. Pearcleaner’s updater still breaks on Sparkle updates and has a lot of issues, which you've labelled as beta. It doesn’t solve the problems Updatest already solved. This makes it even harder to argue that these additions were driven by your app’s own design goals. About Brew adoptionUpdatest (formerly Caskly) pioneered the entire app → cask matching algorithm long before Pearcleaner added the same feature. There’s no denying the timing. It’s literally in the commit history. And I’m not asking you to stop building updater tools. I’m asking for originality and respect for the work that went into Updatest. Right now, Pearcleaner is implementing our features and UI 1:1... for what purpose? Why pivot into replicating Updatest instead of focusing on what made your app unique? The bottom lineI don’t care that you’re implementing similar features. It’s the UI that bothers me. For months, Updatest was the only updater app pushing toward a Mac-App-Store-inspired layout. All I’m asking is simple: Don’t replicate our UI structure and features immediately after we release them. Create your own design. Innovate. Bring something new to the space. Updatest brought a lot of new ideas into the Homebrew/App Store ecosystem including some ideas MacUpdater didn’t bring, ideas that didn’t exist before. Pearcleaner’s recent updates are a 1:1 match, and now the UI is too. That’s the issue. |
Beta Was this translation helpful? Give feedback.
-
Actually wrong. Brew has absolutely 0 way to map existing manually installed applications to casks in ANY single command, nor does it validate a cask is actually meant for a specifically manually installed app. This is 100% created by Updatest. @suchsu if you're going to contribute to the conversation, try and not be wrong. |
Beta Was this translation helpful? Give feedback.
-
from my point of view, as a non-coder and a user, your app provides function that I already use with out any your app installed, and you charge it for something around $10, all you are doing is simply try to eliminate a open source competitor. |
Beta Was this translation helpful? Give feedback.
-
You really should stop trying to contribute to this conversation. Nothing you are saying either directly relates to the issue that's been created, nor is valid or factual. I'm not trying to eliminate an open source competitor, you should re-read anything I've said. I'm happy @alienator88 is competing in the space, it's how he's doing it that's my problem. Hell I used to be an avid user of PearCleaner till this stuff started happening. No one has said if you don't use my app you can't adopt a manually installed app to Homebrew. Absolutely no one. Even the website advertises how to do it. You really need to stop trying to white knight something you don't understand. |
Beta Was this translation helpful? Give feedback.
-
plus, what gives you the privilege to prevent other developper from developing your competitor app? you could have copy right on an algorithm, but not a function, the accusation for "copying brew adoption" is absolute nonsense. |
Beta Was this translation helpful? Give feedback.
-
Yeesh. I'm not even going to try and comment on this. I think it's time you shift your focus elsewhere. |
Beta Was this translation helpful? Give feedback.
-
so what makes you think that you are the only qualified developper to GUI this function? |
Beta Was this translation helpful? Give feedback.
-
|
Sorry @alienator88 for all the spam here, I can imagine how annoying it's getting. I blocked that guy, he's trying to rage bait for no reason. |
Beta Was this translation helpful? Give feedback.
-
|
All good, I had this whole thing typed up as a response because there were a few things I could refute there in your last message, but I'm not going to waste time with the back and forth anymore, as per my last message. I've asked twice what you'd consider some appropriate changes to create some separation between the two views and that keeps getting ignored for some reason and only focusing on the rest. I'm not going to take "just change it to something else" as guidance. I don't know what YOUR threshold is for too similar, so you're going to either need to throw some ideas out or we drop this and move our separate ways. I still think your whole UI is a complete ripoff of the App Store, but whatever you say. Like I said before, I think you're a chill dude and I would rather we come out of this in a positive manner, so if that's an option, great. If not, I'm not going to lose sleep over it. I'll wait to hear what ideas you have, if any. I'm out for the night now so we can continue this tomorrow. |
Beta Was this translation helpful? Give feedback.
-
|
@alienator88 thats fair. And you're right, I got caught up in the argument a bit and glossed over what you asked me (sort of, I addressed it but not clearly). I think we can. At this point I think there's something we can do to adjust both of our UIs. If you want to keep using the Mac App Store layout (which to me, really doesn't fit your design language at all) I can't force you to change it. My only request is either of these options:
What I'd really like to stop is the hundreds of emails I'm getting about this issue, and that was half the purpose of this thread. I had to show my community I'd at least try and bring this to you. I don't want our relationship strained (any further than it might be) and I absolutely do NOT want you to stop creating your update feature. |
Beta Was this translation helpful? Give feedback.
-
|
I will look into some options to display the metadata and maybe action buttons in the header in a different way. My only concern is this. While yes, currently Pearcleaner has it's current/dated UI on some pages, that was always going to be temporary. Eventually when I start changing the other pages too, everything will blend in together better with the newer UI. So I can't go too far the opposite direction either. I hope you understand. For now, I'll move this issue to the discussion tab. Thanks Jared. |
Beta Was this translation helpful? Give feedback.
-
|
So based on your recent changes and mine to Updatest, are you feeling we differentiate ourselves enough? |
Beta Was this translation helpful? Give feedback.






Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
New Feature Checklist
Request:
Hey friend, I know you and I have been quite friendly and I've been helpful to you, but I do want to highlight an issue I'm seeing in your most recent updates that have been reported to me directly by users of Updatest.
You seem to be 1:1 taking the UI of Updatest (which the core concept of the app differs from yours and is meant to use the Mac App Store UI as inspiration) and while I'm all for healthy competition (keep doing awesome work) I'd really like to request that you come up with your own, unique UI for how you handle this. I'm not entirely sure why you've gone down this path and I hope this doesn't come across as hostile.
Desired Solution:
You should take the time to create your own UI that doesn't take an almost 1:1 inspiration from Updatest. See screenshots below:
Updatest:

PearCleaner:

Additional Context:
Beta Was this translation helpful? Give feedback.
All reactions