Blog » BarCampJozi

12 Oct 2008

BarCampJozi 08 day 2

Filed under: BarCampJozi — paulcook @ 3:53 pm

An even more interesting day at BarCampJozi. It’s been really great meeting everyone! My twitter account is much fuller now.

As before, these are just a few notes and impressions of mine, mostly things that interested me.

Human quantum interaction

Talked about some experiments into ESP and psychokinetics. Mentioned first the human expectation effect (eg. placebo effect).

Some comments from the audience on mirror neurons and very subtle body language cues, and some scepticism on systematic errors and the other usual objections. Tough crowd.

Some discussion on amplification of quantum events through neural networks. Basically, if we are willing to throw away causality, then anything can happen. No surprise there!

Systems thinking
Carl Spies

Speaker interested in how people learn and make decisions, work out what things are right, etc.

Captology (Computers as Persuasive Technologies): how to use computers to make people make better choices, how websites can be made to sound sincere. Graphed the data-information-knowledge-wisdom progression as a positive slope on a graph with axes “understanding” and “connectedness”. Systems thinking is a meta-discipline for describing understanding, pushing us along the path to wisdom.

Ages of humanity: the most important things have moved from “matter” (agrarian) to “energy” (industrial age) to “information”.

Biomatrix: a cross-weaved net. Strands are “actions” or “processes”, and intersections are “identities”. Changing identity needs to look at all the actions involved.

Bluetooth security

Problems with bluetooth security: computational complexity of cracking has greatly decreased, and some devices have hard-coded default security pin codes.

Some discussion of handover from tower to tower, and how it maintains IP address — except when you handover to a different cellphone network. Also picocells, which one can buy and associate with a cellphone network to extend a network. Also can be used to fool cellphones into associating with picocell, and thereby leaking all sorts of data.

Much discussion on mesh networking and community networks. Legal challenge if they undermine cellphone network revenues or interconnect multiple entities. Interesting project in Orange Farm: dabba.co.za; blogged about more fully here: http://manypossibilities.net/category/villagetelco/, and a FAQ: http://www.villagetelco.org/villagetelco/faq/

The legal framework for phone tapping in South Africa: govt and service provider each have a piece of hardware. Both need to be enabled, with court order (related to national security) to get service provider to do so. Tapped signal only available on govt side. Sounds good!

Social media

Stressed that people need to use their online social networks in the same way that real-world social interaction happens. Applies to corporates using social networks too — eg. in marketing, if the main purpose of the interaction is to sell, you lose. You need to focus on the interaction itself, and giving value to the person too.

Some partial rebuttals: people use networks in different ways, and in particular have different contexts in mind — this affects whether they will view favourable requests from people they don’t know, or corporates. Another point: the communication medium matters too: an SMS with just the word “Thanks” doesn’t have content, and is an interrupt.

Another good point: values and norms differ around the world, but almost all online technology is built around the values of Silicon Valley — not always right!

XMPP and social network architecture
Blaine Cook (formerly chief architect of Twitter)

Starts with a brief history of physics, leading to the start of the web at CERN, as a way of organising data, and work at UC Irvine designing the basis of the internet and web paradigm. BUT problems, eg., Twitter fail whale. Problem: polling the server is inefficient, as most responses are just, “no”. Root problem is that http is a pull protocol, not good for social networks.

XMPP (formerly Jabber) interesting system:
- persistent (ie. saves on initiation)
- lightweight
- bi-directional
- asynchronous
- guaranteed server identity
Now what?

Extending REST for decentralised systems — do subscription / publish system: Jabber PubSub. Nice examples using some politically-loaded comments about current US election candidates. Now outlining a pseudo-Twitter system, where posting messages gets sent as XMPP requests to everyone who’s interested.

Talking about work on FireEagle, a location-aware system. Vital aspect: latency. If it’s low, can send messages like, “you’re walking past your friend right now.” But high latency, ie., http, is too slow for this. Messaging is good, also, for tying together systems, eg., Facebook and Flickr for new notifications. Also, Jabber identity now starts to serve as a single ID.

100% reliability and ordering are LESS important for social networking applications, so not a key constraint here. Some discussion on caching and trunking — the idea at this stage is to use the feeds between servers and services, rather than last mile.

Very interesting discussion about different sorts of applications, and perhaps embedding XMPP in the browser, etc. I’m not writing it all up though.

Engineyard — making cloud management systems. Now rewriting in ActiveMQ or rather RapidMQ (protocol AMQP). Probably a better system to tying together servers (ie. middleware), rather than human-centric notification type events.

Project Diaspora

Talked firstly about his personal experience, as a diaspora member, of helping his siblings through school. The breakthrough idea was that remittances can just vanish into a hole, or can build lasting change. Aim of project is to harness the diaspora for powerful, focused projects. Money needs to benefit communities rather than just individuals. It’s currently hard to find lasting projects that have come from aid — mostly aid builds dependency. Diaspora more likely build self-sustaining, well-thought-out, efficient projects.

Diaspora remittances are now around half of aid sums going into Africa, and growing. Rough figure 2007: $39 billion.

Aim: mashup of social network site, remittance processing, Ushahidi for mapping projects, etc.

Some physics
Paul (yep, that’s me)

Discussion about the Large Hadron Collider, the Higgs boson, eternal inflation and the possibility we’re a small part of a larger universe at higher vacuum energy. The most interesting idea for some people is that there’s no reason to prefer the universe either having or not having a beginning.

Behaviour Driven Development

Awesome talk (great pictures) on the progression of QA testing to regression testing, unit testing, test driven development, and finally behaviour driven development. In practice, similar to unit testing, but written in a way more descriptive of behaviours. Thus tests describe the system’s functionality, and so can be even given to end client to show what the system does and does not do. This topic requires a much longer description than it will get from me here!

Last night was also great, more details in the most post. Tomorrow I start MobileActive 08, so three more days of conference! Hopefully I’ll be able to get some live-ish blogging going — I expect there will be many very interesting, and not as geek-focused, talks.

BarCampJozi 08 day 1

Filed under: BarCampJozi — paulcook @ 3:14 am

I’m attending BarCampJozi 08 at the moment. About 25 people here, interesting people.

This is not quite live-blogging, but a few excerpts from each talk. I didn’t get everyone’s name (sorry), and it’s certainly not a complete transcript.

Social Entrepreneurship and Systems Thinking
Carl Spies - Cerebra

Relationships between people and things are a tool to approach solving problems for which we have not been trained, and useful for working out howto change societies and organisations.

Introduced Biomatrix — book on systems thinking and solving problems, from some University of Stellenbosch people.

Acoha.com — play it forward game. Get cards that have real-world social-awareness type missions (eg. buy someone coffee, etc.). Give some feedback using geolocation after completing your mission. You can create new cards, and pass them on — Acoha tracks the “paying it forward” tree, using systems theory / network theory ideas. (NB: Collect cards from Cerebra on Monday).

Quantum computing — is it a threat to information security?

Speaker part of a quantum computing group at UNISA. Described now quantum computing can solve the factoring problem, thus breaking much of public key cryptography. But that’s not the only threat — factorisation is not known to be NP complete, so many be solvable even without quantum computing.

Then described quantum key exchange as a way of seeding cryptography systems — not a one time pad, but still very good. Use the quantum pairs just to exchange the key, rather than directly encrypting the data itself.

Johannesburg Area Wireless User Groups - JAWUG

Wide-area user-built wireless network covering Johannesburg and Pretoria. Discussed also some regulatory aspects — fine to do this as long as you aren’t deriving profit from it.

URL-shortening services

List of over 90 services now available, with more all the time. Quesion: What’s the point of all the different services?

Mentioned snurl.com — includes tracking on how often URLs are used. Good for viral marketing, eg., auto-populating Twitter posts for website users, to ease viral word-of-mouth.

wiki.geekdinner.org.za - Geek dinner

It’s happening, next event around 20 Nov.

Yahoo Fireeagle — geolocation hashing

Takes a variety of location sources (GPS, cell towers, wifi, etc.), and turns a location into a standard key, that can be exchanged with other services — this solves the problem of location services being vertical silos.

Where On Earth - Yahoo database of geographic features and names (suburb, towns, etc.), of all sorts, location and bounding box. Opened up as a webservice now. Open Planet - submissions from outside, mostly Flickr (people tagging photos with locations and places names) — though these are what people think places are rather than what it actually is, eg. San Francisco viewed as larger, includes Golden Gate bridge, etc.

developer.yahoo.com (but apologies for the query format) — can query with latitude and longitude, at given hierarchy, and find neighbours, etc.

openlayers / mapstraction - mapping abstraction layers, can use various other mapping systems.

openstreetmaps - lots of mapping data (incl. developing world cities), raw data available.

Rich internet applications — Which framework will win?

Flash+XML=Flex, Silverlight, JavaFX, XUL, Javascript Web 2.0 — problem: keeping it open? Also OpenLaszlo, can deploy as Flash or HTML.

Other code generation toolkits, eg. Google Web Toolkit, OpenLaszlo (can deploy as Flash or HTML).

Argued that browser is not a good starting point for applications, as one is attempted to patch a broken model, so these other technologies are a good idea — but need to keep it open to avoid returning to pre-web standards days.


Using Webkit as the foundation of client applications — HTML, Javascript, plus bindings for local hardware access.

Showed example of a cross-platform application, running with an iPhone-like interface on all platforms, using iUI library to get the iPhone look. Can add bindings for other services, eg. geolocation.

Still need to build the native application which embeds webkit. Light on resources. (Side note: Adobe Air is hard to get working, and upgrades break. Someone commented that the deployment and upgrade process is the challenge of client side systems, and now we’re turning deployment-free technologies like HTML into apps that need, but don’t have, deployment and upgrade tools.)

Web apps for Africans
Eric (White African)

Described how as African developers we often develop for the West, or for the few really tech-enabled people in Africa — small market. Some exceptions, eg., MXit which works across nearly all phones; ijol. Lots of opportunities that exist in the bulk of the population — but we develop for the fringe.

Question: why do we do this? Why don’t we develop for the bulk? Some answers from crowd: we’ve always lived from a computer screen, not a cellphone screen — and this means we think differently, and can’t see the opportunities.

Mobile currency: major hole, but some people trying to fill it: Pocketbook (?), SWAP mobile. Zimbabwe: can buy petrol using a service in UK, get SMS that converts to petrol in Harare.

seaside - a web application framework in SmallTalk
Danie Roux

SmallTalk — no longer an old language, it’s now just mature. Improving thanks to the development environment, rather than perhaps the syntax itself!

The application image contains the code, a webserver, versioning, the whole lot. Awesome “halo” effect, where you can inspect the code behind any page component. Also, no de-marshalling and marshalling of incoming and outgoing requests — that’s all handled by the framework. For production, Gemstone is a very powerful application server, with built-in object persistence.

Other useful features: code completion, vi key bindings, unit testing

ellg (by Curverider) — open source social networking platform
Noto Modungwa

(Other product from this company:) ODD (Open Data Definition) — allow export and import of one’s social data

Speaker works for MWEB, which apparently runs about 70% of e-commerce transactions in South Africa. However, the community and support is not great! So the idea is to use a social networking platform to improve this, and become hopefully a starting point and hub for e-commerce developers in South Africa. (Edit: thanks for comment below — this site is not tied to MWEB, but is really aimed at a general meeting and info-sharing site for the SA ecommerce community. Exciting!)

Hacking your tastebuds

Speaker brought some Miraculum (sp?) tablets, made from a West African plant. It modifies one’s bitter and sour tastebuds, so that food tastes naturally sweeter. Idea is to use it not as a replacement for sugar and artificial sweeteners, but to replace the need for them. The effect lasts about an hour after dissolving the tablet on one’s tongue.

We had lemons, grapefruit, tequila, cottage cheese. All tasted awesome, and very different. Good way to finish a day.