JavaScript Unit Testing
There are many unit testing frameworks available for client-side testing of Javascript. JSUnit, QUnit and JsTestDriver. If you are not unit testing your code then maintenance and troubleshooting of issues for your site becomes much more difficult. When a change or new functionality is added, unit tests allow programmers to identify if the changes affect any other aspects of the code therefore catching bugs before deployed. There are many frameworks available to unit test for different tiers of an application. In this blog entry I found, it discusses how to use JsTestDriver to create unit tests for Javascript. Please visit this blog for more information.
Learn Regex in T-SQL
A regular expression is a special text string for describing a search pattern. Commonly abbreviated as regex and regexp you can think of regular expressions as wildcards on steroids. You are probably familiar with wildcard notations such as *.txt to find all text files in a file manager. The regex equivalent is .*\.txt$.
In computing, a regular expression provides a concise and flexible means to "match" (specify and recognize) strings of text, such as particular characters, words, or patterns of characters. A regular expression is written in a formal language that can be interpreted by a regular expression processor, which is a program that either serves as a parser generator or examines text and identifies parts that match the provided specification.
A great place to utilize regular expressions is in T-SQL queries. Sometimes when searching for specific records an equality match is not always the best performing query. With regular expressions you can search for records more efficiently and better chance of selecting the desired records. To learn how to implement regular expressions with queries and stored procedures in SQL Server, please visit http://www.pocketjoshua.com/sql-journal/learn-regex-in-t-sql-kick-as2ass.html.
Using OpenCV for use in Optical Character Recognition (OCR)
Optical character recognition (OCR) is the mechanical or electronic conversion of scanned images of handwritten, typewritten or printed text into machine-encoded text. It is a form of data entry using physical forms as a data source, like documents, sales receipts, mail, or any number of printed records. OCR is a field of research in pattern recognition, artificial intelligence and computer vision. This is the technology long used by libraries and government agencies to make lengthy documents quickly available electronically.
OpenCV (Open Source Computer Vision Library) is a library of programming functions mainly aimed at real time computer vision, developed by Intel and now supported by Willow Garage. It is free for use under the open source BSD license. The library is cross-platform. It focuses mainly on real-time image processing. If the library finds Intel's Integrated Performance Primitives on the system, it will use these proprietary optimized routines to accelerate itself.
I had the pleasure of attending a user group meeting provided by Philly PUG in which Jim Snavely shared his project where he used the python interface provided by OpenCV. His project is available for download for anyone to browse and see how he used the OpenCV library to clean his images to match his pattern recognition within the images captured by a smartphone.
7 Rules for Making More Happiness
Stefan Sagmeister gives a very good TED talk based on his idea that happiness is doing more things that I like to do and less things that I don't like to do. He gives these tips for making more happiness through these 7 simple rules:
- working without pressure (healthy deadlines)
- travelling to new places
- use wide variety of tools and techniques (not only a computer)
- doing projects that matter to you (being closer to content)
- getting feedback from people
- making things that look well (having end results)
- doing projects that are partly familiar and partly new
And make a habit of keeping a diary. It supports personal development like no other tool. To view the entire TED talk please view here.