# Problem

Writing free software for macOS is impossible because a developer (like me) first needs to become part of the
“Apple Developer Program” to sign Applications and that costs $99,== a year. A lot has been said about this subject and some Apple fanboys/girls will say that this is a sensible way for Apple to control software quality. To some extent I would even agree as a valid certificate shows that your software hasn’t been tampered with and, if it turns out to be malware, Apple can revoke your certificate. The cynic in me though also sees it as a way to extort$99,= a year
for each developer out there. How can I have my creations effectively distributed for fee if I can not sign it for free?
That would make it less than free for me and ruin the fun in my hobby projects…

# Solutions

## Option 1 - Ask money for it

The thing is that if I start asking money for my hobby projects it is not a hobby anymore but a business.
What happens if you buy my software? You expect support right? of course, you do. I would too.
The beauty of writing Open Source software is that I don’t have to, but can if I choose. Some of my hobby projects
die after a time, either because I don’t use them anymore or other projects are more fun to do.
Whatever the reason I can stop with a project whenever I want to. Users can still benefit though, because if they really want to
they can improve or build it themselves and continue using it.
So this solution of asking money for software brings too many obligations with it and that would kill the hobby.
Not an option.

## Option 2 - Only source code

I can distribute my projects as “only source code” through media like github.com and I actually do.
The issue with this one though is that the conversion rate of using my software will probably be very low.
Only those really interested in a specific project and with the knowledge to compile/build etc. will be able to make it work.
That is probably a very low percentage of the total possible user base.
A part of the fun of hobby projects, for me at least, is to see that others like it too and have fun with it. So I want my
user base as large as possible.
That means that I need to create a distribution for easy installation….. and that needs Signed Software…. pfff and we
are back at the beginning.

## Option 3 - Donations

Ask for donations. Very insecure as I have no idea if my software will be used, and I don’t beg. I would also have to do
marketing and stuff and that is not why I write software. I write software for myself and if others like it that makes it more
fun, but I do it for me.
So donations are welcome, but I will not invest any time in it.

## Option 4 - Unsigned Software (reluctant choice)

The solution I will be going for, for now. I will create distributions so users can use it easily if they want to, but they do
have to perform an extra step to make it work. I hate this is what it is, but I refuse to pay a yearly fee to write free stuff.
I really hope Apple finds a way to change this policy.
So unless I get donations of more than \$99,= a year, I will be doing it this way for now…

# Open “Unidentified Developer” Apps On Your Mac

The example I give here is for my M4Baker.app, but the procedure is the same for any unsigned software. Be careful what you install
just because it is not signed.

The installation process will not give any problems as that has nothing to do with signed software.

Once you have downloaded the distribution (M4Baker_x.x.x.dmg) and installed it, you try to open it and get a message
like the one at the beginning of this article. Choose Cancel at this point.

• Open a Finder and navigate to the Applications folder.

• in Finder either go to the Applications folder as shown above or press command+shift+A or through the menu > Go > Applications
• Scroll to your freshly installed app (M4Baker.app) and right click with your mouse on it.

• Choose the Open option…

• Now the application wil start normally
• You only have to do this once for a version, so the next time you can start the application the “normal” way like you are used to.

## None of the above

If the above description does not work you can also enable it through the System Settings:

and if you know what you are doing, you can also type the following in the terminal to enable opening Unsigned software:

# Conclusion

I find it difficult to accept that I can not distribute my creations for free any more in this day and age.

Words like unsigned / unidentified in combination with security makes me feel ‘dirty’ and ‘untrustworthy’ while I am
neither. I don’t like the feeling.

I will distribute my software only through my own site. If you download my creations through anything other than “*.ivonet.nl” or site(s)
I specifically name (e.g. my github space) I would say they are really unsigned and unidentified and not to be trusted.
If downloaded through my site it comes from me, and I have built it 😄 (unless I was hacked, which I hope will never happen).

I do not write malware and if that ever is found in my creations I will be just as much a victim as you are!

All the other disclaimers / licenses and stuff still apply of course! I am a creator and not infallible!

I hope you enjoy some of my creations and don’t hesitate to leave comments or post a tweet @ivonet

Cheerz,

Ivo.