I had to take a marketing class in my last year. At first, I didn't see the point for a software developer to learn those things, but then I realised that it's very important. I am sharing here, the key points I am keeping, regarding how marketing applies to the software business. I hope this note would be of some interest to both (aspiring) programmers and marketers.

Now there is a lot that could be said on that topic, here I just try to stick to the key points, and as it’s still a lot of information, I would rather not send it all at once. Instead I would spread that as small blog articles.
Let's first define "Marketing". It can be defined in many ways but it's basically the achievement of corporate goals through meeting and exceeding customer needs better than the competition. Indeed, the marketing concept is a philosophy of business that puts the customer and customer satisfaction at the center of things.
Why should developers care about it? Because they also want to make money! Software is also a business and if you don't have customers, you don't have a business. Further, the marketer and the developer have surprisingly a lot in common. For example, one of the main challenges faced by the marketer is to be able to anticipate the next need, and to deliver a response to it. That's also a key challenge in the software industry, turning innovation into business. That's what made Microsoft, Apple, Google and Facebook so successful : coming up with the right product at the right time in response to people demand (an huge demand that competitors didn't clearly see yet).
It has been observed that companies which perform best are the ones that are marketing oriented: they aim to create a superior CUSTOMER VALUE in order to attract and retain customers. Customer Value: it's critical here. Customer value depends on how the customer perceives the benefits of an offering and the sacrifice that is associated with its purchase:
Customer value = perceived benefits - perceived sacrifice
Perceived benefit can be derived from the product (simple, fast, easy to use), the associated service(customer support, documentation) and the image of the company (Apple, Microsoft, Google)
Perceived sacrifice is the total cost associated with buying the product. This consists not just of the monetary cost, but also the time and energy involved in the purchase (download time, quality of the payment system).
Again, the key to marketing success is to exceed the value offered by competitors. But marketing is not just a concept. In the coming part, we will see how it can be applied through concrete actions. The ideas we are going to discuss include the following:
1. Reaction to the global and local marketing environment
2. Understanding the customer behaviour
3. Research and Information systems
4. Market segmentation and targeting
5. Branding
6. Communication techniques
Let’s talk soon.