1
00:00:00,000 --> 00:00:07,420
So here we are at EclipseCon, which concurrently there's a sort of OSGiCon, if you will, running

2
00:00:07,420 --> 00:00:08,420
with it.

3
00:00:08,420 --> 00:00:11,120
And we've got two guests here, would you like to introduce yourself?

4
00:00:11,120 --> 00:00:12,120
Sure.

5
00:00:12,120 --> 00:00:18,360
My name is Joe Ridder, I work for ProSyst, I am heading the mobile business at ProSyst,

6
00:00:18,360 --> 00:00:23,360
so we put OSGi on mobile phones, mainstream phones, that's what we do.

7
00:00:23,360 --> 00:00:24,360
Right, right, right.

8
00:00:24,360 --> 00:00:25,360
And yourself?

9
00:00:25,360 --> 00:00:29,240
My name is Roman Rolofsen, I'm a software architect at ProSyst.

10
00:00:29,240 --> 00:00:34,200
And I'm mostly working on enterprise stuff with a combination of OSGi, etc.

11
00:00:34,200 --> 00:00:35,200
Right.

12
00:00:35,200 --> 00:00:39,580
And I represent a ProSyst in the OSGi Enterprise Expert Group.

13
00:00:39,580 --> 00:00:42,120
Oh, okay, so you're actually working on that spec there.

14
00:00:42,120 --> 00:00:48,300
So then how does it, are there enterprise OSGi things on mobile devices, do those two things

15
00:00:48,300 --> 00:00:50,420
come together, or are they separate things?

16
00:00:50,420 --> 00:00:58,480
No, they're not separate, I would say, since you see this in ERCP for instance, ERCP is

17
00:00:58,480 --> 00:01:08,080
an Eclipse code base that enables you to execute enterprise applications on mobile phones.

18
00:01:08,080 --> 00:01:13,820
So it's the mobile counterpart for RCP, and that is what Eclipse is based on.

19
00:01:13,820 --> 00:01:14,820
Right.

20
00:01:14,820 --> 00:01:17,440
And so what are some sort of scenarios people use for that?

21
00:01:17,440 --> 00:01:20,280
What are people running on mobile devices for business?

22
00:01:20,280 --> 00:01:31,040
They would be running, you know, rich mobile client applications like Salesforce apps, maintenance

23
00:01:31,040 --> 00:01:33,700
programs that people use when they are out in the field.

24
00:01:33,700 --> 00:01:34,700
Right.

25
00:01:34,700 --> 00:01:37,580
So there could be someone, like you're saying, out in the field fixing something and they need

26
00:01:37,580 --> 00:01:41,040
a interface back to the backend system instead of having a clipboard full of paper.

27
00:01:41,040 --> 00:01:42,040
Right.

28
00:01:42,040 --> 00:01:43,040
Right.

29
00:01:43,040 --> 00:01:44,040
Right.

30
00:01:44,040 --> 00:01:45,040
Right.

31
00:01:45,040 --> 00:01:46,040
Right.

32
00:01:46,040 --> 00:01:47,040
So how did you guys choose to use OSGi for all of that?

33
00:01:47,040 --> 00:01:48,040
Well, it's a standard.

34
00:01:48,040 --> 00:01:52,640
I mean, was it like there was no other option or were there other things you evaluated?

35
00:01:52,640 --> 00:01:53,640
Well, that's a good question.

36
00:01:53,640 --> 00:01:58,640
I think you don't have that many options in the mobile space.

37
00:01:58,640 --> 00:01:59,640
Yeah.

38
00:01:59,640 --> 00:02:00,640
At least not yet.

39
00:02:00,640 --> 00:02:05,640
So, so far in the mobile, you know, market has been driven by standards and OSGi is a

40
00:02:05,640 --> 00:02:06,640
standard.

41
00:02:06,640 --> 00:02:09,640
Is there a lot of work sort of supporting multiple platforms?

42
00:02:09,640 --> 00:02:13,640
Like if, if I'm one of these field people and I go back to my desktop, like it, does it,

43
00:02:13,640 --> 00:02:18,640
the things transition easily or, or is there kind of a weird, you have to sync things back

44
00:02:18,640 --> 00:02:20,640
up or how, how does that, that sort of phenomenon work?

45
00:02:20,640 --> 00:02:21,640
If, if that makes sense.

46
00:02:21,640 --> 00:02:25,640
I mean, as an analogist thing, you know, you could be using a blackberry to check email

47
00:02:25,640 --> 00:02:26,640
or something, right?

48
00:02:26,640 --> 00:02:30,640
And then you go sit down at your laptop and the transition between the two theoretically is

49
00:02:30,640 --> 00:02:34,640
somewhat seamless as far as, you know, the same email is marked and you've sent email.

50
00:02:34,640 --> 00:02:38,040
Like, are these, these mobile things, something that's the one sort of syncs up back to the

51
00:02:38,040 --> 00:02:43,040
main server when they come back into the office or, or, or, I don't know.

52
00:02:43,040 --> 00:02:45,040
I mean, how does that stuff work out?

53
00:02:45,040 --> 00:02:46,040
Well, it does.

54
00:02:46,040 --> 00:02:49,040
I mean, there's, you need to sync your data.

55
00:02:49,040 --> 00:02:50,040
Right.

56
00:02:50,040 --> 00:02:52,040
With the back end somewhat, some way.

57
00:02:52,040 --> 00:02:57,040
So, so there is, you know, infrastructure that, that is an OSGi that helps you to do,

58
00:02:57,040 --> 00:02:59,040
for instance, data provisioning.

59
00:02:59,040 --> 00:03:00,040
Yeah.

60
00:03:00,040 --> 00:03:01,040
And initial provisioning.

61
00:03:01,040 --> 00:03:03,320
And that is what you get from OSGi.

62
00:03:03,320 --> 00:03:08,720
But then, and it's also, you can also have your own synchronization mechanisms built on top

63
00:03:08,720 --> 00:03:09,720
of OSGi.

64
00:03:09,720 --> 00:03:10,720
Right, right, right.

65
00:03:10,720 --> 00:03:13,720
To sync your data, your contacts, your contract sense, whatsoever.

66
00:03:13,720 --> 00:03:15,720
So, so there are interfaces indeed.

67
00:03:15,720 --> 00:03:16,720
Right.

68
00:03:16,720 --> 00:03:20,720
But, but when it comes to, to putting, um, OSGi on different phones, then, um, then that's,

69
00:03:20,720 --> 00:03:24,720
you know, a comparatively simple exercise because it's all pure Java, right?

70
00:03:24,720 --> 00:03:25,720
Right.

71
00:03:25,720 --> 00:03:30,120
Um, there's a bit of glue code between OSGi and, and the phone platforms to make it

72
00:03:30,120 --> 00:03:31,120
work.

73
00:03:31,120 --> 00:03:32,120
Yeah.

74
00:03:32,120 --> 00:03:33,120
Um, yeah.

75
00:03:33,120 --> 00:03:35,120
The VM, for instance, in the first place.

76
00:03:35,120 --> 00:03:36,120
Right, right.

77
00:03:36,120 --> 00:03:40,120
Um, but, but there's another couple of components that need to be ported, but in general, it's,

78
00:03:40,120 --> 00:03:41,120
it's pretty, pretty easy.

79
00:03:41,120 --> 00:03:45,120
Do you have to have sort of separate development tracks for each phone or how, like how, how

80
00:03:45,120 --> 00:03:50,120
much sort of write once run anywhere sort of effect that you get using OSGi?

81
00:03:50,120 --> 00:03:53,120
I think there's a lot of, I would call it write once test anywhere.

82
00:03:53,120 --> 00:03:58,120
So, I mean the VM, um, we move a lot of the burden when you want to deploy different devices.

83
00:03:58,120 --> 00:04:04,720
So, you have to test a lot and the, the main differences, um, are in the, in the GUI stuff,

84
00:04:04,720 --> 00:04:10,520
for example, the RCP or maybe it's a mid P application, but the, the logic part of the application

85
00:04:10,520 --> 00:04:13,120
is more or less, and you can move around more or less seamlessly.

86
00:04:13,120 --> 00:04:14,120
Right.

87
00:04:14,120 --> 00:04:19,120
I mean, what, what's your sense for what they're trying to do?

88
00:04:19,120 --> 00:04:24,120
Is it just sort of like make OSGi run on the server side or is it a little more broad than

89
00:04:24,120 --> 00:04:25,120
that?

90
00:04:25,120 --> 00:04:27,120
That's, it's a bit, a bit more broad, I would say.

91
00:04:27,120 --> 00:04:32,120
Once you move OSGi to the enterprise space, you have to, well, face several more problems,

92
00:04:32,120 --> 00:04:36,120
like database access, for example, class loading issues, et cetera.

93
00:04:36,120 --> 00:04:37,120
Yeah.

94
00:04:37,120 --> 00:04:38,120
So, and that's what we are doing.

95
00:04:38,120 --> 00:04:43,120
How to extend the spec to, to, well, get support in the platform and the user doesn't have

96
00:04:43,120 --> 00:04:44,120
to use it anymore.

97
00:04:44,120 --> 00:04:45,120
Remoting is a big issue.

98
00:04:45,120 --> 00:04:49,120
So, this is something you want to be solved by the platform, not in user code.

99
00:04:49,120 --> 00:04:50,120
Right.

100
00:04:50,120 --> 00:04:52,120
So, distributed applications, for example.

101
00:04:52,120 --> 00:04:53,120
Yeah.

102
00:04:53,120 --> 00:04:58,120
And you guys are at that, that transition between, uh, the sort of more traditional use of OSGi

103
00:04:58,120 --> 00:05:00,120
and then people trying to use it for enterprise stuff, right?

104
00:05:00,120 --> 00:05:01,120
Right.

105
00:05:01,120 --> 00:05:02,120
And moving it off of the mobile things.

106
00:05:02,120 --> 00:05:05,120
And so that's, it's, it'll be interesting to see what happens with that.

107
00:05:05,120 --> 00:05:06,120
Yeah.

108
00:05:06,120 --> 00:05:11,120
So what you will see this year is a really exciting, uh, Sprint is going to launch what they

109
00:05:11,120 --> 00:05:12,120
call Titan.

110
00:05:12,120 --> 00:05:13,120
Right.

111
00:05:13,120 --> 00:05:17,120
And, and Titan is a, you know, full blown OSGi stack that they put on, on their mainstream

112
00:05:17,120 --> 00:05:18,120
phones.

113
00:05:18,120 --> 00:05:19,120
Right.

114
00:05:19,120 --> 00:05:22,120
On, on smartphones, but also on, on, on feature phones.

115
00:05:22,120 --> 00:05:23,120
Right.

116
00:05:23,120 --> 00:05:26,120
And then after that point, uh, I mean, what are the different markets that those phones

117
00:05:26,120 --> 00:05:27,120
will be?

118
00:05:27,120 --> 00:05:28,120
Is it just, I guess, Sprint's only in the U.S., right?

119
00:05:28,120 --> 00:05:29,120
Or is it other places?

120
00:05:29,120 --> 00:05:30,120
Right.

121
00:05:30,120 --> 00:05:34,120
So far they only sell in the U.S., unfortunately, but I guess that that'll, that'll, you know,

122
00:05:34,120 --> 00:05:35,120
drive market adoption.

123
00:05:35,120 --> 00:05:36,120
Yeah.

124
00:05:36,120 --> 00:05:37,120
Yeah.

125
00:05:37,120 --> 00:05:40,120
That's, we're always like way behind here in the U.S. about fun phone stuff.

126
00:05:40,120 --> 00:05:43,120
And, uh, everything's always locked down and crappy to use.

127
00:05:43,120 --> 00:05:45,120
So it'd be great if that stuff actually opened up.

128
00:05:45,120 --> 00:05:46,120
Yeah.

129
00:05:46,120 --> 00:05:47,120
Well, great.

130
00:05:47,120 --> 00:05:48,120
Well, thanks for taking this time.

131
00:05:48,120 --> 00:05:49,120
Thanks.

132
00:05:49,120 --> 00:05:49,120
Thank you.
