Thursday, June 26, 2014

Google I/O 10 things you should know

Whenever there is a world-wide sports event happening on any part of the world, I prefer escaping into a meditation trance with a board around my neck, 'Wake me up when the disturbance is passed.' Specially when there is a cricket match involved and entire India suddenly comes to a standstill. I felt a similar tide smashing me on the face with the football world cup. Sports and me are like oil on water, cannot merge not in a million years.

But then there was relief yesterday when Google I/O started. Now that is something I would like to get excited about. To be honest, I never followed any technology conferences so closely before (except dreamforce) because adding a new feature to phone is not something I would like to devote my time to. Yes, smart phones are awesome we get it. I don't really like to get excited when the company changes the font and makes a big announcement for it. Save it for the sheep.

What was exciting about Google I/O last night (remember I was watching it in India) was that the age of wearables is here. No longer will your phone be that passive device that sits in your pocket giving you scare about the sperm count and rings everytime someone decides to get in touch with you. No, your phone is the new device that can enhance any screen connected to any device. That was the summary of Google I/O yesterday. Android is coming to a screen nearest to you,

Here are top ten things they announced incase you missed it.

1. Introducing Android L (seriously hoping it will be named Laddoo)
Android L is updates to Android OS that will be shipped in most of the phones. One thing noticibly visible for Android L is the card based UI is here to stay. The shocking Google Now features that we all so hate to love is going to be the norm going forward. A renewed lockscreen (yes we are waiting for that) that will now contain notifications and a separate heads-up notification that will let urgent notifications on the screen.

2. Contexual Safe place detection
This new feature will determine if you are in a safe place and disable the lock screen pattern. Good one but I wonder how do we determine the safe place, I for one do not want my family to open my phone when I am not around.

3. Enhanced notification and project butter
These will show card based UI which we so love, thanks to Google Now. We have talked about card based UI and its benifits. Project Butter aims at smoothing down Android even more. With the enhancements of butter Apps will load faster than ever.

4. The merging of Chrome OS and Android
The day it all merges is here. With one head running two awesome products, it was about time someone created a super awesome product. They showed a couple of cools ways both these products could merge. Now recent apps on android will also show recent tabs opened on Chrome. When you take your Android phone near a chrome book it will unlock and sign in. And here is a awesome news, Chrome OS will support Android Apps.

5. Android Wear is here
This is a big one as I mentioned earlier. We have dawned on the day when Android will be coming to any screen near you. The video on Android wear by Google is looking pretty awesome. Best part about this is Google Now inbuilt. Yep, Google now is here to stay and it is getting pretty awesome (and creepy)


6. Android Wear companion
There won't be a separate store for Android wear, instead most Apps on Google Play store will have a companion app on Android wear (That should be interesting but space cosuming.)

7. Android Auto
Most of the tech companies are keen on getting a market share in the auto-segment. Salesforce have their own experiments with Toyota Friend in this area. What is significant with Android Auto is that it can give you relevant Google Now cards just when you need it (but sometimes don't want it)

8. Android TV
And yet another brave front by Google to get into the living room. A set-top box powered by Android or was it rebranding the Google TV to Android TV.

9. Chromecast and Google Docs update
Google Docs and Chromecast finally got an essential update that should have been here long back. Google Docs now suppot direct editing of word documents without converting them. Chromecast can now broadcast complete Android phone even if you are not on the same Wifi.

10. And finally Google One
Google has announced inexpensive stock Android devices that will begin with as low as 100$. This will bring latest Android OS and hardware to the market. They are starting with India (yay!!) and will spread to different countries eventually. 

Friday, June 6, 2014

Improving the user experience using visualforce

One of the biggest question customers have when implementing a CRM solution is how much can we automate the process? Considering that the representative will be spending 8-9 hours on the computer operating on CRM, the biggest question they ask is, 'Are you making my life easier or harder?'

During a recent conversation on twitter this question popped up again. Is it possible to auto-populate the values on a visualforce page on choosing a lookup? Lets say you are designing a custom contact manager page. The page contains 4 fields from Account on the page including a lookup. When the user chooses a account value from lookup he would like to see the other 3 fields automatically populated,

Sample visualforce code
<apex:page standardController="Contact" extensions="AutopopulateController">
 <apex:form>
   <apex:pagemessages id="msgs">
   <apex:pageblock title="Contact Create/Edit">
      <apex:pageblocksection title="Contact Information">
       <apex:inputfield value="{!contact.FirstName}">
       <apex:inputfield value="{!contact.LastName}">
      </apex:inputfield></apex:inputfield></apex:pageblocksection>
       <apex:actionregion>
          <apex:pageblocksection id="accinfo" title="Account Information">
         <apex:inputfield value="{!contact.AccountId}">
<!--This method is the key to populate account values-->
            <apex:actionsupport action="{!populateAccount}" event="onchange" rerender="accinfo, msgs"> 
         </apex:actionsupport></apex:inputfield>
         <apex:inputfield value="{!contact.Account.AccountNumber}"/>
         <apex:inputfield value="{!contact.Account.Amount}"/>
        </apex:pageblocksection>
      </apex:actionregion>
      <apex:pageblockbuttons>
        <apex:commandbutton action="{!cancel}" value="Cancel"/>
        <apex:commandbutton action="{!save}" value="Save"/>
      </apex:pageblockbuttons>
   </apex:pageblock>
  </apex:pagemessages></apex:form>
</apex:page>

The autopopulate controller is as follows.
public with sharing class AutopopulateController
{
 public Contact ContactRecord; 

 public AutopopulateController(ApexPages.StandardController controller)
 {
  Contact ContactRecord=(Contact) controller.getRecord();
 }
  
 public void populateAccount()
 {
  ContactRecord.Account=[select AccountNumber, Site from Account where id=:ContactRecord.AccountId];
 }
}

This simple few lines of code will make your customers life much easier than before. You can use any object that is related to populate the code. 

Wednesday, January 22, 2014

Hacking Travel using your Smarphone

Last few years humanity has learned a valuable lesson in becoming social. Did Steve Jobs know he was changing the course of human history during the launch of iPhone we may never know but the last couple of years smart phones have successfully penetrated most of the households in this world. While most people use their expensive (and very expensive) smartphones to forward dumb meme's and make quirky jokes, the true potential of a smartphone is unlocked when you utilize it to augment your daily life and enhance your experience.

When it comes to many people start to panic. How do we go? where do we stay? will we be sharing a berth with a known serial killer? etc. These anxieties are not always valid but quite normal. Using our smartphones we can enhance our travel experience to beautify the experience even more.

Here is the list of Apps ordered by the level of priority you need in your phone when you are traveling in India or Abroad.

1. Foursquare
Although there are lot of controversy and privacy issues around using Foursquare, the value this app gives is much higher than the problems. When you visit a restaurant or a new place you can checkin into foursquare and earn badges. One biggest feature that has helped me numerous times is that it recommends places for dinner and lunch in your area. Not only that once you checkin into any place, look for tips on what to order. The self correcting internet medium will always tell you which place to dine and what to order.


2. Google Maps
Anyone who uses android phone knows the value of Google Maps. Maps helps you find direction to places around you. Google Navigation (that comes bundled with the Google Maps) will give you turn by turn direction. This App has saved me a lot of times driving in the unknown regions and so far has never misguided me, even in many parts of India. Not only that, Google Maps also gives you timings and stops for public transport including bus, metro and trains. Good option for riding the local public transport.
Note: Google Maps is an inbuilt app in your Android phones so there is no android Play link.


3. Google Now
First there was Google, now there is Now. Google Now has exceedingly becoming the number #1 app that I use whenever I am traveling. From the basic information like weather in the city you have landed to the local updates, currency conversion, language translation and many more other valuable information. What is more, at the gate of airports Google Now keeps your tickets handy and gives you updates about your flight right there on your palm.

4. Google Translate
One of the biggest challenges we face while traveling to a different country is the language. Google Translate helps here tremendously. If you are traveling internationally, not only does it translate text from english to local language it also does it vice versa. It also gives you the phonetic spellings in english to mimic the language. For some languages, it also reads out the translated text.
I used Google Translate extensively during my trip to thailand. You should have seen the look on face of my taxi driver.

5. Google Googles
Wouldn't it be cool if you knew everything Google knew? Google Googles unlocks the potential of your phone camera with its massive data base to give you relevant information. Need to translate a hotel menu? Just take a snap, need to know more about that monument you just saw? Take a snap and let google translate it for you. My favorite feature is that it helps me get the gist of the book by scanning the barcode, helping you choose faster.

6. Ixigo Road Trips
I mostly use this app during my road trips in India. This app helps you find fuel station, food eateries, dhabas (local traditional village cuisine) along the way. It is quite handy to locate cheap hotels, motels if you want to crash for few hours.


7. Meru Cabs/ Ola Cabs
Traveling around India and need a quick airport transfer? Meru and Ola cabs have their respective apps on android that help you book a cab without the hassle of a call. One of the best feature of the Ola cab app I find is that it shows you the location of nearest cab and time it will take for it to reach you should you book now. Very helpful for last minute travel plans. Although many people prefer to book a prepaid taxi at the airport, Ill prefer these apps because they send me a receipt in my email after the trip.



8. Hotels.com
Gives you a list of hotels in the city you want to drive in. It helps you locate hotels based on ratings, accepting of credit card etc. During my trip to Ooty, I wanted to pay using Amex, I used hotel.com to search for an Amex paying hotel in a jiffy.

9. Zomato
Craving for some authentic cuisine? Need to have chinese at 2 am in the morning (very unlikely you will find in India) but Zomato helps you find the restaurant based on your cravings and the time. What is open now is also a good feature to find out open restaurants around you.

10. Tripit Travel Organizer
One of the biggest headaches during traveling for business or fun is maintaining a lot of documents. Travel itineraries, hotel booking and other important documents. It also spices up your itineraries with other important info like weather updates. This saves a lot of headaches of finding your tickets, plans all the time and makes your travel a little less hassle.


Thats it from me today. It was recently brought to my notice that I use Apps a lot, that brought the idea about sharing my phone apps with the world. This column will be published monthly and discuss apps on Android, iPhone and Salesforce.  

Thursday, December 5, 2013

Building a Mobile App faster than it takes to make Coffee Using Salesforce1

The world is moving towards mobile, screens are getting smaller (and larger simultaneously). Cloud has already replaced the need for the computer as we know it and mobile has now stepped up to finish the job. To become a complete customer company we need to cater to every screen the customers prefer.

Now as a Force.com platform loyalist (and a purist at that) I find it really annoying that I have to learn a new language (Objective C for iOs and Java for android) just to build an mobile app. But this nagging piece of overwork is no longer a trouble. Have no fear Salesforce1 is here.

The moment Salesforce1 was announced, it is understood that it is a game-changer. Salesforce1 app is to mobile what visualforce did to cloud development, smash it. Generations ahead of its time, Salesforce1 is a treat to all visualforce developers out there to bring amazing functionality to phones. Before we begin, lets get few things clear.

1. Salesforce1 is a way of building mobile apps around Salesforce, using the existing Salesforce data, heroku and many other services. For full list of API's and Services included head over to Salesforce1 page. (Side note: Did you checkout the awesome new developer homepage? )

2. Salesforce1 is just an extension of existing Salesforce application, so you can migrate any existing Visualforce page to mobile. It does not support Cordova libraries yet but I am sure they will support that in the future. (Fingers Crossed) (Edit: Thanks to @Metadaddy you can get most thinks to work using pure HTML5, e.g. here is a great article that shows you how)

3. Salesforce1 is the most awesome platform that allows you to deploy Force.com applications on mobile faster than you make coffee.

Lets get started on building a small form based application that will collect responses from people in a conference. We will build a lead generation page using Visualforce and deploy it for Salesforce1 before you make coffee. So lets begin and don't forget to put that coffee pot boiling.

Step 1: Go to Setup -> App Setup -> Customize -> Leads -> Field Sets



Step 2: Create new Field Set adding the required fields. (Side note: If you are an Salesforce Admin and a Developer is trying to confuse you by using complex visualforce jargons whisper field sets in his ears to scare him. More on field sets here.)



Step 3: Create a Visualforce page called SurveyPage and use the Field set created in step 1. The following code adds a field set called Survey on the visualforce. Note: I am using Standard Visualforce controls, if you intend to add a custom CSS to your page please make sure you use Responsive Web design to cater for all Screens.

Visualforce code:

<apex:page standardcontroller="Lead">
<apex:form>
<apex:pageblock>
<apex:pageblocksection>
<apex:repeat value="{!$ObjectType.Lead.FieldSets.Survey}" var="f">
<apex:inputfield value="{!Lead[f]}">
</apex:inputfield></apex:repeat>
</apex:pageblocksection>
<apex:pageblockbuttons>
<apex:commandbutton action="{!Save}" value="Submit Survey">
</apex:commandbutton></apex:pageblockbuttons>
</apex:pageblock>
</apex:form>
</apex:page>


Step 4: To enable the visualforce for mobile we have to set the Available for Salesforce mobile apps flag on the edit page.  (Side note: If you are building the page using Development Mode or any IDE, go to Setup-> Develop->Pages to see that flag)


Step 5: Now we are all set, create a new Visualforce Tab called Survey and assign it to the visualforce page.


Step 6: Go to Administration Setup -> Mobile Navigation

Step 7: Add the Survey tab to the Mobile Navigation.
Step 8: Open Salesforce1 app on iOs device and test your page. (Side Note: One super cool feature about Salesforce1 is that if you do not have a Apple Device you can test your application one browser. Go to <Salesforce instance>/one/one.app)


Step 9: Enjoy your Coffee.

Compatibility issue:
Salesforce1 is available for all iOS devices and can be downloaded from App Store. For Android devices however the minimum requirement is Android 4.2 (Jellybean), all other devices will receive Chatter Mobile 3.4. I find it offensive to discuss Windows mobile OS.

Tuesday, June 4, 2013

Five things to do while writing an apex code to prevent pulling your hair out later.

A new intern joined the team excited to learn about Salesforce. She had a little Java background and thought that Salesforce was very easy compared to Java. In her eagerness, she wrote a 20 lines of code to prove her skills and grasp on Salesforce. The problem was, the code could be written in just 3 lines.

When you are coding on Salesforce, you have to keep in mind the following things:

i) If you can save some lines of code, save it, you can use those lines later. 
If you can write a code in 5 lines, don't waste a 6th one. That one line you saved could be the difference between spending a weekend in office optimizing the code or going to a party at the weekend.

ii) Write like the code will run forever.
Yes, your Sales team has taken in writing that there will only be three records in the system. Yes, you have written a good code for that. But when you are dealing with Salesforce, remember that data is going to increase over a period of time. Today you may be processing a 100 records but there will be a time when you might have to process 1000 or 100000. That period might be beyond your warranty support but it is going to come. You cannot write a prophecy about the day your code broke. Bulkify your code to handle as much data as you can. Put a check if the data is beyond your limit and print a decent, good error message for the future developer to understand what is wrong.

iii) Dread the governor limits
You may hate them, you may love them but you cannot ignore them. Salesforce governor limits are the harsh reality of this world, just like it will rain when you forget your raincoat at home. The governor limit are going to show their face just when you are about to close your day. Write a code to avoid the limits. Have you heard of a developer who wrote such an efficient code that no Governor limit was broken? Neither have I. But you can try to be as close as possible to the legend.

iv) SOQL/DML should not be allowed to enter a FOR loop
This rule is Salesforce 101. No DML or SOQL statement should be inside for loop, even if you are running the loop for only two records.

for(Contact c: ContactList){
//THIS IS A NO NO NO
account a = [Select id,name from Account where id=:c.accountid];
c.name=c.name+a.name;
//THIS IS A EVEN BIGGER NO
update c;  
}

The code written above is a recipe for disaster. Instead the same code can be optimized as:

for(Contact c: ContactList){
accountSet.add(c.accountid);
}
//Whuuu huuu not inside any loop
Map<id,Account> accountMap = new Map<id,Account>([Select id,name from Account where id=: accountSet]);
for(Contact c: ContactList){
//Like they say in treasure hunt movies, a map comes in handy.
c.name=c.name+ accountMap.get(c.accountid).name;
}
update ContactList;

v) Use Collections Set, Map wherever possible
If in your code you have to loop inside a loop, make sure to use a map instead of a list for the inner loop. When we use a map, it is easier to fetch data and will save you a lot of time. Using map also helps speed up the code.

for(Contact c: ContactList){
for(account a: accountList){
if(c.accountid==a.id){
//do something awesome
}
}
}

This code is good enough but can be optimized even more like this

for(Contact c: ContactList){
if(c.accountid==accountMap.get(c.accountid)){
//do something awesome
}
}


These are five simple things can will make your life easier. Being a Salesforce developer is a great honor, use it wisely. Use it fairly.

Thursday, May 2, 2013

Salesforce Certified Sales Cloud Consultant

Today I added most important color to my certification journey. As of May 1st 2013, I am a Salesforce Certified Sales Cloud Consultant.



After the straight forward questions and where is what in the Administration and Advance Administration exams, Sales Cloud Consultant examination is more like how are you going to achieve it.

This is a 60 question exam with 105 minutes allowed to complete and a 73% is passing. This was the exam that took a lot of time, since the questions are tricky.

Few helpful hints that will help you crack this exam.

1. Read. Read. Read. Read the questions carefully, very carefully. There were instances were most answers are straight forward wrong and some answers are completely confusing. Select two options and I thought all four correct.

2. Prepare throughly. Don't look for any documentation, dumps or any other material online or offline. Don't go for the questions captured in a word document that was shared to someone you know by someone he knows. No, instead go through the topics one by one and methodologically study every topic given in the certification document.

3. Prepare a study plan. It took me a week to study for the exam, I started on 17th April and was studying for 2 hours a day. Most of the time I listened to the online courses mentioned in the certification guide. Each and every one of them.

Material to use

I am using the premiere toolkit videos recommended in the Study Guide for the PDFs. Those are enough to understand the basic concept. The flash cards at Study Blue are good place to start (everyone recommended these, I have personally not seen them). To understand forecasting there are very good videos in help and training. And the old neglected link 'Help on this topic' actually helps in understand key points.

All the topics given in Sales Cloud Consultant guide are necessary to prepare for this exam. The questions mostly focus on what would you do rather that which setup menu you would use. Most of the questions are scenario based and are very tricky. Do the step one from the helpful hints above.

Do not ignore any topic before appearing for the exam. The following implementation guide are very important
 Some of the important topics that you should not ignore in anycase.


  • Security Model - The old enemy, at the end of four certifications, I understand security model more than any other thing in Salesforce. Don't miss this for any exam at any cost.
  • Person accounts - Since Sales cloud is focused more on lead to cash flow, Person accounts is a vital importance. 
  • Territory Management- This is a important topic and comes under Account management. Infact, read everything in Territory management.
  • Forecasting.  I did not see that there were three different types of forecasting - classic, Winter 12 and customizable, I could not foresee that. Don't make the same mistake.
  • Multi-currency and advanced currency management - There were one or two questions about multi-currency.  Its very easy.
  • Opportunities, products, price-books and quotes- This was a tough thing to understand. I personally read this more than once.
  • Salesforce to Salesforce- Don't ask why, just do it.
Sales cloud is a tough one because the syllabus is vast. The certification is Sales Cloud Consultant but you have to read about Sales and Marketing cycle from a consultant point of view. There was a question on implementation also (how are you going to take a sign off on requirements). 

Sales cloud has a vast syllabus, so prepare thoroughly.

All the best.

P.s. Don't ask brain dumps for the exam, I don't believe in dumping my brain anywhere. 
P.p.s. The world looks brighter this morning.

Wednesday, March 20, 2013

Living in the Cloud

Cloud Computing is the new phenomenon hit the world. Everyone is busy repackaging their server software with the custom stickers of 'Its about Cloud'. However, there are some genuine cloud providers out there, who offer great service. How to differentiate between the original and fake? Understand what is cloud, this infographic created an infographic to explain what exactly is cloud computing.


During a drinking session with a friend, we got discussing how everyone is taking about cloud. I pointed out that soon cloud is going to replace a computer and he said that was not possible.

Computer will still be needed for many professional work like movie editing, photo editing, animation and a lot other things. But what about personal computing? Can I use only cloud systems and survive for many days?

The short answer is 'yes' I can. The long answer is this blog post. The challenge was accepted, that for seven days I will use only cloud services for my personal computing needs. Funny part was, I ended up continuing using those services way beyond seven days. Enlisting the top ten things I needed a computer for and how I used only cloud services for them.

1. Editing my novel
Thats the easiest thing anyone can relate to. How do I create documents, the dreaded excel sheets and powerpoint presentation. The common answer would be Google Docs but somehow in past few days, I am not really in Moodle for Google (neither am I switching back to the old nemesis microsoft). I used Zoho Writer to edit my novel online. I preferred their services much better than other online tools.


2. Create Graphic for the blogs
This was a tricky one. If you look at the header of this blog or on the sidebar, you will see many beautiful icons that I created using photoshop.  I could not believe any online provider could provide me the beauty of a photoshop editing. None of the offline tools came close to offering what photoshop offered. However, to my delight, I found the online editor Pixlr.com to come in handy. It can be using for cropping, pasting and editing pictures. The new banner for my blog (http://sidoscope.co.in) and my wifes blog (http://thecanvasplatter.blogspot.in) is created using pixlr. This startup was taken over by autodesk and is one of the best thing that has come up in the crowd.

3. Creating presentation
When I am not doing anything, I am busy creating presentations. I love those things that move around. You can see some of the things I created on my site showcase. Most of the presentations on the page are created using Prezi.com the online 3D presentation maker. Prezi gives an extra dimension to the presentation and that wow factor helps.

4. Making Infographics
I have used many corporate tools for making infographics. The best one was obviously illustrator, adobe knows how to do stuff right. But then can I make infographics online? I tried with pixlr but since there was a screen limit with their editor, making a long infographic like the one for cloud computing was a tedious job. Just when I thought, I am losing the challenge, ta da, Cacoo.com came to the rescue. Cacoo has an easy to use interface where you can create beautiful graphics for free. They offer 25 diagrams on the free license which is really cool.

5. Sharing files and photos
One of the many things you need a computer and those little USB drives is transfer of files. During my college days when I did not have a computer, I used to carry a rewritable CD in my bag and borrow CD writers on my friends computer to burn disc. Things changed and we now have those USB drives. So the real question here was how do I transfer more than a GB of file? Now in real world scenario there are very few things that are more than one GB, however lets say I wanted to transfer a heavy file? And there Dropbox came to rescue. What was more with the camera upload feature, I did not have to do anything. When I took photos, they were safely upload to dropbox and all I had to do was share it with my friend.
With Samsung Promotion on Dropbox, I got 96 GB of extra space (I have four devices) along with multiple camera upload spaces. So my total dropbox space was way beyond 100 GB (which was ironic since my first computer, I had only 40 GB of space)


6. Watching Movies
When was the last time you stepped into a DVD store and purchased a nice DVD, picked up a bottle of whiskey and made some pop-corn. If you never did, I highly suggest you do. Anyways, so since this was a post computer world, the best alternative I found online was bigflicks.com. It is a on-demand movie site that streams bollywood movies. It also streams selected english movies. A quick google search also brought me to the cinemanow.com that streams english movies in USA and Canada. There are many other on-demand movie site for other regions. Since cinemanow does not stream in India, I could not test it. If you are using any other service mention it in comments below.

7. Listening to Songs
Listening to songs while doing stuff is one of the many things one can do. However, iTunes has already brought those on  cloud. Just like movies, listening to songs is also a regional thing. One of the best service I use regularly is Dhingana.com. It streams not only bollywood but also regional marathi songs.
If there is any such internal service which is popular, mention it in comments below.

There are many other services that are available online like Games, e-Learning courses and many more.

I won the challenge very easily. There has been a paradigm shift in the way we look at software and computers. The bulky DVDs are now used only to watch on a DVD player (which ill be selling on ebay soon). There is a big shift from the way we conceive social notion.

This change is good or bad, I do not know but somewhere I have heard, some governments are already building their cloud army.  An army of hackers who will bring down the internet and countries along with it.

Disclaimer: None of the services mentioned above have paid me to write their names here. These are the services I use daily and is a personal choice not determined by merit.

Saturday, March 2, 2013

Infographic: Understanding Cloud Computing and Multitenant architecture

Many people who come to attend a session on Salesforce are very much confused on what exactly is cloud. One of my clients had actually told his rep that they are using this 'website' to improve productivity. While that is one way to put it, it may not be a good idea in long term.

This infographic will remove confusion about cloud if you have any. If you already know what cloud is, feel free to enjoy the infographic (Oh and as usual, this graphic also has some easter eggs, symbolic clues to some ideas, see if you can find them)
(Click on it to see larger version and do not copy without credits.)


Wednesday, February 13, 2013

The unofficial guide to become a Certified Salesforce Administrator (ADM 201)



In my attempt at maximum certifications in 60 days, I completed Salesforce Certified Administrator exam on February 11th 2013

So you have decided to ramp up your career and take certifications in your hand. Good choice. It is also likely that this is the first time you have heard of Salesforce, certification and since your company has a vision of you completing the certification you have decided to do it.

At this stage it is likely that,

You have done extensive googling. You have received countless brain-dumps. And you have received plenty of advise from different types of users which ranges from Admin certification is easier than making coffee to Admin certification is tougher than building a rocket-ship to fly off to the moon.

The purpose of this guide is to give you a clear understanding of what to expect when you are expected to become Certified Salesforce Administrator. To bring sense to all the things you have seen so far and to clearly explain what to do and what not to do.

Salesforce Certified Administrator is the first step of understanding Salesforce. It is one step below Salesforce Certified Developer and one step above what you know about Salesforce.

Few things to know before you go further:

  • The exam is NOT called ADM 201. ADM 201 is the name of course that you have to give before taking the exam. In web-assessor you won't find ADM201 but look for Salesforce Certified Administrator.
  • Salesforce certified administrator tests your knowledge on Salesforce CRM and basics of platform. It is useful even if you are indirectly involved in Salesforce. 


These are some Do's and Don'ts for the certification that will help you get through it.

Do's:
  1. First and foremost is go through the certification website to explore the topics for the exam. This is a very important step and many fail to do so. For one, Salesforce keeps updating every 3-4 months. Every year there are 3 releases and that adds the syllabus. It is very likely that the material you have is outdated or has some topics missing.
  2. Where to get help? The first stop should always be 'Help and Training' link in your Salesforce org. If your org has Premier Success Plan enabled, then that is sufficient material to clear the exam. If you are a decision maker in your org, I will recommend you get one.
  3. Salesforce offers you a free Developer Org that you can use as a practice org. Make sure you do a hands-on of topics and not just mug up things.
  4. Read the questions that come in the exam very carefully. The questions are twisted and scenario based. It is very likely that if you have mugged the brain dumps, your answers are either outdated or wrong.
  5. Focus on security model of Salesforce. By no chance, should you skip security. If you plan to do some bizarre stunt by reading only one topic for the exam (really?) you should do security.
Don't:
  1. Don't mug up any brain dumps that are available on the web or are available with your colleague or that stranger on Linkedin who has gracefully given them to you. It may be just me, but mugging up brain dumps is not going to do you or anyone any good. Also look up Do's point 1.
  2. Give any mock exams available on the web, many answers are conflicting and are also wrong. 
  3. During the exam, don't waste too much time on a question. If there is a question you do know answer for, mark it for review and come back later. ATTEMPT all the questions in the exam without fail. There is no negative marking in the exam, so don't skip any question.
  4. Don't, and this is very important, don't be afraid if this exam. It is one the most easiest exam to crack. It is introduction to Salesforce and its products. If you have a good understanding of Salesforce, you can easily pass this exam.
Exam Giving tips:
  1. The exam consist of 60 multiple-choice question
  2. You will have 90 minutes to complete the exam. 
  3. You get roughly 1.5 minutes per question, don't utilize it completely at the beginning. 
  4. The questions whose answers are straightforward can be answered quickly. Don't waste too much time on any question at the start of the exam. Answer those questions which you have full confidence and mark others as review.
  5. If you do not know the right answer, try eliminating the wrong answers first. Whatever remains, however improbable it may be should be the right answer.
  6. It should not take you more than an hour to complete the whole exam with this method, that gives you half an hour to solve the difficult questions. Once you have reached question number 60, go back to question 1 and this time quickly skim through answered questions and spend more time on questions marked for review.
Hope this tips help. Do let me know when you become a Salesforce Certified Administrator.

Sunday, February 3, 2013

Build your own infographics resume using Salesforce reports and dashboard

If you are following our mutual friend, Daryl Shaber on Twitter you have come across the Salesforce Dashboard resume created by me. If you have not seen it, you are welcome to see the original first version and the version 2.1 with some more added features here.

For those who joined in late (I always wanted to say that, ignore if you didn't understand the reference) it happened on one night when I could not sleep. I had experimented with coffee and red bull (I dare you don't do it) and had lost one night of sleep.

I was reading about the modern way of resume building. People were showing off their info-graphic resumes and that is something, I wanted to do. As a Salesforce consultant what was any better way to show off infographic resume than using Salesforce reports and dashboards to do it.

Many people requested that they wanted a similar resume and hence, I have deployed a package on AppExchange. It is a private listing, use this link to access it.



It is a complete unmanaged package and there is no support for it. Its very simple, add your data in the objects and go crazy. I have two sample dashboard inside but Ill request you play with it and built your own resume. To know more about reports and dashboard you can use this link or better google it.



Take a screenshot of the finished dashboard and you can add the header to it. I use Pixlr.com which is a cloud based photo editor to add the header.

If all goes well you will have something similar to this.





All the best
May the Force be with you.

Monday, January 28, 2013

My force.com story

I had taken up Computer Engineering as my specialization and the only languages we had in our syllabus were 'C', 'C++' and core Java with a horrible touch of machine language (yes we had that), DOS and Unix.

It all began in third year of engineering college when all seniors informed that .net was the key to secure job in the future. I was a 'C' language loyalist and c was my home turf. I believed in 'while' loop more than 'for' loop. 'Pointers' were my best friend. However when seniors informed, as any scared college grad would do, I walked into a local shop selling second hand .net books and purchased a black book on .net (buying original complete reference or black book series in pocket money was not affordable).

.Net was fairly easy to understand. Only trouble was getting a decent visual studio to develop. Affording a license copy was not that easy and college had to provide a license key (for which had to argue a lot with the computer lab coordinator)

By the time I graduated, it was widely known that the seniors who had suggested .net were working on something called oracle apps. The only thing about oracle I knew was 'Scott' and 'tiger' (ignore if you didn't understand the reference).

After few google search I realized oracle app was a keyword not optimized for google. There was no developer reference, only new articles about oracle apps. It looked like something shrouded in mystery. So no luck in understanding oracle apps on my own.

By the time I joined by first job, I was way beyond my home turf (I come from west India, this was north India) no guidance from seniors and no second hand book shop. When they gave brief KT on servlets, I was alarmed. Even thought this was similar to c# it was not part of any java I had known. No amount of Google search would give me good information on servlets. Java was a different cult altogether. After learning Struts and Servlets when I proudly boasted in canteen one fine day about knowing Java, I heard there was something called hibernate that existed. But then by the time internship was over, we realized that there were too many people already in different types of Java and I was one grain of dust in this sandstorm.

After training we had a choice, either join software testing or take up something new called SaaS (sfdc had still not come into picture). Testing made no sense to me as I am a lousy tester. Hence I plunged into SaaS (which I will later learn was SFDC or salesforce.com).

We had a good training plan and our seniors explained us apex, s- controls (visualforce was still new to the world) and visualforce. This sounded boring, as most task we did was button click. This was not coding, I cried foul, I am an engineer and needed the rush of adreline while coding. But there seem to be no other option. This was 2008 and the recession will hit the world soon and people will start losing jobs. It made sense to keep head low.

There came a project requirement to fix a problem in adobe flex. I took up the challenge and a weekend later, flex was learned. The company was using Force.com as back end and adobe flex as frontend (again this was before visualforce). As I googled further more and more Salesforce features became visible. The big picture came into picture. The power of a powerful back-end and a flexible front-end was visible.

This time I had found a platform that was consistent across the globe (unlike ANSI C and other C, JAVA and its subordinates), was free to use (no need of costly license to develop code) and had plenty of resources for free online.

In two weeks I was confident that coding on force.com was a easy and yet complicated. My personal coding time reduced by half I was surprised to find my loyalty change.

The application building time on force.com was as less as a weekend. When I told my seniors about it, they laughed, said there is no future in salesforce. Future was in Seibel. Again I was nervous because till that time I was still a intern in a company learning a technology that had no future.

When I was learning Java, I had wasted 36 hours or more to understand the functioning of Tomcat server. The configuration, the deployment and other things. These things were reducing my productivity. With Force.com platform there was no such dependency. I code and it was live. Coding became fun and challenging. Not a tiresome process of knowing things not relevant to my job.

Four years since then, I never looked back as there was never a shortage of Force.com projects. Work kept me busy. Since that first flex project to implementing one of the largest Salesforce project, the complexity for all the projects felt the same. Two years after joining my first company did I realize that taking advise from others is not a good idea.
New features came popping up every three months, letting me reinvent myself. Site.com was released and I used it to build my own website on it. Soon mobile SDK came into picture letting me leverage mobile platform. I released an appexchange app (just for fun) that helps you create your own infographic resume dashboard using Salesforce. This blog was started to give back to the community by sharing tips, tricks and other fun stuff.

Last weekend I was surprised to receive a call from the senior who had laughed at Salesforce four years ago. His company had asked him to choose between Salesforce and Pega for moving his department. While googling he had come across my book, Force.com Developer Certification Handbook (DEV401), and called me up. This time he wanted to know if the platform is suitable for development or no.

It was my time to smile.

What is your force.com story? Share it on hi5[at] sidoscope.co.in and it will be published here.

Tuesday, January 15, 2013

I have a Salesforce.com License, now what?

In December 2012 I attended a Salesforce Foundation roadshow in Bangalore. Many Salesforce foundation costumers had gathered at the venue to listen to salesforce or share their stories.

One common complaint that was shared was what to do once I get the salesforce license. A little variation to the complain was, there was xyz who introduced us to salesforce but now he has moved on or has no time for implementation. There were a lot of technical queries on building an app on Salesforce.

If you are a non-profit and cannot afford to hire a consultant to configure Salesforce for your needs, you can always use the DIY approach. Building a basic data collection app on Force.com is very easy and takes hardly a week. Compiling here is the collection of some implementation questions if you are building a Force.com app for yourself without any prior knowledge.

What is salesforce? What is force.com To begin with, the very first thing you need to understand is the difference between salesforce.com and force.com. Salesforce.com is a ready to use CRM system that helps you manage your costumer better. It has prebuilt solutions to store customer information, product information and selling information. Salesforce.com can be customized extensively. Force.com is a platform just like any other . Net, java platform that helps you build your own applications.

We are a non profit and do not need a crm system. What use is salesforce to us? Salesforce license also enables you build your own applications on force.com platform. The applications that are built on force.com are already cloud and mobile ready. If you are using paper files or excel, Force.com will give you a more centralized and streamlined

Who do I approach to build a Salesforce app? If you are currently using excel or any other basic database applications. It is very easy to build a salesforce application yourself. Moving data between applications is also easy.

If you are unable to do it yourself you can find a partner that suits your need here or contact your regional foundation representative. This blog post by Foundation can help, How to choose a Salesforce Consulting Partner.

Do I need to learn coding to build an application? Salesforce is the world's most powerful button click powered application. You do not need to know coding to build a application.

What kind of applications can I build on Force.com?
Force.com is a cloud based platform to build a data centric or a process centric application. Data centric applications revolves around the master data for e.g., Donor Relationship Management, keeping track of projects, activity management are few examples. Process centric application revolve around the processes of the organization.

What you say is interesting, where can I learn more about Force.com?
The best place to learn about building your application is the DeveloperForce.com, which contains list of articles, blogs and webinars to get your started. Salesforce Foundation Blog is also a good place to learn more about what you can do on Force.com.


Any recommended book to learn force.com application?
 The best book to learn about Force.com is the Force.com fundamentals ebook. That is sufficient for you to help you build Salesforce. There are other books that you can purchase in print or ebooks in the market. Please find a good list of books here.

If I have technical questions where can I get help?
You can post your question on Developer Boards. For administrative questions you can use Community Answers. If you are on twitter, you can tweet your question to #AskForce
For questions related to Foundation and grants please contact your regional foundation representative.

These were the few questions asked at the foundation roadshow. If you have any questions related to implementation or technical questions related to Force.com feel free to ask in the comment sections. Ill do my best to answer them.

And as always. Happy New year.

Siddhesh