Showing posts with label puri. Show all posts
Showing posts with label puri. Show all posts

Friday, November 22, 2019

[Stop, Pause, Re-Start] Future Topics on this Blog!

This Blog has been Silent for a Long Time (Actually, I Wrote a Blog on 03-Jul-2018 Titled "Future Topics on this Blog", But I Could Never Write any Entries as per the Plan Mentioned There). The Most Active Time Period on the Blog were the Year(s) 2014, 2015, 2016, 2017. 

Beyond this, I ran my Own Startup with the Name Vajrin Software, Bangalore. The Startup Could Not Succeed and I Moved to a Senior Architect (Java/Java EE) Position in a IT Products Company in Philippines via a Staffing Firm, in the Travel Domain. After a Very Short Stay, I was Back as a Head of Product Engineering in a Bangalore Software Company in the Employee Transportation Domain. From February 2017 to July 2019, I also traveled to Malaysia, Nepal, Bhutan, Thailand (2 Times), Myanmar, Singapore and Indonesia/Bali. The Above is the Career Story from February 2017 to July 2019.

Taking a Job Break and Having Lost 20 Kgs of Body Weight from June 2019 to November 2019, I have joined as a Senior Product Development Manager at Ultria Software Private Limited, Bangalore. With Last 7 Designations/Roles the String Arc  It is a Small Sized Firm with Big Customer Names, Just Like my Previous Employer. Hope to be Stable Now in this Position! Still on my Way to Lose Another 10 Kgs to be Truly Agile! :-) ;-)
 
This Blog will now really have Regular Updates and Entries from abut December 2019. I wanted to give a heads-up to all, the Topics on which I plan to Blog in the next one year. These Blog Entries will arise out of my Daily Office Work, Professional Certification Preparation (Big Data and Hadoop Architect Master's), Udemy Courses and Self-Learning of Various Core Java and Jakarta EE Topics. Also, Few of my Articles may Get Re-Published in Popular Developer Sites like DZone, Ulitzer and Java Code Geek. The Crux of the Entries will be in Microservices, Spring Boot, Software Architecture, Java 9 Concurrency, Java 9 Modularity, Java 10/11/12/13. With Around 15.5+ Years of Professional Software Experience, I will start delving into User Interface with Angular 8, Node.js. Even though late into the world of Apache Kafka, NoSQL, MongoDB world, I hope that my Articles Count! I also will write articles in Machine Learning, Innovative Product Design and Development, Intelligent Agents and Data Mining. I am heavily invested into Udemy, with a Target to Complete 14 Course Titles in about 3 Months!

So, The Most Probable List (Subset of Below) of Topics in the Coming Future:
  • Microservices Architecture (Architect, Developer)
  • Java 8 : Lambdas (Developer)
  • Master Lambdas in Java 8 (Advanced Developer) 
  • Java 9 : Modular Programming (Developer)
  • Java 9 : Concurrency (Developer)
  • Java 9 : Advanced Concurrency (Advanced Developer)
  • MongoDB : NoSQL from Scratch (Developer)
  • Apache Kafka for Beginners (Developer)
  • Java 8, 9, 10, 11, 12 (Architect, Developer, Manager)
  • Angular 8 - Complete Guide (UI Initiation)
  • Model Driven Architecture (Architect)
  • AWS Fargate, ECS, Spring Boot (Developer)
  • Kubernetes for Beginner (DevOps)
  • Microservices with Spring Cloud (Developer)

Also, The Future Blog Entries (Subset of Below) will be From Below Topics: 
  • Introduction to Big Data and Hadoop Ecosystem (Architect, Developer)
  • Introduction to Docker (Developer)
  • Introduction to Apache Spark and Scala (Developer)
  • Big Data and Hadoop Administration (Architect's Point of View)
  • Introduction to Apache Storm (Developer)
  • Introduction to Apache Kafka (Developer)
  • Introduction to Apache Cassandra (Developer)
  • Are Professional Certifications worth the Effort? (Professional)
  • Introduction to Machine Learning with Java (Developer)
  • Appreciation of the Java EE 6.0 Release (Architect, Developer)
  • Appreciation of the Java EE 7.0 Release (Architect, Developer)
  • Appreciation of the Java EE 8.0 Release  (Architect, Developer)
  • Java SE 9... What's New? (Code Samples) (Architect, Developer)
  • Java SE 10... What's New? (Architect, Developer)
  • Java SE and Java EE Roadmap and Versioning Strategy (Architect)
  • Functional Programming with Java (Code Samples) (Developer)
  • NoSQL, NewSQL and OldSQL - Needs and Motivations (Developer)
  • Appreciation of Service Oriented Architecture [SOA] (Architect)
  • Reusable Software Components (Java/Jakarta EE)
  • Understanding/Detecting the OWASP Top 10 (Developer)
  • SQL and Database/RDBMS Optimization (Developer)
  • SKP's Hardware/Server Sizing Calculator for Enterprise Java (Architect)
  • Innovative Software Product Design & Development - 02/10 (Product Development)

I hope to add few more to the above list as time goes on. I hope that many of the articles are selected and re-published on DZone, Java Code Geek and Ulitzer, so that many more in the Java Development Community benefit from my knowledge. 

The first blog entry from the above list should be here by December 2019. Until then, Happy Times with Core Java and Jakarta EE! 


 
 

Thursday, October 29, 2015

Top Ten Programmers of All Time [Sumith Puri's List]

My 'Personal Greats List' from what has been part of my life for the last 20 years [1995-2015] - Programming!
 
 
Parameters [Timeline of Impact]
Technical Impact of Creation [Lifelong]
Business Impact of Creation [Lifelong]
Competitive Programming [Till Date]
All-Round Achievements [Lifelong]

Programmers [Major Contribution - Nationality - Affiliation] 
01. Dennis Ritchie [B, C - U.S.A - Bell Labs/Dead] 
02. Brian Kernighan [Unix, AWK, C - Canada- Princeton University]
03. Bjarne Stroustrup [C++ - Denmark - Morgan Stanley]
04. James Gosling [Java - Canada - Liquid Robotics]
05. Linus Torvalds [Linux - Finland - Linux]
06. Ken Thompson [B, Unix, Go - U.S.A - Google]
07. Donald Knuth [Algorithms - U.S.A - Stanford]
08. Petr Mitrichev [Competitive - Russia - Google]
09. Gennady Korotkevich [Competitive - Belarus - ITMO]
10. Bill Gates [Microsoft - U.S.A - Microsoft]


 
Do you agree with me? 
If not, your comments along with your own personal list (if any) would be really appreciated.

Tuesday, February 3, 2015

Tic-Tac-Toe (Minimax Algorithm) in Java

I Implemented the Classic Two-Player Tic-Tac-Toe using Minimax Algorithm in Java.

You may Download it From Here and Modify as Required.

Do You Wanna Play It Now? I Built an User Interface For This > Can You Beat Me? Hope to Port This, To Be My First Android App Ever in Life! Wait for Updates. 
 

Sunday, March 23, 2014

Information Chaos/Information Engineering/Information Sanity Principles

An Extract from my Paper - "The Socially Acceptable Social Networks: A Reality Check for Information Engineering on the Internet"
 
Working Copy of the Paper - National Journal for Computer Science and Technology, Volume 5, Issue 1 (2014) - Narsinbhai Institute of Computer Studies and Management, Gujarat, India
 
 





1. Bifurcation
This applies to any form of temporary or virtual infor-mation divergence. Though this would apply to mainly the entry points at the internet like search engines, social networks, directory or ecommerce listings. Although, this can be applied to larger sets of data, it can also be applied to logically related subsets. One example would be to de-duce and apply context to each type of information searches. This would ensure that there is a clear demarca-tion of the type of data actually available. Another aspect would be to use behavior of the user to induce relevance to a user workflow. This aspect has to be implemented through configuration or centralized information exchanges between various participating or critical web-sites. In general, a repository that could hold every netizen’s usage habits or information would be the per-fect sub-solution to bifurcation.

2. Prevention
There are enough mechanisms in place to loosely prevent out of track information to be added to a given set. This applies to simple form data, images, documents, videos, music and even multiple other data forms. But using more efficient robotic analysis, we should be able to prevent multiple situations such as terrorism, adult content, religious violence and racist remarks. These rules should be made available through an efficient regulatory body depending upon the type of the site. Also, this would help in reducing information chaos by not allow-ing unwanted, automated or non-context information to build up. Apart from this, this would clearly help in easing the process of Bifurcation of information. Regulated Prevention would also mean that we are able to provide a uniform barrier in the cyber society.

3. Reporting
The simplest and most remedial measure to counter multiple information issues on the internet is to introduce more effective cyber policing. This needs to be enforced first by making available relevant information for reporting to the user. Also, an ordinary user must have ready tools and links to use reporting mechanisms. These mechanisms need to be appropriately placed at locations that are accessible and can be followed to create detailed descriptions for more analysis. Also, by creating a newer wing of current cyber reporting or analysis mechanisms that are swifter in action, whether online or on ground – we are removing fear from the users.

4. Classification
Governments all across the world, especially while form-ing cyber laws for the newer internet have to now follow stricter registration procedures for internet. This may in-clude web startups, dotcoms, information sites, social networks or even academic websites. This will help in curbing non-genuine sites, fraudsters, scammers and malware sites.  By allowing city, state, zonal, offline, online and national ombudsmen; we will be able to quickly enforce policing. Apart from these, by allowing a dedicated team of internet information providers, that track live information; we will be able to classify information with much ease. Also, as time progresses, we should not allow a very easy domain registration and hosting process – that does not involve the ombudsman. The additional task of each ombudsman office would be certification, classification, ranking and maintaining historical data of its zone.

5. Relevance
Software Engineers and Architects should use novel practices to create more relevance in the type of data that is accessible to the user. With stricter laws in place, we should provide only the right type of data operating within a context. Apart from this the engineers should be able to maintain a pool of intelligent information within their own applications or software. This will allow them to retire data sets that may not keep in line. They may also choose to provide this data to other developers. By automating most of the other tasks that are related to bifurcation, prevention, classification and reporting – they would be engineering more relevant software and thereby the internet. Software and Internet Architects will be required to co-ordinate and also obtain relevant certifications for their own properties. They also need to envision a way wherein the software implementers can implement all of the required policies with greatest ease. The software would also need to have standard integration points to quickly circulate information around common or related websites.

We can classify the problems that are solved as under and curb information mess and also curb anti-patterns from forming.
 
Bifurcation
        
Irrelevance, Non-Context Info, Malware, Adware, Ad Driven Linking…

Prevention        
Underage, Adult, Unsolicited Requests, Religious Violence, Profanity, Racism…

Reporting        
Bullying, Financial Frauds, Misleading Mails, Chain Mails, Terrorism, Frauds… 

Classification        
Pay for Click, Pay for Visit, Unsolicited Meeting, Phishing, Scam…

Relevance        
Identity Theft, Misconduct, Irrelevance, Racism, Threaten…

I envision that the future of internet, cyber laws, information security and governance and will be very closely based on these ideas. I term these principles as either of these, depending on the point of view: Information Chaos/Information Engineering/Information Sanity Principles.