Chrome, HTML5, JavaScript, webdev

Chrome Extension For Enterprise Internal Usage

Chrome ExtensionsAt the beginning of the year, I’ve worked with a big organization that wanted to avoid the automatic suggestions Chrome is making in the omnibox (=the top field in Chrome, where you type searches and see the url).

Their main requirement was the need to allow employees to type a word and get the internal site that they are use to see. For example, the user will type ‘sale’ and Chrome will redirect them to the internal portal of sales. If you won’t modify Chrome it will run a google search on ‘sale’ and the results will be something like:

Screen Shot 2013-03-11 at 5.02.05 PM

The good news is that with this little extension you will be able to control the redirect of the users to the right internal location. Let’s jump into code.

This is the code of our manifest file that describe the extension


{
"name": "Omnibox customization example",
"description" : "To use, type 'get' plus a search term into the Omnibox.",
"version": "1.1",
"background": {
"scripts": ["background.js"]
},
"omnibox": { "keyword" : "get" },
"manifest_version": 2
}

view raw

manifest.json

hosted with ❤ by GitHub

Important to notice is that we setting the keyword ‘get’ in order to activate this extension. You can choose something shorter if you like. Another aspect is the “manifest_version”: 2 which making sure we are compatible with the latest spec.

This is the code of our background page


// each time the user updates the text in the omnibox this event
// is fired and we will use it to suggest search terms for
// our internal users.
chrome.omnibox.onInputChanged.addListener(
function(text, suggest) {
suggest([
{content: "CRM" , description: " fetch the internal CRM"},
{content: "ERP" , description: " fetch the internal ERP"},
{content: "sales", description: " fetch the lastest sales report"}
]);
});
// This event is fired with the user accepts the input in the omnibox.
chrome.omnibox.onInputEntered.addListener(
function(text) {
if (text.indexOf("/") < 1) {
text += "/";
}
if (text.indexOf("http") < 0) {
text = "http://our-internal-portal/&quot; + text;
}
alert('We are taking you to: "' + text + '"');
navigate(text);
});
function navigate(url) {
chrome.tabs.getSelected(null, function(tab) {
chrome.tabs.update(tab.id, {url: url});
});
}

view raw

background.js

hosted with ❤ by GitHub

Here we will listen to the events of omnibox.onInputChanged and omnibox.onInputEntered in order to execute our logic.

Another point you might want to consider is to go to:

chrome://settings/ -> Advanced ->  and then to disable these options:

  • Use a web service to help resolve navigation errors
  • Use a prediction service to help complete searches and URLs typed in the address bar
  • Predict network actions to improve page load performance

It doesn’t matter if you are working in a startup of few people or a big organization with 2.2M employees (e.g. Walmart). In both cases, you probably have internal network and  internal systems that your users will love to access with few keywords like: CRM, ERP, Sale, Marketing, QA etc’.

Happy coding & Happy Passover.

Advertisement
Standard
Business

Startups Best Practices

Screen Shot 2013-03-12 at 10.22.07 AMIn the past 18 years I’ve started six companies (the last cool one is HighGearMedia). In this talk, I shared some of the best practices that I learned the hard way. There are few aspects that I did my best to covered, from technology to design to following your dreams with the best tools you can allow yourself in a certain point in time. In the slides, there is a section that is devoted to Campus TLV and what is the role (as I see it) of a mentor that works with startups on a daily bases. If you are going to visit the Campus in the future, please don’t be a stranger.
There are many more aspects for building a new company. I guess, one of the most critical success factor is finding the right partners and share the load of the work. It’s one of those ‘easy to say hard to do’ things but this is part of the fun.
Good luck!
Standard
Business, life

The Brain, Entrepreneurship And Life With Jeff Hawkins

I’ve watch this interesting conversation between Jeff Hawkins and Michael Chui. For the ones that are old enough to remember Palm (yep, Palm V!) and Handspring – Jeff was the founder of both but he has since turned to work on neuroscience full-time at Numentanumenta. In this hour conversation there are lots of interesting points on the brain, his life and some great tips for entrepreneurs. Few points that I wrote down from his thoughts: Continue reading

Standard
Chrome

Chrome For Enterprise

During my work with big organizations I got many questions about deploying Chrome for enterprise. What are the management capabilities? Which policy I can control? Is there an option to use MSI? The good news is that most of the answers are… Yes! Chrome/Chromuim supports few ways to control your browser’s activity. It can be done by using group policy, MCX files and external configuration files. In the end of the day, the administrator of your organization can manage and control all the Chrome installations. One of the main question CIO/CTO has is about the option to control the auto-updates. Well, You can control it. For more details you can read the first bullet in the list below. The other items in that list will help you understand more on the capabilities and see how you can deploy it on any network (windows, linux and mac).
 

(*) More information on all the benefits of Chrome for enterprise and businesses can be found here. And as we know, in the business world the EULA is important as well.

Chrome Frame

Another great option for enterprises that need to work with IE is to install Chrome-Frame. Chrome Frame is an Internet Explorer plug-in that renders specific web pages in Chrome. That’s right… You will be able to use the latest HTML5 features (e.g. see amazing 3D WebGL charts) inside your IE6-8. It’s very powerful way to empower your people with modern browser today.

Standard
Business, Chrome

Re-Thinking Corporate IT Or How Chromebook Can Help

Few points on companies and their IT department in 2011.

  • In todays world, any CIO/CTO that want to ‘Avoid Getting In the Way’ must think on how to remove her department tag of ‘cost center’ and start pushing to be a business that save money and even produce incomes to the organization. In most of the cases the answer is ‘cloud’. But lets take a closer look what that buzzword means.
  • It’s easy to say and hard to do… However, where there are so many great clouds solutions (SAAS and PAAS) if you are still running you mail servers, your wiki or intranet site on some old hardware, something is not being done right.
  • I was lucky to be the CTO and co-founder of a great startup in the past four years (HighGearMedia) and from day one all the IT infrastructure was in the cloud. It can be Google, Rackspace, Amazon or any other provider you like and trust. The main point is saving money, time and most importantly – focus. You want to keep doing what you excel at and not spending time in supporting people with ’email’ issues or some ‘rare problems with the most important presentation. The money you save in startups is ‘nothing’ compare to the millions (or more) the large company will save.
  • One thing that the new Chromebook is doing great to the CIO and all the IT department is to allow them to mange all the organization Chromebooks from one central point. You can install apps (few clicks and ALL your users got a new chart app), remove apps and put some policy in place (e.g. no Angry birds in the middle of the day). In other words, Administrators can configure and manage Chromebooks and user accounts centrally through the web. Seamless updates directly from Google keep the operating system and software fresh (every 6 weeks you are getting a new version of chrome), eliminating the need to manually patch systems. And since only minimal data is stored on the device, you don’t need to do tedious backups or migrate data when changing hardware.
  • Last May, I’ve listened to Google CIO (Ben Fried) and his team of engineers describe how Google builds on App Engine. If you’re interested in building corp apps that run on Google’s cloud, this team has been doing exactly that. How these teams have been able to respond more quickly to business needs while reducing operational burden? Here are some answers
    If you are in NY later this month you might want to hear what Ben got to say about “Re-thinking IT: Supporting the Business Without Getting In the Way” for the upcoming Web 2.0 conference.
Standard