Skip to main content

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.

Comments

  1. very interesting Kabe. I like it.

    ReplyDelete
  2. Nice One...
    totally agreed taking advice from someone is really not a good idea..like today especially fresh graduates r running behind java n .net... n 6 months back i got d same advice to work in java...n was really confused where to go...
    but like as u said "grain of dust in sandstorm" i too didn't wanna join this Java race so i Decided to start my carrier in salesforce..
    n now i feel that i have made a better decision.. :)
    btw feeling charged after reading this post!!!

    ReplyDelete

Post a Comment

Popular posts from this blog

Video: Top ten tips on how not to ruin Salesforce implementation

Another presentation for the London Salesforce Developer Group using mobile app. 
When it comes to Salesforce development, we all know what it takes to deliver stuff. Having a certified professional helps you gain a knowledgeable partner but what about the things such as common sense?  We all know how to deliver things on client requirements but what about things that are not mentioned by the client. We will be discussing in details things that will enhance the user experience, focus on tips to read your customers mind and have a bit of perspective on the user experience.

Cache me if you can: What you should know before daring to set URL parameter on visualforce

If someone gave me a pence for every time there was an SOQL query in an APEX Class without using Limit or a condition during a code review, I could afford a Lamborgini this month. Sigh. If only. We make it a habit of going digging for data, at the very moment we need it. The crux of this problem happens when you have chain classes which are independent of each other. Each class needs the reference from a single record and we have to query for that record every single time.

While we don't see it, every SOQL query has a cost to it, and it does not go in my Lamborghini fund, however, it should. In a recent project, we had to construct an Account 360 page that could fetch information from different integration points. The page was also called using a live telephony integration, which could pass the phone number for the account. This required an ability to keep in context the Account that was on call.

Passing the Account id in URL parameter was a valid option, however, any manipulatio…

Four secrets to improve the usability of your visualforce/Lightning pages on Salesforce

In the immortal words of a certain machine returning back in time, I am back. For now. After procrastinating for over a year and drafting a lot of rants- I am back with a very important coding lesson for you. For now.

When we are designing a Visualforce page or an app or a lightning component (added that only to trick google) or any web page for that matter, we often tend to wrap up things quickly. Ask anyone on the team, how to design a good User Experience? and the person will immediately throw buzz words like Bootstrap, angular and other useless libraries (did someone squint?)

Ok, Bootstrap, Angular-Js, and all the libraries are really cool and are useful in designing a fabulous UI. They are helpful in creating responsive pages that will work on all the devices but this post is not about those. Nope. For the purpose of this post, all the external libraries and buzzwords you use to decorate your resume are useless. (Adding Angular JS in your resume for a Salesforce consultant posit…