Data streaming and hot yoga

Namaste! That means "I bow to the divine in you" in Hinduism, according to Wikipedia. It is also what yoga people say to each other, as I learned this week during my first-ever hot yoga class. In my case it probably meant something more like "I politely acknowledge your sweating, awkward presence, please avoid dripping on my mat." I definitely dripped anyway, but I'll use the excuse of not knowing the lingo.

Hot yoga involves showing up in a room cranked to 105 degrees, side by side with 40 other people, during which the group combines perspiration with poses and stretches that draw attention to the inflexible among them. For some reason, I decided this setting would be fine for my first-ever yoga attempt, period. This proved to be a questionable premise. To get an idea, picture the following.

You're in a quiet and very hot room on a soft mat. People are filing in. Some are stretching, some laying flat as if meditating. A woman two mats down appears to be asleep. You begin with your only strategy for the whole thing, which is to discretely watch the others and mimic them without drawing attention to yourself. You mimic some light stretching, no big deal so far, even pleasant. The room fills, mystical music comes on, the teacher begins by thanking you all for being here on this day for this journey, to be one with this experience. You feel good about yourself. The teacher gently invites everyone to start with a "child's pose" which looks like a baby sleeping face-down. Not what you expected, but OK. Then a "table top", which is just being on hands and knees pretending to be furniture with a functional surface. This is easy, your anxiety fades.

Gentle stretches and poses continue, but before you know it, things have escalated. The music is louder and tempo increasing. The teacher is more emphatic in her demands for downward dogs, cat cows, and warriors, and you find yourself literally pouring sweat as you lose any semblance of effectively pretending to know what you're doing. Somehow you're now supposed to balance on one foot and grab your raised leg outstretched, a feat which you know your body has never approached in any fashion. You try anyway, and almost fall on the girl beside you. She pretends not to notice or be afraid, which you appreciate while knowing the truth. The woman two mats over is still lying down with eyes closed, and you wonder about her health. But you don't have time for that, because now you're supposed to be like an eagle, which involves twisting some of your limbs around other limbs in a way that doesn't seem anatomically correct, even for an eagle. But the others do it just fine, and you embarrass yourself in a contortion not resembling any bird you've seen.

At a certain point, the teacher reminds you that it's OK to "listen to your body", and you take advantage of this wisdom through extensive resting while mopping your face with a towel. Eventually the sequence involves easier things as the program winds down, with the teacher finishing by praising you all for being harmonious of mind and body, masters of soul and destiny. You try to feel good about yourself again. The class ends, and the woman two mats over gets up like nothing happened but a nice hot nap.

In the end, I learned some important lessons, like "you need more towels than you think" and "place yourself in the corner away from the mirrors to minimize exposure to silent judgment." The real question is, does this make one any better at writing code? I have no idea, but we need a segue to discuss software.

Data must also flow

Last time I mentioned Whally's new capabilities around handling forms. This was exciting, but not so fun is a submitted form sitting there without you ever knowing about it, because you didn't refresh the page. Likewise with other things happening in the system -- we want to know about them immediately, both for functional reasons and that little bit of dopamine.

This led to a new series of efforts to introduce "real time" streaming of changes, where you just watch the screen and things appear as they happen. If a dozen different people are working on various aspects across Whally, they can be confident that their view is always up to date, avoiding conflicts and confusion with obsolete information. It's also more aesthetically pleasing, I hope you'll agree.

As a first example, consider the Students view. Data could be changing throughout the day about various students, whether that is notes, files, attendance, or otherwise. Here's what it would look like if notes were being updated by the staff at a frenzied pace:

(the image below should be animating, if this works)



It may not be true in practice that anyone would want to sit back and watch such a thing, but the option is now available.

Consider a form example. Imagine we've just posted an interest form for the school on our website to collect leads for tours. A wildly successful form might have the submissions pouring in:



This "liveness" of the data will be incorporated everywhere in the platform as it grows to include activity feeds, live attendance and staffing, payments, and more.

The other significant newness is support for API integration. The demos above are actually an automated script that uses the Whally API to create and update data. This will unlock lots of possibilities in the future for integration with other systems in a standard and (relatively) straightforward way. Here's a gratuitous example of the API Credential screen:



That's all for now. Thanks for your interest, and if I survive further hot yoga encounters, I'll be back with more updates soon. Namaste!


Read on: Locations and groups