Thursday, April 27, 2017

Dream and project

I read an interesting article about dreams. From wiki - A dream is a succession of images, ideas, emotions, and sensations that usually occur involuntarily in the mind during certain stages of sleep.
Most of the IT projects are a result of a dream, an idea. A dream occur in the REM stage of the sleep and it lasts for a few seconds or minutes. During a dream, I can watch a full length colorful movie, Avatar, in a few seconds. In reality, Avtar took 10 years to make - http://tech.firstpost.com/news-analysis/avatar-took-10-years-to-make-we-wonder-why-12779.html
As I mentioned any projects are a result of a dream. To materialize the dream, it takes considerable effort and time, else the dream turns into a failed project.
In my experiences, the team wants to execute the ideas as they see in their dreams and the best way to execute is "Agile".  I don’t complain agile is wrong, you need some discipline while doing agile projects, may be Disciplined Agile Development (big fan of it). However, the team usually forget the time and effort needed to plan the project - drafting a proper screen play, identify the right actors, actresses, technicians, the locations.......
I had worked in a project where the team wants to build a cool idea, so the business said (directed) - let’s use this vendor, let’s use this component and let’s integrate things together. End of the story, the vendor never understood what they are building, the internal team never analyzed what's the external provider offers and the one month project (integration of components) took three months and I don't know whether the project is materialized. I forgot to mention, there is another team who does UI :) and if you ask anyone what they are trying to achieve, you will get different opinions and the only person who knows the end goal is the "test lead" for that project.
So, bottom line is - dream takes a few seconds to minutes. A successful project needs right vision, right people, proper planning and a good team attitude :)

Wednesday, April 26, 2017

Create a meeting by using the EWS Managed API

Our team has used EWS API's Appointment service to book a meeting room. During our testing, its been  noted that  the room was not blocked on the exchange server and  over lapping meetings can be booked for that room.

I had gone through the code and found that the meeting room was added as part of the required attendees list
meeting.RequiredAttendees.Add("roomid@contoso.com");

In this case, the room  has to accept the request so as to get the calendar blocked. The MSDN document didn't give any clue to add a meeting room. It specifies a "Location" field, however it wont block the meeting room for the specified time range.

https://msdn.microsoft.com/en-us/library/office/dn495611(v=exchg.150).aspx

After a few trail and error, we found that, the meeting room must be added as part of the resources
 meeting.Location = "Location name";
meeting.Resources.Add("roomid@contoso.com");

Updated Code -  assuming an exchange service object has been created:

Appointment meeting = new Appointment(service);

// Set the properties on the meeting object to create the meeting.
meeting.Subject = "Team building exercise";
meeting.Body = "Let's learn to really work as a team and then have lunch!";
meeting.Start = DateTime.Now.AddDays(2);            
meeting.End = meeting.Start.AddHours(4);
meeting.Location = "Conference Room 12";
meeting.Resources.Add("ConferenceRoom12@contoso.com");
meeting.RequiredAttendees.Add("Mack@contoso.com");
meeting.RequiredAttendees.Add("Sadie@contoso.com");
meeting.OptionalAttendees.Add("Magdalena@contoso.com");
meeting.ReminderMinutesBeforeStart = 60;

// Save the meeting to the Calendar folder and send the meeting request.
meeting.Save(SendInvitationsMode.SendToAllAndSaveCopy);

Monday, April 24, 2017

Hybris confusion

As I started reading more on Hybris umbrella of products, I got so confused about the set of products branded under (y). This confusion forced me to do more reading. I found an interesting LinkedIn post worth sharing - https://www.linkedin.com/pulse/sap-hybris-confusion-sanjeev-singh

For my quick reference, I have copied a few major points and an image from the above blog



1.     Hybris Commerce: It offers comprehensive B2B and B2C commerce applications including Product Content Management (PCM), Order Management, Search and Merchandising. Hybris Commerce is a market leader in ecommerce and it offers anything and everything you need from an ecommerce application. Of course you may need to integrate your backend order management and fulfilment system to seamlessly achieve end-to-end Omni channel process.
2.     Hybris Billing: This is one of the most cutting edge and comprehensive billing solutions available in market. It helps in monetizing your products and services using subscription and usage based billing in real time. It offers Subscription Management and Pricing Agility, Billing and Revenue Management, Usage Mediation and Service Control.
3.     Hybris Cloud for Customer (C4C): This is nothing but SAP CRM Cloud solution and potential replacement for on-premise SAP CRM. It comprises of Sales and Service Solutions. SAP comes with quarterly releases to add new functionality to C4C. Consider C4C as an evolving but promising product. C4C Sales Solution offers Sales Force Automation and Sales Performance Management Solution. C4C Service Solution includes Self Service (both customers and employees), Contact Center and Field Service.  SAP has finally come up with a cloud based CRM solution to give salesforce.com run for the money.
4.     Hybris Marketing: Hybris Marketing solution addresses some of the serious gaps in on-premise SAP CRM Marketing solution. It enables real-time contextual marketing and helps you understand real-time customer intents and deliver unique customer experiences. It maintains customer profiles and dynamically enhances their profiles with additional attributes based on data gathered through various channels customer interact with. It helps you understand, define and make in point offerings to the customers. Traditional CRM Marketing campaigns are based on historical customer attributes and are not very effective in leveraging real-time marketing. SAP Hybris Marketing definitely offers the most cutting edge solution to marketers for delivering personalized experiences to their ever changing customer needs.  

Wednesday, April 19, 2017

Advantages of having a strong network

I've read a post on LinkedIn about the positives of having a strong professional network an want to share my experience.

I was working on a project that has a great vision and a great visionary as the product owner. The project works in a so called "agile" way without any priorities, a lot of vendors and a lot of meetings and no outcomes.

Once I discussed about this project to my friend and the tensions and stress I'm getting from the project. Surprisingly, the  next week I got a lunch invite from my friend's friend and I met with a couple of his colleagues. After a week, the HR from the company called me about an opportunity.

Since I was not actively looking outside, I told I'll consider when I look outside. World is small, polish your skills, read a lot (my favorite is InfoQ  and some blogs I personally follow)

Hybris learning

I’m planning to write a series of notes on my hybris learning efforts. Note: I’m not a (y) expert and now trying to learn the Hybris (y) suite of products. From my experience, in IT we try to find solutions for problems. End of the day what matters is the solution. Usually one solution open up another set of problems J. So seek a perfect solution! (y) experts, if you see any conflicts in my view point, please correct and it will help me to build the architecture foundation.

1. Hybris Confusion

Featured post

How to connect to Mongo Atlas from Robo 3T

If you use a local instance of MongoDB, you might be a great fan of Robo3T. However, if you are using Mongo Atlas, the Atlas web interface p...

Popular Posts