Proteus Happenings

Pycon for Asia Pacific

PyCon Asia Pacific

9 - 11 June 2010, Singapore Management University

http://apac.pycon.org/

Call for Paper

Icon Pycon for Asia Pacific - Call for Paper (636.1 KB)

Announcing the Nexus Project

Proteus Technologies is very happy to announce a new joint-venture with Karon Business Consulting called the Nexus Technology Program . The primary goals of this project are three-fold:

  1. Create a dynamic entrepreneurial technical startup ecosystem in Thailand and SEAsia so that new tech business are successfully launched and funded on a frequent basis.
  2. Generate obscene capital gains! (hat tip to @StephenFleming )
  3. Help others do the same.

What inspired the creation of this project were a few things. First, the realization by Dave Shelters and myself that there was absolutely no identifiable startup community in Thailand whatsoever. In trying to understand why that was we discovered a few things - firms describing themselves as "VC" here have more stringent investment criteria than bank loans so there is no Series A in Thailand and, despite apparent programs to provide such things, there is no practical seed funding available either. Effectively, brick & mortar businesses that involve building large factories and buildings to house low skilled workers are clearly the focus with awareness of the technology businesses - especially those involving the software business - being completely absent.

In later blogs we'll describe some of the bizarre experiences we had along the way but one might reasonably ask if this is an issue of lack of demand rather than supply. If there's some good news in all this, it is that there is undoubtably now a demand for technical startup investment in Thailand. What is lacking is awareness and sophisticated funding sources. We have talked with Series A level funding sources that want to expand into technology in Thailand but they're concerned they don't understand the space well enough to jump in. Honestly, we haven't found any ventures reading for Series A funding - yet. But we're convinced that the Nexus Technology Program can address this soon.

What convinced us of this was our experiences with BarcampBangkok . Part of the reason Proteus Technologies sponsored the first Barcamp in Thailand was because it was clear that the awareness of Open Source and Open Standard technologies in the local developer community was basically limited to PHP web development and some MySQL. Since promotion of technology came from big firms like Microsoft (for .ASP) and Sun (for Java), that pretty much described the knowledge base in Thailand. My goal was to build a community to promote more Open technologies and build awareness for developers and companies alike.

I think we clearly succeeded. The first Barcamp attracted about 200 people and had a large PHP presence but we introduced Python, Django, Ruby, Rails, Erlang and even some process like Agile. Most talking was by foreigners (farang is the term here) but it was great fun and everyone wanted to know when would be the next one.

Second BarcampBKK filled up the 500 person limit for registration in 72 hours and went for two days instead of one. We had support from Google & Mozilla with speakers flying in and participating with us and we started getting questions from young attendees about funding and running a technology startup. While the questions often demonstrated a lot of naitivity about the realities of funding, it was a very promising occurrence. 

BarcampBKK 3 had nearly 700 show up for the two-day + overnight affair. Sripatum University (our hosts) had just announced the first major Open Source program at a Thai university. We had four or five sessions about technology startups and funding which were some of the best attended and highest audience participation rates. I gave a short talk on "How to Create a Successful Technical Startup" and Dave presented his "Finance for Geeks" talk which was well received. John Berns helped organize a round table discussion on starting a business, another young Thai girl gave a talk on her experiences as a Freelancer in Bangkok and I believe there were some other talks in Thai language on similar subjects so clearly a buzz was present.

In the space of 3 Barcamps in Bangkok and a few in Chang Mai and Phuket, awareness of the opportunities provided by Open Source and Open Standards technologies went from a barely discernible blip to a mature and expanding subject matter with many young kids looking to leverage it for their own business startups rather than limit themselves to doing offshore work in Java or C# for big companies.

This community is real and self-sustaining. It is the mission of the Nexus Technology Program to do the same for the young entreprenuerial community in Thailand. We hope you are as excited about the possibilities as we are!

Free Agile Workshop at Proteus on August 24th 2009

    Proteus Technologies is conducting an internal workshop session on Agile Software Development on Monday, August 24th, 2009 at our development office in Bangkok Thailand. We have space for five more people - one of which could be you, or someone on your team. All the training will be conducted in Thai and you'll learn about the Agile process and get to apply some of the techniques and see how we implement it at Proteus during the full day workshop. We're located on the corner of Ekamai Soi 2 which is a 3 minute walk from the BTS. Will start at 10a on Monday, August 24th and last until around 18:00. Spots will be given on a first come first served basis.

    We are not selling anything. It's simply an internal offering of a course that we do for our training partner and thought we'd open it up to people who may have seen us talk about Agile @ Barcamp, Software Park, or other places we've presented and wanted to learn more about how it's done. You can come on behalf of your company or just for your own personal curiosity. Be prepared to participate with the team in exercises and ask questions or provide your own experiences as appropriate.

    To register email info@proteus-tech.com with your contact information and why you want to attend the training. We will notify you next week. If there is demand for an English version of this course you can let us know as well but this training session will strictly be in Thai.

Proteus Technologies & Mozo Host Google Wave DevFest in Bangkok Thailand

July 18 & 19 2009

   Thank you everyone who participated in the Google Wave DevFest last weekend hosted by Proteus Technologies and Mozo in Bangkok Thailand. We were originally scheduled for July 11th & 12th but Google ran into issue getting the Wave ids setup so we were delayed. You can see the original announcement and signups here. I think we had a little over 20 people actually participate both here in Thailand and a few outside working remotely with us. We were in two offices in Bangkok, my company, Proteus Technologies and Satoko Ohira 's company, Mozo, which is a few blocks away. Unfortunately the last minute date change made it where several people could no longer come. In fact one had non-refundable plane tickets for the weekend before so we held a mini hackathon with a few test accounts Pamela Fox and other Google engineers kindly let us borrow with a few people on the original date. Also there were a few who registered but did not get Wave accounts for some reason. We shared test accounts with them.

This is my report on the event as I can best recall...

    Our primary focus was the robot api. The unintended consequence of this was that many of us had to get initiated into using AppEngine seriously for the first time and this ate up a great deal of our time as AppEngine still has a lot of undocumented behaviour and outright bugs. I built this page to help people get setup ahead of time which helped people at least get to a hello world bot : Robot API/App Engine Setup Page .    

Google AppEngine issues we kept hitting include:

1. Hitting the limit on the number of apps one account could hold (for those who had accounts before) but not being able to delete the old ones and not being able to create new accounts without a new cell#. (We were scurrying for people with cell #'s that never registered before.)

2. There is an unreported limit of 100 uploads per version of an AppEngine app. This wouldn't be so bad except, when it's reached, the interface on the dashboard that let's you select which version of the app to server by default is broken until the next quote cycle come around. We filed that defect here: Defect Report

3. There's another issue with the AppEngine simulator that makes it incapable of reporting proper error messages when running under Python 2.6. It seems AppEngine is actually running Jython and not standard Python. Google should probably more publicly disclose this and even encourage people to run the local simulator under a Jython environment rather than standard Python.

4. AppEngine local simulator does not work correctly with some critical tools like virtual_env that allows one to setup custom local python installs without screwing up your system's python install. I don't know if this is another Jython issue or not but it's very frustrating for experienced Python developers. Basically there was a fairly significant consensus that we don't like hosting robots on AppEngine and very much look forward to being able to run them on a more standard environment.    

We did get into Wave's robot api fairly well. We had one Java dev and a bunch of Python devs. It's very clear that the Python api is a thin wrapper around the Java one and not as feature complete. The java dev got his running first - a simple Thai -> English translator leveraging Google's translate. We spent a LOT of time doing exploratory coding to understand how the environment worked. The UI implies certain behaviours and relationships that do not reflect the actual structure of the underlying wave and this led to a lot of dead ends until it was better understood.

Here's the things I can recall that were done/attempted:

1. Implemented a basic Thai -> English translator robot using the Java api. thai-interpreter@appspot.com

2. The first "useful" python api bot is a rather NSFW one by Sajal . Basically it replies "STFU!!!" to every message posted by anyone but its creator to whom it responds with over the top complements. Despite it's rudeness it was a morale boost to see it interacting with the Wave. :-) sajalwave@appspot.com

3. The most fully developed python bot is one called urquell envisioned by Kirit . This is an implementation of an ongoing concept of his so completely academic and absolutely impractical to the point of being completely useless that it quickly captured the imaginations of several of the attendees including myself. :-) It's a functional style programming environment that is implemented via URLs. http://urquell-fn.appspot.com/ It even has a full project page here: http://support.felspar.com/Project:/Urquell They've got the beginnings of a gadget but are having a bear of a time figuring out how a gadget & robot can interact together via the Wave mechanism and not being forced to resort to a full RESTful http pipe between the two which seems like overkill. Being so totally without practical application or merit it is impervious to normal criticisms so the biggest debate was between Kirit's choice of prefix notation (ala lisp) and my suggestion for postfix notation (being an old forth-ite). I still believe once he gets to the point of trying to distribute machine state around to other hosts in the wave that he's gonna find a stack-based environment (and therefore a postfix notation) more er... practical? Well I guess I lose then. Anyway - warning - this may be the oddest use of wave thus far but do NOT discuss it in a room filled with pedantically inclined developers & architects (especially with the odd forth-er in the vicinity) for fear of sucking every bit of productivity out of nearby projects for at least a few days. I'm speaking from experience here. Needless to say - this one remains an ongoing project to this day.


4. My bot is an effort to implement a workflow bot to support a gameshow host (initially human but eventually automated as well). Presently it can create a new game (assigning the creator the "host" role), start a game (thus announcing it), and end a game. Was just about to get into allowing players to join games then implement the question & answer mechanism. The core workflow was the ability to illicit private responses to Questions by the host from participants so other players couldn't see a competitor's answer until the host "released" them for public viewing. This would have been simple if "private replies" were replies at all - which, as it turns out - they are not. A private reply is quite simply (after lots of discovery coding) a brand new wavelet with no parent associating it with the original message at all. Therefore there is no way via the wavelet structure to associate a "private reply" with the Question it is intended to be a response to. I did work out a mechanism (which, although requiring a great deal more coded logic, makes the interface better for players) to get this concept working (involves the bot initiating "private reply" messages to all players simultaneously then displaying responses publicly on a different wavelet) but have not had the chance to implement it. A nice side effect of this mechanism is natural support for team trivia games where a team can collaborate together in private. My goal is to be able to implement an online version of the 1970's era game show "Match Game". gameshow-host@appspot.com

5. A few people at the Mozo offices were working on integrating Titanium interfaces with desktop apps & Waves. I'm not sure how far along they got. If I can get a more detailed report I will pass it along to you.

Those are the ones that I can think of still. Some common issues we ran into but couldn't resolve were:

a) can't delete waves or quit them (already reported)

b) can't figure out how to get a user's display name - we're limited to account ids but the Wave UI clearly can retrieve display names.

c) sometimes robots just don't get the mesages from a wave. some waves will cease sending messages to bots altogether.       

All-in-all it was a fun and useful learning experience. I think everyone saw that, despite being very early software, the concept has lots of promise and we continue to have lots of interest.

Thanx are due to Pamela Fox for getting everything together for us and making this happen for Bangkok! We look forward to more of these in the future!

sgEntrepreneurs Interviews Ben Scherrey

After the great response we got at the unConference 2009 demo of eJamming , sgEntrepreneurs contacted me for an interview about Proteus Technologies and our relationship with eJamming. I was happy to rant on about our philosophy , Agile , "other shore" development and my alternate life as tour promoter for Japanese punk rock bands ... seriously. :-) Somehow they found it worthy for print.. er publication so for your reading pleasure:

Interview With Benjamin Scherrey - Chief Systems Architect of Proteus Technologies

Author:

  • scherrey

Archives:

Powered by Django.