Hi again,
I currently see two paths for myself.
1
The first is to work on UIKit-cross-platform, e.g. further developing the code, creating example apps and doing some ground work in community outreach. I would be able to be more specific in my proposal.
This has a lot of pros, including:
-
I come from an app development background and feel very comfortable there
-
I’m genuinely excited about this project and would be extremely motivated
-
I have already been successfuly contributing to it
-
potential contributions can easily be broken down into small steps, each of which would already mean something (in contrast to a big target that could work or fail)
-
I have great access to core contributors of that project (relieves some mentorship effort)
The issues are whether this can be considered for this program and whether @compnerd (or somebody else) would be willing to mentor it. It clearly is an offshoot project, but also clearly aligned with current goals of the Swift community, as I understand them.
To quote swift/docs/Android.md:
Does this mean I can write Android applications in Swift?
No. Although the Swift compiler is capable of compiling Swift code that runs on an Android device, it takes a lot more than just the Swift stdlib to write an app. You'd need some sort of framework to build a user interface for your application, which the Swift stdlib does not provide.
And the top Google result fot "Swift on Android":
Obviously UIKit or any high level frameworks are not available, so your Swift app for iOS cannot magically run on Android — you can use Swift for business logic code, but you will have to re-write all user interface and OS dependent parts specifically for Android.
This is what UIKit-crossplatform does. It still has a bit to go, but as mentioned before, we already use it in a decently popular production app. The vision of a single Swift codebase being a valid cross-platform soluton is very exciting and could do wonders for the adoption of Swift. And it's almost there, it just needs to cover a larger part of UIKit and be popularized. I can do a lot for both in three months.
In the short time that is left, this is the only proposal I can come up with myself, from the heart. I will absolutely understand if you say this is a hard no. If it’s more of a "hmm", please let me know what points I should touch on when advocating it in my proposal and how I could align it better with the goals of Swift and GSoC. As I understand them now, it's something that could be considered. I believe there is a spirit of some experimentation to GSoC projects, and TensorFlow for example proposes some that also seem a little fringe/tangential.
2
The other path is that I get input from @compnerd, my UIKit-crossplatform friends, or other members of the community regarding what they see as a potential project there, and if it’s something I feel I can do and get behind, I will make a proposal out of that. The problem here is that it’s very hard to pull off in 3.5 days, as I (very unfortunately) have personal obligations that require hours of work every day for the entirety of that period. Nevertheless, I’d like to try and see what happens - I’m asking here and I wrote to the aforementioned friends.
To @compnerd - I was not able to send you a PM here. Do you have a form of contact that you could share with me? I’m asking because if I make a proposal, your feedback on it could mean a lot, and with so little time left, a forum thread might take too many hours for a back-and-forth.