Botnik - The Intent Network
Botnik app is kind of an intent network where you just tell the botnik what you wanted and have it figure out how to get it. Botnik does the shouting, connecting and analyzing for you.
Branch Tracker is an Enterprise Mobile application designed for in house communication for a leading bank in Malaysia. With their growing branch network and human resources, our client was facing challenges every day with slower communication among their internal team and we want to make the access to all their network fast and easy.
What is Node.js
Easy to Learn
Code Re-use At Every Level: Browser, Backend & Database
Taking this one step further, we can standardize the include mechanism to actually reuse code and modules across the layers. This means all layers can include the same file, massively reducing the maintenance need of code and cutting down the time required to write tests.
Event Driven Programming
The beauty that Node holds is in the model of event based programming with no blocking I/O. Node.js is all about making low latency, event driven, concurrent web applications. Being asynchronous in nature, Node.js takes up way less resources allowing developers to get out a lot from fewer servers, not allocating any resources while it waits for a response.
Other languages like Erlang used by Facebook Chat and Tornado used similar architectures but Node allowed developers to use the language they already knew to perform server side development.
Node.js if used right can be one of the fastest web server available for low latency web applications. Unlike other platforms like PHP with Apache, every PHP page being served leaves the PHP execution to a specific child process. Since every child process can handle one request at a time, other incoming requests have to wait. Mostly the maximum number of child requests are configured at the web server end, developers usually get stuck identifying the right balance between maximum numbers of concurrent requests versus resources available.
Node.js running V8 at its heart is potentially 30% faster than a PHP request. But since every request is one single thread on the server, there is no inter process communication making Node.js more memory efficient.
Strong, Responsive and Enthusiastic Community
With new technologies being introduced to the market every now and then, the community that drives it plays a pivotal role in establishing it as a preferred platform for development. Node has an excellent community which contributes with new enhancements and modules to use and produce results in no time.
IRC, meetups, bloggers, Twitter and Github are all alive with the chatter and support of Node.js. But not only are they alive; there is an excitement which you don’t normally see on this scale.
Number of large companies like Microsoft, Linkedin, Yahoo, Ebay and Wallmart have already adopted Node in their products. Linkedin has seen some great results in high traffic with fast updates happening on their Home page.
Setting up an application with REST services works like a charm with Node.js. Modules like Node.js Express developers can generate high performance web handlers/methods in no time.
Node.js Management system (NPM) package is as good as it gets. Scalability wise applications written using Node can keep thousands of connections open with clients while performing data persistence. Few Famous modules are mentioned below:
- Express: Web application framework for node.
- Request: Simplified HTTP request method.
- Socket.io: It aims to make real-time apps possible in every browser and mobile device, blurring the differences between the different transport mechanisms.
- mongodb-native-driver: mongodb driver for node.
- Winston: A multi-transport async logging library for node.
- Passport.js: Simple, unobtrusive authentication for node.
- Node-mailer: An easy to use module to send e-mails with node.
- Forever: A simple CLI tool for ensuring that a given script runs continuously.
- Ql.io engine: A declarative, data-retrieval and aggregation gateway for quickly consuming Http APIs.
Wealth of Hosting Options
There are various cloud hosting options available like SmartMachine, Heroku, Nodejitsu, Amazon EC2, Windows Azure which help our customers host their solutions in cost effective way.