Slide 1

Slide 1 text

Xamarin: 温故而知新 Atsushi Eno

Slide 2

Slide 2 text

Xamarin: the Mono company ✣ Xamarin: 2011-2016 ✣ Mono: 2002-* Xamarin is a mobile-centric Mono company. Mono was NOT about mobile before.

Slide 3

Slide 3 text

What were the Mono companies? ✣ Helix Code / Ximian: 1999-2003 Miguel de Icaza and Nat Friedman founded it for GNOME development ✣ Novell Linux desktop development

Slide 4

Slide 4 text

1. Mono? It was just about open source .NET alternative, right?

Slide 5

Slide 5 text

The Mono project has a clear goal: to become the first-choice platform for Linux software development.

Slide 6

Slide 6 text

GNOME had always tried to have a good support for multiple programming languages, there was a large crowd of people out there that would like to use the GNOME libraries from their favorite programming language...

Slide 7

Slide 7 text

Mono characteristics ✣ Mono was for better Linux (GNOME) desktop app development. ✣ Ximian chose .NET (ECMA C# and CLI) as the development framework. ✣ Nicely integrated with existing C libraries (P/Invokes) ✣ Mono was born from Linux/GNOME based Open culture.

Slide 8

Slide 8 text

For Example... Many ADO.NET providers that worked with Mono

Slide 9

Slide 9 text

.NET Bindings for Linux C library .NET library glib, pango, atk, gtk, cairo, glade... gtk-sharp gnome, gconf, gnome-vfs, ... gnome-sharp gtkembedmoz gecko-sharp (outdated) opengl OpenTK

Slide 10

Slide 10 text

Embedded Mono ✣ C-based Runtime: easy to embed ✣ Mono on {Moblin, Maemo, Meego} mono on ARM ✣ iPhone ✣ Android ✣ PlayStation Vita

Slide 11

Slide 11 text

Wherever Microsoft does not show up, there is mono

Slide 12

Slide 12 text

2. Working With The MONO TEAM How, how and how?

Slide 13

Slide 13 text

Working on Mono means... ✣ Complicated position: popular or not? ✣ Open source oriented ✣ In the global community ✣ In general at advanced (low-level) position among .NET devs.

Slide 14

Slide 14 text

How I JOINED THE TEAM? Project website translator (2002-)

Slide 15

Slide 15 text

How I JOINED THE TEAM? Patch contributor (2002-)

Slide 16

Slide 16 text

How I JOINED THE TEAM? Maintainer (2002-)

Slide 17

Slide 17 text

How I JOINED THE TEAM? ✣ Employee at Novell (2003-) ✣ joined Xamarin almost when launched but as an intl. contractor (no local office)

Slide 18

Slide 18 text

How I WORK? ✣ Global hacker team: work only online all online: chat, emails, source code repos WFH, no reason to go to office No invasive activities from local office (you *can* still get involved, to some extent) ✣ Mostly working in the night... European from around 3-8pm (JST) East coast Americans from 11pm-ish West coast ... 2am-ish and DST changes

Slide 19

Slide 19 text

Global actually means...

Slide 20

Slide 20 text

ALL IN ENGLISH ✣ You will have to read and write it... ✣ But tech. English is different: simple Good specifications / docs are written in simple English Easier than Harry Potter! ✣ Better if you can speak and listen to, but not mandatory. I couldn't at all. "Can you write the details on email later?" ✣ You can survive!

Slide 21

Slide 21 text

CAN I (YOU) DO THE SAME? ✣ Mono - maybe not as easy as before ✣ AOSP, dotnet: the `Cathedral` model ✣ Young Bazaar projects are easier to join getting job and/or making money is different matter. You judge them.

Slide 22

Slide 22 text

THANKS Questions?

Slide 23

Slide 23 text

END