Wednesday, September 25, 2019

Non-Blocking/Asynchronous API(s) using Java 8 and above


A Good Style of explaining the evolution of Java API(s) to achieve Concurrency.

https://www.callicoder.com/java-concurrency-multithreading-basics/


Analogy/Use Scenario Visualization:
(*) If you are core busniess layer, who need to integrate with legacy Java components ( which are the actual workhorses ) and you are being called from upstream busniess layers, there is always a need for Asynchronous invocation.
This is where following article

https://www.callicoder.com/java-8-completablefuture-tutorial/
best explains concepts

Prerequistie : Java Lamba familarity, Supplier , Consumer , functional interfaces in Java 

Other Analogies:
1) SwingWorker in old AWT/applet kind of application 
2) Promise in JavaScript 
3) Work delegation and collating back (Typical Manager) 



Tuesday, March 20, 2018

Writing Application code is getting harder in the Software Industry

In 1990s
Write code to meet basic functionality.
* Optional to consider other software attributes
You were done.

In 2000s
Write code to meet basic functionality, using a MVC framework, so that extending/enhancing is modular and easy.
Are they platform independent and run on any browsers ?
* Optional to consider other software attributes
You were done.


In 2010s
Write code to meet basic functionality, using a MVC framework, so that extending/enhancing is modular and easy.
Are they platform independent and run on any browsers ?
Is application Web Security Compliant ?
Is application Internationalization Compliant ?
Is application Accessibility Compliant ?
+ Mandatory to consider other software attributes
You were done.


In 2020s
Write code to meet basic functionality, using a MVC framework, so that extending/enhancing is modular and easy.
Are they platform independent and run on any browsers ?
Is application Web Security Compliant ?
Is application Internationalization Compliant ?
Is application Accessibility Compliant ?
Is use scenarios Automated for testing ?
Is use scenarios Compliant for machine learning  ?
+ Mandatory to consider other software attributes
You were done.

So, your simple 'Hello World' or 'addition' program will mean a lot for getting it done, what it took 40 years ago.

Wednesday, September 6, 2017

Designing a database for multi-tenancy on the cloud

https://www.codeproject.com/Articles/51334/Multi-Tenants-Database-Architecture
https://purikl.wordpress.com/
https://msdn.microsoft.com/en-us/library/aa479086.aspx#mlttntda_topic1



https://www.codeproject.com/Articles/3435/Secure-Architecture-Design-Methodologies
https://www.codeproject.com/Articles/16105/A-Practical-Approach-to-Computer-Systems-Design-an



https://www.codeproject.com/Articles/124732/Software-Development-Methodologies


Monday, October 20, 2014

Brushing up Struts 2x MVC framework

=======================================================================================================


http://www.journaldev.com/2173/struts-2-actions-example-tutorial

http://www.journaldev.com/2230/struts-2-data-tags-example-tutorial
http://www.journaldev.com/2237/struts-2-control-tags-example-tutorial
http://www.journaldev.com/2266/struts2-ui-tags-example-tutorial


http://www.journaldev.com/2221/struts-2-ognl-tutorial-with-custom-type-converter-example
http://www.journaldev.com/2296/struts2-execandwait-interceptor-example-for-long-running-actions
http://www.journaldev.com/2281/struts2-token-interceptor-to-handle-double-form-submission-problem

http://www.journaldev.com/2178/struts-2-action-object-backed-and-modeldriven-example

http://www.journaldev.com/2274/struts2-action-errors-and-action-messages-example

http://www.journaldev.com/4490/primefaces-selective-components-checkbox-button-radio-button-tutorial

http://www.journaldev.com/2247/struts2-and-log4j-integration-example-project


=======================================================================================================

Other very good links to refresh your skills in IT industry and exposure.



http://www.journaldev.com/470/generate-qr-code-image-from-java-program

http://www.journaldev.com/1370/java-internationalization-i18n-example-tutorial
http://www.journaldev.com/2304/struts2-resource-bundles-and-localization-example

http://www.journaldev.com/2421/struts2-exception-handling-example-tutorial

http://www.journaldev.com/2513/tomcat-datasource-jndi-example-for-servlet-web-application

http://www.journaldev.com/1997/servlet-example-in-java-with-database-connection-and-log4j-integration


=======================================================================================================

http://www.journaldev.com/1240/java-xml-tutorial

http://www.journaldev.com/2544/java-csv-parserwriter-example-using-opencsv-apache-commons-csv-and-supercsv


=======================================================================================================

http://www.journaldev.com/2315/java-json-processing-api-example-tutorial

This links explains the type of JDBC driver.
http://www.journaldev.com/2471/jdbc-example-tutorial-drivers-connection-statement-resultset

=======================================================================================================

http://www.journaldev.com/2509/jdbc-datasource-example-oracle-mysql-and-apache-dbcp-tutorial


=======================================================================================================

http://candidjava.com/struts-2-datepicker-example-and-tutorial

=======================================================================================================

Thursday, March 21, 2013

Typical voice features jargon.

Typical voice features jargon.





Courtesy Wikipedia
http://en.wikipedia.org/wiki/IP_PBX

Tuesday, March 19, 2013

Linux Commands Revisited Open projects Revisited Documentation style Revisited


Over the past nine years of my IT experience, I find redundant/obsolete  knowledge getting on my nerves .
I end up bookmarking a lot of them not making it any use and ultimately getting Google search for my rescue.

The following are few links that I really felt are very useful against my exposure and commands that I used in past to get things done.

10 Examples of Linux Free Command 10 Command Line Tools to Monitor Linux Performance 20 Practical Examples of RPM Commands in Linux 18 Tar Command Examples in Linux 15 Basic 'ls' Command Examples in Linux 12 Tcpdump Commands - A Network Sniffer Tool 10 Wget (Linux File Downloader) Command Examples in Linux 8 Pratical Examples of Linux "Touch" Command Basic Guide on IPTables (Linux Firewall) Tips / Commands 10 Useful du (Disk Usage) Commands to Find Disk Usage of Files and Directories 20 MySQL (Mysqladmin) Commands for Database Administration in Linux Install Fping ICMP Program on RHEL/CentOS 6/5/4 15 Useful "ifconfig" Commands to Configure Network Interface in Linux How Do I Access or Mount Windows/USB NTFS Partition in RHEL/CentOS/Fedora 20 Netstat Commands for Linux Network Management A Basic Guide to Different Stages of Linux Boot Process 25 Useful Basic Commands of APT-GET and APT-CACHE for Package Management 20 YUM Commands for Linux Package Mangement Block SSH Server Attacks (Brute Force Attacks) Using DenyHosts 35 Practical Examples of Linux Find Command

Code reuse from existing projects and integration becomes important skill

Some cutting edge ones out here
red5 - RTMP, VOD, SharedObjects, live video broadcasts, AMF0, AMF3 Compatible, remoting and the list goes on - Google Project Hosting google-guice - Guice (pronounced 'juice') is a lightweight dependency injection framework for Java 5 and above, brought to you by Google. - Google Project Hosting wro4j - Web Resource Optimizer for Java - wro4j - Google Project Hosting goda-time - GWT port of Joda-Time - Google Project Hosting rome - ROME: Robust Optimization Made Easy - Google Project Hosting Jersey— Java.net grails-jaxrs - JSR 311 plugin for Grails - Google Project Hosting javamelody - monitoring of JavaEE applications - Google Project Hosting - USEFUL TOOL -- jconsole on web gwtuml - A UML modeller based on GWT - Google Project Hosting mobicents - Open Source Cloud Communications - Google Project Hosting TeleStax – Open Source sipservlets - Mobicents SIP Servlets Leading Open Source Implementation and HTML5 WebRTC Compliant SIP AS - Google Project Hosting fest - Fixtures for Easy Software Testing - Google Project Hosting javabuilders - On a mission to maximize Java UI development productivity - Google Project Hosting resting - Lightweight Java component to consume REST service and transform response into objects - Google Project Hosting

Documentation becomes key in marketing your product.
A good style is only followed by RedHat

https://access.redhat.com/knowledge/docs/

Followers