A Journey to Colombia’s Coffee Belt

In the northern reaches of the Andes — where the coffee bean is as
central to life as corn is to small town Iowa — a welcoming spirit prevails.


There are more than 20 restaurants and cafes that sell coffee by the cup in the lively pastel-splashed plaza of Jardín, a quaint Colombian pueblo, or village, nestled in the northern reaches of the Andes Mountains.

I chose one and settled in at a streetside table painted bright blue like an Easter egg, and ordered a café tinto — straight black — for 800 pesos, about 25 cents. It was a Monday morning, and the Paisas, as the folks in this region south of Medellín are called, were socializing. Some looked to be friends and family chatting and laughing in the shadow of the double-spired basilica. Some, I was told, were shopkeepers who took the day off after a busy weekend catering to tourists. At the table next to me, a campesino relaxed with his cowboy hat pulled over his face and his chair tilted back against the wall.

Had I been here on a certain day during the harvest season, I might have seen farm owners standing outside the Bancolombia branch with bags of paper cash, surrounded by police officers for security and workers who came to be paid. On Saturday nights, this plaza is a raucous cacophony of pounding discoteca beats and campesinos parading into town astride show horses, but there are still tintos among the cervezas on the trays waitresses carry between tables.

Coffee is at the heart of Jardín, as corn is to small town Iowa: the local economy that forms a cultural identity. When my tinto arrived, it was easy to see why: The flavor, strong and bold, flowed directly from the beans, not a burned layer from roasting. I took another sip from my teacup-size demitasse and noticed that of all the people drinking coffee around me, a travel mug or paper cup was nowhere to be found. No one was taking their coffee to-go. Everyone was sitting, sipping, enjoying.


Developer console keeps showing “loading…” and crashes

When you come to open your developer console. It opens and starts to load but it quickly minimizes, showing a “loading…” text.
After that, the developer console’s window freezes completely, allowing you only to close it. Same happens to the window which opened the developer console (your Salesforce homepage)


First, kudos to this author at https://salesforce.stackexchange.com/questions/80453/developer-console-is-not-loading


And here are steps in details:

Step 1:

Do GET in Workbench


Step 2:

mine is: 1de28000004VCFFAA4, so here is the full link to do GET:


After that, do DELETE

Step 3:

After deletion, here is how it looks like:


And the Dev Console is back to nomal, if you’re lucky 🙂


Don’t forget to create another workspace since the current workspace has been deleted.

Happy forcing!



npm install heroku kafka plugin on Windows 64 bit

If you land here, then you need it absolutely. I used to get stuck with it so I think it’s helpful somehow to you guys out there. Enjoy!


Cannot install snappy, a prerequisite for heroku-kafka plugin via npm, which is basically derived from failure of node-gyp rebuild.



  1. Create a new C++ project in VS 2015. It will install necessary libraries and sdk for snappy installation



2. Update nodejs and node-gyp using npm -g install npm@next


3. Install snappy


4. Install heroku kafka plugin


You’re done. Congrats! Enjoy streaming!


Understanding __c and __r

Understanding the Force.com lookup and master-detail relationships, and how to access the related fields using the relationships, is one of the most important starting points for any Force.com project. This topic can be quite confusing if we don’t understand it but can be equally rewarding once we ‘get’ it!

In this article, I have tried to compile some useful tips for accessing the parent objects from a given child object, and accessing the child objects from a given parent object. Getting a hang of __r and __c relationship fields is obviously the key which is what I have tried to explain.

How to get to the fields of the lookup or parent objects for a given child object (Upward traversal)

1. Find out the lookup or the parent objects that you need to access. There are two ways you can determine this. In our example, our goal to identify lookup and master-detail relationships in Line_Item__c custom object.

a. Setup->Create->Objects. Select the object. Study ‘Custom Fields & Relationship’ section of Line_Item__c



Now, in order to get to the lookup or parent object from the Line Items object (child), we should replace __c by __r in the relationship field name of the Line Items object. In our example Merchandise__r will give us access to the fields of the Merchandise object from within the Line Items object; Invoice__r will give us access to the fields of the Invoice object from within the Line Items object.

b. Using Eclipse Force.com IDE, browse salesforce.schema. I like this option over the first one as the schema can give us a better view of all the relationships, field names with exact API names without any guess work. A closer view reveals two custom parent (lookup or master-detail) relationship fields as noted by word ‘reference’.


Going a level down tells us the name of the relationship to the related parent objects. In our case, Line_Item__c object has a master-detail relationship to Invoice__c (master object) using the master-detail field Invoice__c. Schema tells us to use Invoice__r for us to get to the Invoice__c’ fields. And, use Merchandise__r relationship to get to the Merchandise__c object as depicted below.


2. Now that we know the relationship name, we can reference any fields from the lookup or master objects. As an example, in order to refer the invoice name, invoice status and quantity of the line item, we will use the following SOQL when working within Line_Items__c

Select Invoice__r.Name, Invoice__r.Status__c, Quantity__c from Line_Item__c where CreatedDate < TODAY

How to get to the fields of child objects in a lookup or master-detail relationship for given parent object (Downward traversal)

1. Find out the related child objects. I would recommend using schema browser in Ecplise Force.com IDE.
2. Go to the object for which we are trying to find child relationships. In our example, let us focus on Invoice__c.


3. Drill down further into ‘Child Relationships’ node.
4. You will find two child relationships: 1) to Delivery__c and 2) to Line_Item__c


5. Relationship name to Delivery__c child object is Deliveries__r
6. Relationship name to Line_Item__c child object is Line_Items__r.
7. Now, we can traverse down to any fields in the child objects. As an example, to get quantity from all related child line items for invoice ‘INV-0000’, SOQL will look like:

select name, (select quantity__c from line_items__r) from invoice__c where name = ‘INV-0000’

We can include other child relationships as needed. So, to get order numbers from the related deliveries:

select name, (select quantity__c from line_items__r), (select order_number__c from deliveries__r) from invoice__c where name = ‘INV-0000’

Kudos to Avi’s blog source: http://11concepts.com/sfdc/blog/understanding-__c-and-__r/

Angular2Attack 48hr Hackathon – Where’s yours?


Name: Anger Angel
Type: app

Audience: A2A judges and everyone since it’s inevitable having angers inside yourself thay you may expose or not sometimes, if not many times.

How it works: Very simple. The app will listen and detect if that’s a quarrel using its cognitive engine by consuming CRIS (Custom Recognition Intelligent Service – https://cris.ai) and react accordingly to users with triggering to broadcast a tender song or a meditation song to keep users calm and relieve their mind preventing something really awful from happening.


Select Max(InvtTranKey) from prod_app.dbo.timInvtTranLog --779246
select NextKey from prod_app.dbo.tciSurrogateKey where TableName='timInvtTranLog' --779247
--UPDATE prod_app.dbo.tciSurrogateKey SET NextKey=779787 where TableName='timInvtTranLog'
Select Max(BatchKey) from prod_app.dbo.tciBatchLog --332973
select NextKey from prod_app.dbo.tciSurrogateKey where TableName='tciBatchLog' --332974
--UPDATE prod_app.dbo.tciSurrogateKey SET NextKey=332672 where TableName='tciBatchLog'
Select Max(InvtSerialKey) from prod_app.dbo.timInvtSerial --332973
select NextKey from prod_app.dbo.tciSurrogateKey where TableName='timInvtSerial' --332974
--UPDATE prod_app.dbo.tciSurrogateKey SET NextKey=152276 where TableName='timInvtSerial'
Select Max(InvtTranDistKey) from prod_app.dbo.timInvtTranDist --332973
select NextKey from prod_app.dbo.tciSurrogateKey where TableName='timInvtTranDist' --332974
--UPDATE prod_app.dbo.tciSurrogateKey SET NextKey=1274003 where TableName='timInvtTranDist'