Thursday, February 18, 2016

Algorithm Badge


As per my famous quote, IT professionals need to breadth day in and day out with software coding.

  •    Chef can't survive without Food
  •    Carpenter without Wood
  •    Software without Code

In the process of Continuous learning, evaluation & sharing, Industry provides so many free platforms on your choice:

  1. Hands-on interactive learning on emerging technology (using CodeAcademy, etc.)
  2. Learnt skill Validation (using HackerRank, TopCoder, LeetCode, InterviewBit, etc.)
  3. Bench marking with Industry Certification (Microsoft-.NET, Oracle-Java, Cloudera-Big Data, etc.)
  4. Sharing the (l)earning (CodeProject, Pulse, Blogspot, Wordpress, etc.)


I'm delighted to share the first milestone @ HackerRank.  Yeps.  Badge (Level-1 Completion) on my favorite area - Algorithm.

Just a recap.  HackerRank focuses on competitive programming challenges using problem statements and contests in different domains of Computer Science. Inspiring to solve interesting and challenging programming problems using itz platform.

HackerRank tech domain validates the depth & breadth of your technical skill.  Each problem statement is enjoyable and motivating to gear further. Interesting part is the completion of all test cases within 3 seconds :-

Software Professionals will generally agree that learning the latest and hottest set of technologies will help you advance your career and avoid getting left behind.  In addition, most of us know that specialization in one technology stack triumphs shallow knowledge in many others.

In spite of the industry saturation and high business/cost challenges, Software companies are always in high demand for the quality hands-on IT professionals.

With this motivation & interest, let me continue my passionate coding path.  Happy Coding all IT professonals !!!

Tuesday, February 16, 2016

Back to College


My Post Graduation in Computers, was done in April 1994 at Bishop Heber College, Trichy.  Last Saturday, I visited there after 22 years, in relation with the next year Golden Jubilee preparation.

Our Computers department, invited few successful (not sure, why I'm :-) aluminous to form the core committee.  In fact, my room mate Mr. Baskar is on the original invite.  As hez not around, my name was nominated as the replacement. 

Itz been a thrilling experience to enter the campus after a long time and to meet my batch mates, seniors, juniors, professors, etc.  More over, the flex banner of the visited alumni, is sweet and pleasant surprise.

Day starts with the informal gathering @ international hostel's breakfast. People can sense each other after few interesting events reference.  It was followed by the campus tour (with new infra, building, etc.) and Bishop and Principal introduction.  As college had the convocation on the same day, college staffs were bounded to be busy with those efforts.

On getting into the core event of the day - deliberation, we all assembled at the discussion room with alumni office bearers.  Fruitful points were elaborated around 4 areas namely society, technology, infrastructure and incubation.  The rich experience & expertize of this strong Alumni, emerged during the action points and ideas.  We end the day with the felicitation note from Principal and office bearers.  Itz not only friends gathering but also action oriented day.

Eagerly awaiting for the result during Aug 13th Golden Jubilee meet.  We plan to recognize the students and staffs on their achievements.  Looking for the day !!!

Sunday, February 14, 2016

Google Photo


Google announced it is shutting down Picasa in less than three months. The company is asking Picasa users to try Google Photos (https://photos.google.com/) for all their picture needs.

Google acquired Picasa from Lifescape in July 2004 and began offering it as freeware. “Picasa” is a mix of the name of Spanish painter Pablo Picasso, “pic” for pictures, and the phrase mi casa (Spanish for “my house”).

Picasa Web Albums and the Picasa Web Albums Data API (https://developers.google.com/picasa-web/) will continue working as normal until May 1, 2016. After that, users will only be able to view their photos, while developers will lose some API functions.

Google will stop supporting the Picasa desktop application sooner: on March 15, 2016. But if you have already have the software, it should continue to function — there just won’t be new updates anymore.

Google says it is retiring Picasa “in order to focus entirely on a single photo service in Google Photos.” The company added: “We believe we can create a much better experience by focusing on one service that provides more functionality and works across mobile and desktop, rather than divide our efforts across two different products.”

Right, but it was Google that created the redundancy in the first place. Google launched Google Photos in May 2015, providing a lot of overlap with the likes of Google+ Photos and Picasa.

As such, all your photos and videos in Picasa Web Albums will be moved to Google Photos. From there, you can continue to upload and organize your content, and really that’s the only place Google will support you doing so come May.
 

Thursday, February 11, 2016

Apple India


Following Google and Microsoft, Apple Inc is to open its first technology development centre outside the United States in Hyderabad, India.  It is anticipated to create 4,500 jobs for locals.

The California-based multinational technology development company will initially open its innovation centre in June and launch fully fledged operations by the end of this year. It plans to develop maps and make them available in its iPhones and Mac systems.

Google CEO Sundar Pichai, during his visit to India in December last year, announced that his company will open South Asia's biggest campus, and Google's only campus outside its headquarters in the US, in Hyderabad in the next few years.

Microsoft's Windows 10 was developed in Hyderabad, but it has been a global product now. Microsoft CEO Satya Nadella visited Hyderabad in December and announced plans to expand his company's operations in the state.

Is it so awesome to have Google, Microsoft & Apple in the same city - Hyderabad, INDIA?

Tuesday, February 9, 2016

CAKE


Cake (C# Make) is a cross platform build automation system with a C# DSL to do things like compiling code, copy files/folders, running unit tests, compress files and build NuGet packages.

Cake is built on top of the Roslyn and Mono compiler which enables you to write your build scripts in C#. Cake is available on Windows, Linux and OS X.

Cake uses a dependency based programming model just like Rake, FAKE and similar build automation systems where you declare tasks and the dependencies between those.  Cake also contains functionality to conveniently work with file system paths as well as performing common file/directory/environment operations, manipulating XML, parsing Visual Studio solutions, starting processes and more.

Supported functionality

  • MSBuild
  • Build systems
  • AppVeyor
  • AssemblyInfo patching
  • Release notes parsing
  • Unit Test Runners
  • xUnit (v1 and v2)
  • NUnit
  • MSTest
  • NuGet
  • Install
  • Pack
  • Push
  • Restore
  • SetApiKey
  • Sources
  • Update
  • ILMerge
  • WiX
  • NSIS
  • SignTool
  • Octopus Deploy
  • Compression (Zip)
  • File hash calculation (MD5, SHA256, SHA512)


Latest release Cake v 0.8.0 is released and the detail is available at http://cakebuild.net/blog/2016/01/cake-v0-8-0-released

Regardless if you're building on your own machine, or building on a CI system such as AppVeyor, TeamCity, TFS, VSO or Jenkins, Cake is built to behave in the same way.

Cake supports the most common tools used during builds such as MSBuild, MSTest, xUnit, NUnit, NuGet, ILMerge, WiX and SignTool out of the box.

Saturday, February 6, 2016

NATS


With 2 decades of my industry experience, I'm recollecting the initial days of nostalgia 'C' procedural coding @ Bell Labs, up to Today's highly distributed 'Spark' coding. To me, high performance at scale is critically important for anybody to build highly distributed systems, Today.

Why Communication is vital?
Three buzz words in Today's Architecture world
  1. API (Application Programming Interface) or Micro Service model 
  2. Highly distributed Cloud Infra
  3. IoT (Internet of Things) network of all devices

Today, the components of application have been built in Service Oriented Architecture (SoA), new term called API style.  As per Cloud theory, pieces of any given service might be spread across physical or virtual infrastructure. IoT thrives to comprise thousands or even millions of devices.

But, to the end user they need to operate seamlessly, as if they are one entity. This requires extremely fast (Performance), lightweight (Portable), always-on (Availability) communication.

What is NATS?
Open Source NATS is an extremely lightweight, and massively scalable Publish/Subscribe (PubSub) messaging system for Cloud Native applications, IoT device messaging, etc.  Home Page: http://nats.io/

History of NATS
NATS was originally created by Derek Collison as the messaging layer inside of Cloud Foundry, when he was designing that product. The original version of NATS was written in Ruby, but was ported over to Go. The Go implementation of the NATS server is called gnatsd, and immediately offered performance well in excess of Ruby-nats,  Brief video at:  https://ttps://blogs.msdn.microsoft.com/dotnet/2016/02/01/on-net-1262016-nats-with-brian-flannery-and-colin-sullivan/

NATS Objective
NATS is clustered mode, auto pruning of interest graph & text based protocol. Itz not intended as a traditional enterprise messaging system - you can think of it more as an ephemeral nervous system, that is always on, and always available.

By sticking to the core tenets of simplicity and speed, NATS - much like Go - provides an excellent foundation for delivering modern distributed systems at scale.

Core Principles
NATS supports 3 key messaging models as listed below:

1. PubSub
NATS implements a publish subscribe (PubSub) messaging model, with fire-and-forget messaging system. It means that if a subscriber is not listening on the subject (no subject match), or is not active when the message is sent, the message is not received

2. RequestReply
NATS supports two flavors of request reply messaging: point-to-point or one-to-many. In a request-response exchange, publish request operation publishes a message with a reply subject expecting a response on that reply subject. You can request to automatically wait for a response inline.

3. Queuing
Queue subscribers can be asynchronous, in which case the message handler callback function processes the delivered message. Synchronous queue subscribers must build in logic to processes the message.

Benchmark
Performance Comparison  (between NATS, Kafka, Active MQ, Redis, NSQ, RabbitMQ, etc) chart is depreciated with throughput payloads as shown in the attached chart.

As the most performant cloud native messaging platform, NATS can send up to 6 million messages per second. Are you ready to leverage throughput benefit from NATS?

Monday, February 1, 2016

Hadoop 10th Year



Doug Cutting - Father of Hadoop, well known person in Big Data Industry.
2016 marks the 10th Anniversary of Hadoop.

In his note, Dough mentioned that Ten years ago, digital business was limited to a few sectors, like e-commerce and media. Since then, we had seen digital technology become essential to nearly every industry.

Every industry is becoming data driven, built around its information systems. Big data tools like Hadoop enable industries to best benefit from all the data they generate. Hadoop did not cause digital transformation, but it is a critical component of this larger story.

Enjoy the exclusive video by Doug at https://youtu.be/XHz_R33QnsI

Happy 2 digit birthday to Hadoop !!!