Posts

Showing posts from January, 2014

Dictionary Bookmarklet

Image
Peter Coles has published a simple Dictionary bookmarklet that would let you highlight a word on a page and get a definition for that word in a popup. It used to make use of the mobile version of Google which doesn't work anymore. Just replace the references to http://www.google.com/m/  in the code with http://m.bing.com/search  and the bookmarklet will work! Use this modified bookmarklet - Define  if you don't want to meddle with the code. Drag & drop that button to your Bookmarks toolbar. You can also adapt the bookmarklet script to work with any other online dictionary that uses a querystring in its URL via a HTTP GET request to fetch results for submitted keywords. If you don’t highlight a word ahead of time, it let’s you type in any term you want. Even if the word doesn’t show up in the dictionary, Bing should hopefully return some relevant results. Also see:  Fastest dictionary on the web - thefreedictionary.com

Putting the jqPagination jQuery Plugin to work

Image
The Financial Literacy Agenda For Mass Empowerment (FLAME) website has been publishing useful tips which they call "mantras for for financial success" through simple and colorful illustrations in the Indian print media. I ran into an image from their website but they were not all at once place. Their URL naming convention for the images makes it easy to loop through the entire collection. Having used jqPagination, an easy to use jQuery pagination plugin recently, I felt it would make it easy to navigate through all the images in that illustration series. Check it out and take a look at the code as well. Also see:  Client-side paging with jQuery

Striking a balance among non-functional requirements

Building a website requires striking a balance between non-functional but essential features like performance and security. The article  When Design Best Practices Become Performance Worst Practices  lists 3 design best practices which are performance worst practices, solutions to fix them and some interesting performance facts: Images comprise more than half of a typical page’s total payload, and much of this bulk is unnecessary. Image compression is a basic performance technique that allows developers to reduce this payload Progressive image rendering improves perceived load time because the user receives visual feedback earlier than with a baseline JPEG. According to Google, pages should ideally render content  above the fold  in one second or less, even for smartphones. According to the article, the consensus in the performance community is that if you’re serving your primary content in three seconds or less, you’re doing okay, if not great. Among the top 100 online retailers

Snapdeal lets you find product prices via SMS

Image
If you wanted to check the approximate price of a product while you're on the move and without a reliable Internet connection on your mobile, you can send a text message to 9278992789 with the product name or a specific Snapdeal item code (like "SDL543624189") to know its price on the Snapdeal website. Snapdeal claims to be among the first to sell solar appliances and auto products (including scooters and motorcycles) online. Life Insurance Corporation of India provides a similar service for policy enquiry, product query, registering of complaints for a specific policy by allowing customers to send a text message in this pattern - 'SMS "LICHELP < policy no >" and send it to 9222492224. On their website it also advertises this alternative pattern -  ASKLIC < policy no > PREMIUM/LOAN/BONUS/REVIVAL/NOMINATION" to be sent to the same number 9222492224 Also see: Amazin' Amazon.in delivers in a day HOW TO send an email via SMS (wor

TWIL - Week #42

Image
This Week I Learned: Flickr Camera Finder   is a crowdsourced tool that uses the “Exif” data from all images uploaded to the service and creates analytical tools based on that information. The brain behind Duolingo (the free language learning site/app) is Luis von Ahn, 34, a boyish-faced computer science professor at Carnegie Mellon University. Sometimes called the father of crowdsourcing, he’s best known for inventing the CAPTCHA....Google bought his company, reCAPTCHA, and uses your free labor to verify hundreds of millions of words from books that its scanners can’t parse. Source - Forbes While Duolingo offers free language (currently five) courses, the Government of India funded Central Institute of Indian Languages offers paid courses  covering 3 languages - Kannada, Tamil & Bengali, through their badly designed website.  Duolingo expects not only to cover its $500,000 in monthly costs but also to book its first profit this year. With around 8 million monthly active users

Practical ASP.NET MVC 4 Projects with explanation

A good way to learn more about ASP.NET MVC 4 is by checking out practical code samples: Imar Spaanjaars' article series on building a N-Layered application using ASP.NET MVC 4 and Entity Framework 5 Code First is pretty detailed. Scott Allen's OdeToFood application & video tutorial 6-part article series by Nikolaos Kantzelis on building an ASP.NET MVC 4.0 application with Visual Studio 2012, C#, EF 5.0 (Code First)    Kud Venkat has published a 100-part video tutorial series on YouTube . Each task-based tutorial covers a specific aspect of ASP.NET MVC 4 with a code sample. There is now a  NerdDinner 2.0 opened by Visual Studio 2013 Related:  Comparing ASP.NET MVC tutorials: OdeToFood, Nerddinner, and MVC Music Store

Siri, meet Bing (Cortana)

Image

HOW TO extract subtitles from YouTube videos as plain text

Image
Most questions in the Google Webmaster Central YouTube video channel are answered by Matt Cutts. The questions are very interesting but the answers are available only in video format. You have to watch the video which is of around 2 minutes to know the answer. While the background that Matt Cutts provides is educative, even 2 minutes is a lot of time if you need a quick answer and when you are on a low bandwidth internet connection . So I started compiling short answers to build summaries of Google Webmaster Central YouTube videos . I noticed that these videos have captions and I realized that I don't even have to watch the video to know the question and answer. It is possible to extract subtitles from YouTube videos  by specifying the language and VideoId in this generic URL - http://video.google.com/timedtext?lang={LANG}&v={VIDEOID} . [Update - 2022] YouTube now automatically generates a transcript & timestamp  that  can be toggled For instance, instead of watching a

#TWIL - Week #41

Image
This Week I Learned: Web To make a YouTube video occupy the entire browser dimensions, modify the YouTube link from http://www.youtube.com/watch? v = xxxx or similar to http://www.youtube.com/ v / xxxx Amazon is larger than the next dozen largest e-tailers—COMBINED ! 77% of Fortune 500 organizations now have an official social team and presence, according to the University of Massachusetts Dartmouth. The Target and Neiman Marcus data breaches happened despite the requirement that companies accepting credit and debit cards adhere to a Payment Card Industry standard for security known as PCI-DSS . Source - Wired Google’s street view cameras have recorded hundreds of millions of panoramic images that together contain tens of millions of house numbers. The task of searching these images manually to spot and identify the numbers is not one anybody could approach with relish. So, naturally, Google has solved the problem by automating it...Their method turns out to rely on a neural n

Book Review - Exam Ref 70-487: Developing Windows Azure and Web Services

Image
Whether or not I take a Microsoft Certification exam, I like going through the Microsoft Press exam training guides as they are written to a practical learning plan (the curriculum  of the exam) and usually cover the most essential topics related to a subject without wasting your time. The writing is usually tight and the information presented is crisp and concise. I'm a fan of these Microsoft Press exam training guides but I was disappointed with the book Exam Ref 70-487: Developing Windows Azure and Web Services as it doesn't have the regular attributes. I found it weird that the authors in several instances raise a point and then say its beyond the scope of the book. I don't understand why they mention that point at all? The book's content is verbose with personal opinions, rants & irrelevant details and leaves out explanations where they may be useful. On the Parse & TryParse methods of CloudStorageAccount: You can, and probably should, use the TryPa

TrainEnquiry.com which shows status of running trains, gets an overhaul

Image
Trains are easily the cheapest way to travel long distance in India. Though the punctuality of trains has improved over the years, there is no guarantee that even the trains at the top of the hierarchy won't be late by several hours.  TrainEnquiry.com can help you track a train’s location status though not in real-time. Knowing when a train will reach a particular station is helpful in many ways - it can help you book a cab while you're on the train while timing it with time of arrival at the destination, you can plan your commute time to the railway station if you had to pick up visitors. The  TrainEnquiry.com  website has undergone an overhaul but it is still unfriendly, un-intuitive & cluttered. The links (shown with arrows in screenshot below) which actually show the status don't stand out. Now - the site in 2014 Then - before the overhaul Possibly because a lot of App developers scrape data from the site or there are heavy automated calls t

HOW TO make an automated call to a web page with Windows Azure Scheduler

Image
If you're looking for a way to trigger a maintenance task through a web page or track if your site is up (without relying on third party services like Pingdom), you can make use of the Windows Azure Cloud Service, Scheduler features (currently in Preview mode). For instance, this Generic Handler (.ASHX) to draw info from Yahoo Weather API & store the details in Windows Azure Table can be triggered by automated call to that page through Windows Azure Scheduler. The Scheduler can be accessed via the Windows Azure Management Portal or programmatic-ally through the  Scheduler REST API . Setting up an automated call is easiest  via the Portal but it has limited functionality when compared to the API. See more screenshots in the  MSDN article As Scheduler is currently a Preview Service , you have to first enable it before it shows up in the main page of the Portal along with the other Windows Azure Services. Windows Azure Scheduler allows you to invoke actions—such as c

Amazin' Amazon.in delivers in a day

I ordered a mouse on Amazon.in that was marked "Fulfilled by Amazon" to be sent by their regular delivery mode (their  Guaranteed One-Day Delivery option costs Rs 99 per order) and I received the package from Mumbai in Hyderabad the next day - in a little lesser than 24 hours! I also learnt a couple of things from the purchase. The delivery was processed by Amazon Transportation Services Private Limited, not a third-party courier company as some online shops typically deliver through. Currently, only a few sites like Amazon.in and HomeShop18 offer free shipping for (on at least some) products costing less than Rs 300-500. Flipkart doesn't sell any mice costing less than Rs 250 & the ones sold directly by Flipkart have a delivery charge for purchases less than Rs 500. After my experience with a few expensive mice purchased online didn't turn out well, I wanted to try one of the cheaper ones.  The specs of the USB-based  Intex Jaguar RB Mouse Optical  for Rs 1

I'm prepared to meet my Maker but...

Image
"Drawn" using RageMaker Also see: Vent your anger drawing your own "rage comics"

TWIL - Week #40

Image
This Week I Learned: Web Network and latency typically accounts for 70% of a site’s total page load time .Large data URIs inlined in render-blocking CSS are harmful for render performance; they are blocking resources where image URLs are non-blocking. Google reports that over 300,000 websites are currently using the PageSpeed module (or service) to serve WebP images to users. WebP is currently supported in Chrome and Opera on the desktop. Mobile support is limited to the native Android browser and Chrome for Android. WebP is not currently supported natively in any operating systems.  Users of Siri, Microsoft Bing, DuckDuckGo, Iris, and BlackBerry’s voice recognition software are all powered in part by Wolfram’s technology Everything else The U.S. is nearly alone in using Fahrenheit for weather. The United States is the only major industrialized country in the world that does not use the Celsius scale and the metric system as its predominant system of measurement. By 198

Browsing Time Tracker Bookmarklet

Image
There are quite a few services and browser extensions to track your browsing time. I liked the simplicity of  TimeTracker Bookmarklet It doesn't store the captured metrics or provide any reporting on the numbers like some of the commercial trackers do but that's fodder for a fun project. Also see:  The Joy of Bookmarklets

Real stories of site migration to Microsoft Azure Web Sites

The things you can do with a Windows Azure Web Site (WAWS) fascinate me. Some good folks take the time out to write about their migration experiences and I find them educational. I thought I should build a list to keep track of the interesting ones I find - Migrating WordPress from MySQL to Azure Web Apps and Azure SQL  (April 2015) weblogs.asp.net is now running on Orchard and Azure Web Sites (July 2014) - 750 blogs, all hosted in 4 Azure Web Sites all running on only one large virtual machine cost just 70 cents a blog per month to host. Shawn Wildermuth's experiences moving some of his sites to Azure Web Site  (May 2014) Doug Rathbone migrates his site to WAWS and its related database to SQL Azure  (Sept 2013) - "by default only machines within Azure's network can access your database, until you add exceptions to the rule within the portal" Brian Hitney migrates his Blog to Windows Azure Web Sites  (Aug 2013) Pete Brown  migrates his 10 year old site WAWS

The Udacity Mobile Web Development course has started

Image
I enjoyed going through the first three lessons of the Mobile Web Development course on Udacity and I highly recommend it to web developers and hobbyist programmers. It is a categorized as an intermediate level course but I feel a basic background in HTML, CSS & JavaScript is enough for anyone to get started. The course is taught by Google employees, Peter Lubbers & Chris Wilson - folks who are deeply experienced & passionate about web development. There are 12 lessons in all with quizzes in between. Though it is possible skip the quiz that follows a topic, the normal flow requires you to answer it before you can move forward - which is a good way to stay involved and reflect on what you're learning. Considering that this is a MOOC (Massive Open Online Course), the Forum for the course is abuzz with scores of questions and answers from participants across the world. Also see:  Free 42 episode video series on HTML5, CSS3, JavaScript for Absolute Beginners

My thoughts on the Flipkart eBooks app

Image
Flipkart sells eBooks only for readers in India. The eBooks are in a proprietary format. They can be read only with Flipkart's eBook reader app available from Google Play Store, Apple iTunes store, Windows Store or their online Web Reader. Interestingly, their 30 day replacement guarantee is also applicable for eBook downloads. Flipkart has a pact with Nokia to have this reader app pre-installed with select Nokia Lumia devices. Occasionally, you may get better deals in India from Flipkart on popular titles than you would on Kindle or ePub versions. They claim to have  70,000+ eBooks in the price range of Rs. 99 and below  and over 20,000 free eBooks.  Good titles however aren't easy to find in those categories. Better discover-ability of books and recommendations can make this ebook format more appealing to Indian book lovers open to go digital. I tried the Flipkart eBook Android app on my Nexus 7 tablet  and though it was not as slick as the Kindle app, it has mo

TWIL - Week #39

This Week I Learned: Web Netflix possesses not several hundred genres, or even several thousand, but 76,897 unique ways to describe types of movies .  poche is a free and open source self hostable read-it-later app like Pocket With so many website's user databases getting hacked, you should have not only have a separate password for every site you register on, but also a separate username across accounts so as to not give away your identity. In the alleged Snapchat data breach , the phone numbers of 4.6 million users have been exposed. So it may be a good idea to have a separate phone number for social media activities. Azure From the Windows Azure Web Sites FAQ - You cannot move one of your own sites from one subscription to another subscription nor can you can you move one of your own sites from one data center to another data center. You can use Windows Azure Web Site to not just host websites but also host a WCF Service   India The Indian Infosec Consortiu

HOW TO implement Authentication & Authorization using OAuth 2.0 Providers with ASP.NET WebForms

Image
I found the code sample in Blaize Stewart's video tutorial OAuth 2.0 Up and Running  (requires subscription) easy to follow for  implementing authentication & authorization using OAuth 2.0 Providers - Google, Facebook, Live Connect/Windows Live in a ASP.NET WebForms web application. The tutorial doesn't get into all the details so I'm jotting down what I picked from the official documentation of the OAuth 2.0 Providers (links are provided in the References section at the end), here. The original sample showed how to utilize OAuth 2.0 with Google & Facebook. Extending the same sample to work for Live Connect was easy. OAuth 2.0 is a standards based authentication and authorization framework on top of the HTTP protocol. There are more than a dozen services that support OAuth 2.0; the popular ones being - Google, Facebook Graph API, Live Connect, FourSquare, DropBox, SalesForce, GitHub This image from the Google's OAuth 2.0 documentation explains the workfl