Embed URL

HTTPS clone URL

Subversion checkout URL

Thanks to languages like Go and Rust the developers can now build software
for the command line that can run in every architecture and system where those
languages can compile. And this is awesome, you code an application which can be
compiled in Windows, Mac OS or Linux, getting a full market of users just like
with web applications.

Now, the next step is create graphical applications using the same code for those
systems. To get this goal is necessary to build libraries of low level that
provide access to graphics, audio and input. Later can be built a graphical
toolkit. Step by step.

But to move forward with a project like this one is necessary a lot of time,
effort and mainly engineers with knowledge at low level about graphics and audio.
So the only way to speed up all this development is having and/or getting money.

Note: although I've named to Go, I've to say that the libraries will be developed
in Rust because its memory model provides a lot more power and flexibility than Go
which is necessary for libraries of low level. Anyway, if you are a Go developer,
don't worry because I'm sure that the Rust guys will add some day a mechanism to
access to Rust libraries from Go day but they're busy now in other topics.

About the license. I discard GNU licenses because I want that they also can be
used in propietary software. I also discard the simple licenses like MIT and BSD
because they don't protect against the patents. So I choose between Apache 2.0
and MPL 2.0.
And my preference is MPL 2.0 because it is designed to encourage contributors to
share modifications they make to the code (like GPL), while still allowing them
to combine the code with code under other licenses, open or proprietary (like BSD),
with minimal restrictions. It is also compatible with both the Apache License and GPL.

Also, if I can not get money outside of me, then my idea is to add a clause where
i.e. the companies earning more than 200k/year would have to pay a license once.

One way to finance it is through a startup where I'll be working hard for 6 months
on this new year but I'm realistic since it could be a failure or I could not
get money from it like I hope.
So I am here to ask advices to planning it correctly:

I've thinked in to use a platform for crowfunding but I don't think that there
is people interested in supporting a project where they are not going to get a real
value into a short time.
One option would be to know if developers would be interested in financing this
type of project since finally all we would be beneficiaries, and only those
financing it would have access to code before of releases, and voice to decide
about the development.

The another option would be to ask money to big software companies, at least
to companies that build desktop software like Adobe. I don't think that Google
would be interested because its business is related a web apps/services.

Would be better to have an office where all peple can work into the same space
or that every one can work from their houses?

Which would be a fair salary having in mind that the libraries will be free/open
source? Does the salary should be the same for everyone, regardless of he's working
from his country (workers from home).
One advantage of Europe, at least for entrepreneurs without economic resources are
the low salaries of engineers respect to USA, and there are great engineers in
Eastern Europe (Russia, Romania, Poland).

Just my thoughts over graphics libraries

There is not serious competition in the graphics world so there is space for another player.

DirectX is a propietary library specific to Windows so I'm not going to wrapping around it because I would be sold to a library of closed code where Microsoft could remove some APIs in new versions of Windows, like it has already happened.

OpenGL is commercially unviable to use it on Windows, due to the fact that it just doesn't works on most machines by default.

Then, the great failure of building libraries over open specifications is that every company finishes developing what they want; you only have to see how has been implemented HTML and CSS in the different browsers. This would be solved whether they there would be worked in the same C/C++ libraries. Cooperation vs Isolation.

In addition, there are some issues with the Khronos Group:

API developers are not game developers. The API developers of an open standard need to be communicating with the community instead of make it with hardware vendors.

There was a total stop of communication on all levels regarding all topics, it was impossible to reach members of the group.

So I'm not going to repeat the same error. When you have a library fully developed and documented that works in the main platforms then the developers will be happy.