Frequency modulation in gnu-octave : square wave carrier and sinusoidal message

Frequency modulation is a common analog modulation technique. Here the instantaneous frequency of the carrier wave is varied with the instantaneous amplitude of the message signal. That is the information regarding the message is available in the frequency of the carrier. It is a kind of more generic technique called angle modulation. [][1]Sinusoidal frequency modulation of square wave carrier Gnu-octave has built-in function fmmod() available in octave-communications package for implementing frequency modulation. But this function modulates the given message signal with a sinusoidal carrier of specified frequency. If we want the carrier to be a square wave as shown in the figure, the built-in function would not help. ...

May 31, 2014 · 3 min · Kavya Manohar

GSOC 2014 – Mentoring for SMC

I am a mentor for Google Summer of Code 2014 for SMC. I will be helping Praveen Sridhar to port input methods from jquery.ime to the Firefox OS. We started the project and Praveen already has a proof of concept ready. Tim Chien and Rudy Lu from Mozilla is co-mentoring the same project

May 25, 2014 · 1 min · Santhosh Thottingal

Parsing CLDR plural rules in javascript

English and many other languages have only 2 plural forms. Singular if the count is one and anything else is plural including zero. But for some other languages, the plural forms are more than 2. Arabic, for example has 6 plural forms, sometimes referred as ‘zero’, ‘one’, ‘two’, ‘few’, ‘many’, ‘other’ forms. Integers 11-26, 111, 1011 are of ‘many’ form, while 3,4,..10 are ‘few’ form. While preparing the interface messages for application user interfaces, grammatically correct sentences are must. “Found 1 results” or “Found 1 result(s)” are bad interface messages. For a developer, if the language in the context is English or languages having similar plural forms, it may be a matter of an if condition to conditionally choose one of the messages. ...

May 24, 2014 · 6 min · Santhosh Thottingal

Browser language preferences: navigator.languages is coming

Browsers provide an option to choose the preferred language a website to be shown, often named as “Accept language“. [][2]Firefox accept language preference These preference values allows websites to deliver a suitable language version to the user. For the developers, to read this value, the existing options is to check the Accept-Language http header value. It works and many websites use it already. But this value was never exposed at client side. Javascript cannot access the value of these preferences. There are many use cases where this is preferred. Handling i18n at client side is one of this. ...

May 17, 2014 · 2 min · Santhosh Thottingal

W3C Workshop at Madrid

I will be speaking at the upcoming W3C workshop at Madrid. The workshop is on 7-8 May 2014 and the theme is “New Horizons for the Multilingual Web”. I will be co-presenting with Pau Giner, David Chan from Wikimedia Foundation Language engineering team on best practices of translation at wikipedia. It will cover the design (from both technical and user experience perspectives) of the translation tools, and their expected impact on Wikipedia and the Web as a whole.

May 3, 2014 · 1 min · Santhosh Thottingal

A laboratory manual for basic analog communication experiments

I was in need of a manual for introducing the analog communication lab experiments to students who had no prior exposure to electronic circuits or analog communication techniques. Since I found no such book which matched my needs, I planned to prepare a laboratory manual which could help students with the basic understanding of electronic circuit theory to learn and experiment the fundamentals of analog communication techniques. ...

April 13, 2014 · 1 min · Kavya Manohar

Meera Tamil font in Ubuntu Trusty Tahr

Ubuntu Trusty Tahr is going to be released on April 17th 2014. Meera Tamil font, a free licensed unicode font for Tamil will be available in this release. The font is already available in Debian. In both Ubuntu and Debian you can install the font by sudo apt-get install fonts-meera-taml Thanks Vasudev for packaging it for Debian.

April 13, 2014 · 1 min · Santhosh Thottingal

Configurable node logger with winston

For an advanced logging system for nodejs applications, winston is very helpful. Winston is a multi-transport async logging library for node.js. Similar to famous logging systems like log4j, we can configure the log levels and winston allows to define multiple logging targets like file, console, database etc. I wanted to configure logging as per usual nodejs production vs development environment. Of course with development mode, I am more interested in debug level logging and at production environment I am more interested in higher level logs. ...

April 6, 2014 · 2 min · Santhosh Thottingal

Mediawiki moves to json based localisation file format

Mediawiki is moving from PHP array based localisation file format to json format. This is based on the RFC: https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format A lot of extensions were also migrated to the new localisation format, thanks to Siebrand Mazeland The json based localization file format was first introduced in our frontend javascript i18n library https://github.com/wikimedia/jquery.i18n If you are interested in seeing some of the sample json files see https://gerrit.wikimedia.org/r/#/c/122787/ , claimed as “largest patch set in the history of MediaWiki” ...

April 2, 2014 · 1 min · Santhosh Thottingal

Brackets, my favorite javascript IDE

I use Brackets for web development. I had tried several other IDEs but Brackets is my current favorite IDE. A few things I liked is listed below It is free software licensed under the MIT License written in HTML, CSS and JavaScript Availability of large number of extensions Some extensions I use with Brackets are: ...

March 30, 2014 · 2 min · Santhosh Thottingal