Archive for the 'Kokua' Category

Kokua 0.1.0 WIP test build available

Kokua 0.1.0 WIP (“Work In Progress”) test build is now available for testing purposes. We request that you read this post carefully before downloading or using this test build.

Continue reading ‘Kokua 0.1.0 WIP test build available’

Status Update (April 18)

Greetings, Kokua/Imprudence fans! Things have been a bit quiet on the blog, but we’ve been busy behind the scenes. I’d like to take a minute to give you all an update about what we’ve been working on.

Forum Restructuring

For the past several weeks, I’ve been working on defining, clarifying, and streamlining the Kokua/Imprudence Project’s “communication policy”, i.e. the way we use various communication channels like the blog, issue tracker, mailing lists, and forums. My goals have been to reduce the redundancy/overlap of communication channels, define guidelines for which channels shou be used for which purpose, and to publicly document this policy. Most of my work has been writing and organizing wiki pages, for example the Communication Channels, Reporting a bug, Proposing a feature, and Support pages.

My focus now is on restructuring the forums and tweaking their purpose so they don’t overlap as much with other communication channels. Before we do that, we would like to get more feedback from people who use the forums regularly. Please check out the “Forum Restructuring” topic in the forums to read more about the proposed restructuring and let us know what you think.

Imprudence 1.4 Beta

McCabe has been on an Imprudence coding frenzy lately, hammering out tons of bug fixes and UI tweaks, and applying patches from other viewers. There are too many to list them all right now, but Imprudence will finally have a more detailed radar in its own window (to complement the one in the minimap), and the grid manager can store a login name and/or password for each grid (alas, it’s not the best possible solution, but it’s better than no solution at all).

We’re aiming to release one more Imprudence 1.4 Experimental, probably within the next few days. After that, Imprudence 1.4 will (at long last!) enter beta development, bringing it one step closer to final release. I’m anticipating about 2 beta versions, then 1 or 2 release candidates, then the final release. Barring any major unexpected problems, Imprudence 1.4 should be complete before the end of May. Then, we can finally focus fully on Kokua!

But, while I’m on the topic of Imprudence 1.4: I know Mac users have been wondering about the lack of audio stream support. That issue has lingered much longer than it should have, so you guys deserve an explanation of what’s going on.

It isn’t really a technical issue, but rather a mental/motivational block. Currently, I’m the only one on the team who can work on Mac stuff. (Elektra, who has handled Mac development in the past, is still officially on the team, but she has been busy with RL work for so long that she is, for practical purposes, retired from Imprudence.) But, McCabe and I have had so much trouble and frustration with the media system in the past, that my mind associates it with strong negative emotions. It takes a real effort for me to focus my mind on the media system, and there have been many other tasks for me to deal with lately, so I have subconsciously neglected/avoided addressing Mac audio stream support.

So, that’s why it has taken so long. But, you can rest assured that — one way or another — Imprudence 1.4 will have working Mac audio stream support before we reach the release candidate stage.

Kokua Test Builds

Meanwhile, Armin has been leading the Kokua development effort, so that we can soon begin to release test builds. The purpose of these builds will be to start getting bug reports and preliminary feedback from the community. The Kokua development process will involve a lot of iteration and experimentation: make a change, get feeback from the community, repeat. Some of the experiments will be flops, but those can be improved or reverted. Over time, the viewer will evolve and change, with your feedback as a selective pressure.

We’re hoping to release the first test build within the next week or two. At this point, Kokua still looks and feels quite a bit like the Second Life Viewer 2.4

Here’s a little teaser Armin posted recently, showing some of his recent experiments with the UI (click for a larger view):

Kokua preview screenshot

A few things to note are the re-integrated camera controls (the window in the top left); the Inventory button, which toggles a non-Sidebar inventory window; and the Sidebar button, which toggles a small window with buttons to navigate the sidebar). And, of course, be sure to note the purple UI. :improck:

So, that’s the status! Watch for a new Imprudence 1.4 Experimental very soon, and a Kokua test build shortly after that. And don’t forget to give us your thoughts about the forum restructuring!

Ahoy fellow Imprudinistas and Kokuans!

How was your Christmas? Your New Years? Your Hanukkah? Your winter vacation? I feel like I’ve missed so much, I want to ask about them all!

As Jacek mentioned in her previous post, we’ve been kind of limping along over here for a while. Personally, this has been a pretty rough winter for me. I lost my grandmother to cancer on Christmas Eve after several weeks of fighting in the hospital (she was 74). We managed to have a good Christmas just the same, but the sudden loss affected all of us in my family quite deeply.

For most of January, I spent my time in bed sick with the flu, which left me vulnerable to a nasty strain of strep throat. (If you’re in the US and haven’t gotten your flu vaccine yet, I highly recommend you do so soon. This flu season is going to be a long one. I’m still coughing up bits of lung.)

Needless to say, Imprudence and Kokua have taken a backseat while I took care of myself and other responsibilities.

But, time heals. It’s exciting to compile the viewer and feel active again! I truly have missed everyone who’s taken an interest in this project along with us. It’s nice to reconnect with old friends in the community, all the while meeting new ones along the way. I know I’ve said it before, but I’ll say it again: you guys rock. Seriously :)

Now then, specifics. I don’t have any timeline for when the next Imprudence Experimental will be out, but it’ll have Display Name support as well as more changes to the media system, and a few other goodies. I’m very eager to get it out, as it’ll mean we’re one step closer to finalizing 1.4. As far as Kokua goes, I’m not working on it at the moment so I can’t give more information than what’s already been said. Rest assured, when an alpha release is ready we’ll let you know.

In the meantime, I hope everyone has a pleasant Valentine’s Day tomorrow! If you forget to get your sweetheart flowers and want someone to blame, remember: it was all Chaucer’s fault. <3

Status Update (February 8)

I was waiting for some good news or progress to share with you guys, but unfortunately those things are in short supply lately. Simply put, we’re (still) struggling with low motivation, especially McCabe and me, and development is barely limping along.

So, rather than talk about the progress on the viewers (which isn’t much to speak of), I’ll tell you what has been going through my mind.

For the past several months, rather than writing code or contributing much to either viewer, I’ve been (or at least felt) bogged down with administrative duties. These are things that need to be done to keep the project afloat and sailing smoothly, but they do not provide any real forward momentum in and of themselves. Actually, they tend to sap my energy and dampen my enthusiasm to work on anything related to the project or viewers. And since I don’t have the energy to tackle these chores, they just keep piling up, sapping me more and more. It’s definitely not a good cycle to be stuck in!

The vacation in December provided a welcome reprieve, but didn’t solve the underlying problem. Somehow, I need to find a balance between administration and development, as well as a balance between Imprudence and Kokua, and a balance between this project and the rest of my life. I’m not sure yet how I’ll do that, but it’s something I’ll strive for.

I wrote in the January 21 status update that we were working on a bugfix release of Imprudence, version 1.3.1. I had hoped that we would be able to release it within a week. But, I decided that we ought to try updating to OpenJPEG 1.4, to see if it worked well enough that we could finally afford to disable LLKDU. Unfortunately, because of our motivational issues, we never got around to updating OpenJPEG, and that decision brought the release to a halt. I think we’ll have to postpone updating OpenJPEG until some later date, and just release what we have so far.

Imprudence 1.4 is in a similar state of limbo, due to the media system. Finishing and testing the VLC plugin is beyond our grasp at the moment, because of those same motivational issues. Instead, we’ll have to fall back on our old “friend”, GStreamer. But, at least it’s now a plugin, so it won’t crash the viewer when it breaks. Obviously, we’d prefer to have VLC, but getting Imprudence 1.4 finished and working (through whatever means) is vital to us regaining our momentum.

As for Kokua… yes, that’s also in limbo at the moment. It’s clear that our original plan to start releasing Experimentals in February isn’t going to happen. That plan was assuming we’d be able to release Imprudence 1.4 in December or January, which seemed realistic before the media system issues arose. I’ve often considered whether it would be better for the project to forget Imprudence 1.4 and just focus fully on Kokua. That’s certainly tempting, but currently we still intend to get the media sysem working and finish up 1.4.

So, that pretty much sums up the status of the project at the moment. It’s not all rainbows and lollipops, as you can see!

I’m sure many of you are wondering if this is the end for Imprudence/Kokua. I’ve wondered as much too, but I don’t think it is. I view this as simply a trial or crisis that forces us to take a look in the mirror and adjust how we do things. I’m confident that we’ll be able to learn a few lessons, get through this, and come out stronger than before.

Thank you for your patience, understanding, and support as we navigate these rough waters.

Status Update (January 12)

Hi ho, Imprudence/Kokua fans! We’ve been gearing up again after our vacation, so it’s time for another status update.

First, though, I’d like to introduce a new team member, Boroondas Gupte. Boroondas has been working on the Kokua source since mid-November, but we’ve been so busy I forgot to announce it! Welcome, Boroondas! :)

Now then, the news on Imprudence. I wrote last month that we were going to try to release a 1.4 beta in mid-December. As it turns out, that was very wishful thinking on my part. We were so tired that we pretty much collapsed into full vacation mode right away!

The biggest thing left to do on 1.4 is getting a working plugin for streaming media and audio on Mac and Windows. As I wrote before, we were hoping to use a new VLC plugin created by Robin Cornelius. Unfortunately, Robin has been busy with holiday stuff, and now with her RL work. So, we’ll either need to try to pick up where she left off, or get the GStreamer plugin working with Mac and Windows, and save VLC for Kokua.

Speaking of Kokua, there has been some gradual progress on that. Over the break, Armin has been working on many parts of the code for fun, such as reimplementing colored client tags, song titles for music streams, preview animation uploads on your own avatar, private Point At and Look At targets, new minimap teleport code (including teleport-to-ground functionality), and the most important feature of all: purple clouds for unloaded avatars! :lol:

Armin has also done some UI work, including making the sidebar optional (although we still need to add alternative ways to access some of the features there), making the movement and camera control windows more similar to the old ones, and changing the main menu to the familiar File, Edit, View, etc. layout. In the future, we plan to offer a choice between this “classic” menu layout, and a new layout we’ll be creating later.

Meanwhile, I’ve spent some time revamping the build scripts to improve the way the viewer version is defined, and to make packaging the compiled viewer a fully automated process. Both of these improvements just reduce the amount of “chore” work for us, making our lives as developers a little bit easier, and letting us spend our energy on more interesting things.

I’m reluctant to make any predictions about when either Imprudence 1.4 or Kokua will be ready, since so much is uncertain. But, we are alive and working on them, and we’ll keep you guys in the loop. Thanks for your patience. :)

Status Update (December 6)

Hiyo, Imprudence fans! I know things have been pretty quiet around here lately, so I wanted to give you guys an update about what’s happening with Imprudence and Kokua.

A Brief Intermission

Unfortunately, McCabe and I are pretty burnt out and exhausted from all the work on Imprudence 1.4, planning Kokua, non-working plugins, and licensing headaches. We badly need a rest, so I’ve decided to put the Experimentals and our in-world developer meetups on pause for December. This will give us a chance to relax and recharge, and enjoy the holidays. We’ll still be around in the forums, IRC, and the mailing list, but we’ll be taking it easy.

We had been aiming to release Imprudence 1.4 by late November/early December, but that schedule isn’t realistic anymore, both because of the burnout, and because of unexpected difficulties with the new media system (the code used to play streaming video and audio). We hope to release a 1.4 beta version in mid-December, then take a break from Imprudence work until January.

Quicktime and VLC

One of our main goals for Imprudence 1.4 has been to replace the flakey old media system with a more stable one based on the media plugins from Snowglobe/Viewer 2. Since the plugins run as separate programs from the viewer, stream problems won’t crash the viewer any more, and it gives us more licensing options in terms of the libraries we can use. For example, it’s now possible to use Quicktime or VLC, neither of which could be used before due to licensing conflicts.

Our initial plan was to use the Quicktime plugin on Mac and Windows, since it has fairly good support for the most popular media formats, and the plugin code already existed. Plus, it would require less packaging/maintenance effort on our part, because we wouldn’t have to prepare or distribute the actual libraries, like we do with the old GStreamer-based system. However, we had erroneously assumed that the Quicktime plugin could handle both streaming video and streaming audio, but it turns out that it only handles video.

Since the Quicktime plugin was going to require a significant amount of work after all, we decided to put that effort into finding a better alternative. In the past, we have considered the idea of using VLC, but we never had the time or energy to devote to that. Thankfully, Robin Cornelius has stepped up and made it happen! (Thank you so much, Robin! Words cannot adequately express how grateful we are for that.)

Licensing Frustrations

The VLC plugin is pretty much done, but we ran into a licensing snag that took a while to untangle, and has created some extra work. The details of the snag are both confusing and boring, but I’ll try to summarize. The plugin currently depends on three pieces of software with different licenses: APR, VLC, and part of the viewer code. Because of the terms of the licenses, the viewer code can co-exist with either APR or with VLC, but not both at the same time. Likewise, VLC can co-exist with either APR or the viewer code, but not both at the same time. It’s a bit like a sadistic lawyer’s version of the old puzzle of the farmer carrying a fox, a goose, and a bag of beans across a river.

As you can imagine, it has been a headache even to understand this situation, let alone find a solution that respects all the licenses involved. Speaking for myself, these kinds of software licensing issues are the single most frustrating and demoralizing part of working on an open source project like Imprudence. Not only is it difficult to figure out what we can and cannot do, but often honoring the software licenses puts us at a significant disadvantage in terms of stability and functionality, and often creates a lot of extra work (e.g. finding or creating replacement software).

Why We Care About Licensing

It would be very convenient if we could just ignore the licenses, but we don’t. Why not? Of course, there are the obvious legal issues, but realistically there’s very little risk of any legal action stronger than a cease-and-desist letter. Much more important than the legal issues, are the moral ones. Each library’s license reflects the creator’s wishes about how their work should be used. By using the libraries, we are making a promise to respect those wishes, and we take that promise seriously.

We’re currently working on a solution that involves replacing both the viewer code and APR with code that has a compatible license. It has taken some elbow grease, but Robin is making great progress on it. Hopefully, we will be able to release an Imprudence 1.4 beta in mid-December with the VLC plugin for Windows, and perhaps even for Mac as well.

A Brief Update About Kokua

Finally, a brief update about the status of Kokua. Our focus has been mostly on Imprudence 1.4, but there has been a bit of activity on Kokua over the past month. The main source repository is available on GitHub (although currently the code there is identical to Viewer 2.2), and there are already several forked repositories with some interesting commits popping up (especially in Armin’s repository). And, I’m sure several of us will be playing with the Kokua source for fun while we recharge.

So, happy holidays, and we’ll see you around! :)

Reminder: Website Maintenance Today

As I posted earlier, the Imprudence website will be down for scheduled maintenance as we migrate to our new domain name. Aside from the new domain name and site titles, you won’t notice much difference in the appearance of the site, yet. We will be switching to new styles in the near future, after the dust has settled on the domain name transition.

Maintenance will begin approximately 45 minutes from now (at 20:00 UTC/12:00 Noon PST), and is expected to last for no more than 2 hours. During that time, the blog, wiki, and forums will be read-only, and the issue tracker will be offline for part of that time. Our download mirror, source code repositories, and developer mailing list will still be fully online.

After the migration is complete, visiting any page on the old domain (imprudenceviewer.org) will redirect you to the corresponding page on the new domain. Your login information for the wiki, forums, and issue tracker will still be the same, but you will need to login again because the old browser cookies will not be valid with the new domain. All the blog posts, forum posts, wiki pages, and other content will be carried over to the new domain. Existing bookmarks, links, RSS feeds, etc. should continue to work (thanks to the redirects), but we still encourage you to update them to the new domain once it is up.

I will post another update on the new domain once the migration is complete. Thank you for your patience.

Website Maintenance: Sunday, Nov. 21

This coming Sunday, November 21, the Imprudence website will be down for scheduled maintenance as we migrate to our new domain name. The new site will be used for both Imprudence and Kokua from then on. :)

Maintenance will begin at 20:00 UTC (12:00 Noon PST) and is expected to last for no more than 2 hours. During that time, the blog, wiki, and forums will be read-only, and the issue tracker will be offline for part of that time. Our download mirror, source code repositories, and developer mailing list will still be fully online.

After the migration is complete, visiting any page on the old domain (imprudenceviewer.org) will redirect you to the corresponding page on the new domain. Your login information for the wiki, forums, and issue tracker will still be the same, but you will need to login again because the old browser cookies will not be valid with the new domain. All the blog posts, forum posts, wiki pages, and other content will be carried over to the new domain. Existing bookmarks, links, RSS feeds, etc. should continue to work (thanks to the redirects), but we still encourage you to update them to the new domain once it is up.

I’ll post a reminder again on Sunday an hour or two before the maintenance starts, and then again on the new domain once everything is moved over. In the meantime, enjoy your weekend. :)

A Rose is a Rose

One of the perils of announcing something early in the process, before all the details are carved in stone, is that sometimes plans simply change. Such is the case now with the naming of Aurora Simulator (“Kokua Sim”).

We announced last week that we would be offering Kokua Sim, a new variant of OpenSimulator, alongside our new Kokua Viewer. We further explained that the original name for the simulator software was Aurora, but that it would soon be rebranded as Kokua Sim and become part of a broader project, called the Kokua Project.

Those plans have changed a bit, and Aurora will be keeping its original name. Also, while there will still be close collaboration between Aurora and the Kokua Viewer, Aurora will function as a distinct sister project, with its own website and such. There are several reasons for these new plans:

  • Although we on the Imprudence team were not aware of it, there was already a group of developers and enthusiasts involved with Aurora. There was, regrettably, a break in communication somewhere along the line, and the planned name change ended up causing a lot of unnecessary confusion and conflicting information.
  • Our purpose in having both the sim and viewer share the name “Kokua”, was to emphasize that the two programs were being developed hand in hand, so users could be certain that they would work very well together. Unfortunately, it instead gave many people the wrong impression that the two programs would work only with each other, and would exclude other simulator or viewer software. (In reality, both the simulator and viewer will be compatible with other software, and will be open source so that other projects can benefit from any improvements we make.)
  • Another unwanted side effect of the naming was that people naturally tend to to just say “Kokua” for short, which could refer to the viewer, the sim, or even the project as a whole. This sort of ambiguity isn’t a big problem, but it does make talking about the two programs a bit more awkward and confusing than it needs to be.

All that considered, it simply makes sense to eliminate these sources of confusion, by having Aurora keep its original name. As I mentioned, the Aurora Simulator and Kokua Viewer teams will still be working side by side, and we’re still very much looking forward to creating innovative new features and improvements together. :)

Thank you for your patience and understanding,

- The Kokua Team and Team Aurora

FAQs about Kokua

Howdy, gang! In the past few days, we’ve been receiving a lot of questions about Kokua, and we’ve noticed a lot of confusion and misconceptions about it. So, I’d like to take some time to answer some common questions, and help clear up a few things:

Read on for all the answers, or click any of the questions above to jump directly to it. Continue reading ‘FAQs about Kokua’