[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MirageOS-devel] Question about pioneer projects

On 24 Feb 2015, at 14:28, Thomas Gazagnaire <thomas@xxxxxxxxxxxxxx> wrote:

In summary: try to connect with things you already know and like, otherwise trying to learn both a new language and new protocol/systems might be a bit a challenge.

I can't agree with this enough.  The way I personally engage with new systems is to be quite goal oriented. E.g.,  your goals could be:

- 'have fun': you can't beat just deploying a homepage unikernel and prodding it in interesting ways or switching your personal homepage over it (see Mindy's blog posts on this topic).  I'd recommend buying a Cubieboard2 and using the xen-arm-builder to get your own home deployment up and running with a minimum of fuss.  Writing blog posts about your learning process is *extremely* useful to help document common problems for other people.

- 'learn OCaml': I'd again recommend the web framework angle for this, since it's a very quick way to get results. Rudi's Opium framework is a nice route into getting into building some real tools.  Although it's often viewed as boring, a *really* good way to learn the language is to fork a protocol library and add some test cases.  You will learn your way through the build systems, basic abstraction facilities and use of APIs quite quickly, as well as contributing very valuable tests back to the project.

- 'implement a protocol': if you know one protocol (e.g. uPNP) and would like to scratch an itch ('turn on my Sonos speakers') then starting a standalone project and letting the list know works well.  Luke Dunstan has been doing this with his multicast DNS implementation (which I'm myself itching to try shortly!).

- 'learn hypervisors': Mirage has a wealth of libraries that make it the easiest way to learn how Xen works.  If you want to really dive into cloud computing, then the Xen stack and Mirage libraries are a quite superb way to pick up the concepts.

The pioneer projects are just guidelines to spark off your thinking -- you should mostly be motivated by your own problems and interests, and we're happy to swap things around on that list as appropriate or useful.  Above all: please don't be afraid to ask questions on the list.

MirageOS-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.