If You Build It, They Will Come: The Power of Custom Development Services for Higher Education

Share

What happens when you have specific technological needs but you don’t have in-house development expertise? Or maybe you want a partner with experience to augment your teams? From web apps to integrations to data visualization solutions, we service institutions of all sizes. Get a deep dive into the customized solutions we’ve built to improve the student, faculty, and admin experience. From deep integrations with external products to customizing how learning is managed, we can help you get the most out of Canvas.

Share
Video Transcript
Talking over about Just ways you can customize and integrate in Canvas and really talk about some of the work that our professional services team has done in instructure to give you examples of of what's possible with Canvas, what we can do for you, and how we can help you and your teams be successful, whether it's helping you realize your vision and goals by building a complete solution or just helping your team get started on the right foot with sharing some of our best practices are less learned so that your team can be successful more quickly as they build on canvas. We all know the canvas is an amazing platform. Sometimes our users just require a little bit more. They need a little bit more help. They need they need something to just make their job easier, and the canvas as a platform really allows you to do that. Little bit about myself.

I've been in structure for just over ten years. I lead our services teams in, North America and LatAm. Interesting story. I was hired on an instructor to work on a custom project with Canvas. And I think for the first year, I saw very little of Canvas.

This custom project integrated with Canvas and did a lot of really great things and took advantage of the power of Canvas. So that the users could benefit from that. But all the work I was doing was outside of Canvas. So it really speaks to the to the power of the platform and it's been amazing for me over the last ten years to really watch how the ability to develop on cameras up to the platform is truly involved. And it's really powerful.

So I do have an engineering background. Wish I I wish I did more of that sometimes now. I enjoy it, so I'm really excited for this presentation. And I do enjoy getting out on, various types of bicycles golfing. And if you wanna talk about DIY projects and getting in way over your head, that would be a fun conversation as well.

Okay. So we'll see if, okay, we had a video here. It's not gonna work. Just imagine you're seeing a nice little sizzle reel of all of the things that we've built, playing, and I don't know why it's not playing. So we'll skip over that.

Oh, maybe maybe it'll play. Let's try it. Let's try it. Okay. This is not gonna work.

We'll skip that. So once again, imagine you saw that. Yeah. It was it was good. It was really good.

Is this gonna move now? I totally broke it. Okay. Well, that wasn't Canvas that you saw obviously, but it was it was pretty great. Gonna have to click here. This clicker's broken now.

We'll just do it this way. Okay. Yeah. Isn't it great? So integrations, imagine you saw all these really great integrate that look just like canvas, but they weren't canvas. And we'll show some examples in a minute.

But that's the that's the magic of canvas, is that you can build integrations with looking native and structure has UI library so that you can build your applications to look and feel just like everything that the instructor team builds. Which just builds a better user experience for your users. They don't have to know that they're using a tool that's not part of Canvas. They just know it's Canvas and that it does what they need it to do and that they can be successful goal. And we share a little bit about our our team and instructor.

So our custom development team is composed of several groups of of consultants. So our systems architecture team is is one of the teams that if you work with us, you'll probably meet very first. They work very closely with customers to understand their requirements to help build their vision and help them understand how they can build on top of the Canvas platform. Once we we know the solution that we're gonna build, we've got teams of project managers to help you be successful. Keep the project on track and make sure that our teams and your teams are aligned on the work that's happening.

We've got software engineers that can help build and create your vision, really, you know, make the magic that everyone sees. Man, manifest all of the work that everybody on both sides are doing behind the scenes, quality assurance engineers to help ensure that what we're building works as it should, that it's it's tested and functioning before it goes to your users, and then UI UX designers. Once again, make sure that that look and feel is really what you want it to be and that it blends with canvas in a seamless way. Our team has a lot of experience. We do on average over three hundred unique engagements per year with customers.

In Canvas, we've got a lot of experience in building different applications, different integrations. We've learned a lot of hard lessons. We can help you to avoid those those lessons in your integrations. We're currently hosting over a hundred and forty applications for customers. So we host, support and maintain those applications for customers to make sure they continue to run-in their functioning.

And then we host over a hundred and thirty data warehouses for customers with their Canvas data. Really as we look at our our services teams, there's three main areas that we we like to focus on. Custom applications, I think, is the thing we get most excited about. It's fun to build something new and have something visually that's appearing in canvas. The user c, you give that great feedback on.

So we do build custom applications. We can help you build custom applications as well, and help enable your teams to do that. Data services, we'll talk about that, but just different ways to get data out of Canvas to to use that data to drive important business decisions, and then consulting. We can consult whether that's consulting with your developers on how to approach solving a problem in Canvas, whether it's, you know, the requirements gathering and helping you architect a solution. We can help you do that as well.

So we're gonna go through a couple of examples here with some customers that we had applications that that we've built for them. And we'll cover just a wide variety of applications really with the idea that we want you to see just some different problems that the customers have solved the way we approach solving those. Hopefully to give you some ideas for maybe solutions for problems that you're experiencing or understanding of challenges that other schools are going through. So ball state university, they approached us with a need to collect final grades and attendance common problem. We actually see this problem quite a bit, and we solve it in in a few different ways.

For this particular customer, they did have a need to enable their teachers to actually validate the grades before passing those back to their student information system and to validate attempts. They wanted them to be have an active part of that process. And so we build a solution for them. And it's kind of small here, but it presents the the teachers with a view of their roster in the course. They give all the student information, the relevant information that's important for them to see to identify the student.

They can see the canvas grade And then a pre populated, drop down based off of, the the grades that are available to publish, of what that grade should be. And then the teacher has a flexibility to change that grade. If they know something, you know, late submission that didn't get published in time or they need to change the grade for any reason, they can do that. They can also take the last attendance date, which is a calculation we perform based on their requirements. They can override that or take our calculation.

And then they can choose to publish those to their SIS system. So before they publish, they get a validation of all the students that they're publishing, then they can publish that to their SIS. Administrators can configure all of this on the system. They can control what the grade scale is that's used on this, what the time frames when teachers can publish, These grades are whether they're publishing midterm or final grades or both. They can control that at the course level, the account level.

So they have a lot of ability to configure how this works in the system as well as seeing audit trail of when these grades are published so that they can make sure that teachers are publishing grades. And then on the back in don't see is the flexibility to control the output format of the grade so they can get a format that they want for their SIS, you know, several mechanisms, whether it's a direct post to their SIS, whether it's an TP transfer. Different mechanisms to transfer those grades. So a lot of flexibility for the customer in how the grades are transferred, control over how teachers are submitting these grades. And then an interface that allows the teachers to manage the grades in a way that isn't easy for them to to use.

If we look at another example, this is NewTech University or NewTech Network. And they've got some really unique requirements that they came to with. They've got a very unique philosophy and approach that they use in how they teach, how they wanna structure their assignments, and they're learning within canvas. Something that they could have made work with Canvas, but for their teachers, it just didn't didn't fit. It didn't feel natural the way they wanted to to do it.

But they wanted to use Canvas as a platform and have all of the power and benefits of Canvas as a platform. So we built this, this custom grade book for them. So it's really unique. I mean, just visually it stands out right away. This is something that doesn't look like canvas, but In this case, it was important.

They wanted something that looked like what they were familiar with, what they were used to. They had a custom SIS before, and a custom integration, and they didn't wanna lose that. But they wanted all the flexibility of canvas. So we built this unique grade book that allows them to create new project categories. That it rolls up assignments and the assignment grade contributions to those project categories.

It has a new UI on the right there to create assignments, enter the relevant information, They can then select an assignment and distribute the points from that assignment across multiple project categories. So an assignment can contribute to these different categories with the weights they want. They get a dashboard that shows them, you know, the activities against that. Or the assignments against the various categories, how they're weighted, total points available. You get a nice board here that shows administrators and teachers kind of a roll up of how students are performing against those categories.

In just a lot of tools for them to be able to degrade the way they want to, present the information to students the way they want to. Have all the power and flexibility that Canvas offers, in in teaching and managing assignments, but with their philosophy and unique approach, to to grading. Another example, the University of Arizona Global Campus, they came to us with a a lot of of needs. They really wanted us to help them integrate end to end. So they wanted us help with their provisioning of students, courses, enrollments inside of Canvas, as well as grade passback and attendance passback to their SIS.

They were using campus, you, I believe. And then they also wanted us to help them manage their course content. They had a team of designers that were building out all of their course content. They had their instructors who We're teaching the content. They didn't want them to have to interact and and manage their teachers.

They didn't wanna have to worry about making sure the courses were set up and ready to go. They didn't want their designers to have to do all that work either. So they had a a gap in there. So they approached us with, and how can we help them with their solution? And as we look at this, it's, you know, I've got one example application because their solution here was really a lot of back end work that saves them a lot of time that doesn't necessarily manifest itself with a with a user interface. So we we automated their SIS provisioning.

From campus view. We do great pass back and attends back pass back to campus view. We've got processes that take their courses, their designers build in commons. And based on term start dates, push those in provision courses for them in canvas, with the enrollments adjusting the start date so that their teachers have courses ready to teach with the content created by the designer. So a lot of things happening in the background, that our team has been able to automate and and manage for them.

And the one UI we do have here is for, their attendance application. They wanted to be able to exclude some assignments from attendance. And so we have an application that allows them to go in and manage what assignments are excluded from, the attendance, they can do it at the course level, the account level, the subaccount level. There's an audit trail on those assignments so they can see who excluded it when they excluded it, and make sure that they get the attendance recorded that they need to. And the last example of applications show you today is for, James Public School Systems.

This is, another unique application. This one's actually really fun to build. And it's an eligibility tool. They came to us and they said, Hey, we've got a lot of students participating in athletics. We've got really strict requirements on if they're able to compete or not.

Like, they have to have the academic performance that they need in order to compete. And at the same time, they only not they didn't only want to ensure that the students were eligible. They wanted to make help make sure the students were successful to be eligible. So giving, counselors away to to monitor the eligibility. So they could go and help students, with their eligibility.

So as we look at this application, it's an eligibility dashboard that really gives you just a an immediate view of here's all the students. Here's how They're tracking eligibility wise. Who's eligible? Who's ineligible? Who's at risk for becoming ineligible? So you can quickly get an at a glance view of of what those students are. You can filter it to to look at different students. And this view is, dynamic based on your role.

So if I'm an adviser, I'm only gonna see students that I'm an adviser over. If I'm a teacher, I'm only gonna see students in my courses. If I'm an administrator, I can see the whole the whole school or district. So it just gives them a added glance view. Some really unique elements that our UIX team worked on.

You see the students face on And that was really important. It gives you that personal touch as a as a counselor, if I see a student struggling, I wanna know who that student is and be able to to intervene with them and help them out. It allows them to manage exception weeks, you know, weeks that maybe holidays are happening and eligibility won't be counted. It gives them exports and reports and formats they need to correctly report the eligibility to their administrators, and those that they have to report to, they add some some communications they were sending out manually. So we automated all of that for them so they don't have that overhead anymore.

So really just simplifying the work they were doing and making it so they didn't have to go in and look at each of these students grades and all their courses aggregate that work. And they could get an at a glance view And instead of focusing on the work involved to check academic eligibility, they could focus on helping his students be academically eligible through a tool saving their time and focus those efforts where it really matters. Okay. So we wanna talk a little bit about our data services are available as well. So customer account reports, I think we're all familiar.

Well, maybe if you use Canvas, you're probably familiar with custom account reports. Our custom development team can build custom account reports for you. This is something that generally, if you're if you're building applications, we found it to be really beneficial as a way to get data out of cannabis. So a lot of times, make API calls get data out. APIs can be I don't wanna say slow, but, you know, if you're pulling all of your enrollments across all of your courses, that's a lot of data that you're pulling via APIs.

We can write direct queries against the transactional database, get real time data, aggregate it into CSV that you can then incorporate into custom builds. So our team can do that. We can also build custom dashboards. This is a unique dashboard we built that takes rubrics and outcomes aggregate sales across accounts and subaccounts. You can look historically over years and do comparisons year over year against rubrics and outcomes.

So our team can really work with you to understand what date is important to you. How can we help visualize that in a way that's meaningful to save your team's time and be able to interpret the data to make informed decisions to enable student success. We also offer hosted data solutions. We talked about those data warehouses that that we host. We've got hosted solutions on Snowflake, Amazon Redshift, and PostgresQL.

So data two services. We can host that data for you. We keep it up to date. So your team can once again focus on taking the data and using the data. Rather than spending time keeping the data up to date and managing that.

So we've got several solutions, for hosted data that we can offer you. And then consulting services, this is really baked into every engagement that we do. Everything that we do involves we wanna make sure that we understand what you're trying to achieve and we can meet those needs. So a lot of times, we I talk about these applications and big applications that we've built for customers. That's what we do a lot of, and I I think we do really well.

But if you just need somebody to help you understand, how can I go do that myself? Our team can step in and apply all those best practices we do when our team builds it to help your team build it as well. And so we're gonna talk a little bit about our process now, how we approach building out custom solutions. Just so you can see how that we approach that. So our process, and we jumped. First thing we do is define objectives and goals.

Like, what are the outcomes that we want to achieve? How many of us have been part of a failed project? Like, I've been part of so many failed projects. Usually, when I go back, I go back to my teams and we we evaluate why it failed, we didn't have clear objective outcomes and goals. We weren't aligned on what we were trying to achieve. So that's one of the first things we wanna do. I'm I'm amazing.

We all probably follow this. I've done it before, but you you move to a new LMS, and, you know, we have this tool in our old LMS. Well, we needed a Canvas. Well, what do you want to do? Well, we wanted to do what it did in our old LMS. That's great, and it it probably will meet your needs.

But what's the problem that you're trying to solve? Because there's probably a different way to solve it. Maybe it's better, maybe it's not. But if you don't ask the question, are you getting the best solution? So we try to really understand what's the problem you're trying to solve. And let's build a solution that solves that problem. Define user personas.

We are working with a lot of different people. They've got different unique needs. Let's understand who those users are, what their needs are, and how we can help build something that that meets their needs, or at least understand if it's not gonna meet their needs, that we're intentional about that. User stories. So we wanna make sure we create user stories for for all of these, as part of our process.

And we'll we'll jump into that a little bit more. And then define business requirements. Let's make sure we clearly detail what are all of the business requirements that we're building out as part of this solution. And then we're gonna document the requirements. So we'll jump into those a little bit more and then execute.

So objectives ago, as we talked about this a little bit, I kinda jumped ahead. But, you know, why are we doing this? Make sure we're clear on that. How do we know what success is? Let's define success up front. Let's get all the stakeholders aligned on success. So at the end of the project, we can go back and say, we were successful.

This is what we said we were going to do, and we did it. And then the one thing test, it's a test that we like to do. It's know, if you can only get one thing out of this project, what would that one thing be? Let's let's really try to drive and get what is that value proposition? That one thing is gonna make this successful. And let's at least make sure that that's accounted for. So defining user personas, What is what value does a person seek? We've all got different value proposition.

Somebody who's using software every day probably has a different value proposition than somebody who has to work with it once a month. Let's make sure we understand that. Once again, their job function, how are they using a software? What's the impact gonna be in their day to day? How does this person behave? Like, what what are their behaviors when they're using the software? Like, let's make sure that that is incorporated. In this in this change. You know, how is the system truly gonna impact their day to day? Is it gonna is it gonna make a world difference where they can focus on the academic integrity of students instead of spending time getting data to never act on it.

And so our user stories, and you'll see if we ever build you a statement of work, our statement of works are covered with stories. And we found them to be a really powerful way to describe the system. But as a as a user, I can do a thing so that Why am I gonna do that thing? And so we build out these user stories for all of the functionality, all the personas in our applications. Very common ones you'll see as an administrator, as a teacher, as a student, but those that are expanded to any user personas that are using the system. I'm defining business requirements.

How are the users gonna navigate the system? Let's really get into the details of how this software is gonna be used. What are the functions that are in there? What's the workflow to be implemented? A lot of times these integrations require integrations from multiple systems. Let's make sure we understand what all of those are, how they integrate What are the requirements gonna be in those other systems so that we don't get surprised as we go to build it? And then limitations, this is something we found to be very, very big. Let's call out what doesn't work or what's not going to be work? What's not accounted for in the project? A lot of times there's assumptions made. We wanted to clarify those and get those out of the way as quickly possible to make sure that we're all clear on what the project is so we can be successful at the end.

And here's an example of like requirements that we do, and it's it's probably really small. But, I mean, you can see the the star created course launch point for solutions that allow students to do the following. And then allow students to view completed Kama's badges, align to account level outcomes assessed in the course in which they are currently are previously enrolled. Here we've got clearing requirements. We're gonna see that students are only gonna see badges that are aligned to the account level.

For outcomes, in a course that are currently or previously enrolled in. So upcoming enrollments won't be included. So we just go through very clearly and try to document out. What are all of the the requirements that are gonna be part of that. The other thing that you don't see here is all of those user stories that we build out are lined to these requirements anytime we list requirements, we list out the user stories associated with those requirements.

So you can tie those two two, details together, and get a clear vision for what this application is gonna look like. And then we do the work. And I always, like, I get excited about the work. I'm always like, let's do the work. Let's do the work.

The work comes after a lot of pre work. And and that pre work is so important. And I I think it's easy to gloss over that. But if you do the pre work, the work is gonna be successful, and we're all gonna know what the outcome's gonna be, and we're gonna have a successful product at the end of that. So very important.

So once again, our process, define objectives and goals, define user personas, create user stories, define business requirements, document, the requirements and execute. And this is something that we repeated and iterated on over many years. It's something we found to be very successful. As we iterate it. It's it's funny thinking back to those ten years.

I go back to this. I I pull it up every now and again, we have a a statement of work that was written I don't know, maybe year two or three that I was at a structure. And it was it was a cover page. It was, one sentence description of what we were going to do in a signature page. And I I still to this day don't know what that what we built with that SOLW, I don't even know if we completed it if it was successful, but it's it's just a great example of not taking the time to correctly understand what it is we're doing to sure mutual success for ourselves and for our customers.

Okay. So we're gonna talk a little bit about the Canvas integration points. We talked about Canvas as a platform. It has many ways to integrate it. I mean, I think one of the great things about Canvas is it's open API.

You can interact with Canvas in pretty much any way that you want to. And the integration points are very similar. And this is weird. That was kinda weird with the colors, but it's hard to see. I apologize for that.

But we got we're gonna kind of classify things into two different types of LTI launch points, is we're gonna focus on the role based ones here. These are launch points that are going to differ based on the role that you have. So if we look at global nav, course nav, user nav, and the rich context editor, you can configure LTIs to have different, experiences based on your current role in that. So if we look at, like, Global NAV, That launch point, you can configure it to admin level role or member level role. And depending on how you configure that, you're gonna get a different experience, or it's gonna be available based on those roles.

So, global now admins will see it if you set it to admin. If and members will not see, meaning if you're not an administrator, you won't see it, like a student you can I know? It's like, I apologize. They were colored. I know. I know.

This is horrible. I apologize. And I don't know. I can't probably can't change it now, but there's there's first two columns on global nav, have checks, and then there are x's and the others. And these slides will be available as well.

But you can specify those roles and control where these LTI launch points appear for users Once again, just really driving the experience that you want to have. If you want students to be able to see something in certain contexts, you can control that for these launch points And if you don't, you can control that as well. And we'll get some examples in the next slide. So here's a global navigation LTI launch, but if you've seen Canvas common, That's an example of a a global navigation LTI launch point. It's available to navigate there to administrators or to those that have an administrator type role.

So a teacher, and of course, would see that launch point as well. An example of a course navigation launch point. This is another application that we've built that, allows for kind of rolling enrollments. And start dates within Canvas, but it's a course launch point. So as an as a teacher, you're gonna go into this and you're gonna see all of the configuration to manage those start dates for students.

Is a student, you'll go in here and you'll see your very specific plan, for those start dates against Canvas assignments. So you'll see different different, functionality based on your launch point for that application. And then the LTI user navigation, here, once again, it's it's another role based one so if you're in the user profile. You can control who's going to see user profile launch points there. Our student performance dashboard that I showed earlier is an example of that type of launch point there.

And then the rich content editor launch point, that's a another launch point that you can manage via role based permissions. And this is an example of a a rich video, integration. And then we've got the context based LTI launch points. And again, I apologize that you can't see this, but these launch points are not gonna be role based. It's contextual.

If you have access to account navigation, then you're going to see that based on your specific roles in the account. Once again, module items, you're gonna see those based on your context. So if you're a teacher or a student, you're gonna see different experiences or you may or may not see a launch point. They're gonna be based on the context with which you're entering that that launch point. An example of this would be account and navigation LTI launch.

And this is another application that that we built as part of our our PACE plans. And this is really cool for LTI tools in general. This, particular functionality allows you to manage LTI tool installations across all of your subaccounts. So you can have an account LTI tool that then allows you to control which accounts or subaccounts that LTI is available in VA UI and it will go in and configure, that tool visibility for you. Module item LTI launch point.

Once again, it's it's gonna be based on your context as you're a teacher and administrator, you're going to see it. There, as well as a student, if you access that module, you're gonna see module, launch point. And then the assignment LTI launch point, teachers once again see a different experience, where students will not have that configuration launch point available to them. And then the homework submission LTI launch. Once again, shows an example, contextual students are going to see this launch point as they go in and submit homework, not available to teachers.

This is another example of a tool we've built that is kind of a user validation tool prior to submitting assignment. You can go in and have a user enter validation questions, go in and then respond to those validation questions prior to submitting assignment to confirm that they are who they are. So really with, you know, the takeaway here is how can we help you? We can we can do a lot. We can go and build tools for you. We can help you build tools.

We wanna help our customers to be successful and help them in any way that we can in in building out their experiences on our platform. So services we can offer data consulting, application, integration analysis, custom LTI builds, application consultation, software evaluation, and anything else, if you can think of it, come talk to us. There's always new things that you all think of that we don't think of, and we've probably got the right people to help you think through how to be successful in doing that. One thing I didn't talk about that I wanna mention, I talked about what else. Our team can also make modifications to our products.

They do go through a different life cycle of approval. If we make changes to Canvas or other products, we have to make sure that there are changes that are applicable to our our total customer base, but we do make changes to our core products as well. So if there's something that's just not working for you there, you can talk to us about it. Maybe we can do it. Maybe we but, we can definitely have the conversation about that.

We're here to help. Okay. With that, any questions? I covered a lot of topics. I'm not sure if you said, but as far as when the process gets started, you can start with our CSM. Yeah.

The question was if you wanna get started, what does the what does the process look like? Do you go to your CSM or who do you go to? Yeah. Your CSM is the best way to reach out your CSM. We work very closely with the CSM teams, and they know how to, submit a request to our team. With that. I'll usually gather some basic information about what you're looking to do.

We like to think of I mean, one tell what you want if you want consulting, let them know if you want us to build something and let us know. They do try to do a budget qualification. It just helps us, once again, understanding where you're at with budget helps us propose a solution that aligns to that budget. We don't wanna come out and propose, you know, one of these really large builds, if that's not your budget or what you're looking for, but a lot of times we can scale back anything we do line of budgets as well, but they know how to reach us. Yes.

I feel like other schools benefit benefit from them. And I saw stuff that you shared today that I feel like you could benefit from them. Have you considered, like, creating the library of apps at other schools and searches. You know, if you've already we've already paid you so much Why can't, you know, somebody else? Yeah. It's also benefit from that, you know, how does that work? Because there's so many ways that I think we did.

Yeah. Yeah. Great. Great great question. So the quest the question was you know, they've invest.

Which school are you from? Just curious. Okay. Yeah. I I can't remember the specific work, but I know we've done work with you. But if if you've done work with us, you know, can other schools benefit from that work and can you benefit from work other schools have done? The answer is yes.

I'm gonna put like a big asterisk next to it, though. The answer is yes, we try to do that, as much as possible. What we what we find is that a lot of times when when schools come to us to build something, they've got very specific and what they want. And so we build their requirements. It's a custom build for them.

We wanna make sure that we meet their needs very first. So a lot of times when other schools come to us, when we get into the requirements gathering, it's like what they what we have is what, you know, what I want except for and then we get into a long list of all of the things that don't work. And when we get into what does it take to customize that to make it work? Versus maybe building a custom solution, you you kind of get into the, you know, what does it cost there? So the answer is yes. If you have if you see something that you like, We can definitely talk to you about that. We try to build all of our applications to be multi tenant, meaning they can serve multiple customers.

We do have some integrations that are running for multiple customers. And there are cost savings. If it's something we've already built, we don't charge to go rebuild that thing. And if you want one customization, there's a charge for that. But So we can definitely evaluate.

If you saw anything here that looked interesting, talk to us about it. It most likely could work for you, but we'd wanna do some requirements analysis first. Yes. Yes. So is there any way to know what may already exist? Yeah.

So the question yeah. The question was, custom reports is there a way to get a list of what's there and what we can be leveraged. Answer is yes. We have a list of that. Your CSM should be able to help you with that.

So reach out to your CSM and if they say, I don't know, say, but cousin Deb said, you know, and then they'll they'll reach out to me. And, we can figure yes. And it's very similar. Generally, a lot of our custom reports are they they've got some logic behind them, the specific, but we actually do resell custom reports, and that's that we can we can definitely do and help out with. Yes.

Yeah. We used your custom reports previously for attendance verification and then once things started moving to new quizzes, it completely broke the report. And then, we wind up just rewrite ourselves, and you guys are offering to, you know, redo that whole project for us. But you have some open stores where if you have projects like that, people who could, develop their own apps. Can we look at those sources? So the question was, so so you've used some custom reports, but really the question I think was around, do we have anything open that we use.

We don't we don't open source our applications. We do have all of our integration libraries for LTI. It's called I'm gonna I think it's called I think it's some different Panda Powell, I believe. If you go to Ruby Jims, it's our LTI and API integration library for Canvas, and that is available for anybody to use who wants to. So that has our multi tenancy built into it.

It has wrappers around the Canvas API built into it. And those are available for anybody to use if they want to. Yeah. And new quizzes, unfortunately, it it's getting better and we'll see some changes come that allow that integration. But right now, because in a new quizzes is an LTI in and of itself.

So it doesn't have all of those same integration points available yet. Yes. Yeah. Yeah. So the question was, is there a showcase available that can be shared or seen? So, you know, kind of understanding This is what's done.

These are the technologies behind it, maybe what it takes to do that. We we've got some internal showcase that we haven't published any customer showcases yet. So let's them know how to take back and see if we can figure out how do we best publish that. But I think it's a fantastic idea to publish that and and share with with our customers because we definitely want to share what's possible, to give others ideas. Said a great idea.

Call it, an admin comment. Right? So, I mean, like, maybe that could be a place potentially worse. Even if it's just a little one minute video stuff other universities had a customer built for y'all, from y'all. I mean, you know, there's people who don't kick in. You just probably see an up taking up request and like, hey, do you need something Yeah.

Yeah. No. That that's a great day. So really the question, you know, just another plug for a, an easy way to see what's what's been done and available. So I think it's a great idea all to take that back.

And we can't share everything we do, but we can definitely share a lot of what we do to to give others ideas. So great, great idea. How difficult is it to actually get these projects to the point where you can integrate them into the actual campus record one to use. Because there were three of your examples that we developed our own already system for. And one, y'all's looks better.

Two, y'all's at is actually accessible inside a canvas. Because we're too lazy to do up to do up the eye. Right. Madimates the core product. Right? Exactly.

Like, the the, centralized development of curriculum that then gets duplicated out for live sections. We do that, but ours is, you use Canvas to build the course, then you use the third party system to publish it as a master and then distribute automation to, make all the copies for the faculty, do the enrollments, then we also have, a version of the student success, example that you gave where where it goes at the students, course analytics, and tries to, automate all the reports to inform success coordinators that they can help keep the students on track or get them back on track if they're falling behind. A lot of these projects, like, they they clearly have, use case well beyond individual, university be there might be little detailed specifics for ancient university that they wanna do it differently, but as a overall concept, the majority of it would be the the that same or similar enough, where I think that it would, a lot of them, would fit into the core canvas, and that a lot of will be willing to adapt their processes for something that is integrated rather than doing their own custom thing. Yeah. Great question.

So so the question was how how difficult did you deploy these? And as I heard the question for that, I think, is really bring them into the core product. I think is the the root question there. It's, you know, it's it's a deep question. As we look at just, you know, the product life cycle of how Canvas is developed with the product and engineering team, and not only develop, but but maintain long term. A lot of considerations come into play there, for the product teams to have to to think about.

We do share what we build with the product teams to share that feedback. Some of those pace plans when you saw pace plans on application. That's actually one of the applications more recently where we we built that tool. We used it for many years, and now it's actually part of the core core product with the the pacing feature that's available in Canvas. So it does happen.

It it evolves as part of the product life cycle based on their evaluation of the product roadmap, product direction, where they wanna take the product, and we're always willing to share what we have done, in the in the event that that's direction they wanna move the product. Great question. Yeah. Yeah. Great question.

So the if we create a product, you have to pay us to maintain it. So our general, contract is when we build it, you know, there's the cost of development, and then we charge an annual maintenance fee that covers our hosting costs, support costs. If you find any bugs or issues with it, we'll address those fix those. Fitting anything to canvas changes, we'll go on and make updates to make sure that it still works with canvas. So there is an annual charge for that upkeep.

We have partnered with customers to to build the application for them, and then they take that in host of themselves. And we've also just consulted with customers where they know, have their developers talk to our developers and and they go and build it and manage that themselves? Yeah. So we've, we've evaluated. Yeah. The question was if if a school is probably a praise for you, but basically, can you Can you recoup cost by reselling a solution that we build? I mean, our standard licensing terms right now are no.

Not to say that we can't customize licensing terms, but normally that's not something that that we do with applications that we build. We have had those discussions with customers in the past. I don't think we're currently doing that with any of our solutions, but definitely something that we've talked about. And I think it's gonna depend a little bit on what the solution is. And you know, how how do we fill that aligns with where we're taking our products as well? Great question.

Yes. Yeah. Great great question. The question was, you know, what's what's an average cost or range of one of these applications as well as time to market or time to build? I mean, the real answer is it can vary so much. So our hourly rate's two hundred dollars an hour.

That's what we charge. And we can do hourly. We can do fixed bid costs. Depending on, you know, funding sources are different sometimes. Average cost, I mean, we do engagements as low as a couple thousand dollars.

Some of these custom report reuses very low cost, couple thousand dollars. Some of these large LTI builds are in the hundreds of thousands of dollars that we do. So the range can really really vary. I would say the one thing is we can usually work with you on what the scope of the application is to reduce that within a budget. I would say generally for an LTI application, if you want an LTI launch, probably starting in the twenty to thirty thousand dollar range for a very basic LTI.

And then they, you know, just depending on requirements and needs and use cases, it can it can vary, very greatly. Oh, timeline. Yeah. So generally, I think our lead time right now, we're probably two to three weeks out from a build right now. For requirements gathering, we're usually within one to two weeks to start that.

And we've got a lot of ways to flex our our development staff. So know, depending on urgency, we can definitely look at options there to flex that as well. Any other questions? One question would be everything I used. So how do you deal with this? Yeah. So the question is how do we deal with difficult customers? I mean, so software is challenging.

Right? Like, I I don't think any software project ever goes exactly to, like, you plan it out. I think the number one key that I always go back to my teams with is communication. Like, the more we're communicating and the earlier we're communicating the better it is. That way, nobody's surprised. Nobody likes a surprise at the end.

So when we're developing project communicate early communicate often and be transparent, is we're doing requirements gathering. You know, that's that's part of our job. I think that's what we bring in is it's it's it's a skill and a talent to do that and customers they want And so that's where our team can go in and, okay, you know, ask those clarifying questions and really try to drive out what what has the most value for you? What is your budget? You know, start looking at budget and saying, well, I want those five things or ten things. Okay. Well, let let's start to prioritize now.

Here's the cost of each of those. If you had to bring those into your budget, you know, how would you rank those? And so we can help manage those conversations and, you know, timeline, budget, and requirements, all of those things in scope can help us really narrow that down. How much for our custom API? Customer API. Question is how much for custom API? You know, it once again, it varies greatly. And a lot of it has to do with just how the Canvas data model is structured for that particular API endpoint.

Some of, you know, if it's, I mean, Canvas has a restful API, So if it really is just an API endpoint where we didn't expose, you know, an API to get a value, That's gonna be really simply simple to to to build out if it's, updating a value that has calculations that happen behind the scenes when that's updated, that's gonna get much more complex. And then we also have to go in and get our the product team's approval on that. So it's it's it's a process, but it it has been done. Follow-up question to that. Has anyone requested a, project to build a classic quizzes API? Has anyone asked if we can build a classic quizzes a few? I I have not heard that request.

I I don't I don't think that would be approved by our product team. And I think we are, no, are we a time? Yeah. If you have any questions, I'm gonna put up the bar code here. If you have any questions, we actually have our custom development team in the the partner boost. So come by and ask any questions.

If you have any, we will be there tonight. So make sure you rate on the Instructure Con app, and here's the bar code. And thank you. I appreciate it.
Collapse

Discover More Topics: