Yesterday at the University of Washington, I gave a seminar talk of my thoughts on community and alternative currencies. Lots of good, challenging questions. This marks the first time that I presented TraceEval to a group of people, and although I was nervous at first, I was glad that I did it.
I’m also waiting to hear back from other opportunities to present my ideas. In addition, I want to finish prototyping an easy-to-use implementation that I’m hoping to deploy next year. I will follow-up on the invitation to try Flora as a testbed and continue prototyping for the remainder of the year.
Really busy first half of the year. Finally, I am able to announce the study results as published in JASSS at the end of June. In early July, I presented a brief summary of the paper at the ESSA summer school in Toulouse, France. I also posted an invitation to a friendly competition next year using social simulation to test proposed currency and reputation systems.
So while there was a break from coding of prototype systems, last quarter was definitely not the usual yearly break where I mostly relax. I was actually busy working on other projects, also involving programming, that I’m hoping will help in the next stages of my personal projects.
I’m planning more outreach for the second half of the year. There is also much work left to develop Flora into a more user-friendly and intuitive simulation testbed. I’m eager to continue working on all these projects, and maybe post updates sooner rather than later.
I have to qualify the achievement of my goals for Q1 of this year, as far as not being able to broadcast results or videotape a demo of the study prototype. Instead of posting a draft of the study and results, I have submitted a paper to an online journal. It is currently under a second round of review. Once a final decision is reached by the journal editor, I will share the paper online. Email me for a preprint request if interested.
I have also demonstrated a tool for conducting studies of decentralized currency systems at ICTD2012. It was good to hear positive feedback on the idea and to see so many academics and techies who with a passion for socioeconomic development. Compared to another conference that I attended lat year, I prefer meetings with lots of presentations on case studies and demonstrations. Too bad I did not learn about Unmoney Convcergenc 2012 until it was already done, as it would have been good to experience that event as well.
I definitely feel that I made progress towards my goals for Q1. However, since I have not announced links to the paper and study tool, I have fallen short of being as open as possible with my ongoing work. There is a balancing act of being open and trying to minimize wasting people’s time with poorly baked ideas and prototypes. I believe that by initially limiting sharing to reviewers and conferences, instead of broadcasting online, other’s would benefit by waiting and seeing more polished deliverables.
Looking ahead, Q2 will likely be a downtime for me. Usually I take my break around Q1 of the year, but I have not taken a prolonged break since Q1 of last year. I have been switching between developing work-related auditing systems and study tool/visualization almost nonstop for over a year. I need time to refresh and also plan for an upcoming summer workshop/vacation. I will also use Q2 to catch up on the projects that I follow online.
The last quarter of 2011 has been productive as I have been able to devote more of my time conducting simple studies. I have generated a lot of preliminary data from prototype tests, but unfortunately, I am not prepared to share those results yet. I am still sifting through the data and familiarizing myself with relevant analysis techniques along the way.
I am enthusiastic about my progress and of having the opportunity to learn many things along the way. Although a lot of analysis work remains, it feels good to accomplish my main goal of performing at least one study this year. It was not easy switching gears midyear to code a prototype system for conducting studies, and then again to refactor the prototype in November to improve the efficiency and reliability of getting results. The wait throughout the first half of 2011, while settling in at a new workplace, was really worth it. Amazingly, I was able to use — and is still using — many of the lessons I’ve learned from my new work responsibilities.
For example, I ended up using a JSON-based datastore since MySQL seemed too heavy for coding a quick prototype at work. This shortcut proved really handy when I began to work on my personal project again. It really helped me see why different tools are often necessary for different prototyping tasks. MySQL is not a good choice for a research-oriented database system, at least in my case, so I dropped it and everything went more smoothly with simple JSON-formatted output files.
More importantly for my continued productivity, being in a research environment helps cultivate my skills and motivation. Even the daily routine of commuting to work requires a certain level of discipline to make my spare time count, a challenge that I find rewarding. I should also mention that I tried Erlang along the way and also Git, but the learning curve made me go back to the familiar PHP and the simpler(?) Mercurial. The research/coding workflow that I have developed around performing studies really ties in well with a decentralized code versioning system. I’ve also accomplished the goal of creating a new site, actually a new blog, as mentioned in a previous post.
So, after a productive 2011, I have the following goals for 2012:
- Finish analyzing and share the results by end of Q1
- Demonstrate the study prototype in Q1
- Improve the study prototype to handle more sophisticated test scenarios by Q2
- Seek out potential collaborators throughout 2012
Looking forward to a great year!
I’d like to announce an important update on another goal that I have for this year, which is to clean up and reorganize this site. I have not discussed this goal much since it was really low on my priority list. Actually, it still is.
What I have done is circumvent that task by creating a new blog, edgarsioson.com. My first post there explains my motivation for creating yet another blog. I have updated the About page here to emphasize an easily missed purpose for this blog. When I created tyaga.org, I was really hoping to exemplify how an entity might cultivate an independent currency brand. This involved being as transparent as practical by declaring short-term goals and plainly stating or demonstrating what was actually accomplished or not. I have identified early inspirations such as the Dervaes Institute and PSPad. I even stated a particularly ambitious goal in a post from almost three years ago – “to hire people who are willing to be paid in the tyaga.org currency brand”!
It really has been a mixed bag, with many unfulfilled goals but lots of lessons learned and a few prototypes that I am proud of having developed. I could console myself in thinking that, yes, these experiences are likely to be common to what a ‘currency brand’ start-up would go through. I definitely wish that tyaga.org could have been more successful in convincing others to start a currency brand, but the admittedly rustic information systems and protocols that I have prototyped earlier did not lead to even limited adoption. More capable and polished implementations, like Twollars, was fortunate in eliciting more excitement and at least I got to observe what Prowl – which had a very similar technical premise to Twollars – might have been if I had better skills and resources. Unfortunately, even Twollars seem to be languishing at this point.
On a more optimistic note, the more recent prototypes (NPX and IPP) are just a bit more polished and thought-out, and the code is definitely more maintainable. I am also in the middle of conducting simple studies, which I’m hoping could lead to more effective implementations and collaborations. If you are curious, just email me and I’d be happy to share preliminary results.
That’s pretty much it for now. I’ll post here two to four times a year, but I’ll post more frequently in my personal blog. My next post should include the year-end review, as usual.
I’m glad to report that I have very preliminary results from my planned studies. Unfortunately, the tests do not involve the NPX/IPP prototype system yet, so I’m holding off giving more details until the end of Q4. Besides, I’ve had to correct serious code error every day this last week — no need to announce unvalidated observations so far.
Still, getting to this point is really encouraging. After holding off for more than a year to get started on this next phase of the project, and after many doubts on when I’ll be able to return to this project in light of my other commitments, I’m relieved to see that the wait has been worth it.
There are also other self-imposed drivers to get results by the end of the year, so I’m highly motivated right now to just get things done. Expect more detailed updates before Thanksgiving (hopefully).
In the last month, I have been able to slowly ramp up the coding effort to about 8-15 hours a week. The rudimentary code is still exploratory, but I’m optimistic that it’s headed towards the right direction. I’m also relieved to finally be able to rebalance my work/life/personal projects after a very hectic Q1.
So, after some uncertainties in the first half of 2011, I’m looking forward to having a more productive second half. The goal for Q3 is to get actual results to blog about, not just talk about vague, tentative plans like I’ve done for the last nine months or so. The more I read about published research on various computing topics, the more encouraged I get that the approach that I contemplate taking is bound to be a worthwhile adventure.
There really is not a lot to update for the first quarter of 2011, at least not in the form of code and documentation. However, I could easily account for 15 hours a week in March spent on related research activities, which include reading, conceptualizing, and setting strategies. I have read, for example, a few of the latest IJCCR articles. Another web site that I have been reading lately is matslat’s blog. A consistently excellent resource is the Communications of the ACM, which even has an article on virtual goods and currencies in the April issue.
Why bother with ‘conceptualizing’? Mainly to avoid making contradictory or confusing statements. An example would be in this cc typology article, which is an otherwise well-written paper. Blanc’s description of first generation of CC schemes contains the oft-repeated “money is created (at) the very time of exchange.” I have written a while back that this description is misleading when there are debit limits involved in mutual-credit system. As soon as some kind of issuance or trading limit is imposed by a system administrator, the money (as limits) is only exchanged, and NOT created, at the time of transactions. Misleading notions should be carefully filtered out to clarify one what is doing and see where the pitfalls lay.
What about strategies? To use an analogy, strategies are not as crucial in a 100m dash as they are in long distance races. Working on nontraditional currency designs is like a marathon, a long term endeavor where the goals are not clearly in sight and various paths, some untried, are open for exploration. I have long ago shed any misconception that I could code an idea quickly and hope for spontaneous transmission (‘viral’ is another oft-repeated but misleading description thrown around by enthusiasts.) The work requires commitment and endurance, luck and inspiration. It certainly helps to be in a community of similarly-minded advocates, but shared interest is actually less important to me than having a shared notion of what constitutes quality effort.
The year 2010 went by fast. Looking at the three goals for this year, I was only able to accomplish goal #1 which was to code and document a budget-centric system. I was not able to implement even one smaller study (goal #2), although I was able to refine my conceptual approach throughout all of last year. So even though I was not able to work on actual studies, the framework for conducting studies should lead to better implementation and more convincing results. This goal is now 2011:goal #1.
As far as the third goal of recreating a more-user friendly website, I did not make any progress on that at all. It was just really at the bottom of my priority list. This goal will become 2011:goal #2.
After much thought regarding my limitations and abilities, I plan to commit 15 hours a week on currency-related projects this year, starting possibly in March. I am still settling into a new routine, so it is hard to be more definite about this year’s plan. Despite having a good view of long-term goals, I have to be able to fit personal projects around newfound opportunities in order to have a realistic chance of success. I’ll post more informative updates once I get a clearer picture of various responsibilities, schedules, and paths forward.
I have noticed that, lately, my posts regarding implementation plans are becoming more vague. The main reason for vagueness is to minimize the need for explaining changes in strategy, which — readers of this blog should know — happen quite often. I prefer to spend my time coding conceptual plans, rather than talking about them. Nothing communicates the current approach or preferred path better than demonstration of working code.
Still, there is value in sharing general plans, concrete experiences and practical lessons learned. Here are related updates:
As I mentioned in a previous post, I am really proud of how the NPX system and mobile-inspired UI came together. I have decided to not announce this development in other forums because I predict eventual loss of interest similar to what happened when I announced Prowl early last year. If I do not provide working prototypes of two other major infrastructure components, the enthusiasm would simply wither if there are no sustained means of visualizing ‘what-could-be’.
Two technical features highlight my growing reluctance to give more detailed plans. One of the features involved the use of asymmetric encryption to strengthen non-repudiation. Although blog posts from last year emphasized PKI-type verification, the plan changed early this year based upon farther reflection on OpenTransact’s approach, which is to leave payment verification details to OAuth specs. That approach allows OpenTransact development to proceed faster as an orthogonal concern.
I decided to use a similar approach to speed-up my own development effort for an InterEntity Payment Protocol (IPP). However, instead of tying IPP implementation to a particular verification scheme such as OAuth, it seemed that IPP should be able to accommodate different verification schemes depending on the capabilities and preferences of accounting systems. The end result is that PKI-type verification is just one of two schemes that I have prototyped to work in NP, the other a simpler scheme of querying the accounting system directly through HTTP. Different types of verification schemes could be added and modified later, the important thing is that there is a working payment protocol between independent ledger systems.
The other technical feature example is seller-credential-caching at the user-interface level, like bookmarked information for sending payment at-will to a favorite merchant or charity. Although I was initially excited about this feature, I did not announce it since it might prove to be a not-so important feature eventually. And that was what happened. After spending much time developing code and related icons, I ended up discarding that feature based on usability concerns such as expired credentials, mobile display, etc.
I am still taking my time with other commitments before going back to coding projects. Although I have been eager to prototype another infrastructure component since the end of last year, I really held back so that I could concentrate my spare time completing the NPX prototype. I realize that I am being vague again regarding the next steps, but I will provide more details based on actual experience and whether or not my conceptualized approach turns out to be feasible. Right now, I am still trying to determine how much time I could realistically devote to the project next year and how to organize my time in order to successfully prototype the other major infrastructure components.