Trending February 2024 # Q&A: How Can We Benchmark Engagement With Our Site? # Suggested March 2024 # Top 3 Popular

You are reading the article Q&A: How Can We Benchmark Engagement With Our Site? updated in February 2024 on the website Daihoichemgio.com. We hope that the information we have shared is helpful to you. If you find the content interesting and meaningful, please share it with your friends and continue to follow and support us for the latest updates. Suggested March 2024 Q&A: How Can We Benchmark Engagement With Our Site?

Question: I wondered whether you might be able to point me in the direction of some info on web behaviour?

We’ve recently been looking at “drop off” rates for some of our online content and seeing if we can compare it with external sites to help gauge whether the behaviours we are seeing could be considered as “typical”.

The metrics we’ve been looking at include time spent on a page (0-10, 10-20 seconds etc) and would like to compare to external websites such as BBC, YouTube, etc.

Do you know how it is possible to obtain this data, or any external websites who may have it?

We measure it, but have no external reference as to whether it is good, bad or indifferent.

Nicola

Smart Insights Expert Answer: Yours is a familiar problem for all analytics users. We hear “What does good like”? “How do we compare”? questions often. So, you need some context, otherwise the answer is always “it depends”.

Metrics for evaluating initial engagement with a site

In analytics tools, the main measures for initial engagement with a site are:

2. Duration or dwell time. measured as Average Time on Page or Average time on site

3. Pages per visit. Pages viewed divided by the number of visits.

Which is the best to use to review performance of sources of traffic or the ability of a site to engage will depend on your goal. I personally find bounce rate most actionable for seeing whether your providing a good, relevant, experience. So with search marketing you can compare bounce for different keywords entering the site on different landing pages and see which are underperforming compared to others. So benchmark against your own site average – Google Analytics has a good chart for for this.

You might think that duration would be the opposite of bounce, but average time on page can be a good indication for engagement with an article like a blog post or article.

Pages per visit is better for reviewing overall engagement with content on a community site and there are some good sites on this

Benchmarks for engagement

Finally, to the main part of your question, where do we find benchmarks for these?

1. Bounce rate.

Jan 2012 Update: Google published a compilation of bounce rates by source in summer 2011 in their Analytics Enewsletter – Malcolm Coles did a summary of how bounce rates vary by source and country.

Published bounce rates aren’t widely available, but if you use Google Analytics, one option was to enable the benchmarking facility to compare to a similar sized site in your sector. Here I share ours for Smart Insights:

See the last section of this post about the danger of averages where I present some other examples of typical bounce rates.

3. Pages per visit. You can see that by dividing Page Views by  Visits we can also calculate this measure; around 5.4 in this case. You can also benchmark out of sector. For example, if your site has a community section – how does it compare to Facebook which has a typical pages per visit value of 30.

So I hope that answers your question Nicola. Clearly these engagement measures aren’t going to differ radically from week to week, there more useful for benchmarking before and after major site design or content changes. But don’t forget…

The danger of averages – you HAVE to segment for meaningful engagement

To make these engagement measures more meaningful you have to segment – these are our recommendations on the main segmentation options for online marketing and analytics. Of these, the most important ones to test and action for bounce rates are:

1. New vs returning visitors

2. Brand search (they know you – bounce rate can be less than 10%) against non-brand search (they don’t know you – bounce rate can be higher than 80% if you’re not credible)

3. Different media channels – bounce rates from Email campaigns tend to be lower

4. Customer and non-customers (if you’re using custom variables)

5. Entrance page – home page entrances tend to be lower than landing pages for example.

I would look at average bounce rates for all of these – they give you a starting point to improve on and you can focus initially on the keyphrases or pages with a high volume that don’t engage. That’s the power of bounce rate – it will vary dramatically across your referrers and pages so is highly actionable.

You may also be interested in this compilation of  average bounce rates for a range of mainly UK sites tracked with the Analytics SEO software. The average bounce rate is 48% across these sites.

You're reading Q&A: How Can We Benchmark Engagement With Our Site?

Se Models Q & A #3

Question:What is Coding Standard?

Answer: – Organization that developed better software has their own standards of coding. Some reasons are given below for the standard of coding.

Coding process makes easy to solve errors regarding coding and helpful in reading codes of different other programs.

Coding provide a dress appearances to the codes which is written by different kind of programs.

Testing and maintenance, both processes are affected by the coding process. In comparison, testing and maintenance process takes more time than coding process. With the help of good coding style software can created which has the quality of low maintenance.

For programming style we have some rules which are defined below

Clarity and simplicity of expression – During the process of designing, the process should be simple and easy to understand. The programming of software must be designed just like that clarity should be present at every level and there should be not find any confusion about the understanding of the program.

Names – A name has a specific meaning during a program writing process. It should not be critical variable. In the process of code writing the code should be closer in the comparison of original product; with the help of this everyone can easily understand the expression. For Example if we want to calculate interest and showing the expression I = ( P* R*T)/100 . No one can easily understand this expression but instead of this if we write interest = (principle * rate * time)/ 100 . Then everyone easily understands this expression.

Go to system – We should always try to neglect this as longer its can possible because the main drawback of goto system is that it use always forward, transferred and avoided the backward jump.

Hiding information – A good programming language has a most special style which is called information hiding.

All information which is special and have a specific purpose then the collected data should be separate from the information which is used in a system.

The quality of visibility and transparency should be available in all information which is useful for the operational activities.

The system became more maintainable with the help of hidden information by decreasing the coupling between modules.

Nature of modules – A module should be treated carefully if the nature of this module is difficult. So the basic method of its adjustment is to divide into little parts which called multiples modules.

Layout of a program – The program should have the quality of understanding and readability. Program should be readable in first try and there should be find not any confusion. For getting the best output use of commas, space and marks of identifications used.

Robustness – Robustness program is that program with the help of this we can get the proper output with the wrong input. Many of times we see that the input data have so much errors or invalid data in that case normal program became fall in producing output. On the other hand Robustness program helps in this case and gives the proper output in user favor.

Internal documentation – Internal documentation plays a major role in program. It is helpful to increase the understanding and readability. It helps a lot when maintenance and editing is required for a program.

Exploring Android Q: Adding Bubble Notifications To Your App

What are Android Q’s bubbles? Haven’t Facebook been using bubble notifications for years?

Floating bubble-style notifications aren’t a new concept for Android, as they’ve long been available in third party apps, most notably in Facebook Messenger. However, previously it was the developer’s responsibility to design and implement their own bubble notifications.

Creating a custom feature is always more time-consuming than leveraging classes and APIs that are already built into the Android platform, so now that bubbles are officially part of Android it should be much easier for developers to use this notification style. This official support will also provide a more consistent experience for users, as all bubbles should now have exactly the same behaviour, regardless of the application that generated them.

Android Q bubbles: What are the restrictions?

Bubbles are displayed on top of whatever content the user is currently viewing. If your app generates a large number of bubbles, or it creates unnecessary bubble notifications, then users are quickly going to lose patience with your app.

Someone who feels bombarded by bubbles may choose to disable the bubble feature for your application, or they may even uninstall your app entirely.

To safeguard the user experience, your bubble notifications will only be displayed if they meet at least one of the following criteria:

Your application is in the foreground when the notification is sent.

The notification has a Person added. If there are multiple people associated with a notification, then you must also mark this conversation as a group, using setGroupConversation(boolean).

The notification is from a call to Service.startForeground, has a Person added, and falls into the CATEGORY_CALL notification category, which indicates this is a synchronous communication request, such as a voice or video call.

If none of these conditions are met, then your bubbles will be displayed as a standard notification instead. If the device is locked or its always-on display is active, then your bubbles will again only appear as standard notifications.

You should also be aware that at the time of writing, bubbles were an optional feature. When your application first tries to generate a bubble, the user will be presented with a permissions dialog and they’ll have the option to disable bubbles for your application. If the user disables the bubble feature, then your app’s bubbles will always be displayed as standard notifications, even if they fulfil all of the above criteria.

What we’ll be creating

In the subsequent window, select the “SDK Platforms” tab.

Select the latest release of “Android Q Preview.”

Switch to the “SDK Tools” tab.

Select “Android SDK Build-Tools 28,” or higher.

Note that the following tutorial was created using Android Q Beta 2, when bubble notifications were still considered an experimental feature. If you’re using a later version of Android Q, then you may encounter some minor differences.

Building our Android Q app

To get started, create a new Android project using the “Empty Activity” template, and when prompted make sure your app is targeting the latest version of Android Q.

If you’re adding bubbles to an existing application, then you’ll need to open your project’s build.gradle file and upgrade compileSdkVersion, minSdkVersion and targetSdkVersion to “android-Q.”

Code

android { compileSdkVersion 'android-Q' defaultConfig { ... minSdkVersion 'Q' targetSdkVersion 'Q' ... } ... }

Next, open your build.gradle file and add the latest version of the Material Components for Android library to your “dependencies” block:

Code

dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'androidx.appcompat:appcompat:1.0.2' implementation 'androidx.constraintlayout:constraintlayout:1.1.3' implementation 'com.google.android.material:material:1.1.0-alpha07' testImplementation 'junit:junit:4.12' androidTestImplementation 'androidx.test.ext:junit:1.1.0' androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1' } Creating the main user interface

Our project will eventually need two layouts: one for the main application, and one that defines the layout of our expanded bubble.

Open your project’s activity_main.xml file, and let’s create the button that’ll generate our bubble notification:

android:layout_width=”match_parent” android:orientation=”vertical” android:gravity=”center” <Button android:id=”@+id/createBubble” android:layout_width=”wrap_content” android:layout_height=”wrap_content”

Next, we need to create the bubble notification. Android Q’s bubbles are built on top of Android’s existing notification system, so if you have any previous experience of working with Android notifications, then creating a bubble should feel instantly familiar.

You create an Android Q bubble, by completing the following steps:

1. Create at least one notification channel

An ID, which must be unique to your package.

The channel’s name, which will be displayed to the user via the channel’s settings screen.

Code

CharSequence name = "My new channel"; String description = "Description"; int importance = NotificationManager.IMPORTANCE_HIGH; channel = new NotificationChannel("1", name, importance); channel.setDescription(description); channel.setAllowBubbles(true);

You can then submit this NotificationChannel object to the NotificationManager, using the createNotificationChannel() method:

Code

notificationManager.createNotificationChannel(channel); 2. Create the bubble intent

Later in this tutorial, we’ll create a BubbleActivity that’ll launch every time the user interacts with the bubble icon.

In the following snippet, we’re creating a PendingIntent, which specifies the Activity that’ll be displayed inside our expanded bubble:

Code

Intent target = new Intent(MainActivity.this, BubbleActivity.class); PendingIntent bubbleIntent = PendingIntent.getActivity(MainActivity.this, 0, target, PendingIntent.FLAG_UPDATE_CURRENT /* flags */); 3. Create the BubbleMetaData

Next, you need to create a BubbleMetadata object, which will encapsulate all the data required to display our notification bubble.

You create a BubbleMetadata object by calling the Notification.BubbleMetadata.Builder constructor. We can then use setIntent() to specify the target bubble intent, which will run every time the user interacts with this bubble.

Code

Notification.BubbleMetadata bubbleData = new Notification.BubbleMetadata.Builder() ... ... ... .setIntent(bubbleIntent)

Code

Notification.BubbleMetadata bubbleData = new Notification.BubbleMetadata.Builder() .setDesiredHeight(600) .setIcon(Icon.createWithResource(MainActivity.this, R.drawable.ic_message)) .setIntent(bubbleIntent) .build(); 4. Add the metadata to the bubble

Next, we need to attach the BubbleMetadata object to our notification.

Android Q adds a new setBubbleMetaData() method to the notification builder class. This method takes an instance of BubbleMetadata, which is used to display your bubble’s content when it’s in an expanded state.

Code

.setBubbleMetadata(bubbleData); The completed MainActivity

After completing all the above steps, your MainActivity should look something like this:

Code

import androidx.appcompat.app.AppCompatActivity; import android.app.Notification; import android.app.NotificationChannel; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.Context; import android.content.Intent; import android.graphics.drawable.Icon; import android.os.Bundle; import android.widget.Button; import android.view.View; Button createBubble; Notification.Builder builder; NotificationManager notificationManager; NotificationChannel channel; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); createBubble = findViewById(R.id.createBubble); notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); CharSequence name = "My new channel"; String description = "Description"; int importance = NotificationManager.IMPORTANCE_HIGH; channel = new NotificationChannel("1", name, importance); channel.setDescription(description); channel.setAllowBubbles(true); } @Override switch (view.getId()) { case R.id.createBubble: Intent target = new Intent(MainActivity.this, BubbleActivity.class); PendingIntent bubbleIntent = PendingIntent.getActivity(MainActivity.this, 0, target, PendingIntent.FLAG_UPDATE_CURRENT /* flags */); Notification.BubbleMetadata bubbleData = new Notification.BubbleMetadata.Builder() .setDesiredHeight(600) .setIcon(Icon.createWithResource(MainActivity.this, R.drawable.ic_message)) .setIntent(bubbleIntent) .build(); builder = new Notification.Builder(MainActivity.this, channel.getId()) .setSmallIcon(R.drawable.ic_message) .setBubbleMetadata(bubbleData); notificationManager.createNotificationChannel(channel); notificationManager.notify(1, builder.build()); break; } } } Creating the bubble icon

Our MainActivity references a “ic_message” drawable, which will be used to represent our bubble in its initial, collapsed state. Let’s create this icon now:

Open the “Icon Type” dropdown and select “Action Bar and Tab Icons.”

Make sure the “Clip Art” button is selected.

Choose the image that’ll represent your bubble notification; I’m opting for “message.”

In the “Name” field, enter “ic_message.”

While we’re here, let’s create the other image assets that we’ll be using throughout this tutorial. Our expanded bubble will eventually use two icons to represent two distinct actions: calling the contact, and sending them a text response.

To create these drawables, repeat the above steps, but this time:

Select an image that’ll represent the bubble’s “call” action. I’m using the “mic” resource and naming it “ic_voice.”

Select an image that’ll represent the bubble’s “reply to message” action. I’m using the “reply” drawable, and naming it “ic_reply.”

Building the bubble Activity

Next, we need to create the Activity that’ll be displayed to the user every time they interact with our bubble.

In the subsequent window, name this class “BubbleActivity.”

We’ll use this class to define the bubble’s content, including any actions the user can perform by interacting with the expanded bubble. To help keep our code straightforward, I’ll simply display a toast every time the user triggers the bubble’s “sendMessage” and “voiceCall” actions.

Open your BubbleActivity class, and add the following:

Code

import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.widget.ImageButton; import android.widget.Toast; import android.view.View; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_bubble); ImageButton voiceCall = (ImageButton) findViewById(R.id.voice_call); ImageButton sendMessage = (ImageButton) findViewById(R.id.send); } @Override switch (v.getId()) { case R.id.voice_call: Toast.makeText(BubbleActivity.this, "Calling contact", Toast.LENGTH_SHORT).show(); break; case R.id.send: Toast.makeText(BubbleActivity.this, "Sending message", Toast.LENGTH_SHORT).show(); break; } } } Designing the expanded bubble layout

Now, we need to create a corresponding layout for our BubbleActivity. This layout will consist of:

A RecylerView. In a real-world messaging app, this is where we’d display the newly-received message, plus any previous messages.

An EditText. This will enable the user to type their response directly into the bubble notification.

Two ImageButtons. These will display icons that the user can tap, in order to send a text response or call the person who sent this message.

<LinearLayout android:id="@+id/newMessage" android:layout_width="match_parent" android:layout_height="match_parent" <androidx.recyclerview.widget.RecyclerView android:id="@+id/messages" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" <LinearLayout android:id="@+id/input_bar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" <ImageButton android:id="@+id/voice_call" android:layout_width="wrap_content" android:layout_height="match_parent" android:tint="?attr/colorAccent" <EditText android:id="@+id/input" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:hint="Enter message" <ImageButton android:id="@+id/send" android:layout_width="wrap_content" android:layout_height="match_parent" android:tint="?attr/colorAccent"

If Android is going to recognize BubbleActivity as an expanded bubble, then we need to open our Manifest and make a few changes to its “BubbleActivity” declaration.

1. Add multi-window support

Start by specifying that your BubbleActivity supports Android’s multi-window display:

Code

android:resizeableActivity="true" 2. Enable allowEmbedded

Bubbles are displayed inside a container that’s owned by another Activity, so our next task is declaring that BubbleAtivity can be launched as the embedded child of another Activity:

Code

android:allowEmbedded="true" 3. Allow multiple instances

Sometimes, your application may need to display multiple bubbles of the same type.

Since we’re creating a chat application, there’s a chance the user may receive multiple messages from different people simultaneously. To avoid confusion, it’s important we represent each conversation as its own bubble, even if that means having multiple bubbles visible onscreen.

If you want your application to display multiple bubbles of the same type, then it must be capable of launching multiple instances.

To give your app the ability to create multiple instances, add the following to your “BubbleActivity” declaration:

Code

android:documentLaunchMode="always" The completed Manifest

After performing all of the above steps, your Manifest’s “BubbleActivity” section should look something like this:

Code

<activity android:name=".BubbleActivity" android:label="@string/title_activity_bubble" android:allowEmbedded="true" android:documentLaunchMode="always" android:resizeableActivity="true"

To test your bubble notifications, you’ll need either a physical device that’s running the Android Q preview or higher, or an Android Virtual Device (AVD) that’s configured to support Android Q.

To create a compatible AVD:

Select “Create Virtual Device…”

To put your application to the test:

Launch your app on a compatible AVD or physical Android device.

Give the “Create a bubble notification” button a tap. A bubble should now appear onscreen.

If prompted, grant your application permission to display bubbles, by tapping “Allow.”

You can download the completed project from GitHub.

Creating automatically-expanded bubbles

Code

Notification.BubbleMetadata bubbleData = new Notification.BubbleMetadata.Builder() .setDesiredHeight(600) .setAutoExpandBubble(true) .setIcon(Icon.createWithResource(MainActivity.this, R.drawable.ic_message)) .setIntent(bubbleIntent) .build();

Install the updated project on your AVD or Android device, and give the “Create a bubble notification” button a tap. Instead of the bubble icon appearing onscreen, your bubble should now launch in its expanded state automatically.

Getting the most out of bubbles: Best practices

As with every new feature, bubbles come with their own set of best practices.

When adding bubble notifications to your Android apps, it’s important to bear the following in mind:

1. Don’t overwhelm the user 2. Focus on simplicity

All processes that are launched from a bubble are housed within that bubble’s container, which can often be considerably smaller than a regular Activity.

To provide a good user experience, you should avoid the temptation to pack your bubbles full of information and features, and instead create bubbles that are as lightweight and straightforward as possible.

3. Test your bubbles as regular notifications

There are circumstances where your bubbles will be presented to the user as a standard notification, for example if the device is locked or the always-on display is active.

To ensure a good user experience regardless of how your bubble is presented, you should test how each of your bubbles appears and functions when it’s displayed as a bubble notification and as a regular notification.

Wrapping up

Enterprise Networking Market Q&A With David Winikoff Of Riverbed Technology

Networking technology enables the exchange of data between and among information systems, and is used by businesses to route critically important data. 

Through networking, users can send files, messages, and other data through e-mail or other communication tools. The information can also be shared via the internet based on what the organization needs.

Datamation interviewed David Winikoff, VP, of Product Management, Alluvio Network Performance Management products at Riverbed Technology, who shared his perspective on the development and growth of the networking market.

For more on Riverbed Technology: Top 10 Enterprise Networking Companies

David Winikoff has over two decades of success leading product management teams and as an engineer (both software and hardware) creating offerings for enterprises. Among the innovations, he has helped develop: high-performance storage subsystems, multi-modal unified communications, QoS-based WAN optimization, and sophisticated network performance management tools. He is most known for building next-generation products with economical upgrade paths for existing customers. 

David has led various aspects of Riverbed’s network performance management portfolio for 11 years and has been responsible for the entire portfolio for the past three years. He has focused a broad collection of products into four flagship offerings based on data source: network packets, flows, and device status. During his tenure, Riverbed’s products have greatly increased their scale and performance, while continuing to lead the market in terms of the breadth of data collected and depth of analysis.

In his free time, David is an instructor at the University of California Graduate School of Business, teaching courses related to innovation, entrepreneurship, marketing, and product management.

I started my career as a computer scientist out of MIT, in the voice communication market. I helped pioneer the creation of Unified Communications (phone calls, voice messages, and emails, at the start). This was just as business communication was transitioning from memos and phone calls to voice messages and email. I transitioned to networking just as WAN optimization technologies enabled voice and video to be effectively sent over networks.

It’s working for a company that, at its heart, is about using technology to make complex problems easy. Riverbed didn’t invent WAN optimization, but they dominated the market with a product that was literally install-and-forget-about-it. The product just worked.

For our Network Performance Management products, the portfolio that I lead, Riverbed’s edge has always given the greatest depth of insight to expert users. We have the broadest and deepest telemetry for all aspects of network performance on the market. Our latest focus is to leverage that data with Artificial Intelligence so that even non-experts can quickly find and fix performance issues.

Not purely for networking, but I think Artificial Intelligence and Machine Learning are going to enable issues to be resolved almost before people notice an issue. In the world of networks, I look forward to streaming telemetry (hopefully) replacing SNMP polling as a way to gather device status.

Combining what we think of as separate disciplines, network performance management (NPM), and application performance management (APM), into coordinated teams. Both sides are working with applications running in computing elements that communicate over networks. I believe treating these as separate disciplines makes progress harder on both sides.

User experience first. We have all sorts of ways to measure how well networks are operating. But, at the end of the day, what truly matters is the performance that the person on the PC, laptop, or mobile phone is experiencing. What better than to measure that directly – as the key metric of performance?

Having too many separate tool silos. Sure, every group knows the data they consider most relevant. But what happens when each tool indicates “there’s no problem”? Much better to have a consistent set of collected data – so that you can be sure that issues can’t “slip through the cracks.”

The biggest trend that I see is a “left shift” of skills and tasks. There just aren’t enough networking experts; the people that have those skills have way too many demands on their time.

That’s where AI/ML comes in: it allows some of the approaches that the experts use to be automated and simplified, so more junior people can solve some problems that only experts could fix before.

The biggest factor is clearly the sheer amount of data we all work with. I joke with my kids that I remember when storage capacities were measured in megabytes. Now, 100Gbps links are common; organizations are (or will be) seeing data volumes measured in Petabytes, Zetabytes, and Exabytes. Networks operating at peak performance all the time is not just a convenience; it’s essential.

I’ve seen the pendulum swing a few times: all IT happening from data centers; the growth of the PC; client-server architectures; applications moving from the data center to the cloud (and sometimes back again). We’re now in a world where both people and the machines running applications could be anywhere. All of which makes the network that much more important.

See more: The Network Management Market

That your future is all about leverage: not just the problems you fix on your own…but helping build the tools that will enable teams to take on the more mundane of the problems you solve.

To realize and appreciate that many people may not know what you do…but that the networking profession provides the essential capabilities that keep the world running.

We’re not actually seeing a challenge in finding talent. The challenge is in figuring out the best ways for teams to work together, across geographies and time zones, to achieve collaborative goals.

The same as in any business situation: know who your customers are. For networking professionals, many of these “customers” may work for your own organization. Your success will come from enabling these people to be as productive as they can be.

For more: Networking Careers

From the technical side, being a co-inventor of four patents.

Meeting with customers and learning all of the creative ways they’re trying to help their customers be more productive.

My manager’s staff meetings. I have such a brilliant and creative set of colleagues. Though the biggest inspiration really comes from seeing people find the humor in whatever challenge has just arisen.

My family has a three-year-old Labrador retriever. She needs a couple of heavy exercise sessions in the park each day. Some of my most creative ideas have come while I’m throwing a frisbee or tennis ball for her to fetch.

I’ve just become the Executive Officer for my sons’ U.S. Naval Sea Cadet unit; the only unit in the country that’s a dedicated musical group. My lifetime highlight was marching with the band down Constitution Avenue in Washington, DC, as part of this past year’s July 4th parade.

For more: Networking Certifications

Google Io 2012: Jelly Bean, Nexus 7, Google Glasses And Nexus Q

Google IO 2012: Jelly Bean, Nexus 7, Google Glasses and Nexus Q

Google’s IO 2012 keynote has been and gone, and while the developer event as a whole isn’t over, you can certainly tell where the focus is by what made it onto the opening agenda. I’d already laid out my expectations for IO over at the Google Developers Blog, but there have been some surprises along the way too.Jelly Bean was the obvious inclusion, and Google balanced its enthusiasm about the new Android version from a technological perspective – with encrypted apps and the perfectly named “Project Butter” for smoothing out the UI – with features that will make more of a difference for end-users. The new notifications system should make a major difference to Android usability, meaning you spend less time jumping between apps, while the Google Voice Search should present an interesting challenge to Siri.

I’ll need to spend some proper time with “Google now” before I can decide whether it brings any real worth to the table. Proper understanding of context is sorely missing from the mobile device market- our handsets can do no shortage of tasks, but they still wait for us to instruct them – though there are potentially significant privacy concerns which I think Google will likely be picked up on sooner rather than later.

The Nexus 7 is a double-hitter of a device, the tablet response not only to concerns that Android developers were opting out of slate-scale app creation, but to Amazon’s strongly-selling Kindle Fire. $200 is a very competitive price, without cutting on specifications, and Jelly Bean comes with all the bells and whistles you need for a tablet OS.

Of course, OS support wasn’t what let Honeycomb and Ice Cream Sandwich down, it was the significant absence of any meaningful tablet application support from third-party developers. The Nexus 7’s low price should help get test units into coders’ hands, at least, though it will take more than a fanfare this week to decide whether Android can catch up on larger screen content with Apple’s iPad.

As for the Nexus Q, I’ll take some more convincing on that. $299 is a lot for a device that also needs an Android phone or tablet in order to work, and Google’s awkward presentation didn’t do a particularly good job of explaining why you’d rather have a Nexus Q than, say, an Apple TV, a Sonos system, or even just a cheap DLNA streamer.

The big surprise today was Google Glasses. Sergey Brin’s “surprise” interruption of the IO presentation, sporting Project Glass himself and then summoning a daredevil army of similarly-augmented skydivers, stunt bikers, abseilers and others onto the stage was a masterstroke of entertainment, and you could feel the enthusiasm and excitement in the auditorium. That the segment ended with a pre-order promise – albeit one at a not-inconsiderable $1,500 – was a suitably outlandish high-point, though we’ll have to wait until early 2013 to actually see Google make good on those investments.

Google Glasses are a long way off. More pressing is how the Nexus 7 holds up to the Kindle Fire (and, though it may not be quite a direct competitor, the iPad) and how quickly manufacturers can get Jelly Bean out to existing devices. Google may be putting a new system of early Android update access into place to speed that process for future iterations, but it looks to have come too late for Jelly Bean updates. We’ll have more from Google IO 2012 over the rest of the week.

Make sure to check out SlashGear’s Android hub for our full Google IO 2012 coverage!

Unboxing Nexus 7 and Nexus Q:

Q&A: How Can We Benchmark Engagement With Our Site?

Question: I wondered whether you might be able to point me in the direction of some info on web behaviour?

We’ve recently been looking at “drop off” rates for some of our online content and seeing if we can compare it with external sites to help gauge whether the behaviours we are seeing could be considered as “typical”.

The metrics we’ve been looking at include time spent on a page (0-10, 10-20 seconds etc) and would like to compare to external websites such as BBC, YouTube, etc.

Do you know how it is possible to obtain this data, or any external websites who may have it?

We measure it, but have no external reference as to whether it is good, bad or indifferent.

Nicola

Smart Insights Expert Answer: Yours is a familiar problem for all analytics users. We hear “What does good like”? “How do we compare”? questions often. So, you need some context, otherwise the answer is always “it depends”.

Metrics for evaluating initial engagement with a site

In analytics tools, the main measures for initial engagement with a site are:

2. Duration or dwell time. measured as Average Time on Page or Average time on site

3. Pages per visit. Pages viewed divided by the number of visits.

Which is the best to use to review performance of sources of traffic or the ability of a site to engage will depend on your goal. I personally find bounce rate most actionable for seeing whether your providing a good, relevant, experience. So with search marketing you can compare bounce for different keywords entering the site on different landing pages and see which are underperforming compared to others. So benchmark against your own site average – Google Analytics has a good chart for for this.

You might think that duration would be the opposite of bounce, but average time on page can be a good indication for engagement with an article like a blog post or article.

Pages per visit is better for reviewing overall engagement with content on a community site and there are some good sites on this

Benchmarks for engagement

Finally, to the main part of your question, where do we find benchmarks for these?

1. Bounce rate.

Jan 2012 Update: Google published a compilation of bounce rates by source in summer 2011 in their Analytics Enewsletter – Malcolm Coles did a summary of how bounce rates vary by source and country.

Published bounce rates aren’t widely available, but if you use Google Analytics, one option was to enable the benchmarking facility to compare to a similar sized site in your sector. Here I share ours for Smart Insights:

See the last section of this post about the danger of averages where I present some other examples of typical bounce rates.

3. Pages per visit. You can see that by dividing Page Views by  Visits we can also calculate this measure; around 5.4 in this case. You can also benchmark out of sector. For example, if your site has a community section – how does it compare to Facebook which has a typical pages per visit value of 30.

So I hope that answers your question Nicola. Clearly these engagement measures aren’t going to differ radically from week to week, there more useful for benchmarking before and after major site design or content changes. But don’t forget…

The danger of averages – you HAVE to segment for meaningful engagement

To make these engagement measures more meaningful you have to segment – these are our recommendations on the main segmentation options for online marketing and analytics. Of these, the most important ones to test and action for bounce rates are:

1. New vs returning visitors

2. Brand search (they know you – bounce rate can be less than 10%) against non-brand search (they don’t know you – bounce rate can be higher than 80% if you’re not credible)

3. Different media channels – bounce rates from Email campaigns tend to be lower

4. Customer and non-customers (if you’re using custom variables)

5. Entrance page – home page entrances tend to be lower than landing pages for example.

I would look at average bounce rates for all of these – they give you a starting point to improve on and you can focus initially on the keyphrases or pages with a high volume that don’t engage. That’s the power of bounce rate – it will vary dramatically across your referrers and pages so is highly actionable.

You may also be interested in this compilation of  average bounce rates for a range of mainly UK sites tracked with the Analytics SEO software. The average bounce rate is 48% across these sites.

Update the detailed information about Q&A: How Can We Benchmark Engagement With Our Site? on the Daihoichemgio.com website. We hope the article's content will meet your needs, and we will regularly update the information to provide you with the fastest and most accurate information. Have a great day!