Co-creation and crowdsourcing in Oil and Gas software: paving the future for highly technical software.

The challenges faced by the Oil and Gas industry are enormous. The easy reservoirs have been found and are mostly depleted. Oil companies need to replace their reserves, hence they need to find new proven assets. Whatever is left to be found is well hidden, difficult to detect, difficult to identify, and extremely difficult to model and develop. Existing reservoirs that are currenlty being produced need to be handle with extreme care, ensuring that oil or gas recovery is maximized and production is optimized. Fortunately, a new class of reservoirs entered the picture a decade or so ago: unconventionals. Unconventional reservoirs are a class of reservoir type that fundamentally differs from classic reservoirs. Unconventional reservoirs are plenty and distributed across the globe. They have brought a new hope for asset replacement. In unconventional reservoirs, Oil or gas is trapped in very low porosity and very low permeability medium. The science for exploring and modeling these reservoirs is much less developed than that for conventional reservoirs. Producing these reservoirs require also new techniques such as fracking, expensive and resource intense. Optimization of these production techniques is of utmost importance.
Going forward we will increasingly be looking in more challenging environments, reservoir with only become most complex and the technology and science needed to successful exploit them with need to continue to grow at a rapid pace to keep up.
Software is pervasive across these wide spectrum of big challenges. There is no single person, group or company that can provide solutions to all these challenges. Collaboration is needed to converge to efficient solutions that solve the problems at hand. But collaboration is not enough. Efficient solutions need diversity of approach, different points of view that compete but also build upon each other making the end solution much more efficient and powerful.
Oil and gas professionals and experts who use software to address their challenges must work together to find solutions, but to be able to do it within the boundaries and policies of their organizations, a proper software solution is indispensible.
Since the introduction of computers in the geosciences world (oil and gas, exploration through production) back in the 70s and 80s, the standard software product used were single software packages that did something (or somethings) very well in the user’s opinion. Using this single, monolithic packages, the user had access to what he or she considered to be the best technology available. The IT departments loved it because there was a single infrastructure to maintain, and data managers enjoyed it due to the fact that there was one data storage to maintain. This single monolithic packages did not allow other players to come and deliver technology on top of them. They were close. As things got more and more complex towards the end of the 80s and through the 90s, single packages could not address all the needs of the geoscientists, so they opted for bringing in different packages. Each package, usually from a different vendor, will offer best in class technology according to the user’s criteria. This is a scenario that is frightening for IT and Data Managers. Usually each different product needs a different IT infrastructure and a different data management scheme. As for the single package, it was not possible to have 3rd parties developing technology on top of them. Closed systems.
But things kept getting more and more complex. To the point the industry realized that there was no way a single vendor or even a handful of large vendors, could deliver all the technology needed to solve the huge challenges faced. A different paradigm was needed. The new paradigm was a combination of software platform and extensibility. A platform could be defined as a major piece of software, as an operating system, an operating environment, or a database, under which various smaller application programs can be designed to run through an extensibility layer. Oil and gas companies, by means of using a platform with robust extensibility capabilities, can then consume technology from many 3rd party vendors, not only technologies produced by the platform vendor. This diversity of technologies give the oil and gas company a much larger spectrum of choices. Additionally, oil and gas companies can develop their own technology on top of the platform.
The combination of platform and extensibility brings the opportunity for new business models in oil and gas software. Small vendors, even a one man shop, can now produce differentiating technology and deliver it to large companies through the platform, provided the platform is open to anyone to deliver technology on top of it. Even more, several vendors can deliver solutions in the same space, which creates a healthy competition that naturally advances the quality of the solutions.
An open and extensible platform is a petri dish for innovation. By allowing small and big players alike to develop and deploy technology to such a demanding, difficult and mature industry as oil and gas, it naturally nurtures co-creation, because it enables anyone to participate in the improvement of the workflows that can be executed within the platform. Modules from different vendors can participate in a single workflow, adding value to the end user. A successful extensible platform for oil and gas will enable co-creation and crowdsourcing within a very conservative industry and will shape the future of how very complex challenges are addressed efficiently.

Posted in Uncategorized | Tagged , , , , , , | Leave a comment

Study the behaviour of technical communities by tracking their movement through wearables

This project has the goal to study the behavior of technical communities by tracking their movement through a wearable device and a number of readers. For organizations that are dealing with complex technical challenges it is extremely important that the technical population interacts and collaborates in order to exchange ideas and solutions . This sharing and collaboration intensifies and improves the quality and the quantity of innovation. A particular setup at the workplace will influence the way people move, gather and interact. Studying these movements, how they are influenced by changes in the physical environment and subsequently how it correlates to productivity and creativity gives a tremendous insight on how to foster innovation.
The project will implement the tracking hardware and software and it will gather population movement information as well as population behavior. Other metrics will be establish to understand how changes affect innovation and productivity. The collected data and interpretations results will be shared with the backers.
I have this project posted in Kickstarter at https://www.kickstarter.com/projects/horacio/social-behavior-in-technical-communities

Posted in Uncategorized | Leave a comment

Part I: iPhone controlled home speakers switch using the RaspberryPi and the CustardPi relay board

To get started, you need to have apache2, php and mysql loaded on your raspberry pi as we will be using web access and web services and a small database to store configuration data to support multiple iPhones controlling the speaker switch.
Then you need to get familiar with the Custard Pi relay board and install all the support software on your Raspberry Pi to be able to control the Custard Pi via Python. Here is a good explanation on how to get all this done http://www.slideshare.net/SeggySegaran/custard-pi-6i2c
The scripts that turn the relays on and off work in a very simple way. The 8 relays on the Custard Pi board are grouped in pairs to support stereo setups. Relays 0-1 are switch 1, relays 2-3 are switch 2, and so on. If you want to turn switch 1 on, the scripts will ensure all relays are turned off and then relays 0-1 are turned on, so switch 1 is on. The same logic is applied to the other relays.
Here is the python code to turn switch 1 on (relays 0-1). The Python files are located in the main directory that you choose under a directory named CustardPy, filename is switch1.py:

#1/usr/bin/env/python
import RPi.GPIO as GPIO
import time
import cpi6
GPIO.setmode(GPIO.BOARD)
#start program
board1=cpi6.add1
cpi6.setasoutput(board1)
cpi6.setbit(board1,cpi6.ONrelay0)
cpi6.setbit(board1,cpi6.ONrelay1)
cpi6.clrbit(board1,cpi6.OFFrelay2)
cpi6.clrbit(board1,cpi6.OFFrelay3)
cpi6.clrbit(board1,cpi6.OFFrelay4)
cpi6.clrbit(board1,cpi6.OFFrelay5)
cpi6.clrbit(board1,cpi6.OFFrelay6)
cpi6.clrbit(board1,cpi6.OFFrelay7)
GPIO.cleanup()
import sys
sys.exit()

and here is the php code to call the python script, filename is switch1.php and should be placed in the main directory:


exec (“sudo python CustardPi/switch12345.py”)

You will call the php file from your browser or a networked app (iOS for example) to turn on the speaker switch.
The code for the other combinations is :

To turn on switches 1 and 2
#1/usr/bin/env/python
import RPi.GPIO as GPIO
import time
import cpi6
GPIO.setmode(GPIO.BOARD)
#start program
board1=cpi6.add1
cpi6.setasoutput(board1)
cpi6.setbit(board1,cpi6.ONrelay0)
cpi6.setbit(board1,cpi6.ONrelay1)
cpi6.setbit(board1,cpi6.ONrelay2)
cpi6.setbit(board1,cpi6.ONrelay3)
cpi6.clrbit(board1,cpi6.OFFrelay4)
cpi6.clrbit(board1,cpi6.OFFrelay5)
cpi6.clrbit(board1,cpi6.OFFrelay6)
cpi6.clrbit(board1,cpi6.OFFrelay7)
GPIO.cleanup()
import sys
sys.exit()

To turn on switches 1 and 3:
#1/usr/bin/env/python
import RPi.GPIO as GPIO
import time
import cpi6
GPIO.setmode(GPIO.BOARD)
#start program
board1=cpi6.add1
cpi6.setasoutput(board1)
cpi6.setbit(board1,cpi6.ONrelay0)
cpi6.setbit(board1,cpi6.ONrelay1)
cpi6.clrbit(board1,cpi6.OFFrelay2)
cpi6.clrbit(board1,cpi6.OFFrelay3)
cpi6.setbit(board1,cpi6.ONrelay4)
cpi6.setbit(board1,cpi6.ONrelay5)
cpi6.clrbit(board1,cpi6.OFFrelay6)
cpi6.clrbit(board1,cpi6.OFFrelay7)
GPIO.cleanup()
import sys
sys.exit()

and so on and so forth, you get the gist.

The iPhone code to control the switches can be accessed here.

Posted in Uncategorized | Leave a comment

iPhone controlled home speakers switch using the RaspberryPi and the CustardPi relay board

This is a project that I had in mind since we moved to the new house in the Houston Heights and we ended up with speakers throughout the house. Then I got a Sonos system for my birthday, which works great and can be easily controlled by iPhone or iPad o laptop. We got a standard push button speaker switch box but I thought it would be really cool to control the speakers via the iPhone since that is how I control the Sonos music.
The project started by using the server I have already setup on my RaspberryPi which can respond to php commands from inside or outside my network. Then I added a relay board CustardPi, wrote the php web service that controls the CustardPi, the Python scripts and the iPhone app that communicated with the web service and sues the commands. The relays then respond to the iPhone app and switch the speakers on and off.
Full description coming on my next post.

Posted in Uncategorized

iPhone home temperature logger

Our AC/Heating system is driving me nuts and I can’t get it calibrated in order to keep a balanced temperature around the house, kid’s rooms are boiling while bedroom and living room are freezing so I developed a prototype of an iPhone temperature logger using the http://www.weatherdirect.com/ system. The goal is to help me look at historical temperatures and then calibrate each room air flow to equalize as much as possible the temps. The system is comprised of:

- 4 thermometers
– base station
– Mysql database to hold the temperature and humidity data
– PHP service that retrieves the temperature from the Weather Direct site and stores it in the database at 5 minute intervals
– a PHP service that retrieves the name, temperatures, humidity and timestamp data for posting on the iPhone application
– iPhone app putting it all together

Next phase is automation of the air flow. Still thinking…

Here is a screenshot of the app.

photo22

Posted in Uncategorized | 1 Comment

Raspberry Pi ready with a web server, ftp, VNC and GPIO web control

Finally after a week or so of messing around with the Raspberry Pi I have it all ready and working. I have installed Apache, PHP, FTP, VNC, MySQL. The web server is serving 3 sites, including a PHP service, and I can now support my own home temperature tracking system. Really cool and hosted by a computer uder $50.00.
Impressive.
In the next days I will be publishing articles explaining a bit how it was done.

Posted in Uncategorized | Leave a comment

PhotoIdeas, a photo tagging app for the iPhone

Tag your photos, categorize them, set a location, search.
Image

PhotoIdeas is an application that allows the user to take a picture of something of interest, tag it and catalog it for future reference or sharing via email.

For example, you are window shopping and saw a beautiful dress that would look great on your mom, you snap a pic, you choose Clothes and Mom, then enter’ red dress’ and then choose the location and save; now your picture has info associated with it and you can come back and find it quickly. You don’t have to browse through the 1000s of photos you might have in your camera roll.

 The application allows cataloguing using 3 different classification categories:

Category 1 – ‘What’

A fixed catalog of options describing things (What it is). New What categories can be added via the Settings screen.

  • Craft
  • Gift
  • Food
  • Groceries
  • Recipes
  • Foods
  • Activities
  • Books
  • Decorations
  • Stores
  • Restaurants
  • Clothes
  • Documents
  • Parking spaces
  • Important info
  • Coupons / advertisements
  • Events
  • Other

 

Category 2 – ‘Who’

A fixed catalog of options describing people (Who it is for). New Who categories can be added via the Settings screen.

 

  • Me
  • Mom
  • Dad
  • Grandma
  • Grandpa
  • Sister
  • Brother
  • Son
  • Daughter
  • Friend
  • Husband
  • Wife
  • Mother
  • Father
  • Aunt
  • Uncle
  • Teacher
  • Neighbor
  • Other

 

Category 3 – ‘User Defined’

A free form entry with user defined keywords, for example: chair, Pearl Jam, TV, painting, Sushi, http://www.cnn.com, etc.

 

 

Category 4 – ‘Location’

Location based Category. The location at the time of the PhotoIdea is created is stored and can be viewed later on.

The user then is able to search the database of PhotoIdeas by specifying a value for each of these Categories.  For example, the user can search for What=Clothes, Who= Mother and the application will return all PhotoIdeas that match the categories. Or the user could search for What=Clothes, Who= Mother and UserDefined=red, and the system will return all entries matching that criteria.

 

PhotoIdeas can be deleted, mailed or edited.

 

Posted in Uncategorized | 1 Comment