Thursday, August 16, 2012

Getting MacPorts to work on Mountain Lion

I recently upgraded to Mountain Lion and during some development work for ProdPad ran into a problem where my PHP from MacPorts didn't have GD extension installed. I went install it and ran into all sorts of problems.

Today I tried again, this time running the upgrade instructions from the MacPorts site and still had the same problem, everything was failing to compile. All with the similar messages along these lines:

Error: org.macports.configure for port gdbm returned: configure failure: command execution failed
Error: Failed to install gdbm
Please see the log file for port gdbm for details:
    /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_databases_gdbm/gdbm/main.log
Error: The following dependencies were not installed: autoconf help2man p5.12-locale-gettext perl5.12 gdbm perl5 xz

for package after package. Queue Google and nothing much to help. I reviewed a couple of log files and kept seeing this error message:

:info:configure nawk: illegal jump type 339
:info:configure  input record number 15, file
:info:configure  source line number 365
:info:configure sed: stdout: Broken pipe 
Some more Googling and found this ticket with a potential answer. Uninstall Nawk. Did that and hey presto it all works again. For good measure I installed Gawk instead.

So for whatever reason Nawk is broken and/or no longer useful for MacPorts. So if you are having trouble installing packages with MacPort on OSX Mountain Lion then uninstall Nawk.

Wednesday, May 02, 2012

Building the Product Management Community

For the last 2 years I've been organising ProductCampLondon and ProductTank in order to build the product management community in London and the UK. In that time we've grown from the first small events to sell outs every time. We've also expanded ProductTank to other cities holding them in Manchester, UK; New York City, USA; and Austin, Texas.

To knit the community together we created the blog MindTheProduct.com to be a place where product managers can share and read about product management in between the events. The feedback on the blog has been great and has proved very useful in surfacing knowledge and lessons learned stuck in people's heads.

The product management community is growing and maturing rapidly certainly in London and with this growth has come the need for a flagship event that brings great product managers together from around the world to share, discuss and learn from each other. There has long been conferences for developers, UX and designers and entrepreneurs, but nothing on the practice of product management.

Seeing the problem we did what all good product managers do, came up with a solution and implemented it. That solution being a 1-day event on the business of product management - MindTheProduct 2012. The tickets are on sale now (early birds are all gone sorry).

We hope to see you there!
 

Sunday, June 05, 2011

Anthropological perspective on Trust

Social GesturesImage by Dave Duarte via Flickr

I ran across this interesting article written for the New York Times in 2007 that discusses social networks from the perspective of anthropology of tribal cultures. I won't go over the whole article, instead I want to highlight an interesting paragraph.
“In tribal cultures, your identity is completely wrapped up in the question of how people know you,” he says. “When you look at Facebook, you can see the same pattern at work: people projecting their identities by demonstrating their relationships to each other. You define yourself in terms of who your friends are.”
In two previous posts, I talked about trust & measures of trust. The identity talked about in the quote, forms you standing within the tribe. It is derived from what the community thinks of you. PeerIndex is building a way to project that identity at a much lower cost.

"As intriguing as these parallels may be, they only stretch so far. There are big differences between real oral cultures and the virtual kind. In tribal societies, forging social bonds is a matter of survival; on the Internet, far less so."

I disagree with this conclusion, for the simple reason as more and more of our life is online in various virtual tribes, the social bonds formed online will become as important to survival as social bonds formed in the flesh. Granted we are not there yet, I foresee that PeerIndex (and similar services) will become fundamental to building the social bonds that allow you to survive in the 21st century.


Enhanced by Zemanta

Thursday, March 24, 2011

Building Trust: Measures and Cost

(ed: this is a cross post from the PeerIndex blog)

There is extensive buzz around influence and more recently (examples here and here). As Head of Products at PeerIndex, I've spent a lot of time understanding and learning about these areas in the context of wider society.

What became clear early was that the key to understanding was to understand trust and its role in society and markets. From the perspective of trust, reputation is the trust that builds from interaction within a community. Influence is an outcome of having trust of people within a community.

In this series I'll explore why trust is of fundamental importance to society and markets and the way trust is built and measured.

The first post in this series looks at why trust is so important.

The second post in this series looks at measuring trust, its cost and why the cost is key for determining what connections can exist.


Building Trust: Measures and Cost

In small scale communities and markets trust is built overtime by interaction between the participants. Building trust takes time and resources as we need to continually maintain the trust through grooming [Dunbar, 1993]. At these small scales participants can devote the time and resources to this endeavour as the payoffs out weight the cost. In other words the value of the connections outweighs the cost of building trust (I'll refer to this from now on as the cost of trust). The most poignant example of this was the rise of language and the subsequent jump in size of human groupings [Dunbar, 1993]. Language saw the cost of trust fall allowing larger groupings to arise.

The cost of trust determines what connections are possible. A high cost of trust limits what markets can function as the cost exceeds the value of the connections. Cost of trust forms part of the cost of transactions that determine structure of markets and entities operating within those markets [Coase, 1937]. As the cost of trust rises there is a shift from purely market orientated economy to one that is characterised by firms.

The 2008 Financial Crisis illustrates the power of the cost of trust. Investors relied on ratings as a measure of trust in the securities where a good risk. When investors lost trust in those ratings as the mortgages went sour, those cost of trust needed for a transaction skyrocketted. Now investors would need to do time and resource consuming due dilligence on every security they wish to purchase. The potential value of that would come from owning the security paled in comparison to the cost of trust and the markets froze as investors were no longer willing to purchase the securities.

To reduce the cost of trust, we've developed various measures to indicate trust. These measures include items such as:

  • degrees and certificates from accredited training institutions,
  • chartered status from professional societies,
  • contracts,
  • 3rd party ratings for items (such as bond ratings), and
  • trademarks.

Many of these measures are indicators of trust in expertise or provenance. Some of these are trust measures for goods and services and others for people. These types of measures reduce the cost of trust by allowing people and products to "inherit" the trust of provider. As this is spread across multiple people and products the marginal cost falls.

These trust measures form part of the most important measure of trust: reputation. Reputation is essentially the sum of all the trust that a community has in someone or an organisation. It arises out of interactions within a community [Bischke, 2011]. Reputation reduces the cost of trust by allowing you to use other's people trust in someone. It essentially amortises the cost of trust across multiple interactions over time. Reputation is rooted in community and cannot exist outside of community. Reputation is provided to someone by the community and can very easily taken away by the community.

Reputation started as word of mouth, "should I trust her?". This works in smaller communities but it has scale problems as it is invariably tied to human limitations. To overcome this reputation has evolved to include other measures of trust such as degrees, chartered status, memberships of organisations etc. Indeed reputation is now a graph of various measures that indicate trust at both a global (overall) and local (by context e.g. is this person a good plumber?) [Bischke, 2011].

What is exciting now is that we are reaching the point where building comprehensive reputation graphs is both scalable and falling in cost. With this comes falling cost of trust enabling new connections and new markets.


Bibliography

Importance of Trust

(ed: This is a cross post from the PeerIndex blog)

There is extensive buzz around influence and more recently reputation (examples here and here). As Head of Products at PeerIndex, I've spent a lot of time understanding and learning about these areas in the context of wider society.

What became clear early was that the key to understanding was to understand trust and its role in society and markets. From the perspective of trust, reputation is the trust that builds from interaction within a community. Influence is an outcome of having trust of people within a community.

In this series I'll explore why trust is of fundamental importance to society and markets and the way trust is built and measured.

The first post in this series looks at why trust is so important.


Importance of Trust

As Kenneth Arrow noted "virtually all commercial transactions and social interactions embody some form of trust". How important though is that trust to the interactions and transactions? The 2008 Financial Crisis provides a timely reminder of the importance of trust. As supposedly trust worthy (according to the ratings) investments went sour, investors lost complete trust in the market and were no longer willing to supply their cash to other participants, freezing the market. As soon as participants stopped trusting each other the markets froze overnight.

Why is trust fundamental to society? Trust enables us to rely on someone else. By relying on someone else we are able to do more than we would otherwise be able to. Trust allows us to overcome physical limitations of time and resources [Beckert, 2005]. If I can't trust others, I end up having to do everything required to live myself: food, shelter, tools, clothing. Leaving no time for anything else. No trust condems you to a subsitance life. To live in more complex societies you need trust, this way members of the society can specialize and share or trade to get the things they need [Beckert, 2005].

Trust is the result of human behaviour. It takes time and resources to build trust. On the scale of a hamlet or small village, this is not unreasonable. You will see each other everyday in which you can do the grooming necessary to build trust [Dunbar, 1993]. As the size of communities scale beyond the small village, you don't have the time nor the resources necessary to build trust between all the members. The cost of building and maintaining trust exceeds the value of the connections the trust would otherwise enable.

To overcome this limitation, we've created various measures or signals of trust [Gambetta, 2001]. These measures or signals of trust become proxies to our own efforts. These measures of trust allow us to overcome the physical constraints and create new connections.

The second part of this series will go into more detail about measures of trust, the cost of building trust and the value of reducing the cost of trust.


Bibliography

Thursday, January 06, 2011

Twitter Spammers Evolved

I received a spam tweet this morning in response to one about Amazon. Out of curiosity I had a look at the account and found an evolution in the spammer toolbox on Twitter. The account is KalilaHirata152, which I've reported as spam.

What this spammer is doing is that it triggers a tweet with a URL on keyword but to make it look less spammy, also creates tweets that consist solely of quotes from books. These quote tweets are interspaced within the feed with a ratio of about 1 book quote to every 1.5 url tweets.

While obvious to humans the slight variation in tweets is enough to get past many simple spam filters. The ongoing arms race against spammers continues apace.

Wednesday, July 07, 2010

Notes on Hadoop and Elastic MapReduce

We've been busily integrating Hadoop into our distributed processing architecture at PeerIndex. Here is a list of some items that I've run across that made the whole process easier.

  1. Do some training (seriously). Hadoop and MapReduce isn't grandfathers programming and many of the ideas & principles you would otherwise use don't suit MapReduce/Hadoop. Those coming from large-scale scientific data background will have a head start. Cloudera has some great training vids available on their site and also offer a training course which I attended and found good.
  2. Use a local version to test. I found Karamsphere to be very useful for testing the scripts written and working out the bugs. The Cloudera has a virtual machine that is very, very useful for doing Pig and Hive testing.
  3. Streaming jobs are your friend. Using streaming jobs is a great way to get Hadoop based processing of the ground.
  4. Follow these pointers from Pete Warden. Increase allocated memory size (particularly if using PHP via ini_set), use the -jobconf stream.recordreader.compression=gzip etc
  5. Delete outputs. MapReduce jobs will fail if you don't delete the output directory from a previous run. This one will get you into trouble all the time.


Enhanced by Zemanta

Sunday, February 14, 2010

Renewable Energy Target A Negawatts Market

Wind turbines (Vendsyssel, Denmark, 2004)Image via Wikipedia

The failure of Copenhagen along with the sheer complexity of ETS (one which is going probably do more for financial institutions than the real economy) requires stepping back to re-consider how to achieve the aims of reducing CO2 emissions. In the post "The Fallacy of the Carbon Market" I made the point that market-based reduction methods don't have to be carbon based.

Here I want to look at using a negawatt based market to reduce energy demand. Markets consist of supply and demand. The supply of negawatts is easy - it is all the effiecency changes that can be done (insulation, improved appliances etc.). The sticking point is demand. How to create demand for negawatts?

The renewable energy targets provide the mechanism for creating demand, by allowing negawatts to count towards those targets, power companies can choose to use negawatts rather than other forms of renewable energy to meet their obligations.

Negawatts would be created by doing an audit of end user (household, office, factory etc) to benchmark the energy consumption. The purchaser then pays for improvements (adding insulation, triple glazing the windows, more efficient HVAC etc). The difference in energy consumption after the improvements are installed is benchmarked. The amount of negawatts is the difference between the before and after benchmarks. These negawatts would count to the power companies renewable energy target for 1 to 5 years.

The advantages of this approach are:
  • Much simpler measurment, audit and verficiation
  • Doesn't impose large scale price increases on end-users
  • Increases productivity of the economy generally
  • Frees up end-user cash for other users

Negawatts address the simple physics problem that we can't build enough renewable energy sources in the time required in order to effectively replace enough carbon based energy production. A sustainable negawatt market will drive the development of new efficiency measures and devices leading to situation that energy demand falls as our ability to generate substantial energy from renewable sources increases. We are addressing the problem from both a supply and demand side, achieving a better overall solution.

Reblog this post [with Zemanta]

iPad - The Freedom Device

Screen shot of Apple iPad in useImage by Tom Raftery via Flickr

The discussion around the iPad has missed what I see as a vital use case. One that is becoming increasingly relevant in many countries around the world. Previously, I had written about a device that could provide unblocked accessed to the internet and outside world. The iPad is that device.

Coupled with portable satellite broadband basestation and some mesh networking software, a million iPads would make for a very difficult internet access method for oppresive regimes to block.

Reblog this post [with Zemanta]