Exploring Self-Sovereign Identity in India

Summary: I spent almost two weeks talking with people about self-sovereign identity in Switzerland and India. I'm more excouraged than ever that self-sovereign identity holds the key to real change in how we live our digital lives with security, privacy, and dignity.

Visiting a fertilizer distribution center near Vijayawada to see Aadhaar in action

I'm just finishing up my travel to Switzerland and India to talk about self-sovereign identity. The trip was amazing and full of interesting and important conversatons.

The TechCrunch event in Zug was very good. I was skeptical of a one-day conference with so much happening in a short time, but thanks to great preparation by those running the show and all the participants, it exceeded my expectations in every way. I spoke on a panel with Sam Cassatt of and Guy Zyskind from Enigma. Samantha Rosestein was the moderator.

But it was the conversations I had with people at the event that really made it interesting. Self-sovereign identity Continue reading "Exploring Self-Sovereign Identity in India"

Building a Virtual University

Summary: With the proper architecture, we can create student learning systems that support virtual universities that offer programs made up from courses of study at various institutions. This article describes a modular approach to designing university systems that allows for a virtual university while also providing significant benefits to students. Imagine you wanted to create a virtual university (VU)1. VU admits students and allows them to take courses in programs that lead to certificates, degrees, and other credentials. But VU doesn't have any faculty or even any courses of its own. VU's programs are constructed from courses at other universities. VU's students take courses at whichever university offers it. In an extreme version of this model, VU doesn't even credential students. Rather, those come from participating institutions who have agreed, on a program-by-program basis, to accept certain transfer credits from other participating universities to fulfill program requirements. Tom Goodwin
traditional university system design
student profile
student profile and university systems
adding a virtual university
virtual university
Continue reading "Building a Virtual University"

Building a Personal API

Summary: The BYU University API committee has been looking for a good project to jumpstart our efforts in personal APIs. The BYU Domains project is not only providing the means to host the personal API, but the initial project as well. Honey bee having a drink As part of my abstract for a talk at APIStrat 2016, I wrote that BYU was interested in equipping students with personal APIs in an effort to teach them digital autonomy and make them more responsible for their learning. Unlike others who attempted personal APIs, we're lucky in that we control both sides of the transaction. That is, we have control of the university systems and we have students who will generally use the tools we build for them. So rather than build a conventional tool to, say, create a directory, we can build one that uses the student's personal API. The university systems still work and students get
community directory traditional architecture
community directory api architecture
Continue reading "Building a Personal API"

Personal APIs in a University Setting

Summary: This is the abstract from my proposal to speak at APIStrat 2016. Southern armyworm, eggs_2014-06-06-14.28.04 ZS PMax The API economy is in full swing and numerous commercial entities are engaged in producing APIs as a way of extending their reach. But as more and more of life is intermediated by computers, individuals also benefit from providing a personal API that can be used by applications on equal footing with other APIs. Brigham Young University is teaching students about digital autonomy so that they are better prepared to be lifelong learners. In addition to a Domain of One's Own project, we have also embarked on a program of giving each student a personal API. By making students responsible for their own data, we teach them that they can be active participants in the digital realm. In addition to profile information, the API is also a means of accessing the student's personal learning record system (LRS). Continue reading "Personal APIs in a University Setting"

Personal APIs in a University Setting

Summary: This is the abstract from my proposal to speak at APIStrat 2016. Southern armyworm, eggs_2014-06-06-14.28.04 ZS PMax The API economy is in full swing and numerous commercial entities are engaged in producing APIs as a way of extending their reach. But as more and more of life is intermediated by computers, individuals also benefit from providing a personal API that can be used by applications on equal footing with other APIs. Brigham Young University is teaching students about digital autonomy so that they are better prepared to be lifelong learners. In addition to a Domain of One's Own project, we have also embarked on a program of giving each student a personal API. By making students responsible for their own data, we teach them that they can be active participants in the digital realm. In addition to profile information, the API is also a means of accessing the student's personal learning record system (LRS). Continue reading "Personal APIs in a University Setting"

Aspen Grove Winter Workshop

La Vattay The Aspen Grove Winter Workshop (AGWW) will be held February 17 and 18, 2016 at BYU's Aspen Grove Conference Center. The workshop is hosted by BYU's Office of the CIO. You can get tickets on Eventbrite. The workshop is open to anyone. AGWW is an unconference that is focused University APIs, Domain of One's Own, Personal Learning Systems, Learning Management Systems, Student Information Systems, and other strategic uses of IT in the university environment. This isn't just a technical conference. There will be plenty of discussions about the impact of these technologies on learning and the modern university. We held the first edition of this workshop last June. Jim Groom did a good job summarizing the extraordinary two days. He says:
The conference was relaxed, intimate, and intense all at once—is that possible? There were only 40 people, but we had 33 sessions over two days. We Continue reading "Aspen Grove Winter Workshop"

Ambience and Personal Learning Systems

Summary: We learn everywhere. A personal learning system doesn't need to be a place. Rather we can envision students using their personal learning system as they go about various learning activities and seeing the results in all the old familiar places. Fish My work on the Internet of Things has led me to be a big believer in the power of ambience. The Internet of Things is going to lead to a computing experience that is immersive and pervasive. Rather than interacting with a computer or a phone, we'll live inside the computation. Or at least that's how it will feel. Computing will move from being something we do, like a task, to something we experience all around us. In other words, the computing environment will be ambient. Remarkably, we've been moving the opposite direction with learning. Since the advent of the Web, more and more learning activities have moved inside Continue reading "Ambience and Personal Learning Systems"

API Management and Microservices

Summary: Microservices need the advantages of API management just as much as externally facing APIs do. beehives At Crazy Friday (OIT's summer developer workshop) we were talking about using the OAuth client-credential flow to manage access to internal APIs. An important part of enabling this is to use standard API management tools (like WSO2) to manage the OAuth credentials as well as access. We got down a rabbit hole with people trying to figure out ways to optimize that. "Surely we don't need to check each time?!?," "Can we cache the authorization??," and so on. We talked about not trying to optimize too soon, but that misses the bigger point. The big idea here isn't using OAuth for internal APIs instead of some ad hoc solution. The big idea is to use API management for everything. We have to ensure that the only way to access service APIs is Continue reading "API Management and Microservices"

The Core of Your API

Summary: A university is a complex place with lots of constituencies. What does it mean to design a University API given the different focus that each constituency has? cored apples One of the topics that came into relief for me quite clearly recently is the idea of core domains and their application in API design. This happened as part of our design meetings for BYU's University API. When I say "core domain" I'm thinking of the concepts taught in Domain-Driven Design (DDD) and made clear in Implementing Domain-Driven Design (iDDD). (Aside: if you're in OIT and would like a copy of iDDD, stop by my office.) DDD uses the terminology "core domain," "supporting domain," and "generic domain" to describe three types of sortware systems you might be building or using and how your organization should relate to each. My goal here isn't to expound on DDD; that's a different article. But I think you get the idea of what a core domain is: the "core domain is so critical and fundamental to the business that it gives you a competitive advantage and is a foundational concept behind the business." Suppose you're an online merchant, for example. The core domain is probably the order processing system and orders are the fundamental artifact you worry about. Inventory is important, but it's a supporting domain. Customers are important too, but they're also supporting. The thing you worry about day in and day out is the order. The object that links items in the inventory, a customer, and a payment transaction. Consequently, if you were designing an API for an online merchant, you'd probably make orders a top-level object in the API: Continue reading "The Core of Your API"