Day 1 – Luis Gustavo Ferraz Aoqui – Educating 1 Million Data Scientists with Open edX

Day 1 – Luis Gustavo Ferraz Aoqui – Educating 1 Million Data Scientists with Open edX

October 4, 2019 0 By Ronny Jaskolski


Okay, so good afternoon everyone. My name is Luis. I work for IBM. And, at IBM, we run a project
called big data university, which promotes your website to offer
free education on big data, and data science, and everything else
related to data pretty much. So I’m gonna start off,
talk a little bit about me. I just prove myself to the community. Again my name is Luis, I’m an engineer at
IBM and I’m leader of BDU project at IBM. Our team is based in Toronto, Canada. But I was born in Brazil and that’s me enjoying a nice
summer afternoon in Toronto. Yeah, that’s how it looks like. So, now I’m gonna talk a little bit
about how big the university is. It’s pretty much,
we talk as like a community. So, usually when people think about
an IBM project, they go, okay so, they are people in suits. They’re going to try to sell me stuff. But we’re not on a sales team. We are on on-technology sites,
emerging technologies. So, I don’t know how to sell stuff even
if we want to, we don’t know how to. So, our stuff are pretty much free,
it cost for free and we already strived to make communities so we want to
hear the feedback from the people. We organize events, meet-ups,
mostly in the Toronto area, but now we are trying to go worldwide, so we are having events in Asia, Europe,
some are here in the US as well. And one of the key things about big
data university is that we follow this philosophy of at your place, at your pace. So, all of our courses are pretty
much you just follow yourself. There’s no instruction based. You can take it anytime you want. Take as long as you want to finish it. And all of our courses are usually
developed by industry experts. So we try to either in-house talents, such as what other IBM members that want
to teach about big data and data science. They create course for us, as well as reaching out to other
companies to either make a partnership. So for example, we have our course that
has been in partnership with data camp so it’s like you do the labs
on their environment but you also access the content
at big data university or we also purchase content from other
companies such as our Scala course that we did in partnership with Lightbend,
which is the creator of Scala. Again, all of our courses are free. They are made for the community. But, when you’re talking about IBM free
stuff, you kind of get why is it free? You’re supposed to be
making money out of it. Our idea is that we want
to teach skills to people. We want to give people the knowledge and
then when they are skilled, when they have the knowledge,
then they’ll come back to us and say hey I made a course
in big data university. In there, on your labs, you kind of use
this big insight thing that I like it, how can we use it in our company? So, our idea is that we
spread the knowledge and then just hope that you guys come back
to us and buy our products, pretty much. But, no strings attached,
you can take the course as you want. And we’re always looking for
contributors, either making courses or just running local meetup, or just come
talk to us if you’re interested in helping us out, or just getting
your contents somewhere due hosted. Some numbers involve big data university. We have more than 60 courses
right now on our websites. Those numbers are kind of hard to
tell because they’re transitioning. And that’s the whole point
of this presentation. They’re transitioning
from Moodle to open edX. So the numbers are mostly
on the moodle site but they’re being migrated to an open edX. Open edX as twice as we progress. We have over 400,000 students
[INAUDIBLE] website, more than one million course enrollments. So we have a good enrollment ratio there. We also have a nice completion ratio. It goes, usually it gets to like 5%,
even more some times of completion. And, we’re currently deployed in three
language, so biguniverse.com for English, and we launched in China,
.com.ca, and Brazil .com.br. I’m gonna talk about more
details bout each of them. They kind of take their part of
a story of big university and how the open edX relationship went on. This is our team at IBM. So, myself and
Marcio are mostly responsible for big data university,
we’ve been working mostly on that, Grace responsible for
day to day operations and stuff like that. Paul and Sayeed are data scientists,
so they’re responsible for community outreach and
also developing content for us. Leon is our manager, so he’s the boss,
so I have to say nice things about him. Antonio, he manages more of
our social side and content. He writes for our technical blog,
he does [INAUDIBLE] stuff. And Raul is kind of the businesses
side of the big university. He reaches out to people,
to other businesses and stuff like that. So does Rob. So Raul and Rob are kind of
the business side of that and pretty much the other guys are developers. They help out on big university
whenever they can but they’re mostly focus on other jobs. Marcio and
I are more focused on big data university. But everyone jumps in
whenever it’s needed. So, when I was planning the team I kind
of separate people into three areas. I think that’s fairly common for
any learning website, any learning environment. So, at one point have the educators,
which are people that create courses, they create content. On the other side have
the business people. They are the ones that
are reaching out to partners, trying to get more people to join,
stuff like that. Then you have the developers which are the
technical people that implement stuff and make everything run nice and smooth. I’m on that side of the triangle, so
I’m a developer, not good at speaking, not good at selling,
not good at anything, but I try my best. So just a quick quiz,
who identifies better as educators? Okay, business? And development? Okay, nice. So it’s a very even distributed,
that’s good. But, I’ll be focusing more on
the development because that’s my area. So, I want to talk a little
bit about all the areas, even though our folks were in development,
I’m gonna start with the educators’ parts. One thing we do at big university, we try
to make short courses and that’s why, probably, we have a lot of enrollments,
completion rates, because on the online universe, there are so many distractions,
Facebook, Twitter, Reddit. It’s like a concentration
destruction machine. You get off rails very quickly. So we tried to make the course shorter and
interesting. Very straight to the point of the course. We try not to make very generic courses. We try to make them very engaging and
very focused on an area. And also giving labs so
people can do in practice. We also have learning pass on our website
that’s guiding through students into our catalog of courses. As I mentioned before I
have over 60 courses and it’s kind of hard to say where do I start,
where do I go next. So that’s what learning for
students to their journey. The five by five rule of thumb is
something that the row came up. It was sort of a framework for
our courses. So the idea is that we have
five courses per learning path. Each course is five modules or five steps. Each step has five videos, and so forth. So, five is kind of a magical number for
us and we try to organize our courses like that
to keep them short and focus to the point. And also as I mentioned before we tried to
bargain with industry as much as possible both in content and
acquiring content for others. As a partnership as well hosting
our content somewhere else or hosting someone else as
well on our platform. As well as events such as hackathons,
meetups, stuff like that. On the business side we are starting
to actually deploy what we call private portals that’s for
enterprises and companies that want to train their staff, their employees
into big data and data science. So the idea is that we will create
a separate area that only strict access control, so only the employees of
the company will be able to access it. And in there the employers can
create their own learning paths. We give them all the content,
all of our course, and then they pick and choose whatever they want and
they group them together. However makes sense to them because each
business is kind of very different from the other, so they have different needs,
so they want to teach different stuff. You can assemble your
learning paths depending on what kind of skills you want
to give to your employers. There are a lot of technical challenges
there so for example businesses have firewalls, they sometimes block
YouTube and so it’s been fun. We also have what’s called the video
ambassador program that’s part of the community building part it’s when
we reach out to different entities. Either universities, companies, or even
just a group of people that are interested in making part of our
university community. And we help them organize events,
we help them teach their courses. So we provide all the material,
all our knowledge of how to do the stuff. We gave it to them and then they just
run it locally on their own city or their own university, stuff like that. Another partnership we
made was with the UN. So the animations this year,
or was it last year, I think it was last year,
they released our global roles so 15 global roles and we are part of that,
trying to spread out the message. So our idea is that using data science and data you can actually make the world
a better place, so there’s a whole section of our website dedicated to that and
some upcoming events. If you guys are interested,
make sure to check the website. So that was pretty much it,
for all that part that I’m not the best of to talk about, so now to
the fun stuff, at least in my perspective. I wanna talk a little bit about
the university stack evolution. So where do they come from, and how did
it get to the current point that we are. So big university started around 2010,
2011, I think. It was called DB2 University at the time. And the idea was,
DB2 was widely used in the industry but startups don’t, I think I’m
going to use DB2 for a project. It’s not going to happen. For any reasons, mostly because of costs
and you have to sign contracts after that. By that time IBM was releasing a free
version of DB2 called DB2 Express and we needed people to be trained at it. We need people to know how to use it so
they would actually use it. So the website became
very simple deployment. It was just a Moodle website
running DB2 of course. Because, got to do what you are preaching. It had a simple PHP front end. And if kinda looked like that. It was something. It was always sorta a side project so
we call it an IBM initiative. We don’t say it’s an IBM project
because technically it is not. It’s something that IBM sponsors,
IBM allows us to do it in our work time, and IBM contributes material to that,
but it’s not technically an IBM thing. So it’s kind of growing by itself. We didn’t put much effort, but
then the community started growing, we saw the registration going up,
going up and I say, hm. Maybe there’s something there. So when I join IBM in 2013, one of my first assignments
was kinda improve the website. First thing we worked
on we put a WordPress front end of the model,
so it was more dynamic. It was easier to change stuff. You don’t need a programmer
to change the website. And that’s kind of how we stayed for
few years. And by that change that’s how it
looks like we have a new design and stuff like that. But on the learning side,
the elements we’re using, the model still looks like this,
kind of not very inviting. It was just a group of links,
not very interactive, not very motivating for people who
had to click through the videos. It was not the best experience for the students, so
we started looking for alternatives. Prompt internet. And then, there’s something better
out there, we’re looking for it. Open edX. We make a really quick comparison
between Moodle and Open edX. See if you were to do the change. Here’s our quick analysis of Moodle. Again, I’m not trying saying
Moodle is a bad product. It’s actually a great product. It’s been worked on by amazing people. It’s been out for a while. It’s very good for, we found, university courses or high school courses
where you have the instructor right there. You have the traditional classes. So it’s great for starting content. If you do a lecture,
you put your slides there. Each student can download. But it’s not that great for
delivering content. It’s not that engaging. It’s not as motivating. It is a more mature, it’s been a while for
us, it’s been field tested a lot. It’s easier to deploy because of
the architecture is more monolithic so it’s just one big piece that’ll
just say there you go and it has some nice plugins and
themes that you can extend. Now on the other hand
the Open edX side you have a much better learning experience for
your users. You have a great course
offering to the students. Very easy to use. We have our courses creators. They were pretty much
quickly up to speed with DB2. It was a very modular architecture
which was kind of great because you were kind of stuck with
this tech that we had before. And we wanted to change it,
make it easier, more modular. It has some nice features,
microsites, edX modular, that’s something that looked very
interesting for us at the time. We didn’t know exactly what it was but
we said, sounds interesting. So we decided to make the change. And as we start looking at it we go,
okay this is what we have right now, this is what we have to go to,
and we’re like, okay. This is not gonna be as easy
as we thought but well, let’s go baby steps, so
first thing we did was launch in Brazil. While we launched it in
Brazil we did edX directly. We didn’t try to do it over, we just said okay we’re starting there,
let’s start fresh. This is back in 2014 I believe, 14 or 15. 14, yeah. And we started Birch. It was just a normal,
a small deployment to see how it goes. Everything was going well, then we
decided to launch in China as well. Then we had some problems in there, like YouTube doesn’t work,
they had different social media. But It kind of works and
it was a nice experience for us. This is what it looks
like behind the scenes. So instead of running just a full
stack directly, which is what edX intel recommends as production,
we kind of break it down a little bit. So we have our edX core, so
the platform is in one server. And then we separate it my SQL
mogul to different servers and then what we call, you had what we
call the common cluster I think it was similar in the play books
this name we kind of kept it. Common class is the stuff that don’t
change that often so, elastic search, mem cache D, execute,
these things that are fairly stable. We’ve just put it in the same
server living together. And then the workers that kind
of do the background job. We kind of separate them so
we can scale them. If we need more workers,
we can just bring up new ones. So, these were our goals
when we started this. So, we want to improve
the learners experience and the engagement that they
have with the courses. We want a scale of architecture so
we don’t get stuck to our monolithic, this actor we had before, and we also
wanted to automate our deployments so it’s part of this architecture. You have to be able to bring
down servers on demand and if something goes wrong you should be
able to quickly be able to bring up a new instance and just leave it there
in place and everything works fine. So that was our goal. We are making progress towards it. And then this happened. This is the IBM press release,
this was roughly a year ago. Yes, June 15th. IBM announced that they would
train 1 million data scientists. And most importantly this was
during sparks segment last year so they also would be training
1 million data scientists. And most importantly,
I also made it to the press release, so you can see my picture there. And the second thing that
was most important was that. Big was actually a big part of it. So it’s listed right there
as one of the partners that IBM is working on to reach the goal
of training 1 million data science. So when we got the news,
we kinda had to add another Meco there. You know,
we need to get to a million registrations. Our manager just say this is our goal now. This is [INAUDIBLE] you do. And it kind of feed to us because in
order to do that, we kind of have to catch all the other,
we need to improve the user experience. You need to improve the user engagement. We need a skill to back
track to to stand alone and we need ultimate deployment to be
able to support our architecture. So kind of fit to our goals but
the big is kind of scary I must admit. It’s a big number but
we’ve been working on that. So when we are doing this process, we kind of say okay we have
a small team and a big goal. We need help. So reach out to this
company called Andela. Andela is a company that
works mostly on Africa. They tried to find brilliant students. They trained them and they offered
their service for companies, so we’ve got first students to help us out. They will be managed by Andre and they will help us ever since
during this migration to open edX. So, this is our goal. We had to reach that architecture in
order to reach our 4 million goal. And also,
not only the protector had to change, but also all our data, all our content had
also to be migrated from Mudo to Open edX. So, how did you do it. And that’s why you guys are here. So let’s just jump in directly to that. So, when we’re doing the migration,
we follow steps. So first step was just straight up digging
to the code and see where we are heading because when you read stuff, it kind of
sounds all nice and flowers everywhere. But when you go to the code,
then things are Little more complicated. So first, and again,
this is just how we did it. It’s not like an official Open edX thing. I don’t work for Open edX so
I cannot recommend this way, but just saying, this is how we did. It kind of worked for us, so far. We started with the rows and
playbooks on the edX Repository, there is the play books,
the configuration repository. And in there there’s
a folder called Playbook and then EXE that’s what the edX team used for
their production environment so figure… If it’s good for them,
it might be good for us. So that’s where I recommend you should
start, you know look at the playbooks. See how things are things are broken
down from the scary chart to the actual implementation. Then check the variables,
because they have variables everywhere. If you look at the files you can see
a lot of the gamma files defining All sorts of variables and
also configurations. These variables, it is interesting to keep
in mind that they have kind of dual roles. One is configuration. So database passwords, database hostnames,
stuff like that are mostly configurations. But they also have feature
flags which enable or disable some parts of the websites. So the core search for
example is a feature of provider, all these kinds of stuff are mostly
configures on the variable. So it is important for you to understand,
what they are, what they do, what the effect and
also how they relate to each other. So that’s another step. How to understand how
each component on the. Crazy charts talks to each
other how they’re related. And that goes back to
the variable because for example some of the variables,
they let you have the same value. So on our common service on your platform,
you need to have the same key, the same API key as on your forum, otherwise
they won’t be able to communicate. So that’s another step, big step
that you need to understand is like how the variables relate to each other and
just how the platform works. What happens when users access
this part of my platform, what happens when they Click Play
on the video, stuff like that. It’s really important for you to really
go down to the code and see how it goes. It’s very hard in the beginning but
I promise it gets easier. So the next step is after you get
familiarized with all the code and how the platform works,
you can start doing your own job. You can start thinking of
how you can architecture your deployment because there’s no recipe. There’s no one solution for all. It kinda depends on how
much load you want, how many users you’re gonna have,
how much cost you can take. How much resources you have available,
so all that you have to take into consideration when you’re
creating architecture. And also which components you want
because Open edX is a huge thing, but it’s very modular so you can pick and
choose the parts you need. So for that we kind of came up with
this architecture more or less. So we broke it down to data bases and
then our platform running in the server. Then our front ends to WordPress and
then our workers and then execute. So that’s how we decide to go,
pretty much each box is a server. And then whatever’s inside
is what’s deployed there. But as we were doing that we kinda
figured out, well, there’s a lot of work. We have a huge load. Expect a huge load. We’re gonna have to bottleneck
on our databases for sure. We need to make a cluster. We need to manage the cluster. This was kind of getting to a headache. So around the same time IBM
bought a company called Compose which is formerly known as
Mongo HQ if I’m not mistaken. What they do is provide
databases as a service. They say cool this is
exactly what we need, we need someone to manage our databases. We looked at their tech catalog and they had Mongo, they had Alexa search,
they had MQ a lot of stuff that we needed. That’s the other point, so taking advantage of offers
of service as much we can. They are usually more expensive but they
might be able to save a lot of headaches. I know that edX runs on Amazon so there’s
a lot of Amazon service if you can, and if you have the means then
I think you should use it. For us at IBM we have software which
is our platform as a service and so we try to use whatever we can to make sense
so we changed our deployment a little bit. We look at that catalog and say,
well they don’t have MySQL, so let’s use Postgres, so
we just swapped it out. The stuffs in blue are the ones
we are using for compose. Elasticsearch they do provide, but it’s a
different version that’s not compatible to Open edX, unfortunately, so we had to
run our own cluster, but that’s fine. You’re gonna save a lot of headache in the
future I’m pretty sure, managing backups, performing stuff like that. Next step, then you start doing stuff. Now you just have your plan. You have all your architecture. You understand the code,
then you start coding. My recommendation is that you start
by forking the configuration repo and start creating your playbooks,
your roles, your variables. Now that you have your architecture
you know to group stuff. Then you can start doing
it with more confidence. That’s my presentation. So that’s how well we did. We pretty much create a folder inside
the configuration report and just and just put our stuff there. I think that’s kind of
a good idea to have. Later on. You could deploy your servers. So you’d bring up as
many servers as you need. And then you start building
an inventory file. And [INAUDIBLE] has this nice thing
in the inventory where you can create groups of servers. So that’s sort of how our
inventory looks like. Groups are the ones in square brackets,
and usually the server cannot have two
properties, a role and a environment. So we have our edX app either
on staging or production and depending on the environment, the variable
values are going to change and you can target those values with
a folder called group force. So inside the group force, if you just
follow the same name as your group, you can set the variables there and then they will apply to run
time only to that server. So it’s a very nice way to
organize your variables. So next step to organize
your progress searches so you created all your playbooks,
you created roles. But your variables, they usually have,
well, they will have sensitive information like database IPs, database,
passwords all this kind of stuff. What we do is we create a folder, at the
same level, as the configuration report, called configuration secure,
where we keep all the sensitive stuff. And then we use sim links to link
them back to the root directory and then that’s where we run
the [INAUDIBLE] commands. If you want to go one step further, you can use [INAUDIBLE] vault
to store this kind of stuff. And then,
next step is structured migrate data. One important question that you have
to ask is, what do you want to migrate? This is how model database
schema looks like. There’s a lot of tables there. It was very important for us to actually
pick what we gonna migrate automatically, what we can migrate manually, and
what we can just leave it there. So, whoops. There are three things that
are pretty much most important there. The user information, courses, and
user progress inside the course. So, let’s start with the user migration. On Moodle you have this table called User. Depending on the prefix, usually it’s
MDL by default, but something user. We have a lot of columns about
the user information, so user name, first name, last name, stuff like that. On the Open edX side, these values are kind of stored in
two tables on your MySQL database. So author users store the user’s ID, the
user’s name, e-mail, they join [INAUDIBLE] log in, and the user profile stores
the name, the language, city and country. So, [INAUDIBLE] this, the Moodle table
into two tables when we migrated. So these fields went to that table, and
then these fields into this table, and we also created a intermediate table
where we kinda relate the two. So, it just stores the ID of the Moodle,
the ID that the user had on Moodle, to the ID that they have now on Open edX. Just troubleshooting if you need or
just if you forget something we can just always relate back to our
previous database very easily. So that was migrating the users. As far as the other two,
we just didn’t do it. It was just too much work. It’s completely different structure. It was just easier to just go and
manually migrate the courses and it was also an opportunity for
us to review our content so as we were migrating the courses, we’re actually going through all
the materials, making sure it’s all okay. Updating stuff,
making better use of Open edX features, so all the X blocks that are available. So it’s a good opportunity to kind of
refresh the course and make it better. As far as users progress,
again we’re going to migrate some of it, like the certificates and
which course they finish. But we’re not gonna migrate
fine grade details like which videos have they watched, or
where they are, it’s just too much work.>>So, after you migrate the data,
you start to customize it. The open edX layout is nice,
but you wanna have your brand, you wanna have your color scheme and
everything, so start building your theme. There’s been a lot of improvements
on the compressive theme. There’s still work to be done, I believe,
but it’s very good at this point. You cannot customize everything
directly on the theme, so you might need to change the platform. My recommendation here is that you
try to avoid changing the platform as much as you can. Just for upgrades, it’s just easier, you
don’t lose stuff, you don’t get conflicts, stuff like that. And on your theme,
make it as specific as possible. So when you’re building a theme, you pretty much copy the file that you
have on the platform over your theme. I would recommend just remove
everything that you don’t need. Just leave what you need there because
it’s just easier to maintain later on. Another thing that we did and it worked
very well for us, was great American site, defined by this variable here, enable,
there’s a feature flag by the way. What it does is it kind of changes
the home of your website, so whenever you just go to www whatever
slash, you are redirected to your marketing site and in there, you have
the opportunity to do whatever you want. In our case, we did WordPress,
but it can be whatever you want. And it is very good, because it gives you
the opportunity to create more contents and give it more customized for
your users. And we actually studied how
it acts to [INAUDIBLE] works. You can figure out they kinda
do something like that. So again, if it works for them,
then I guess it’s good enough for us. So where we are now and
what we wanna do next? Last week, we worked really hard to
make it available, our edX deployment, our open edX deployments. So if you go to website right now, you
should still be able to access the model, that’s still our main LMS but
there’s nice banner that you can go to our beta website that is actually running
open edX, so you can take a look there. If you had an account before,
you should be able to login normally. We already migrated you. If not, then just create an account
in the beta I would say is better. But yeah, go check it out. If you have any feedbacks, there’s
a support tab on the right-hand side. There’s actually support and feedback, so just feel free to let us know what you
think and if we can improve anything. What’s left? There’s still a lot of work left to do,
that’s why it’s still beta. We wanted to make production just go and
switch directly but there’s still work to do. So first one is make actually scalable so
we have a distribute factor but in order to really make it scalable,
there is a lot of work to do. So the main thing is file uploads,
for example, by default, it will go to your server. And that’s not scalable,
because if you put in a new instance, then that one will not have your server. So you need a data layer that kind of
shared between all of your servers. So we don’t have that yet. That’s what we’re working on. The code brain strategy, it’s basically how you wanna keep
up with the open edX commits. When we are starting, we were kind of struggling between
should we go to named release or should we just go to the release
branch and just get the latest stuff. We kind of chose name release just
to have more regular updates. But something we are thinking about,
how to incorporate bug fixes and stuff like that from the main
repo into our platform. Another thing is to add more components. Pretty much we have a basic deployment,
but we want to add the analytic service
which we didn’t employ yet. We want to put everything that’s new,
like the notes, API, and everything that’s great about edX,
we want to incorporate into our website. Next step is just to dominate the world. Pretty much we want to spread out,
we are in Brazil and China. We want to go to as much countries as
possible and just deploy, never end. Then you have intertranslation,
motor language support and all these technologies that
we need to figure out. Later we want to start
contributing back more. We’re just starting out, so
we’re just learning, but as we learn, our ideas should actually
contribute back whatever we learned and whatever we can help out with. I think, yep, so if you want to learn
more about Bid U and the business side, there’s gonna be a panel tomorrow
that’s gonna be hosted by Nate, the guy that was speaking before. So tomorrow, 1:15,
at the Bishop Auditorium, I’ll be there as one of the panelists. And that’s it for it. Thank you.>>[APPLAUSE]
>>I have a question.>>Sure.
>>How long did it take to do the migration?>>So
the migration itself is pretty quick, we just take a few minutes
because we made it from start to make it efficient,
because we had a lot of data to migrate. But in order to get to the point
that we actually had the scripts to do the migration,
it took probably three months or so. To learn the database
structure from the source, database structure from the destination,
and how we can efficiently move data between
them, it took a couple of months.>>Thank you.>>Yes.>>Cost wise, would you say you’re
finding open edX to be a better choice than Moodle or the other way around?>>Cost wise, I would say Moodle would be cheaper
because it’s a simpler architecture. As I say, it’s a monolithic, actually it’s
just a big thing that you just deploy. In one server. In one hand, it’s kind of hard. Your only option is to scale up. Meaning if you’re hitting
performance issues that you just need a bigger machine. And it kind of stuck to that. But on the open edX, your initial cost is
kind of expensive because you deploy all these different servers, but
it can be smaller servers and more efficient servers so you can do
office scaling and stuff like that. So it really depends
on where you’re going. Since you are aiming for such a high goal,
you expect a lot of traffic, being able to scale our infrastructure
is very important for us. Because on the weekends people don’t
actually access as much as during the weekday. It depends. [LAUGH] Anything else?>>[INAUDIBLE].>>Right now we are on Dogwood’s. Yeah, if you go to beta. .com, it’s dogwood. Yes.>>What version of are you writing for?>>So that’s an interesting question. We were stuck at Moodle 2.0
because in the beginning when we decided to do a DB2 database,
we created a DB2 driver for Moodle and then we stopped maintaining it. So we didn’t work with the latest version
and you’re kinda stuck with that. That’s actually another reason why we
wanted to move to a different LMS.>>Okay, so thank you.>>Thank you.>>[APPLAUSE]