Musings of a Solution Architect

Ramblings and Wisdom, just from working

AEM 6.2 Brand Portal

leave a comment »

The brand portal is available as a pre release with 6.2 and is sold as an add-on.

The brand portal provides:

(a) On demand, secure asset distribution to external partners or internal teams

(b) turnkey cloud services

Asset Share vs. Brand Portal

  1. One option to share assets with partners is to grant access to partners. This may be overkill. Instead we can use the brand portal to publish assets to a portal.
  2. The brand portal needs a publish instance. Most customers buy the publish instance
  3. The brand portal is customizable.
  4. It can be secured with Adobe and Federated IDs
  5. BP can be used to get assets on demand.
  6. It allows for sharing and duplication









Written by rajivramaratnam

February 23, 2017 at 4:37 am

Posted in Uncategorized

Adobe Experience Manager: Classroom in a Book: A Guide to CQ5 for Marketing Professionals (Classroom in a Book (Adobe))

leave a comment »

Adobe Experience Manager: Classroom in a Book: A Guide to CQ5 for Marketing Professionals (Classroom in a Book (Adobe))

Note: This is not a critique,( in the usual sense) of this book. This post is more about whether this book will be useful to a person who seeks to gain AEM Marketing experience or pass the AEM Business Practitioner exam at this point in time.

It was written a while ago and is geared toward former 5.x releases.It is badly in need of an update. I would assume a new edition would be available in the near future

Personally, to put in in a nutshell “a bit too much of fluff.” By this I mean that a lot of the anecdotes could have been avoided.  If you read it once, a highlighter may be handy to just highlight the important points for easy review at a later time.The book does provide some useful information on where AEM fits in on Adobe’s product family. It also describes some of the supporting tools that are often used with AEM such as SiteCatalyst and Adobe Analytics. I would still recommend it as a starting point for understanding AEM from a Business perspective.

I recently read through this book, more for preparation of the Business practitioner exam. While the book does present some useful information on some topics, it falls short on some key areas.
If you are new to AEM, it can get you started on some basic concepts like :
 (a) Where AEM fits in the grand Adobe’s  product family
 (b) How it can be integrated with some other Adobe products from a (very) high level.
 (c) What is the OSGI console? However OSGi services are covered but not in detail. Though this is a technical subject, it is one of most important facets of AEM that allows for extending AEM and integrating it with other corporate systems.
(d) The book could have covered 3rd party integration in more detail
(e) I also felt that it could have included more screenshots and a few more pages on marketing concepts like segments, teasers and campaigns and so on. Screenshots on reports, package manager and so on would be more helpful.
(f) Caching is covered reasonably well from a non-technical standpoint.
(g) Assets are covered in good detail. The Asset share and asset editor are covered well in this book.
If you seek to find a career in AEM Marketing or as an AEM Business promoter, I would recommend some research on the the following:
1. Development in Sightly and why it should be used for new projects
2. The Granite and touch UI and how AEM 6.x presents ways to customize the  authoring experience.
3. The Sling model
 A few useful topics I’d like to see included in future editions include:
(a) Separation of content and code in AEM. This is a big paradigm shift in most corporations seeking to migrate their content management to AEM. Architects and business managers often need to explain to business people and some technical folks that content is authored only in production and that only the code passes from development to staging to testing and then to production. This is a daunting task and often causes trepidation for most organizations.
(b) Why AEM must be hosted on its own stand alone server and preferably not deployed on web server. This is also another challenge for many customers whose IT infrastructure is familiar with older application servers.
(c) Why use a JCR repository like tarMK or Mongo instead of the traditional SQL database to house AEM.
(d) Varying degrees of integration between AEM and ECommerce servers and pros and cons of each variation.
(e) AEM is has grown from a tool that builds powerful websites to serving many other needs, like serving as a repository of images and video. It may also used as a document management system. Future updates to  this book should cover such customizations of AEM  in more detail , They should highlight  AEM’s powerful features like workflow and Asset renditions in the context of such customizations.
(f) Offloading of tasks is another powerful feature of AEM  introduced in 6.x. This is another feature that needs be highlighted.

Written by rajivramaratnam

October 8, 2015 at 4:11 am

Video Processing 101 – Part 1

leave a comment »


In the last few years, particularly since the arrival of HTML5, there has been  considerable improvements in delivering Video on the web. However, the deluge of terms used makes it difficult to decipher some of the buzzwords used in this field. This article aims to simplify some of them.

Before HTML5 arrived, most users using browsers were forced to use Adobe Flash. There were a few other players but there was no uniform way to play a video from an online site.

Video content creators were forced to deliver their videos that had to be compatible with Flash. HTML5 changed that. With additional tags and a video schema, it allows content creators to deliver the same video in several formats to be played on the web. The software modules used to render or decode video (or other media content) are called codecs(Coder/Decoders). Browser manufacturers typically package one or more of them in the Browser.

There are several HTML5 video players today, many of them open-source. When a video appears on a site, and the user chooses to watch it, a typical HTML player can open it and play the video using the codec packaged within the browser to play it. The creator on the video can package several video files which have the same content but encoded in different formats. HTML5 also has a mechanism(HTML type or Mime Type) to provide the  Video player a hint that would help the player pick the encoded file that is appropriate for a browser.

On newer versions of browsers HTML5 provides the ability of the Video player to pick an suitable encoding of a video that is compatible with each browser. This removes a browser’s dependency on Flash or any other single tool to play videos.

Furthermore, HTML5 also allows specifying files for both subtitles and captions. The difference between them is that subtitles are typically used to transcribe speech into written text. The text typically appears at the bottom of the screen, so that it does not impede the viewing of the video. The subtitles can be in the same language as the spoken words (to help the hearing impaired) or could be translated into  another language to enable different audiences understand the spoken words on the video.

Captions on the other hand allow the content creator pass on supplemental information to the viewer. This is information that is not necessarily spoken in the video. For instance, this may be a telephone number to call in an informational video. Some HTML5 video players do not make a distinction between captions and subtitles. A HTML 5  player typically accesses and displays content from a file whose location is specified by subtitles or captions. Captions are typically added after video is created.


In the previous section, we discussed Codecs. Codecs are specialized software modules used to code and decode Video. A person who creates a video would typically create it in one formal. For instance, or she may record an event like a wedding using a Camcorder in MP4 format. However, to deliver this content to others on a website, he or she must provide this content in different formats. This process is called transcoding. Tools like FFMPeg are typically used to transcode videos into other formats. Typical video formats in use today are OGG(which plays on Firefox and Chrome browsers) MP4 (which plays on Safari, Chrome, Firefox and IE)

In addition to video formats, Audio formats may also need to be transcoded. Some audio formats in use today include Vorbis, and MP3.

Mime types

In the previous section we spoke of mime types as a hint given to the video player to help the player pick a version of the video that is compatible with a machine.

Typically they are two part identified with a type like “text” or “video”, a subtype like x-flv(for flash) or mp4(For mp4 video. Ina addition the mime type may also contain auxiliary information. Examples are video/webm,audio/webm,video/ogg.We will cover mime times in detail in a discussion of video formats.

Besides Transcoding, there are other considerations that must be taken into account when video content is delivered online. In addition to transcoding content in different formats, one other consideration is the size of the video being rendered or streamed. Video files are typically shrunk or compressed when rendered online.

Broadly speaking, we have lossy and lossless compression. Lossy compression is used by those willing to sacrifice some content by identifying and removing redundancy in the video file. Lossless compression seeks to find and eliminate repetitive and redundant patterns.

The person or entity delivering the content must also decide on where the compression is to take place. For instance, some choose to have the compression done at the source. Another is strategy is to have the compression of data happen during transmission of the video data. This sort of compression is called channel compression.

There are other  consideration in the transmission of video. One is the bit rate which is the number of bits transmitted over a certain period. Images that make up a video are often referred to as frames. Frame rate or the number of frames transmitted over a certain period of time is yet another consideration in transmitting video.





HTML5 players

Written by rajivramaratnam

September 2, 2015 at 12:29 am

LDAP Configuration on AEM 6.0

leave a comment »

This is a breeze in AEM 6.0. If you have ever configured LDAP on AEM 5.x,  you will be pleasantly surprised that it is a lot easier with AEM 6.0. You no longer need to edit configuration files or restart the server. Definitely a step up. All you need are the LDAP settings from the IT department. (Sometimes this is a challenge in itself.)

Written by rajivramaratnam

April 24, 2015 at 5:31 pm

Posted in Uncategorized

Quote for today

leave a comment »

“The most important contribution management needs to make in the 21st century is to increase the productivity of knowledge work and knowledge workers. It is on their productivity, above all, that the future prosperity — and indeed the future survival — of the developed economies will increasingly depend.”
Peter F. Drucker

Written by rajivramaratnam

March 30, 2014 at 5:19 pm

Adobe Summit Sessions: Personalization

leave a comment »

  • 3  Key Objectives
  1. Optimize experience for Anonymous users . Convert them into customers or advocates
  2. Orchestrate conversation with customers and advocates with relevance and engagement
  3. Personalize the experience
  • Personalization increases sales, click through rates, .. and revenue
  • Home  page: algorithms for relevance, placement of banner, engagement
  • New Visitors data points: Geo-location, 1st time visitor, browser, operating system, referring sites
  • With click-through: Pick up behavioral patterns.. Build picture progressively
  • Use data management platform to ensure relevance of advertisement when the user moves offsite, into another site,
  • Use demographic data
  • When the user comes back to site, they may decide to convert. This is an important point in customer journey.
  • Last millisecond: Attempt to put revelant info in last second: Could be from CRM, data graph: done with business rules.
  • Challenge is in assembling and managing the information presented to individual. Then deliver information intelligently through right delivery method
  • Methods

Listen, Predict, Assemble Deliver: Analytics, Data, Assets, Experience Manager

  1. Landing page testing
  2. Automated predictions
  3. Segmentation of visitors through Business rules
  4. Audience Manager for additional information: CRM, 3rd or 2nd party data
  5. Personalization: Onsite and advertizing

Optimization: designed to ‘Widen the funnel’

Nurture: Cross channel marketing campaign: Download, push messaging, upgrade from single too team license, join on Facebook, etc.

  • At this stage, we have converted the customer
  • We know sites he visits, his fans on facebook .etc\
  • Use Adobe Campaign to personalization
  • Use Audience Manager to gain more knowledge of  target audience






Written by rajivramaratnam

March 30, 2014 at 5:16 pm

Defining a Content Management System

leave a comment »

Sometimes it is important to revisit the basics. The definition of a Content Management System(CMS) within an enterprise encompasses a large arena . Is it platform? a website? a program? How is it different from a document management system(DMS)? In the business world, oftentimes these terms are used interchangeably.

Further, the growing popularity of the semantic web(sometimes called Web 3.0) and its inclusion, does not simplify the definition of a CMS.

Wikipedia defines it as follows:

content management system (CMS) is a computer program that allows publishingediting and modifying content as well as maintenance from a central interface. Such systems of content management provide procedures to manage workflow in a collaborative environment.[4] These procedures can be manual steps or an automated cascade.

Wikipedia also defines a Web Content Management Systme(WCMS) as:

web content management system (WCMS)[1] is a software system that provides website authoring, collaboration, and administration tools designed to allow users with little knowledge of web programming languages or markup languages to create and manage website content with relative ease. A robust WCMS provides the foundation for collaboration, offering users the ability to manage documents and output for multiple author editing and participation.

Wikipedia describes a document Management system(DMS) as

document management system (DMS) is a computer system (or set of computer programs) used to track and store electronic documents.

SearchSOA defines a CMS as

A content management system (CMS) is a system used to manage the content of a Web site.

I feel the definition is a lot broader. In 1999, In his book Business @the speed of thought, Bill Gates defined a Digital Nervous system (a term that was used originally by Judith Dayhoff ) as a system analogous to the nervous system of an organism.

This definition was further qualified by Steve Balmer:

If you think of the human body, what does our nervous system let us do? It lets us hear, see, take input. It lets us think and analyze and plan. It lets us make decisions and communicate and take action. Every company essentially has a nervous system: companies take inputs, they think, they plan, they communicate, they take action. The question is how does the nervous system in your company operate? Is the IT infrastructure really adding value?[3]

and later once again by Gates:

The term ‘digital nervous system’ is kind of an interesting one. The analogy, of course, is to the biological nervous system where you always have the information you need. You always are alert to the most important things, and you block out the information that’s not important. And companies really need to have that same kind of thing: the information that’s valuable getting to the people who need to know about it.[4]

The definition of today’s  CMS is closer to the definition of a Digital Nervous System.  In his reference to ‘the most important information and blocking out  unimportant information, Gates essentially refers to ‘the context of the required information‘ and thus includes the semantic web and his reference to people includes people both within and outside the organization.

It is amazing how prophetic Gates was, in 1999.




Written by rajivramaratnam

March 27, 2014 at 3:34 pm