Jump to content
You must now use your email address to sign in [click for more info] ×

Recommended Posts

I'm a developer and I like studying other apps and how they are structured, something people call software architecture, especially for software product lines, theme of my masters thesis. This suggestion is based on the knowledge I gained through multiple projects throughout my life and also the Affinity suite itself. I'm also aware the following is true only of the Windows versions for reasons will be made clear ahead but I doubt the approach is different on the macOS version.

Here it goes.

---

While licensed as separate applications, the core of the Affinity application is contained in a few files (a few DLLs) shared between the multiple apps. Nevertheless, this actually means that when licensing the different application we are actulally licensing the usage of a few parts of an existing API for a particular purpose, depending on the app itself. Thus, Affinity Publisher - with both Designer and Photo functionalities incorporated - is the whole application and the easiest part of what I call Affinity Studio in this idea.

So, the whole of my idea is to drop this separation in multiple applications and incorporate them all into a single one (Affinity Studio) with the ability to receive plugins that could explore the entirety of its funcionality through the existing API. I know most people thinking about scripting and plugins on this forum are demanding languages like Python or JavaScript but the reality is that a part of the Affinity suite (including the aforementioned DLLs) is developed using .NET and it would be easier to enable plugins developed in it: makes the lives of the developers (both at Serif and those writing extensions) easier because developing tools are already avalible (Visual Studio has a free community edition and is probably the same tool Serif already has licensed) and exposing the API is a lot simpler (most of it can be seen by incorporating the those DLL to any .NET project). Limits could be stablished but I see everything could be created: new tools, personas, functionalities, file formats, and so forth. Also, despite being mostly centred around C#, .NET allows for a multitude of languages to be used to develop projects (including Python and Javascript).

Before anyone can ditch my ideas as unfeasible because of the macOS version, I must remind that .NET Core is already cross-platform (although with some limitations) and can run on macOS and even Linux and if I'm not wrong .NET 5 (droping both Core and Framework from its name) will be released by the end of the year and may have complete support for fully cross-platform desktop applications, dropping also the need to support a separate version for macOS and opening the door to a Linux release with little to no extra cost for Serif.

Also, I don't remember exactly where but I've already heard from someone from Serif that the file format for all applications, despite the different file extensions, is exactly the same (go ahead, change the extension of a file and open it, I'll wait) so files are really not an issue but I'd suggest reducing to a single extension for simplicity (I'd go for .afp :)). And we don't need to have access to the details of the file format If the exposed API provides the means to incorporate file importers/exporters (read files and create objects on the canvas and vice-versa) that could solve the biggest issue I see in the forums, support for multiple additional file formats, which anyone should recognise it may be an impossible task to accomplish by Serif alone no matter how big their team is.

With this approach, Serif could focus on providing one fully capable application worrying only about its core functionality and leave the rest for the community. No matter how big the API currently is, all we would need is a simple "hello world" so we know where to start and how to incorporate these into the finished product. Plugins are also a means to create software product lines, which is my field, and is a means used by many applications over the years. I know with my knowledge I could be providing some of the funcionality requested in the forums and many many more with the proper means to. I know many in this community feel the same and I cannot wait to see what could come out of this (even scripting with Javascript or Python could be achieved throgh this).

If your concert is security/privacy of users, I'd state I don't really remember any platform using plugins being overly concerned about it, which I understand could be a big issue depending on Serif's values but I believe this is something the community could regulate on their own: some more concerned would work on evaluating extensions and providing feedback to us all about which are safe to use and which are not and word will eventually spread. If Serif is really concerned about security, they could incorporate the means to remotely block (blacklist) harmful plugins (please, don't tell me you dont know Apple and Google can do that on your phones).

Sorry for the long post but I see a big potential in applications like the Affinity suite given the proper means for expansion and I would love to work these ideas out without having to be part of their team itself.

I think the ball is in your court now, Serif

architect student (5/10) · designer · developer · geek
Affinity Publisher 2.1.1 / Affinity Designer 2.1.1 / Affinity Photo 2.1.1
Windows 11 Pro #22H2 / Dell G15 AMD Ryzen 5 32GB RAM

Link to comment
Share on other sites

You know @mac_heibu, you are most probably right. From what I have seen in this forum over the past year, Serif might just be the kind of kid who does not even consider the opinions and ideas of others kids they play with and just takes the ball home, leaving those other kids to play empty handed unless they have another ball. So yes, I might just be wasting my time here talking about ideas that will never come to light but this is the space we were given for it and I'd rather believe what I took careful time to express will reach at least someone at Serif that might think this is it and perhaps at least once try to push it forward. Otherwise I'd rather just try and find another ball to pay with.

About the only thing in my post that drew your attention, I don't know how familiar you are with English idioms but to say "the ball is in someone's court" is a very common expression and means it is up for someone to make a decision, to make the next move. But again, who am I to be teaching English, right.

architect student (5/10) · designer · developer · geek
Affinity Publisher 2.1.1 / Affinity Designer 2.1.1 / Affinity Photo 2.1.1
Windows 11 Pro #22H2 / Dell G15 AMD Ryzen 5 32GB RAM

Link to comment
Share on other sites

I know this expression. But for me it is, well, kind of strange, to start a conversation and tell somebody, who isn‘t involved yet, that now it is his turn to react. You did your job, and now you expect, that Serif should do his one. Would be quite different, if you mak e a proposal and ask for reaction. But throwing something in front of somebody‘s feet and tell him: „React!“ is, as I said, quite strange. But do what you like to do and check the user‘s reactions …

Link to comment
Share on other sites

  • Staff

@Lmpessoa

What you are suggesting is technically very easy but practically much harder to market. It appeals to someone technical like me but I think it would alienate the creatives our software is meant to appeal to. Furthermore this is my opinion and not an official line.

Patrick Connor
Serif Europe Ltd

"There is nothing noble in being superior to your fellow man. True nobility lies in being superior to your previous self."  W. L. Sheldon

 

Link to comment
Share on other sites

@Patrick Connor

Indeed might appeal a lot to technicals like us and I actually believe this is what would make it a successful move. Serif would keep it just as useful as it already is for creatives, maybe even easier since you would not need to manage three different apps, and technicals could step in at what they do best and solve minor problems such as file format support without the need to be post of Serif's payroll.

Have you used SketchUp? It is a little more constrained as to what can be done with plugins but it does not alienate creatives, it helps us by creating new tools to help solve specific problems the developer does not think are problems for the community. As for marketing the feature, I don't see SketchUp shifting is focus from a creative tool into a development platform for that.

Also, as a developer, I'd suggest taking a look at Eclipse: it has a broader aperture for extension but it allows devs to literally create even new products within the original without having to change the actual source (which is available but does not need to be). I am thinking of an Affinity Studio as something in this sense, that could be transformed into tools even Serif didn't think of or have the resources to provide. The core could be continuously refined/optimised, keeping focus on the main personas and leave the extras to us.

@mac_heibu

I didn't start the conversation with the expression, I actually ended my first iteration with it and I know everyone posting their needs and ideas here is expecting a light from Serif just as I am, after the very first iteration. I just made it explicit.

architect student (5/10) · designer · developer · geek
Affinity Publisher 2.1.1 / Affinity Designer 2.1.1 / Affinity Photo 2.1.1
Windows 11 Pro #22H2 / Dell G15 AMD Ryzen 5 32GB RAM

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.