Monday, 2 May 2016

Openshift rake and Gemfile error

I have an application published in Openshift online.

Openshift works really nice, but there are some tricks you need to know to make it work as it should

  1. rake needs to be set up to '~> 0.9.6' for it to work (is the one in the environment)
  2. rack has to be '1.5.2'

I could leave with it, but a recent deployment was failing after updating the database for no reason at all during the migration (a migration I had tested locally).

I started looking around the Internet to fix the error, doing a rake db:reset, my application is in the final steps but it is not ready yet so I don't mind deleting the databse, and I discovered  that I could in fact update rake

How:
rhc ssh application
cd  app-roo/runtime/repo
gem update rake


So I updated my Gemfile with the new rake, commited and pushed

It failed....

My migration was not set up properly, I was using a change_column_default and from: and to: were not working. So I fixed it, and now I have a rake that is updated...

But I couldn't access the console...

I found the solution and posted here:
http://stackoverflow.com/questions/27388389/rails-console-doesnt-work-openshift/36978165#36978165

A change in the Gemfile and a couple of gem installs were needed.


Tuesday, 5 April 2016

I won't make big pull requests (repeat 500 times)

Lately we are getting some pull requests through into ManageIQ, and some people has come to ask me some questions...

What size should a pull request have?

Possible answers:
  1. Complete functionality (i.e. that big awesome pull request that creates a new chargeback, fixed the world and praises God at the same time)
  2. Independent functionality (i.e. that big pull request that needs others)
  3. Something that works (i.e. complete feature but only part of a use case)
  4. A small pull request (i.e. nothing works here but it is fine)

Choose wisely.....


Tuesday, 1 March 2016

Theory, facts and paradigms, or why the cloud and virtualization are not the same but for the API

I had a conversation recently with a very interesting colleague about "traditional" virtualization and cloud. Although we almost agreed on everything, we were recording a webminar, we had severe differences on our points of view, starting with the fact that "traditional" was not a word he liked... he was from another provider.

In science it is necessary to distinguish between facts and theories, although that distinction can not be completely precise. They act as poles of an activity that crystallize in groups relatively autonomous.

Theories are systems of interpretation and explanation of facts that, once discovered and constituted, that is to say, circumscribed by the theory, seem to be independent of the facts.  That is why we can still talk about the Bohr atom and also why many economic books about theories that are known to be false.

On the other hand, we need to take into account that the theory that acts directly to explain the facts comes from the macro-orientation methodological known as paradigm, that only refers to the facts through the theory, whom acts as middle range hypothesis.
Let's say that all of this works together, so scientists can never do science without taking into consideration, actively or not, those paradigms that are active at the moment, and thus being a reflection of their society.

So the question should be whether the cloud is a paradigm or a theory....

And I would say is a paradigm... the discussion we were having was because the cloud is a completely new way of looking at the facts (virtualization). So although you can explain facts with the old paradigm - has anybody read how hard was for Copernicus to demonstrate that all the other were wrong and their models too complex? -,  the reasons to implement a cloud are not in the old ways of thinking... Even if they somehow look almost right, like being the center of the universe once appeared "clearly" to all.

The definition of the cloud by NIST is here, and refer to five essential characteristics:
Reference: http://csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf
  • On demand self-service
  • Broad network access
  • Resource pooling
  • Rapid elasticity
  • Measured service
All of them can be met by a system like CloudForms  / ManageIQ, or some other alternative tools in the market, but we can not hide that in order to fully get the power of the cloud there are other things that need to be changed, well beyond the software-defined-everything theory.  The first step into the cloud is economic, not technical, but the next one will be technical.
 
Everything has to be optimized for the cloud, starting from the applications (what about DevOps/CI/CD?), that has to be prepared to be executed in any resource, grow elastically and quickly, adapt themselves to the customer, provide the information needed so decisions can be taken. The network has to be prepared too for the new paradigm, although some technologies seems to cover somehow the new and the old paradigm, virtualizing the network, although it is more than virtual networks, is network as a service what we need, and of course all that elements that a cloud management platform or a cloud broken can deliver today.
 
Let's not confuse the path with the objective, because some times, like with the cloud, they are defined together. This is a continuous effort, so start your cloud automating your environment now, evolve your network to a fully open one, change your applications so they are cloud-ready, make them scalable, start providing the information needed by management, educate your users, and don't try to convince your manager that the Earth is flat, because even you can see that the ship goes round it...


Efa [CC BY-SA 3.0 (http://creativecommons.org/licenses/by-sa/3.0)], via Wikimedia Commons

Monday, 29 February 2016

Something old, something new

I promised news, and news are here...

Tomorrow is my first day in my new role as Customer Driven Innovation Manager for CloudForms.

I am happy and humbled with my new responsibility, where I will be working with customers and partners world-wide to make them part of the ManageIQ community. Expect more activity in this blog from now on, and more details, as now this becomes part of my main responsibilities inside Red Hat.

But this is sad too. I've been more than two years, almost three,  working as a Solutions Architect for Iberia, mainly with channel partners and their customers. I have enjoyed it so much all the good times - and the bad ones - that I am leaving with the feeling that there was still a lot of things for me to do within the team - as Bastain leaving Fantasy...

I am going to be missing working with many people - I will see them at the office so I won't be missing them personally- but not in every work place you get to know people that you consider your friends and that make trips and hard work something to enjoy.

If you read Jim Whitehurst book on the Open Organization, you will recognize the trend... And this is white open source is conquering the market.

I will try and do my best with the help of God.

Friday, 5 February 2016

Still alive

There have been changes lately in my life that are making me be so busy that I can't find the time to write here.

Let's say that the project is still ongoing. It is healthy and growing strong.

News shortly 

Thursday, 31 December 2015

Last day of the year

Today is the last day of 2015. Something weird, that we still celebrate some date in half of the world because some hundred years ago it was decided this way (and could have been decided different)

A fine year has been, I would say, being on holidays.

This 2016 is going to be even better...  For now, we are trying to increase the number of people working on the project. We have offers from partners to participate or increase participation, and we have offers from customers that want to make this better.


I believe we have created something new, that adds value to all elements of the chain. Customers have overcome build vs. buy - and old IT mantra- with a build to buy, powered by open source. Partners have discovered a fine way to learn and get new hires in a market where finding trained cloud professionals is so difficult, and of course we have a new way of interacting and adding value to partners and customers, while enhancing the product.

The question remains: how to make this better?. Continuous improvement is needed, we need to refine, enhance and update the model so more value is given to all parties. Any ideas? We have 365 opportunities, starting tomorrow, to use them.

Meanwhile, rest in peace, Ian. We'll keep working on Open Source.






Thursday, 17 December 2015

It's nearly Christmas

So Merry Christmas and Happy New Year! Enjoy the holidays if you want and enjoy my good will if you don't, or just don't feel identified with it.

Meanwhile we have advanced a lot. Yesterday we had a review of the things we are doing and it looked quite impresive.

- Rafa showed tier rating. Now you can use tiers (i.e. from 0 to 2 CPU --> x $/month, 2-4, another amount).... and also a new way to tariff: fixed+variable. Easier to say than to do, I should say. This is a great enhancement, as we know can make tariffs that covers a lot of new uses - with the example that now we can use the same schema that Red Hat uses in its subscription model.
- Amaury showed us the new interface to edit rates. You can now add rows in a table instead of having all the options already there. It will become quite important when we increase the number of options allowed.
- Tamara showed us how to put currencies into the rates, and the initial translation of CF4 into Spanish.

On the other hand, we have new offers to collaborate in the project from different companies. Too early to say, but I expect a significant increase of resources with the start of the new year... coming from different companies.

We also have decided to take a try of an open source project to follow our scrum process
https://tree.taiga.io/

We used Trello before and is great, but we were lacking some measurements that would be great to have, let's see how we adapt to the new platform.

Next steps are harder. We have done everything we can without modifying the models, and now we need to change configuration files, models and everything around.
Focus points: assignment of rates to users, resources and groups, and being able to charge at different levels, not only with the data coming from the C&U database. We are also starting to see how we can integrate with external billing systems.

We've had some contacts with opencell, an open source billing company and product, and we need to work hard on that.

Stay close, this is going to evolve quickly.