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 have been thinking a bit on two system approaches to handling messiness: one that is oriented towards mess ‘prevention’, and another that is more tolerant of messiness but instead prioritizes sense-making. Of course, it is possible to spend effort on both fronts when designing and implementing a system. But sometimes a compromise has to be made and one approach has to prevail on the other.
This thought process was seeded through recent experiences at work and also by points raised in online discussions that I follow. After boiling down the issues to what I perceived is a root cause of many misunderstandings, I realized just how much I prioritize sense-making over mess-prevention. Don’t get me wrong, I really value mess prevention and a good system or process design should set well-defined boundaries. However, if I could think of an efficient way to make sense of existing or future mess, I would gradually lose ‘faith’ in the need for mess-prevention efforts.
For example, my preference for sense-making leads to heightened interest towards natural language processing instead of required semantic mark-ups. I admit that I routinely use structured data formats, such as found in JSON/XML specifications or implied in relational database systems, so I don’t think I under-appreciate the importance of mess-prevention. However, where there are no systems or specifications in place, I am more open to considering lightweight systems with minimal requirements. Similarly, I like dynamically-typed programming languages and search engines that attempt to make sense of whatever and however I write.
There is just too much to lose when requirements are over-specified too early. In a research environment such as where I work, I think the tools chosen should be more naturally inclined towards sense-making rather than mess prevention. Enforcing manual code versioning steps is simply inappropriate especially when there is an opportunity to automate routine commands, such as creating hooks in git or mercurial. Time spent complying with strict standards would be better spent conducting actual research. A tool that has a good balance of tolerance for messiness and built-in capabilities for sense-making should be preferred over another that requires strict enforcement.
It’s sad that I have not been given an opportunity to explain all of the above where I work. But at least I have my personal projects where I could express the approach that I prefer and blogs to demonstrate what I mean.
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.
Perhaps it was inevitable, but here I am starting another blog. I have alluded to making this move in another blog, in order to clean up and reorganize my accumulating accounts of ideas, demos, and white/gray papers. I had to overcome a lot of hesitation extending over a year to convince myself this move is really necessary.
But the time has come and I’m ready for it.
This personal blog will relay experiences and opinions beyond my project-oriented blogs. It was getting harder to filter out indirectly related observations from my posts in satconomy.org, and that’s why that blog has laid dormant for over a year now. I still think that inspirational quotes and observations have their place in a blog such as satconomy.org, but I felt like the blog was losing focus. I felt the same with tyaga.org, sometimes wondering which blog to post recent observations in, since the main purpose for each blog was getting blurry.
The main problem is that I did not have a personal blog as a default ‘outlet’. When in doubt, I will post here rather than my other blogs. I plan to make this my most active blog, which to me might mean a post once a month. The project blogs will have maybe two to four posts a year. I will discontinue a project blog once I feel that it has served its purpose. In that connection, I will update and clarify the About pages in my other blogs.
I hope you’ll follow this blog and enjoy reading it.
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.
It feels good to clean older references from the sidebar and, more importantly, to highlight the newer demo and docs that went live last year. I really need to work on revamping the whole site as planned for this year, but for now, these minor tweaks should do.
Please visit the slightly modified mobile UI demo — the touchscreen swipe simulation gets easy fast even using a touch pad. And do read up on the help pages and IPP documentation.