<body><script type="text/javascript"> function setAttributeOnload(object, attribute, val) { if(window.addEventListener) { window.addEventListener('load', function(){ object[attribute] = val; }, false); } else { window.attachEvent('onload', function(){ object[attribute] = val; }); } } </script> <div id="navbar-iframe-container"></div> <script type="text/javascript" src="https://apis.google.com/js/plusone.js"></script> <script type="text/javascript"> gapi.load("gapi.iframes:gapi.iframes.style.bubble", function() { if (gapi.iframes && gapi.iframes.getContext) { gapi.iframes.getContext().openChild({ url: 'https://www.blogger.com/navbar.g?targetBlogID\758211560\46blogName\75Tech+Tips,+Tricks+%26+Trivia\46publishMode\75PUBLISH_MODE_BLOGSPOT\46navbarType\75BLUE\46layoutType\75CLASSIC\46searchRoot\75http://mvark.blogspot.com/search\46blogLocale\75en\46v\0752\46homepageUrl\75http://mvark.blogspot.com/\46vt\75-5147029996388199615', where: document.getElementById("navbar-iframe-container"), id: "navbar-iframe" }); } }); </script>

Tech Tips, Tricks & Trivia

by 'Anil' Radhakrishna
A seasoned developer's little discoveries and annotated bookmarks.

Search from over a hundred HOW TO articles, Tips and Tricks

This Week I Learned - Week #85

Saturday, November 22, 2014
This Week I Learned:

- Difference between Visual Studio Express Editions & Visual Studio Community Edition:
  ~ VSE does not allow users to use extensions (aka. plugins).  There are over 5000 great plugins for Visual Studio in Visual Studio Gallery. With Visual Studio Community (similar to Professional) Edition, you can access all of them
  ~ There are 3 different Visual Studio Express Editions targeting specific platforms. Visual Studio Community Edition lets you develop projects targeting cross-platforms.

- Google Spreadsheet has a feature to scrape a specific portion of web pages using the ImportXML() formula. Firefox and Chrome Developer Tools can easily generate the XPath for a selected element which is a required parameter for ImportXML.

Some of the video tutorials on Microsoft Virtual Academy are also available on Channel 9. Channel9 shows the file size of videos in different formats. If you're looking for the lowest sized file, you have more choice on Channel 9.

Design for Failure - Traditional approaches often equate reliability with preventing failure, but cloud-based systems are inherently different, so the design approach has to be different too – expect failures, contain and recover from them quickly.

- There’s no option to sign out of the Gmail app for Android without removing your entire account from your phone or tablet.

- When you are watching any video on the YouTube website, the storyboard for that video is automatically downloaded in the background. The Print YouTube bookmarklet stitches all these storyboard image frames as one large poster.

Joblint is an online tool that tests tech job specs for issues with sexism, culture, expectations, and recruiter fails.

Developer Economics - a research series that tracks developer mindshare, revenue and tools — says that they are “tracking at least *fifty” BaaS (Backend as a Service) offerings, and it seems more options appear nearly every month.”

- The faster the browser, the faster a hybrid app runs. As of Android 4.4, the web view used by hybrid Android applications is Chromium-based, and is not subject to the performance penalties of earlier Android versions.

- The gold standard for high availability is five 9's, that is 99.999% of uptime for an application, meaning just 5 and half minutes of downtime over a year.

For voice calling on Skype, the minimum download / upload speed has to be 30kbps, 128kbps for video calling/screen sharing

While popular Internet services are using encryption to shield user data from outsiders, they are generally retaining the ability for themselves to scan the contents of emails, text messages, search queries and other information for use in targeted marketing. Apple and Google have gone a step further recently with their encryption, saying new versions of smartphones that use the iOS and Android software will automatically encrypt data and make it impossible for the companies themselves to decipher photos, contact lists and other files.

- iOS 8 introduced a new language & 4,000 new APIs

Many of the great development successes of the last decade have been built on top of a vibrant plugin community. Node has npm; Ruby has gems; and jQuery has 574 ways to build a carousel. Unfortunately, that same plugin proliferation has not happened in the Cordova world. At the time of this writing, the official Cordova plugins registry lists a mere 262 plugins, 225 of which have less than 1,000 downloads. 

- I never thought Google Chrome can crash before it is launched. I saw this dialog box for the first time:

- OLX is the largest marketplace in India, Poland, and, as of last year, Brazil - these 3 countries make up 50% of its user base. OLX started with the biggest available market: India. The company didn’t launch anything in its home country , Argentina (its founder Alec Oxenford is based there), until four and a half years later - Fortune

- Star Trek was written in 1966. It is about events that take place in the year 2151

Labels: ,

HOW TO use a Google Spreadsheet as a read-only database for a web app

Friday, November 21, 2014
The data in a Google Spreadsheet can be accessed in JSON and JSONP format through a URL.  The trick is to extract the key from a spreadsheet's URL (the key looks something like this - 0AtMEoZDi5-pedElCS1lrVnp0Yk1vbFdPaUlOc3F3a2c) and place it in the position indicated in the below URL:


This approach can be useful when a limited number of people manage a database but when it has to be publicly viewed by users of a website. You can even use Google Spreadsheet formulas (like ImportXML()) to create dynamic values for a column.

So if you have data in a Google Spreadsheet whose schema is defined by the names in the first row,
it is possible to get that data as a JSON feed
and use it to programmatically display the list on a web page

Also see: Search all your ebooks with a keyword by putting them on Google Drive

Labels: , , ,

Notes from the MVA course "Fundamentals of Visual Studio Online"

Wednesday, November 19, 2014
The Microsoft Virtual Academy course Fundamentals of Visual Studio Online is a level 300 course that provides an high level overview of Visual Studio Online (VSO) in less than 2 hours. I wish it also dwelled a little on Process templates & covered best practices.
Notes from the course and elsewhere -

- Visual Studio Online is a cloud-based platform of tools and services that helps you plan, deploy and manage your application.

- VSO competes with Github.  GitHub lets developers work for free with public code repositories but there is a charge for those who want to work with private code repositories. It is possible to migrate a project from GitHub to Visual Studio Online

- VSO is free for the first five users and it is an included benefit for MSDN subscriptions.

- VSO offers cloud-hosted application lifecycle management (ALM) as a service. It provides TFS (centralized) and Git (decentralized) source control systems.

- Visual Studio Online isn't exactly TFS in the cloud. TFS was introduced in 2006 while Team Foundation Service was launched in 2012. Every few weeks, new features appear in VSO as the TFS product group wraps them up in their internal development iterations.

- The process template is what defines your workflow: what your work items are called, what states they go through as you work on them and other metadata. You can choose between three templates: Scrum, Agile and Capability Maturity Model Integration (CMMI).

If you’re an agile team, or you don’t have a particular process, choose between the Agile and Scrum templates. The biggest difference between the two is how they handle bugs and what name they use for backlog items. The Agile template treats bugs as tasks, while the Scrum template displays them on your backlog along with other backlog items. If you aren’t sure, stick with the Scrum template -it’s the default for a reason.

- Choosing the Scrum template doesn’t mean you have to do Scrum; it simply means you’ll see Scrum terminology used for work item types. Scrum refers to requirements as Product Backlog Items (PBIs) and the Agile template refers to them as User Stories.

- VSO works with non-VS IDEs as well

- Advantages of using VSO hosted build
  ~ Build doesn’t require custom installation of dependencies
  ~ One build at a time
  ~ Build takes < 1 hour to run
  ~ Build process uses < 75GB total storage
  ~ Build process doesn’t need administrator privileges

- Advantages of automating builds
  ~ Quick feedback
  ~ Consistency
  ~ Continuous integration
  ~ Continuous deployment

- VSO provides access to full-featured load testing as a service that runs on Microsoft infrastructure

- OpsHub VSO Migration Utility tool can be used migrate from on-premise TFS to VSO

- Free VSO monthly benefits include:
  ~ Automated hosted builds:60 minutes
  ~ Cloud load testing: 15000 virtual user minutes

- Visual Studio Online Application Insights collects rich operational, performance and customer usage information from your applications—whether they run on-premises, in Windows Azure, at third-party cloud providers, or in a hybrid manner across all three.

- Application Insights discovers dependencies, shows you when you’ve made new deployments and aggregates all of the performance information to give you the top 10 slowest parts of your application.

Labels: ,

Search all your ebooks with a keyword by putting them on Google Drive

Tuesday, November 18, 2014
If you research a lot and have a large collection of ebooks, you can search within those books first  before hitting the Web to search from external resources. If you upload these ebooks onto Google Drive, it will index the content for you. So when you have to search with a keyword, instead of searching each ebook individually you can use the search box within Google Drive.

Google Drive was able to fetch results for a specified keyword from an uploaded ebook, even though I didn't ask for it to "Convert text from PDF and image files to Google documents".

The "Convert text from PDF and image files to Google documents" feature only works PDF files less than 10MB in size.
I found it annoying that Google doesn't validate the file size immediately upon upload but rather accepts the upload & then informs that it cannot convert thereby wasting bandwidth.


This Week I Learned - Week #84

Saturday, November 15, 2014
This Week I Learned:

The beta of Netscape version 6.0 was released almost three years after version 4.0 - an awfully long time in the Internet world. There never was a version 5.0.

- Python 3.0, also known as “Python 3000” or “Py3K”, is the first ever intentionally backwards incompatible Python release.

toastr jQuery notification plugin was simple to setup & deploy compared to iGrowl as it doesn't have too many dependencies. The CSS & JS files for toastr are available on CDN JS.

- The 219 million mobile-only users now make up close to 20% of Facebook's total user base.

- Facebook mobile advertising now represents 41% of its overall ad revenue.

- The Building Apps for Windows blog recommends optimizing apps to run on low memory phones, with 512MB or less, as these devices generate roughly 60% of phone downloads.

- The ISO-8601 Date format: YYYY-MM-DDTHH:mm:ss.sssZ is supported by JavaScript. It is endorsed by W3C, RFC3339 & XKCD. ISO8601 contains all the information to be understand by human and computer and does not relies on the beginning of the computer era (1970-1-1)

- According to a US Department of Agriculture report, 21% of food at the consumer level went uneaten.

- United States is the world's largest consumer and producer of beef.

- Americans eat a lot of meat but still spend just 11 percent of their income on food, less than people in many other countries.

- Millet ranks with buckwheat and quinoa as one of the great ancient grains. It is high in protein. It needs little water to grow and can withstand drought and extreme heat.

- Plasmodium, the parasitic protozoan that causes malaria manipulates the behavior of the host mosquito to become blood shy while it is developing and when it is ready to enter a human host, it drives the mosquito to become blood thirsty and foolhardy - National Geographic

- Among the top IT services providers in India, HCL Technologies is so far proving to be the most efficient when it comes to revenue productivity. In 2012-13, it employed 18,270 staff for every billion dollar in revenue. Infosys required 21,202 employees, Wipro 23,480 and TCS 23,810 for every $1 billion in the top line. Since the end of 2007, India's largest standalone BPO, Genpact, has reduced the number of employees needed to earn $1 billion in revenue by over 10,000 to 29,577. - Economic Times

- The Reserve Bank of India’s directive to Uber to change its payment method will lead to a 120X increase in its potential user base. By utilizing Paytm's wallet service, it can potentially reach out to 600 million people who have a bank account with net-banking facilities whereas earlier it was accessible to just five million Indians who own a credit card.

- There are 1.5 lakh autorickshaws in Greater Hyderabad

Labels: , ,