This Week In Tech: Linkedin Offers SlideShare Pro Features At No Cost

SlideShare has become a widely adopted tool, especially amongst those in the business sector. It allows you to easily upload and share presentations with your audience. For example, we utilize SlideShare to aggregate presenter’s slides each year at our annual conference ForumCon. That way, those who are unable to attend are directed to one place to find each speaker’s slides.

forumcon

In May of 2012 LinkedIn acquired SlideShare for $119 million. LinkedIn proclaimed this to be good news for all as it would enable professionals to share content more conveniently. Since the acquisition, SlideShare hadn’t gone through any significant changes, until now. SlideShare is canceling its pro tier memberships once priced at $19 and $49 dollars a month and making pro features available to all users.

So…why does this matter?  When looking at the big picture, this is more than just all users having access to profile customization, private uploading, videos, and most importantly analytics. These analytics include how someone came across your SlideShare account, who they are, and where the majority of your traffic is originating. These engagement metrics provide a wealth of information to LinkedIn, note that SlideShare gets approximately 60 million unique visitors/month. After all, they made these features free for a reason. It will be interesting to continue watching LinkedIn’s  advertising strategy for any changes that are a result of SlideShare Pro becoming a free tool for all.

Written by Hanna Fritzinger

Employee Spotlight: Tiffany Koptish

Here at VigLink we’re constantly challenging ourselves through collaboration with our wonderful team. And because of that, we’ve decided to showcase our employees from time to time. Not only are they breaking boundaries and pushing the envelope at work, they’re doing that in all facets of their lives. Since this is our first employee spotlight, we found it fitting to highlight one of our newest team members, Tiffany Koptish.

tiffany

Tiffany, VigLink’s new Advertiser Development Manager, came to us (and the tech world in general) from a background in finance and cosmetics. Tiffany lived in San Francisco for eleven years and noticed, like many other people, the changing landscape of our city as tech firms moved from Silicon Valley into the heart of San Francisco.  Seeing the fast-paced innovation and a fit of niche products for consumer’s use made her want to be part of the growing trend.  Without direct experience in technology, she started doing coffee chat surveys to learn about roles at varying tech companies.  Tiffany began digesting as much industry news as possible and proactively attending technology mixers as well as speaker panels.  Through these, she met great people who were willing to help her find what she proclaims is her “dream role” at VigLink. Tiffany is also an active member of the community, on weekends you might find her at St. Anthony’s serving meals or being a youth mentor at the JCC.

So…what’s Tiffany’s advice for merchants?

Merchants who have seen success with VigLink often ask, “How can I expand my business for extra reach?” One of the most immediate impacts we offer is the opportunity to join our Insider Marketing Program that highlights brands with competitive revenue share in their industry.  VigLink promotes these brands in high visibility avenues like our email newsletter, insider twitter, and recognition on our merchant homepage. This is a great way to showcase your brand and get in front of a carefully curated group of publishers to share your story.  

 Written by Hanna Fritzinger

This Week In Tech: SFCMGR Visits Prezi!

image

We love SFCMGR, and not just because our very own Lucy Bartlett is a co-organizer. It’s a wonderful group of people who come together once a month to discuss the ins and outs of online community. This month’s event was held at the San Francisco Prezi Office.  They provided four wonderful speakers, all who have different backgrounds within Prezi, but work toward the common goal of creating an online community of happy Prezilians.

Jana Hanavan, Prezi’s mood coordinator, opened up the series of presentations with some background on the organization, thus setting the stage for Ashley Whitlatch, the 8th U.S. employee who developed and launched Prezi’s successful college ambassador program. She informed the audience of 5 tips to build a community of college ambassadors. They are- focus on those who love you, help them set their own goals, provide feedback, listen to their ideas, and provide useful takeaways.

When looking for people who are passionate about your product, find those who already actively support you. Once they’ve become an ambassador, it’s important not to set stringent goals for them, but rather collaborate to decide what you’re working towards. After all, an ambassador knows their peers better than anyone else, that’s why they’ve been selected. The college ambassador program wouldn’t have been beneficial to anyone if it simply included passing out fliers. Prezi encourages ambassadors to create online groups and A/B test new products, both enriching the experience of its ambassadors as well as the community they’re present in.

Zsofi Goreczky was once upon a time what Prezi calls a Champion, someone incredibly active in the Prezi community answering other’s questions and sharing best practices.  A few months after becoming a Champion, Prezi asked her to officially join their team. She’s now the Operations Manager for Support. Zsofi explained the importance of the Championship program and other methods that encourage peer-to-peer support. Although acknowledging these key factors of building a supportive community, she also stressed the strong influence of support reps, promoting good answers, monitoring frequent questions to modify content pieces accordingly, and archiving out-dated issues. The combination of Prezi employees and Prezilians supporting the community has proven to be the most effective way to support their online community.

The last to take the stage was Prezi’s Social Media Coordinator,Susannah Shattuck who helps to manage Prezi’s global community across LinkedIn, Twitter, Facebook, Google+, and beyond! When she first started at Prezi her main focus was to get as many “likes” and “followers” as possible but soon realized that didn’t result in engagement. Rather, a smaller, targeted audience creates higher interaction amongst followers. To best amplify your company’s voice and convert users into advocates, Susannah suggests meeting your audience where they are, listening to what they have to say, and empowering them to share their stories. If you are able to successfully follow these three tactics you will drive traffic to your website, which is critically important when trying to explain the ROI of social media.

We hope all that attended this month’s SFCMGR meeting learned as much as we did! It was wonderful to hear about community from three different departments of the Prezi team. We hope you’ll join us next month for another round of networking and insightful talks from industry leaders. Stay tuned!

Check out the great Prezi they made for SFCMGR!

Written by Hanna Fritzinger

The new landscape of native advertising: #ASE14

10352611_10152288440603225_2808535163228706323_n
Every six-months I attend the bi-annual Affiliate Summit Conference. It’s a great opportunity to meet others in the industry and learn recent trends in the native advertising ecosystem.  Below are valuable insights I’ve gathered from industry experts to help you stay current with your native advertising efforts.

Keep Your Content Authentic

Creating quality content has always been paramount. The only way to retain visitors is to engage them, and to do that, they must be provided relatable content. Rae Hoffman of Sugarrae spoke about changes in Google Search and the implications they hold on the future of online publishers’ success. He concluded success can only be achieved if you produce honest, authentic, and well crafted content.

John Rampton, editor of SEJ, spoke to the influence of blogs in helping build your brand and online relationships.  Your blog is the start stage of your sales funnel, and if it goes unnoticed, you cannot maintain or grow your online brand (nor drive traffic to monetize). Everything you put on the web should be of the same high quality your readers have come to expect.

Additionally, content is not limited to writing. Images and videos are common content outlets, and with them come the potential for additional monetization sources. However, if these new avenues do not follow the same stringent quality controls to which you hold your writing, they will harm rather than support your brand.

Carolyn Kmet successful mommy, food blogger and CMO of “all inclusive marketing” shared three guidelines to keep the quality of your content high, even when feeling uninspired.  It’s critical to never lose your unique point of view that your audience depends on.

  1. Make sure you talk about “how you use” the items being discussed. Regardless of the item, be cautious to only speak to what you really know and can give your valued insight on.
  2. Never sell the trust of your readers for commissions. Trust takes years to build, but can be lost in an instant.
  3. Discuss pros and cons of situations in a subjective voice. By doing so, you legitimize your opinion and build trust with your readership.

ASE14 is far from over, and other significant topics will emerge. These are just the first to take prominence in audience discourse and reflect the “hot topics” present in our ecosystem.

Written by Lucy Bartlett

Asynchronous programming with Play framework

Background
Some  services provided by VigLink are handling 7K requests per second. Our current architecture is mostly running on a Tomcat 7/Spring 4 sync approach. Our services are mostly powered by MySQL, Elasticsearch, and Cassandra. Since traffic has grown over the past few years, we’ve increased the number of machines to keep up with throughput and response time.

Goal
In anticipation of growing traffic, we want to experiment with different frameworks and approaches to make our service more scalable and efficient.

  1. Increase throughput
    We aim to handle more traffic with the same hardware. This can reduce our engineering costs and ease up the maintenance of having too many servers. The CPU cycle being wasted on thread churn is one key thing we want to address in this experiment.
  2. Improve response time
    The vision of VigLink is to make the web better, therefore we strive to maintain and improve our request latency. We want to provide low, and most importantly a consistent latency because we’ve observed that spikes of latency happen once in a while on the current application.
  3. Java codebase compatibility
    Since our code base is mostly Java based, we hope to reuse our existing code base while enjoying the benefits of new framework.

Decision of Play framework
We started to learn and code with Play framework on our company’s internal hackathon day. We found it extremely easy to setup and run. Additionally, its async controller is well defined. As a result, Play framework was chosen to experiment with this time.

Code change
Future interface
To make our Java code’s computation and DAO asynchronous, we need a more advanced future interface to handle in-progress computation so we can code from end to end in async manner. Some options include Java 8 CompletableFuture, Akka, Guava ListenableFuture. We decided to use Guava ListenableFuture because we found it easy and powerful for transformation and chaining. Also, the code change for our existing code was minimal with ListenableFuture.

Migrating existing Java code to asynchronous computation
Cassandra client library
We are using Hector as our Java client library for Cassandra, but this client library does not provide async interface. As a result, we decided to try Astyanax for its powerful async interface. The code change was straightforward and easy since their interfaces are similar.

 

Hector – Sync

public UrlValidity getUrlValidity(String url) {
   SliceQuery<String, String, ByteBuffer> query = HFactory.createSliceQuery(linkSwapKeyspace, StringSerializer.get(), StringSerializer.get(), ByteBufferSerializer.get());
 
   ColumnSlice<String, ByteBuffer> queryResult = query.setKey(getKey(url))
           .setRange(null, null, false, 100)
           .setColumnFamily(CassandraColumnFamily.URL_VALIDITY)
           .execute()
           .get();
 
   return extractValidity(queryResult.getColumns());
}

 

Elasticsearch
We are using Elasticsearch 1.2 standard Java client library. It provides async execution out of the box. As the return value of its async execute() method is ListenableActionFuture, we transformed this into ListenableFuture by using SettableFuture.

public ListenableFuture asyncSearch(final Class clazz, SearchQuery query, String... facetNames) {
SearchRequestBuilder searchRequestBuilder = createSearchContent(query, facetNames);

ListenableActionFuture searchResponse = searchRequestBuilder.execute();

final SettableFuture searchResult = SettableFuture.create();

searchResponse.addListener(new ActionListener() {
@Override
public void onResponse(SearchResponse searchResponse) {
String responseBody = toJson(searchResponse, true, false);
T result = unmarshalResponse(responseBody, clazz);
searchResult.set(result);
}

@Override
public void onFailure(Throwable throwable) {
searchResult.setException(throwable);
}
});

return searchResult;
}

 

Play Framework Async Controller
We are using Play 2.2.x for this experiment. Async controller can be easily implemented with Action.async {}. We have implemented AsyncUtil.asScalaFuture to transform Guava ListenableFuture to Scala Future as expected by Action.async {}. The tility method is inspired by sphere.util.Async.

@Component
class LinkSwapController extends Controller {

@Resource var offerSearchService: OfferSearchService = _

def swap(url: Option[String], keyword: Option[String]) = Action.async { request =>
AsyncUtil.asScalaFuture(offerSearchService.search(url.getOrElse(null), keyword.getOrElse(null))).recover {
case t =>
Logger.error("Exception caught", t)
BadRequest(...)
} map {
case result: OfferSearchResult => Ok(...)
}
}
}
public static Future asScalaFuture(ListenableFuture future) {
final Promise promise = new Promise<>();
Futures.addCallback(future, new FutureCallback() {
@Override
public void onSuccess(T result) {
promise.success(result);
}

@Override
public void onFailure(Throwable t) {
promise.failure(t);
}
});
return promise.future();
}

 

Metrics
Graphite is used to measure and monitor performance. Yammer metrics library is used to populate metrics to our Graphite server. To measure the response time of requests, we have implemented a metrics filter.

class MetricsFilter extends EssentialFilter {

def namePrefix = "responseCodes."

def statusCodes: Map[Int, Meter] = Map(
Status.OK -> Metrics.newMeter(classOf[MetricsFilter], namePrefix + "ok", "responses", TimeUnit.SECONDS),
Status.CREATED -> Metrics.newMeter(classOf[MetricsFilter], namePrefix + "created", "responses", TimeUnit.SECONDS),
Status.NO_CONTENT -> Metrics.newMeter(classOf[MetricsFilter], namePrefix + "noContent", "responses", TimeUnit.SECONDS),
Status.BAD_REQUEST -> Metrics.newMeter(classOf[MetricsFilter], namePrefix + "badRequest", "responses", TimeUnit.SECONDS),
Status.NOT_FOUND -> Metrics.newMeter(classOf[MetricsFilter], namePrefix + "notFound", "responses", TimeUnit.SECONDS),
Status.INTERNAL_SERVER_ERROR -> Metrics.newMeter(classOf[MetricsFilter], namePrefix + "serverError", "responses", TimeUnit.SECONDS)
)

def requestsTimer: Timer = Metrics.newTimer(classOf[MetricsFilter], "requests", TimeUnit.MILLISECONDS, TimeUnit.SECONDS)

def activeRequests: Counter = Metrics.newCounter(classOf[MetricsFilter], "activeRequests")

def otherStatuses: Meter = Metrics.newMeter(classOf[MetricsFilter], namePrefix + "other", "responses", TimeUnit.SECONDS)

override def apply(next: EssentialAction) = new EssentialAction {
override def apply(rh: RequestHeader) = {
val context = requestsTimer.time()

def logCompleted(result: SimpleResult): SimpleResult = {
activeRequests.dec()
context.stop()
statusCodes.getOrElse(result.header.status, otherStatuses).mark()
result
}

activeRequests.inc()
next(rh).map(logCompleted)
}
}
}

 

Result
Response time

engineering-1

 

 

 

 

 

 

The average latency of Play framework is lower in this experiment. Most importantly, there is no spike in the async one. This can be the combined results from async computation, Play framework, and Astyanax.

 

Thread churn

engineering-thread

 

 

 

 

 

 

The thread count in Play framework (async) is more consistent and lower than Spring framework (sync). That means it has the potential to handle more traffic.

Conclusion
We are pleased with the result of using async computation in this experiment. Both latency and thread churn were improved dramatically. We also found it very easy to setup and use Play framework. However, it is unfair to Spring framework because it’s using sync computation. We are planning to do another experiment with async computation in Spring framework so we can compare the two in fair manner. We are also planning to do a stress test experiment to understand the real potential of Play framework async programming.

Written by Edward Chu, Senior Software Engineer.

Follow Ed on Twitter @edwardchu521


 

This Week in Tech: Publishers granted greater control by Google

Untitled 3

Monday marked the launch of the  Google News Publisher Center, a new feature of Google News that allows publishers to dictate how Google indexes their site. Most top publishers spend hours generating engaging and relevant content, however that’s not enough to drive traffic to their site. Until Monday, publishers could only hope Google would predict the layout of their site correctly and pick up on any recent formatting changes.

For example, ELLE one of our coveted publishers, categorizes their site by fashion, beauty, accessories, culture, etc. With this new feature ELLE can label the different segments of their site from the Publisher Center, therefore enabling Google to efficiently categorize the content. If ELLE decides to delete the “beauty” category from their site or add a “lifestyle” category, they would subsequently go to the Publisher Center and ensure those changes are made. This will result in more accurate Google News results, which is beneficial for ELLE, Google, and readers.

The Google News Publisher Center can be simply explained as a tool that gives publishers the power to edit Google’s records, thus putting power and responsibility into the hands of publishers. It is now up to them to attentively keep information in their Publisher Center portal up to date, simultaneously relieving pressure from Google Support.

What do you think about the latest advance in Google News?

Written by Hanna Fritzinger

EPC Explored Infographic Released

There are many ways to measure your native advertising efforts.  At VigLink we tend to focus on earnings per click (EPC). EPC represents a per-click measure of how efficiently your traffic is earning from advertisers. For a given volume of clicks, the higher your EPC, the higher your revenue. It’s imperative for publishers to understand how EPC functions in order to maximize their earnings; this means finding out where people are earning the most, in what industries, and on which devices. We analyzed 100 million clicks and four million dollars in revenue to bring you a detailed breakdown of where the money is.

Calculating EPC is as simple as dividing total commission by total clicks. By doing so, you’re able to determine the potential worth of clicks on your site. But EPC is actually driven by a variety of other variables.  The publisher must also consider (a) price of the item recommended (b) average commission rate of the merchant (c) average likely conversion rate of the shopper.  EPC is the product of those variable.  If one of every hundred clicks from your site turn into a purchase for a $100 gadget, for which you are paid 5%, then your EPC would be (0.01 * (100*0.05)) = $0.05 per click.  Keep the click number constant but sell goods worth $200, and your EPC will double.  Keep clicks and item price constant but double the commerce intent of your traffic by really encouraging them to buy, and the increased conversion rate will mean higher EPC for you.

EPC-Explored_Infograph (1)

One way to consider EPC is by industry. Our data suggest the top three are financial services ($1.80), motorcycles & power-sports ($1.50), and lifestyle ($1.37). On the contrary, the three lowest are art & entertainment ($.06), travel ($.19), and family & baby ($.27). The purchase price of items in the first three industries tend to be significantly higher in cost than the later three, they also warrant recurring customers which merchants value and are willing to pay higher prices for.This explains their high EPCs.

With increasing resources and time devoted to tracking consumer trends over mobile and desktop devices, publishers are focusing more on where they are getting their traffic. Mobile is quickly emerging and will be more influential than desktop traffic in the near future, but it isn’t there yet. Even if publishers have equal amounts of mobile and desktop traffic, that doesn’t mean the conversion rate on mobile clicks is as high.

We learned desktop EPC was the highest at $0.07. Not surprisingly, tablet EPC was not far behind desktop at $0.06, but mobile remained low at only $0.02. Showing that even as mobile traffic to sites is increasing, people are still far less likely to purchase on those devices. The poor user experience on mobile risks deterring even the most avid shoppers. When considering the sports and fitness industry this trend mapped out exactly following the trend with desktop EPC at $0.18, tablet EPC at $0.13, and mobile EPC at $0.10.  Device EPC will be the number to watch as apps and mobile websites continue to increase their accessibility to customers. With the combination of these more efficient sites and the upcoming generation being more comfortable on their mobile devices than desktops, mobile EPCs will undoubtedly continue to rise, but for now… don’t neglect your desktop experience.

Written by Hanna Fritzinger

This Week in Tech: Google Introduces Dynamic Sitelinks

Untitled+drawing+(44)

We have long stated our belief in the power of links on the web. We integrate them into the content of your site, promoting a seamless user experience for your readership and a revenue source for you. And now, Google has caught onto to the potential of this form of native advertising. For those of you who don’t know what Google Adwords is, they are the ads that appear next to your Google search results which drive traffic and revenue.

Dynamic sitelinks, the newest feature of Google Adwords, will still have the original link to the homepage of the website as it always has, but additionally have links to different pages of the site. Instead of offering potential customers one place to click, they’ll now have multiple opportunities. If this sounds familiar maybe our newest product, Spotlight, is ringing a bell!  Google is already seeing success with this new technology, and we’re not surprised. With further advances and developments  on the web there will be more of a push toward native advertising and using links to bring customers to your site. After all, did you know you’re more likely to get hit by lightening than click on an irrelevant banner ad?

Written by Hanna Fritzinger

We have preliminary Publisher Roundtable feedback!

publiher roundtable blog image

Our second Publisher Roundtable is live!  This edition focuses on monetization. The survey is ongoing, but we’re eager to share preliminary feedback!

Findings show the most popular method for publishers to monetize their sites are ad networks. When choosing a network, publishers focus on traffic quality. And before engaging long term, general consensus is that publishers should test a network for 1.5 months.

Another interesting finding: content-targeted ads are used more frequently than either affiliate networks or brand sponsorship. These also generate the highest percentage of revenue for publishers. You might infer that publishers are therefore most satisfied with this format, but that’s not the case. Publishers are most satisfied with brand sponsorships.  This discrepancy begs a question: if people are most satisfied with brand sponsorships, why aren’t they using them more often?

Survey results suggest it’s not because they don’t want to, it’s that they don’t know how to do so effectively. The majority of publishers (40%) graded themselves a C at monetization.  Half stated monetization is harder than expected.

It’s critically important that information be accessible to publishers so they can learn how to monetize their content effectively without having to disrupt the user experience with other means of monetization such as content targeted banner ads.  Native advertising tools such as the array VigLink products allow you to monetize your site without interrupting the user experience. We hope you utilize the series of interviews to gain intelligent insights into your monetization strategy!

 

Written by Hanna Fritzinger

VigLink has a Pinterest!

VigLink Pinterest

Back in April Bradley Taylor wrote a blog post for us highlighting four ways to promote your personal or professional site using Pinterest. We took his valuable advice and have officially joined the Pinterest community! VigLink Pinterest will showcase some of the unique personalities of our team  you wouldn’t normally get the chance to see. We are following some of the useful tips Bradley suggested…

  1. Discover the Pinterest Community
  2. Generate original, thought-provoking content
  3. Unite all of your current social networks
  4. Piggyback popular pins!

Pinterest already has a special sector of their site called Pinterest for Business which is dedicated solely to professional sites and certainly worth checking out. The tagline for this service is, “get discovered by millions of people looking for things to plan, buy and do”. As of right now the best way you can do this is by following the four tips highlighted above, but not for long! They have just announced that they are gearing up to launch “Promoted Pins” which will expand business’ reach via Pinterest. Although this new technology has yet to be implemented, you can fill out a form on their website for priority access. Pinterest is already a wildly powerful tool if used well (people who are referred to a site from Pinterest spend 70% more), and it’s influence is only going to continue to grow with time and new advances. Is your company on Pinterest yet?    

Written by Hanna Fritzinger